Created 10 detailed GitHub issues covering: - Project activation and management UI (#1-2) - Worker node coordination and visualization (#3-4) - Automated GitHub repository scanning (#5) - Intelligent model-to-issue matching (#6) - Multi-model task execution system (#7) - N8N workflow integration (#8) - Hive-Bzzz P2P bridge (#9) - Peer assistance protocol (#10) Each issue includes detailed specifications, acceptance criteria, technical implementation notes, and dependency mapping. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
9193 lines
357 KiB
JavaScript
9193 lines
357 KiB
JavaScript
import ESM_COMPAT_Module from "node:module";
|
||
import { fileURLToPath as ESM_COMPAT_fileURLToPath } from 'node:url';
|
||
import { dirname as ESM_COMPAT_dirname } from 'node:path';
|
||
const __filename = ESM_COMPAT_fileURLToPath(import.meta.url);
|
||
const __dirname = ESM_COMPAT_dirname(__filename);
|
||
const require = ESM_COMPAT_Module.createRequire(import.meta.url);
|
||
var qf = Object.create;
|
||
var vt = Object.defineProperty;
|
||
var Nf = Object.getOwnPropertyDescriptor;
|
||
var jf = Object.getOwnPropertyNames;
|
||
var Gf = Object.getPrototypeOf, Wf = Object.prototype.hasOwnProperty;
|
||
var s = (t, e) => vt(t, "name", { value: e, configurable: !0 }), k = /* @__PURE__ */ ((t) => typeof require < "u" ? require : typeof Proxy <
|
||
"u" ? new Proxy(t, {
|
||
get: (e, r) => (typeof require < "u" ? require : e)[r]
|
||
}) : t)(function(t) {
|
||
if (typeof require < "u") return require.apply(this, arguments);
|
||
throw Error('Dynamic require of "' + t + '" is not supported');
|
||
});
|
||
var wn = (t, e) => () => (t && (e = t(t = 0)), e);
|
||
var c = (t, e) => () => (e || t((e = { exports: {} }).exports, e), e.exports), tr = (t, e) => {
|
||
for (var r in e)
|
||
vt(t, r, { get: e[r], enumerable: !0 });
|
||
}, An = (t, e, r, u) => {
|
||
if (e && typeof e == "object" || typeof e == "function")
|
||
for (let n of jf(e))
|
||
!Wf.call(t, n) && n !== r && vt(t, n, { get: () => e[n], enumerable: !(u = Nf(e, n)) || u.enumerable });
|
||
return t;
|
||
};
|
||
var P = (t, e, r) => (r = t != null ? qf(Gf(t)) : {}, An(
|
||
// If the importer is in node compatibility mode or this is not an ESM
|
||
// file that has been converted to a CommonJS file using a Babel-
|
||
// compatible transform (i.e. "__esModule" has not been set), then set
|
||
// "default" to the CommonJS "module.exports" for node compatibility.
|
||
e || !t || !t.__esModule ? vt(r, "default", { value: t, enumerable: !0 }) : r,
|
||
t
|
||
)), Vf = (t) => An(vt({}, "__esModule", { value: !0 }), t);
|
||
|
||
// ../node_modules/are-we-there-yet/lib/tracker-base.js
|
||
var mu = c((DE, Sn) => {
|
||
"use strict";
|
||
var Uf = k("events"), Yf = 0, pu = class extends Uf {
|
||
static {
|
||
s(this, "TrackerBase");
|
||
}
|
||
constructor(e) {
|
||
super(), this.id = ++Yf, this.name = e;
|
||
}
|
||
};
|
||
Sn.exports = pu;
|
||
});
|
||
|
||
// ../node_modules/are-we-there-yet/lib/tracker.js
|
||
var rr = c((lE, Tn) => {
|
||
"use strict";
|
||
var Hf = mu(), gu = class extends Hf {
|
||
static {
|
||
s(this, "Tracker");
|
||
}
|
||
constructor(e, r) {
|
||
super(e), this.workDone = 0, this.workTodo = r || 0;
|
||
}
|
||
completed() {
|
||
return this.workTodo === 0 ? 0 : this.workDone / this.workTodo;
|
||
}
|
||
addWork(e) {
|
||
this.workTodo += e, this.emit("change", this.name, this.completed(), this);
|
||
}
|
||
completeWork(e) {
|
||
this.workDone += e, this.workDone > this.workTodo && (this.workDone = this.workTodo), this.emit("change", this.name, this.completed(),
|
||
this);
|
||
}
|
||
finish() {
|
||
this.workTodo = this.workDone = 1, this.emit("change", this.name, 1, this);
|
||
}
|
||
};
|
||
Tn.exports = gu;
|
||
});
|
||
|
||
// ../node_modules/are-we-there-yet/lib/tracker-stream.js
|
||
var Cu = c((cE, $n) => {
|
||
"use strict";
|
||
var zf = k("stream"), Kf = rr(), Fu = class extends zf.Transform {
|
||
static {
|
||
s(this, "TrackerStream");
|
||
}
|
||
constructor(e, r, u) {
|
||
super(u), this.tracker = new Kf(e, r), this.name = e, this.id = this.tracker.id, this.tracker.on("change", this.trackerChange.bind(this));
|
||
}
|
||
trackerChange(e, r) {
|
||
this.emit("change", e, r, this);
|
||
}
|
||
_transform(e, r, u) {
|
||
this.tracker.completeWork(e.length ? e.length : 1), this.push(e), u();
|
||
}
|
||
_flush(e) {
|
||
this.tracker.finish(), e();
|
||
}
|
||
completed() {
|
||
return this.tracker.completed();
|
||
}
|
||
addWork(e) {
|
||
return this.tracker.addWork(e);
|
||
}
|
||
finish() {
|
||
return this.tracker.finish();
|
||
}
|
||
};
|
||
$n.exports = Fu;
|
||
});
|
||
|
||
// ../node_modules/are-we-there-yet/lib/tracker-group.js
|
||
var In = c((fE, _n) => {
|
||
"use strict";
|
||
var Zf = mu(), On = rr(), Jf = Cu(), Eu = class t extends Zf {
|
||
static {
|
||
s(this, "TrackerGroup");
|
||
}
|
||
parentGroup = null;
|
||
trackers = [];
|
||
completion = {};
|
||
weight = {};
|
||
totalWeight = 0;
|
||
finished = !1;
|
||
bubbleChange = Xf(this);
|
||
nameInTree() {
|
||
for (var e = [], r = this; r; )
|
||
e.unshift(r.name), r = r.parentGroup;
|
||
return e.join("/");
|
||
}
|
||
addUnit(e, r) {
|
||
if (e.addUnit) {
|
||
for (var u = this; u; ) {
|
||
if (e === u)
|
||
throw new Error(
|
||
"Attempted to add tracker group " + e.name + " to tree that already includes it " + this.nameInTree(this)
|
||
);
|
||
u = u.parentGroup;
|
||
}
|
||
e.parentGroup = this;
|
||
}
|
||
return this.weight[e.id] = r || 1, this.totalWeight += this.weight[e.id], this.trackers.push(e), this.completion[e.id] = e.completed(),
|
||
e.on("change", this.bubbleChange), this.finished || this.emit("change", e.name, this.completion[e.id], e), e;
|
||
}
|
||
completed() {
|
||
if (this.trackers.length === 0)
|
||
return 0;
|
||
for (var e = 1 / this.totalWeight, r = 0, u = 0; u < this.trackers.length; u++) {
|
||
var n = this.trackers[u].id;
|
||
r += e * this.weight[n] * this.completion[n];
|
||
}
|
||
return r;
|
||
}
|
||
newGroup(e, r) {
|
||
return this.addUnit(new t(e), r);
|
||
}
|
||
newItem(e, r, u) {
|
||
return this.addUnit(new On(e, r), u);
|
||
}
|
||
newStream(e, r, u) {
|
||
return this.addUnit(new Jf(e, r), u);
|
||
}
|
||
finish() {
|
||
this.finished = !0, this.trackers.length || this.addUnit(new On(), 1, !0);
|
||
for (var e = 0; e < this.trackers.length; e++) {
|
||
var r = this.trackers[e];
|
||
r.finish(), r.removeListener("change", this.bubbleChange);
|
||
}
|
||
this.emit("change", this.name, 1, this);
|
||
}
|
||
debug(e = 0) {
|
||
let r = " ".repeat(e), u = `${r}${this.name || "top"}: ${this.completed()}
|
||
`;
|
||
return this.trackers.forEach(function(n) {
|
||
u += n instanceof t ? n.debug(e + 1) : `${r} ${n.name}: ${n.completed()}
|
||
`;
|
||
}), u;
|
||
}
|
||
};
|
||
function Xf(t) {
|
||
return function(e, r, u) {
|
||
t.completion[u.id] = r, !t.finished && t.emit("change", e || t.name, t.completed(), t);
|
||
};
|
||
}
|
||
s(Xf, "bubbleChange");
|
||
_n.exports = Eu;
|
||
});
|
||
|
||
// ../node_modules/are-we-there-yet/lib/index.js
|
||
var Ln = c((ur) => {
|
||
"use strict";
|
||
ur.TrackerGroup = In();
|
||
ur.Tracker = rr();
|
||
ur.TrackerStream = Cu();
|
||
});
|
||
|
||
// ../node_modules/console-control-strings/index.js
|
||
var ir = c((N) => {
|
||
"use strict";
|
||
var H = "\x1B[";
|
||
N.up = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "A";
|
||
}, "up");
|
||
N.down = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "B";
|
||
}, "down");
|
||
N.forward = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "C";
|
||
}, "forward");
|
||
N.back = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "D";
|
||
}, "back");
|
||
N.nextLine = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "E";
|
||
}, "nextLine");
|
||
N.previousLine = /* @__PURE__ */ s(function(e) {
|
||
return H + (e || "") + "F";
|
||
}, "previousLine");
|
||
N.horizontalAbsolute = /* @__PURE__ */ s(function(e) {
|
||
if (e == null) throw new Error("horizontalAboslute requires a column to position to");
|
||
return H + e + "G";
|
||
}, "horizontalAbsolute");
|
||
N.eraseData = /* @__PURE__ */ s(function() {
|
||
return H + "J";
|
||
}, "eraseData");
|
||
N.eraseLine = /* @__PURE__ */ s(function() {
|
||
return H + "K";
|
||
}, "eraseLine");
|
||
N.goto = function(t, e) {
|
||
return H + e + ";" + t + "H";
|
||
};
|
||
N.gotoSOL = function() {
|
||
return "\r";
|
||
};
|
||
N.beep = function() {
|
||
return "\x07";
|
||
};
|
||
N.hideCursor = /* @__PURE__ */ s(function() {
|
||
return H + "?25l";
|
||
}, "hideCursor");
|
||
N.showCursor = /* @__PURE__ */ s(function() {
|
||
return H + "?25h";
|
||
}, "showCursor");
|
||
var kn = {
|
||
reset: 0,
|
||
// styles
|
||
bold: 1,
|
||
italic: 3,
|
||
underline: 4,
|
||
inverse: 7,
|
||
// resets
|
||
stopBold: 22,
|
||
stopItalic: 23,
|
||
stopUnderline: 24,
|
||
stopInverse: 27,
|
||
// colors
|
||
white: 37,
|
||
black: 30,
|
||
blue: 34,
|
||
cyan: 36,
|
||
green: 32,
|
||
magenta: 35,
|
||
red: 31,
|
||
yellow: 33,
|
||
bgWhite: 47,
|
||
bgBlack: 40,
|
||
bgBlue: 44,
|
||
bgCyan: 46,
|
||
bgGreen: 42,
|
||
bgMagenta: 45,
|
||
bgRed: 41,
|
||
bgYellow: 43,
|
||
grey: 90,
|
||
brightBlack: 90,
|
||
brightRed: 91,
|
||
brightGreen: 92,
|
||
brightYellow: 93,
|
||
brightBlue: 94,
|
||
brightMagenta: 95,
|
||
brightCyan: 96,
|
||
brightWhite: 97,
|
||
bgGrey: 100,
|
||
bgBrightBlack: 100,
|
||
bgBrightRed: 101,
|
||
bgBrightGreen: 102,
|
||
bgBrightYellow: 103,
|
||
bgBrightBlue: 104,
|
||
bgBrightMagenta: 105,
|
||
bgBrightCyan: 106,
|
||
bgBrightWhite: 107
|
||
};
|
||
N.color = /* @__PURE__ */ s(function(e) {
|
||
return (arguments.length !== 1 || !Array.isArray(e)) && (e = Array.prototype.slice.call(arguments)), H + e.map(Qf).join(";") + "m";
|
||
}, "color");
|
||
function Qf(t) {
|
||
if (kn[t] != null) return kn[t];
|
||
throw new Error("Unknown color or style name: " + t);
|
||
}
|
||
s(Qf, "colorNameToCode");
|
||
});
|
||
|
||
// ../node_modules/string-width/node_modules/ansi-regex/index.js
|
||
var Mn = c((CE, Pn) => {
|
||
"use strict";
|
||
Pn.exports = ({ onlyFirst: t = !1 } = {}) => {
|
||
let e = [
|
||
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
|
||
].join("|");
|
||
return new RegExp(e, t ? void 0 : "g");
|
||
};
|
||
});
|
||
|
||
// ../node_modules/string-width/node_modules/strip-ansi/index.js
|
||
var qn = c((EE, Rn) => {
|
||
"use strict";
|
||
var e0 = Mn();
|
||
Rn.exports = (t) => typeof t == "string" ? t.replace(e0(), "") : t;
|
||
});
|
||
|
||
// ../node_modules/is-fullwidth-code-point/index.js
|
||
var jn = c((bE, bu) => {
|
||
"use strict";
|
||
var Nn = /* @__PURE__ */ s((t) => Number.isNaN(t) ? !1 : t >= 4352 && (t <= 4447 || // Hangul Jamo
|
||
t === 9001 || // LEFT-POINTING ANGLE BRACKET
|
||
t === 9002 || // RIGHT-POINTING ANGLE BRACKET
|
||
// CJK Radicals Supplement .. Enclosed CJK Letters and Months
|
||
11904 <= t && t <= 12871 && t !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
|
||
12880 <= t && t <= 19903 || // CJK Unified Ideographs .. Yi Radicals
|
||
19968 <= t && t <= 42182 || // Hangul Jamo Extended-A
|
||
43360 <= t && t <= 43388 || // Hangul Syllables
|
||
44032 <= t && t <= 55203 || // CJK Compatibility Ideographs
|
||
63744 <= t && t <= 64255 || // Vertical Forms
|
||
65040 <= t && t <= 65049 || // CJK Compatibility Forms .. Small Form Variants
|
||
65072 <= t && t <= 65131 || // Halfwidth and Fullwidth Forms
|
||
65281 <= t && t <= 65376 || 65504 <= t && t <= 65510 || // Kana Supplement
|
||
110592 <= t && t <= 110593 || // Enclosed Ideographic Supplement
|
||
127488 <= t && t <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
|
||
131072 <= t && t <= 262141), "isFullwidthCodePoint");
|
||
bu.exports = Nn;
|
||
bu.exports.default = Nn;
|
||
});
|
||
|
||
// ../node_modules/string-width/node_modules/emoji-regex/index.js
|
||
var Wn = c((vE, Gn) => {
|
||
"use strict";
|
||
Gn.exports = function() {
|
||
return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\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\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])|\uD83C[\uDF3E\uDF73\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])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\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])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\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\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\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\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\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\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*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\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\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\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[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/string-width/index.js
|
||
var Ze = c((yE, xu) => {
|
||
"use strict";
|
||
var t0 = qn(), r0 = jn(), u0 = Wn(), Vn = /* @__PURE__ */ s((t) => {
|
||
if (typeof t != "string" || t.length === 0 || (t = t0(t), t.length === 0))
|
||
return 0;
|
||
t = t.replace(u0(), " ");
|
||
let e = 0;
|
||
for (let r = 0; r < t.length; r++) {
|
||
let u = t.codePointAt(r);
|
||
u <= 31 || u >= 127 && u <= 159 || u >= 768 && u <= 879 || (u > 65535 && r++, e += r0(u) ? 2 : 1);
|
||
}
|
||
return e;
|
||
}, "stringWidth");
|
||
xu.exports = Vn;
|
||
xu.exports.default = Vn;
|
||
});
|
||
|
||
// ../node_modules/wide-align/align.js
|
||
var Un = c((nr) => {
|
||
"use strict";
|
||
var vu = Ze();
|
||
nr.center = n0;
|
||
nr.left = i0;
|
||
nr.right = s0;
|
||
function sr(t) {
|
||
var e = "", r = " ", u = t;
|
||
do
|
||
u % 2 && (e += r), u = Math.floor(u / 2), r += r;
|
||
while (u);
|
||
return e;
|
||
}
|
||
s(sr, "createPadding");
|
||
function i0(t, e) {
|
||
var r = t.trimRight();
|
||
if (r.length === 0 && t.length >= e) return t;
|
||
var u = "", n = vu(r);
|
||
return n < e && (u = sr(e - n)), r + u;
|
||
}
|
||
s(i0, "alignLeft");
|
||
function s0(t, e) {
|
||
var r = t.trimLeft();
|
||
if (r.length === 0 && t.length >= e) return t;
|
||
var u = "", n = vu(r);
|
||
return n < e && (u = sr(e - n)), u + r;
|
||
}
|
||
s(s0, "alignRight");
|
||
function n0(t, e) {
|
||
var r = t.trim();
|
||
if (r.length === 0 && t.length >= e) return t;
|
||
var u = "", n = "", o = vu(r);
|
||
if (o < e) {
|
||
var i = parseInt((e - o) / 2, 10);
|
||
u = sr(i), n = sr(e - (o + i));
|
||
}
|
||
return u + r + n;
|
||
}
|
||
s(n0, "alignCenter");
|
||
});
|
||
|
||
// ../node_modules/aproba/index.js
|
||
var Dr = c((SE, Zn) => {
|
||
"use strict";
|
||
Zn.exports = zn;
|
||
function o0(t) {
|
||
return t != null && typeof t == "object" && t.hasOwnProperty("callee");
|
||
}
|
||
s(o0, "isArguments");
|
||
var ie = {
|
||
"*": { label: "any", check: /* @__PURE__ */ s(() => !0, "check") },
|
||
A: { label: "array", check: /* @__PURE__ */ s((t) => Array.isArray(t) || o0(t), "check") },
|
||
S: { label: "string", check: /* @__PURE__ */ s((t) => typeof t == "string", "check") },
|
||
N: { label: "number", check: /* @__PURE__ */ s((t) => typeof t == "number", "check") },
|
||
F: { label: "function", check: /* @__PURE__ */ s((t) => typeof t == "function", "check") },
|
||
O: { label: "object", check: /* @__PURE__ */ s((t) => typeof t == "object" && t != null && !ie.A.check(t) && !ie.E.check(t), "check") },
|
||
B: { label: "boolean", check: /* @__PURE__ */ s((t) => typeof t == "boolean", "check") },
|
||
E: { label: "error", check: /* @__PURE__ */ s((t) => t instanceof Error, "check") },
|
||
Z: { label: "null", check: /* @__PURE__ */ s((t) => t == null, "check") }
|
||
};
|
||
function or(t, e) {
|
||
let r = e[t.length] = e[t.length] || [];
|
||
r.indexOf(t) === -1 && r.push(t);
|
||
}
|
||
s(or, "addSchema");
|
||
function zn(t, e) {
|
||
if (arguments.length !== 2) throw Hn(["SA"], arguments.length);
|
||
if (!t) throw Yn(0, "rawSchemas");
|
||
if (!e) throw Yn(1, "args");
|
||
if (!ie.S.check(t)) throw yu(0, ["string"], t);
|
||
if (!ie.A.check(e)) throw yu(1, ["array"], e);
|
||
let r = t.split("|"), u = {};
|
||
r.forEach((o) => {
|
||
for (let i = 0; i < o.length; ++i) {
|
||
let D = o[i];
|
||
if (!ie[D]) throw D0(i, D);
|
||
}
|
||
if (/E.*E/.test(o)) throw a0(o);
|
||
or(o, u), /E/.test(o) && (or(o.replace(/E.*$/, "E"), u), or(o.replace(/E/, "Z"), u), o.length === 1 && or("", u));
|
||
});
|
||
let n = u[e.length];
|
||
if (!n)
|
||
throw Hn(Object.keys(u), e.length);
|
||
for (let o = 0; o < e.length; ++o) {
|
||
let i = n.filter((D) => {
|
||
let a = D[o], l = ie[a].check;
|
||
return l(e[o]);
|
||
});
|
||
if (!i.length) {
|
||
let D = n.map((a) => ie[a[o]].label).filter((a) => a != null);
|
||
throw yu(o, D, e[o]);
|
||
}
|
||
n = i;
|
||
}
|
||
}
|
||
s(zn, "validate");
|
||
function Yn(t) {
|
||
return yt("EMISSINGARG", "Missing required argument #" + (t + 1));
|
||
}
|
||
s(Yn, "missingRequiredArg");
|
||
function D0(t, e) {
|
||
return yt("EUNKNOWNTYPE", "Unknown type " + e + " in argument #" + (t + 1));
|
||
}
|
||
s(D0, "unknownType");
|
||
function yu(t, e, r) {
|
||
let u;
|
||
return Object.keys(ie).forEach((n) => {
|
||
ie[n].check(r) && (u = ie[n].label);
|
||
}), yt("EINVALIDTYPE", "Argument #" + (t + 1) + ": Expected " + Kn(e) + " but got " + u);
|
||
}
|
||
s(yu, "invalidType");
|
||
function Kn(t) {
|
||
return t.join(", ").replace(/, ([^,]+)$/, " or $1");
|
||
}
|
||
s(Kn, "englishList");
|
||
function Hn(t, e) {
|
||
let r = Kn(t), u = t.every((n) => n.length === 1) ? "argument" : "arguments";
|
||
return yt("EWRONGARGCOUNT", "Expected " + r + " " + u + " but got " + e);
|
||
}
|
||
s(Hn, "wrongNumberOfArgs");
|
||
function a0(t) {
|
||
return yt(
|
||
"ETOOMANYERRORTYPES",
|
||
'Only one error type per argument signature is allowed, more than one found in "' + t + '"'
|
||
);
|
||
}
|
||
s(a0, "moreThanOneError");
|
||
function yt(t, e) {
|
||
let r = new Error(e);
|
||
return r.code = t, Error.captureStackTrace && Error.captureStackTrace(r, zn), r;
|
||
}
|
||
s(yt, "newException");
|
||
});
|
||
|
||
// ../node_modules/gauge/node_modules/ansi-regex/index.js
|
||
var Xn = c(($E, Jn) => {
|
||
"use strict";
|
||
Jn.exports = ({ onlyFirst: t = !1 } = {}) => {
|
||
let e = [
|
||
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
|
||
].join("|");
|
||
return new RegExp(e, t ? void 0 : "g");
|
||
};
|
||
});
|
||
|
||
// ../node_modules/gauge/node_modules/strip-ansi/index.js
|
||
var eo = c((OE, Qn) => {
|
||
"use strict";
|
||
var l0 = Xn();
|
||
Qn.exports = (t) => typeof t == "string" ? t.replace(l0(), "") : t;
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/wide-truncate.js
|
||
var wu = c((_E, to) => {
|
||
"use strict";
|
||
var Bu = Ze(), h0 = eo();
|
||
to.exports = c0;
|
||
function c0(t, e) {
|
||
if (Bu(t) === 0)
|
||
return t;
|
||
if (e <= 0)
|
||
return "";
|
||
if (Bu(t) <= e)
|
||
return t;
|
||
for (var r = h0(t), u = t.length + r.length, n = t.slice(0, e + u); Bu(n) > e; )
|
||
n = n.slice(0, -1);
|
||
return n;
|
||
}
|
||
s(c0, "wideTruncate");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/error.js
|
||
var ro = c((ar) => {
|
||
"use strict";
|
||
var d0 = k("util"), f0 = ar.User = /* @__PURE__ */ s(function t(e) {
|
||
var r = new Error(e);
|
||
return Error.captureStackTrace(r, t), r.code = "EGAUGE", r;
|
||
}, "User");
|
||
ar.MissingTemplateValue = /* @__PURE__ */ s(function t(e, r) {
|
||
var u = new f0(d0.format('Missing template value "%s"', e.type));
|
||
return Error.captureStackTrace(u, t), u.template = e, u.values = r, u;
|
||
}, "MissingTemplateValue");
|
||
ar.Internal = /* @__PURE__ */ s(function t(e) {
|
||
var r = new Error(e);
|
||
return Error.captureStackTrace(r, t), r.code = "EGAUGEINTERNAL", r;
|
||
}, "Internal");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/template-item.js
|
||
var io = c((PE, uo) => {
|
||
"use strict";
|
||
var p0 = Ze();
|
||
uo.exports = Je;
|
||
function Au(t) {
|
||
return typeof t != "string" ? !1 : t.slice(-1) === "%";
|
||
}
|
||
s(Au, "isPercent");
|
||
function Su(t) {
|
||
return Number(t.slice(0, -1)) / 100;
|
||
}
|
||
s(Su, "percent");
|
||
function Je(t, e) {
|
||
if (this.overallOutputLength = e, this.finished = !1, this.type = null, this.value = null, this.length = null, this.maxLength = null, this.
|
||
minLength = null, this.kerning = null, this.align = "left", this.padLeft = 0, this.padRight = 0, this.index = null, this.first = null, this.
|
||
last = null, typeof t == "string")
|
||
this.value = t;
|
||
else
|
||
for (var r in t)
|
||
this[r] = t[r];
|
||
return Au(this.length) && (this.length = Math.round(this.overallOutputLength * Su(this.length))), Au(this.minLength) && (this.minLength =
|
||
Math.round(this.overallOutputLength * Su(this.minLength))), Au(this.maxLength) && (this.maxLength = Math.round(this.overallOutputLength *
|
||
Su(this.maxLength))), this;
|
||
}
|
||
s(Je, "TemplateItem");
|
||
Je.prototype = {};
|
||
Je.prototype.getBaseLength = function() {
|
||
var t = this.length;
|
||
return t == null && typeof this.value == "string" && this.maxLength == null && this.minLength == null && (t = p0(this.value)), t;
|
||
};
|
||
Je.prototype.getLength = function() {
|
||
var t = this.getBaseLength();
|
||
return t == null ? null : t + this.padLeft + this.padRight;
|
||
};
|
||
Je.prototype.getMaxLength = function() {
|
||
return this.maxLength == null ? null : this.maxLength + this.padLeft + this.padRight;
|
||
};
|
||
Je.prototype.getMinLength = function() {
|
||
return this.minLength == null ? null : this.minLength + this.padLeft + this.padRight;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/render-template.js
|
||
var Tu = c((RE, Do) => {
|
||
"use strict";
|
||
var Bt = Un(), m0 = Dr(), so = wu(), Xe = ro(), g0 = io();
|
||
function F0(t) {
|
||
return function(e) {
|
||
return y0(e, t);
|
||
};
|
||
}
|
||
s(F0, "renderValueWithValues");
|
||
var C0 = Do.exports = function(t, e, r) {
|
||
var u = x0(t, e, r), n = u.map(F0(r)).join("");
|
||
return Bt.left(so(n, t), t);
|
||
};
|
||
function no(t) {
|
||
var e = t.type[0].toUpperCase() + t.type.slice(1);
|
||
return "pre" + e;
|
||
}
|
||
s(no, "preType");
|
||
function oo(t) {
|
||
var e = t.type[0].toUpperCase() + t.type.slice(1);
|
||
return "post" + e;
|
||
}
|
||
s(oo, "postType");
|
||
function E0(t, e) {
|
||
if (t.type)
|
||
return e[no(t)] || e[oo(t)];
|
||
}
|
||
s(E0, "hasPreOrPost");
|
||
function b0(t, e) {
|
||
var r = Object.assign({}, t), u = Object.create(e), n = [], o = no(r), i = oo(r);
|
||
return u[o] && (n.push({ value: u[o] }), u[o] = null), r.minLength = null, r.length = null, r.maxLength = null, n.push(r), u[r.type] = u[r.
|
||
type], u[i] && (n.push({ value: u[i] }), u[i] = null), function(D, a, l) {
|
||
return C0(l, n, u);
|
||
};
|
||
}
|
||
s(b0, "generatePreAndPost");
|
||
function x0(t, e, r) {
|
||
function u(d, m, g) {
|
||
var F = new g0(d, t), E = F.type;
|
||
if (F.value == null)
|
||
if (E in r)
|
||
F.value = r[E];
|
||
else {
|
||
if (F.default == null)
|
||
throw new Xe.MissingTemplateValue(F, r);
|
||
F.value = F.default;
|
||
}
|
||
return F.value == null || F.value === "" ? null : (F.index = m, F.first = m === 0, F.last = m === g.length - 1, E0(F, r) && (F.value =
|
||
b0(F, r)), F);
|
||
}
|
||
s(u, "cloneAndObjectify");
|
||
var n = e.map(u).filter(function(d) {
|
||
return d != null;
|
||
}), o = t, i = n.length;
|
||
function D(d) {
|
||
d > o && (d = o), o -= d;
|
||
}
|
||
s(D, "consumeSpace");
|
||
function a(d, m) {
|
||
if (d.finished)
|
||
throw new Xe.Internal("Tried to finish template item that was already finished");
|
||
if (m === 1 / 0)
|
||
throw new Xe.Internal("Length of template item cannot be infinity");
|
||
if (m != null && (d.length = m), d.minLength = null, d.maxLength = null, --i, d.finished = !0, d.length == null && (d.length = d.getBaseLength()),
|
||
d.length == null)
|
||
throw new Xe.Internal("Finished template items must have a length");
|
||
D(d.getLength());
|
||
}
|
||
s(a, "finishSizing"), n.forEach(function(d) {
|
||
if (d.kerning) {
|
||
var m = d.first ? 0 : n[d.index - 1].padRight;
|
||
!d.first && m < d.kerning && (d.padLeft = d.kerning - m), d.last || (d.padRight = d.kerning);
|
||
}
|
||
}), n.forEach(function(d) {
|
||
d.getBaseLength() != null && a(d);
|
||
});
|
||
var l = 0, h, p;
|
||
do
|
||
h = !1, p = Math.round(o / i), n.forEach(function(d) {
|
||
d.finished || d.maxLength && d.getMaxLength() < p && (a(d, d.maxLength), h = !0);
|
||
});
|
||
while (h && l++ < n.length);
|
||
if (h)
|
||
throw new Xe.Internal("Resize loop iterated too many times while determining maxLength");
|
||
l = 0;
|
||
do
|
||
h = !1, p = Math.round(o / i), n.forEach(function(d) {
|
||
d.finished || d.minLength && d.getMinLength() >= p && (a(d, d.minLength), h = !0);
|
||
});
|
||
while (h && l++ < n.length);
|
||
if (h)
|
||
throw new Xe.Internal("Resize loop iterated too many times while determining minLength");
|
||
return p = Math.round(o / i), n.forEach(function(d) {
|
||
d.finished || a(d, p);
|
||
}), n;
|
||
}
|
||
s(x0, "prepareItems");
|
||
function v0(t, e, r) {
|
||
return m0("OON", arguments), t.type ? t.value(e, e[t.type + "Theme"] || {}, r) : t.value(e, {}, r);
|
||
}
|
||
s(v0, "renderFunction");
|
||
function y0(t, e) {
|
||
var r = t.getBaseLength(), u = typeof t.value == "function" ? v0(t, e, r) : t.value;
|
||
if (u == null || u === "")
|
||
return "";
|
||
var n = Bt[t.align] || Bt.left, o = t.padLeft ? Bt.left("", t.padLeft) : "", i = t.padRight ? Bt.right("", t.padRight) : "", D = so(String(
|
||
u), r), a = n(D, r);
|
||
return o + a + i;
|
||
}
|
||
s(y0, "renderValue");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/plumbing.js
|
||
var lo = c((NE, ao) => {
|
||
"use strict";
|
||
var Pe = ir(), B0 = Tu(), lr = Dr(), be = ao.exports = function(t, e, r) {
|
||
r || (r = 80), lr("OAN", [t, e, r]), this.showing = !1, this.theme = t, this.width = r, this.template = e;
|
||
};
|
||
be.prototype = {};
|
||
be.prototype.setTheme = function(t) {
|
||
lr("O", [t]), this.theme = t;
|
||
};
|
||
be.prototype.setTemplate = function(t) {
|
||
lr("A", [t]), this.template = t;
|
||
};
|
||
be.prototype.setWidth = function(t) {
|
||
lr("N", [t]), this.width = t;
|
||
};
|
||
be.prototype.hide = function() {
|
||
return Pe.gotoSOL() + Pe.eraseLine();
|
||
};
|
||
be.prototype.hideCursor = Pe.hideCursor;
|
||
be.prototype.showCursor = Pe.showCursor;
|
||
be.prototype.show = function(t) {
|
||
var e = Object.create(this.theme);
|
||
for (var r in t)
|
||
e[r] = t[r];
|
||
return B0(this.width, this.template, e).trim() + Pe.color("reset") + Pe.eraseLine() + Pe.gotoSOL();
|
||
};
|
||
});
|
||
|
||
// ../node_modules/has-unicode/index.js
|
||
var co = c((GE, ho) => {
|
||
"use strict";
|
||
var w0 = k("os"), jE = ho.exports = function() {
|
||
if (w0.type() == "Windows_NT")
|
||
return !1;
|
||
var t = /UTF-?8$/i, e = process.env.LC_ALL || process.env.LC_CTYPE || process.env.LANG;
|
||
return t.test(e);
|
||
};
|
||
});
|
||
|
||
// ../node_modules/color-support/index.js
|
||
var mo = c((WE, po) => {
|
||
po.exports = fo({ alwaysReturn: !0 }, fo);
|
||
function Qe(t, e) {
|
||
return t.level = 0, t.hasBasic = !1, t.has256 = !1, t.has16m = !1, e.alwaysReturn ? t : !1;
|
||
}
|
||
s(Qe, "hasNone");
|
||
function hr(t) {
|
||
return t.hasBasic = !0, t.has256 = !1, t.has16m = !1, t.level = 1, t;
|
||
}
|
||
s(hr, "hasBasic");
|
||
function et(t) {
|
||
return t.hasBasic = !0, t.has256 = !0, t.has16m = !1, t.level = 2, t;
|
||
}
|
||
s(et, "has256");
|
||
function cr(t) {
|
||
return t.hasBasic = !0, t.has256 = !0, t.has16m = !0, t.level = 3, t;
|
||
}
|
||
s(cr, "has16m");
|
||
function fo(t, e) {
|
||
if (t = t || {}, e = e || {}, typeof t.level == "number")
|
||
switch (t.level) {
|
||
case 0:
|
||
return Qe(e, t);
|
||
case 1:
|
||
return hr(e);
|
||
case 2:
|
||
return et(e);
|
||
case 3:
|
||
return cr(e);
|
||
}
|
||
if (e.level = 0, e.hasBasic = !1, e.has256 = !1, e.has16m = !1, typeof process > "u" || !process || !process.stdout || !process.env || !process.
|
||
platform)
|
||
return Qe(e, t);
|
||
var r = t.env || process.env, u = t.stream || process.stdout, n = t.term || r.TERM || "", o = t.platform || process.platform;
|
||
if (!t.ignoreTTY && !u.isTTY || !t.ignoreDumb && n === "dumb" && !r.COLORTERM)
|
||
return Qe(e, t);
|
||
if (o === "win32")
|
||
return hr(e);
|
||
if (r.TMUX)
|
||
return et(e);
|
||
if (!t.ignoreCI && (r.CI || r.TEAMCITY_VERSION))
|
||
return r.TRAVIS ? et(e) : Qe(e, t);
|
||
switch (r.TERM_PROGRAM) {
|
||
case "iTerm.app":
|
||
var i = r.TERM_PROGRAM_VERSION || "0.";
|
||
return /^[0-2]\./.test(i) ? et(e) : cr(e);
|
||
case "HyperTerm":
|
||
case "Hyper":
|
||
return cr(e);
|
||
case "MacTerm":
|
||
return cr(e);
|
||
case "Apple_Terminal":
|
||
return et(e);
|
||
}
|
||
return /^xterm-256/.test(n) ? et(e) : /^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(n) || r.COLORTERM ? hr(e) : Qe(e, t);
|
||
}
|
||
s(fo, "colorSupport");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/has-color.js
|
||
var Fo = c((UE, go) => {
|
||
"use strict";
|
||
var A0 = mo();
|
||
go.exports = A0().hasBasic;
|
||
});
|
||
|
||
// ../node_modules/gauge/node_modules/signal-exit/dist/mjs/signals.js
|
||
var xe, Co = wn(() => {
|
||
xe = [];
|
||
xe.push("SIGHUP", "SIGINT", "SIGTERM");
|
||
process.platform !== "win32" && xe.push(
|
||
"SIGALRM",
|
||
"SIGABRT",
|
||
"SIGVTALRM",
|
||
"SIGXCPU",
|
||
"SIGXFSZ",
|
||
"SIGUSR2",
|
||
"SIGTRAP",
|
||
"SIGSYS",
|
||
"SIGQUIT",
|
||
"SIGIOT"
|
||
// should detect profiler and enable/disable accordingly.
|
||
// see #21
|
||
// 'SIGPROF'
|
||
);
|
||
process.platform === "linux" && xe.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
|
||
});
|
||
|
||
// ../node_modules/gauge/node_modules/signal-exit/dist/mjs/index.js
|
||
var Eo = {};
|
||
tr(Eo, {
|
||
load: () => O0,
|
||
onExit: () => $0,
|
||
signals: () => xe,
|
||
unload: () => _0
|
||
});
|
||
var dr, $u, Ou, S0, _u, fr, T0, Iu, Lu, ku, $0, O0, _0, bo = wn(() => {
|
||
Co();
|
||
dr = /* @__PURE__ */ s((t) => !!t && typeof t == "object" && typeof t.removeListener == "function" && typeof t.emit == "function" && typeof t.
|
||
reallyExit == "function" && typeof t.listeners == "function" && typeof t.kill == "function" && typeof t.pid == "number" && typeof t.on == "\
|
||
function", "processOk"), $u = Symbol.for("signal-exit emitter"), Ou = globalThis, S0 = Object.defineProperty.bind(Object), _u = class {
|
||
static {
|
||
s(this, "Emitter");
|
||
}
|
||
emitted = {
|
||
afterExit: !1,
|
||
exit: !1
|
||
};
|
||
listeners = {
|
||
afterExit: [],
|
||
exit: []
|
||
};
|
||
count = 0;
|
||
id = Math.random();
|
||
constructor() {
|
||
if (Ou[$u])
|
||
return Ou[$u];
|
||
S0(Ou, $u, {
|
||
value: this,
|
||
writable: !1,
|
||
enumerable: !1,
|
||
configurable: !1
|
||
});
|
||
}
|
||
on(e, r) {
|
||
this.listeners[e].push(r);
|
||
}
|
||
removeListener(e, r) {
|
||
let u = this.listeners[e], n = u.indexOf(r);
|
||
n !== -1 && (n === 0 && u.length === 1 ? u.length = 0 : u.splice(n, 1));
|
||
}
|
||
emit(e, r, u) {
|
||
if (this.emitted[e])
|
||
return !1;
|
||
this.emitted[e] = !0;
|
||
let n = !1;
|
||
for (let o of this.listeners[e])
|
||
n = o(r, u) === !0 || n;
|
||
return e === "exit" && (n = this.emit("afterExit", r, u) || n), n;
|
||
}
|
||
}, fr = class {
|
||
static {
|
||
s(this, "SignalExitBase");
|
||
}
|
||
}, T0 = /* @__PURE__ */ s((t) => ({
|
||
onExit(e, r) {
|
||
return t.onExit(e, r);
|
||
},
|
||
load() {
|
||
return t.load();
|
||
},
|
||
unload() {
|
||
return t.unload();
|
||
}
|
||
}), "signalExitWrap"), Iu = class extends fr {
|
||
static {
|
||
s(this, "SignalExitFallback");
|
||
}
|
||
onExit() {
|
||
return () => {
|
||
};
|
||
}
|
||
load() {
|
||
}
|
||
unload() {
|
||
}
|
||
}, Lu = class extends fr {
|
||
static {
|
||
s(this, "SignalExit");
|
||
}
|
||
// "SIGHUP" throws an `ENOSYS` error on Windows,
|
||
// so use a supported signal instead
|
||
/* c8 ignore start */
|
||
#u = ku.platform === "win32" ? "SIGINT" : "SIGHUP";
|
||
/* c8 ignore stop */
|
||
#t = new _u();
|
||
#e;
|
||
#s;
|
||
#n;
|
||
#i = {};
|
||
#r = !1;
|
||
constructor(e) {
|
||
super(), this.#e = e, this.#i = {};
|
||
for (let r of xe)
|
||
this.#i[r] = () => {
|
||
let u = this.#e.listeners(r), { count: n } = this.#t, o = e;
|
||
if (typeof o.__signal_exit_emitter__ == "object" && typeof o.__signal_exit_emitter__.count == "number" && (n += o.__signal_exit_emitter__.
|
||
count), u.length === n) {
|
||
this.unload();
|
||
let i = this.#t.emit("exit", null, r), D = r === "SIGHUP" ? this.#u : r;
|
||
i || e.kill(e.pid, D);
|
||
}
|
||
};
|
||
this.#n = e.reallyExit, this.#s = e.emit;
|
||
}
|
||
onExit(e, r) {
|
||
if (!dr(this.#e))
|
||
return () => {
|
||
};
|
||
this.#r === !1 && this.load();
|
||
let u = r?.alwaysLast ? "afterExit" : "exit";
|
||
return this.#t.on(u, e), () => {
|
||
this.#t.removeListener(u, e), this.#t.listeners.exit.length === 0 && this.#t.listeners.afterExit.length === 0 && this.unload();
|
||
};
|
||
}
|
||
load() {
|
||
if (!this.#r) {
|
||
this.#r = !0, this.#t.count += 1;
|
||
for (let e of xe)
|
||
try {
|
||
let r = this.#i[e];
|
||
r && this.#e.on(e, r);
|
||
} catch {
|
||
}
|
||
this.#e.emit = (e, ...r) => this.#D(e, ...r), this.#e.reallyExit = (e) => this.#o(e);
|
||
}
|
||
}
|
||
unload() {
|
||
this.#r && (this.#r = !1, xe.forEach((e) => {
|
||
let r = this.#i[e];
|
||
if (!r)
|
||
throw new Error("Listener not defined for signal: " + e);
|
||
try {
|
||
this.#e.removeListener(e, r);
|
||
} catch {
|
||
}
|
||
}), this.#e.emit = this.#s, this.#e.reallyExit = this.#n, this.#t.count -= 1);
|
||
}
|
||
#o(e) {
|
||
return dr(this.#e) ? (this.#e.exitCode = e || 0, this.#t.emit("exit", this.#e.exitCode, null), this.#n.call(this.#e, this.#e.exitCode)) :
|
||
0;
|
||
}
|
||
#D(e, ...r) {
|
||
let u = this.#s;
|
||
if (e === "exit" && dr(this.#e)) {
|
||
typeof r[0] == "number" && (this.#e.exitCode = r[0]);
|
||
let n = u.call(this.#e, e, ...r);
|
||
return this.#t.emit("exit", this.#e.exitCode, null), n;
|
||
} else
|
||
return u.call(this.#e, e, ...r);
|
||
}
|
||
}, ku = globalThis.process, {
|
||
onExit: (
|
||
/**
|
||
* Called when the process is exiting, whether via signal, explicit
|
||
* exit, or running out of stuff to do.
|
||
*
|
||
* If the global process object is not suitable for instrumentation,
|
||
* then this will be a no-op.
|
||
*
|
||
* Returns a function that may be used to unload signal-exit.
|
||
*/
|
||
$0
|
||
),
|
||
load: (
|
||
/**
|
||
* Load the listeners. Likely you never need to call this, unless
|
||
* doing a rather deep integration with signal-exit functionality.
|
||
* Mostly exposed for the benefit of testing.
|
||
*
|
||
* @internal
|
||
*/
|
||
O0
|
||
),
|
||
unload: (
|
||
/**
|
||
* Unload the listeners. Likely you never need to call this, unless
|
||
* doing a rather deep integration with signal-exit functionality.
|
||
* Mostly exposed for the benefit of testing.
|
||
*
|
||
* @internal
|
||
*/
|
||
_0
|
||
)
|
||
} = T0(dr(ku) ? new Lu(ku) : new Iu());
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/spin.js
|
||
var vo = c((KE, xo) => {
|
||
"use strict";
|
||
xo.exports = /* @__PURE__ */ s(function(e, r) {
|
||
return e[r % e.length];
|
||
}, "spin");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/progress-bar.js
|
||
var wo = c((JE, Bo) => {
|
||
"use strict";
|
||
var I0 = Dr(), L0 = Tu(), k0 = wu(), P0 = Ze();
|
||
Bo.exports = function(t, e, r) {
|
||
if (I0("ONN", [t, e, r]), r < 0 && (r = 0), r > 1 && (r = 1), e <= 0)
|
||
return "";
|
||
var u = Math.round(e * r), n = e - u, o = [
|
||
{ type: "complete", value: yo(t.complete, u), length: u },
|
||
{ type: "remaining", value: yo(t.remaining, n), length: n }
|
||
];
|
||
return L0(e, o, t);
|
||
};
|
||
function yo(t, e) {
|
||
var r = "", u = e;
|
||
do
|
||
u % 2 && (r += t), u = Math.floor(u / 2), t += t;
|
||
while (u && P0(r) < e);
|
||
return k0(r, e);
|
||
}
|
||
s(yo, "repeat");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/base-theme.js
|
||
var So = c((QE, Ao) => {
|
||
"use strict";
|
||
var M0 = vo(), R0 = wo();
|
||
Ao.exports = {
|
||
activityIndicator: /* @__PURE__ */ s(function(t, e) {
|
||
if (t.spun != null)
|
||
return M0(e, t.spun);
|
||
}, "activityIndicator"),
|
||
progressbar: /* @__PURE__ */ s(function(t, e, r) {
|
||
if (t.completed != null)
|
||
return R0(e, r, t.completed);
|
||
}, "progressbar")
|
||
};
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/theme-set.js
|
||
var $o = c((t8, To) => {
|
||
"use strict";
|
||
To.exports = function() {
|
||
return z.newThemeSet();
|
||
};
|
||
var z = {};
|
||
z.baseTheme = So();
|
||
z.newTheme = function(t, e) {
|
||
return e || (e = t, t = this.baseTheme), Object.assign({}, t, e);
|
||
};
|
||
z.getThemeNames = function() {
|
||
return Object.keys(this.themes);
|
||
};
|
||
z.addTheme = function(t, e, r) {
|
||
this.themes[t] = this.newTheme(e, r);
|
||
};
|
||
z.addToAllThemes = function(t) {
|
||
var e = this.themes;
|
||
Object.keys(e).forEach(function(r) {
|
||
Object.assign(e[r], t);
|
||
}), Object.assign(this.baseTheme, t);
|
||
};
|
||
z.getTheme = function(t) {
|
||
if (!this.themes[t])
|
||
throw this.newMissingThemeError(t);
|
||
return this.themes[t];
|
||
};
|
||
z.setDefault = function(t, e) {
|
||
e == null && (e = t, t = {});
|
||
var r = t.platform == null ? "fallback" : t.platform, u = !!t.hasUnicode, n = !!t.hasColor;
|
||
this.defaults[r] || (this.defaults[r] = { true: {}, false: {} }), this.defaults[r][u][n] = e;
|
||
};
|
||
z.getDefault = function(t) {
|
||
t || (t = {});
|
||
var e = t.platform || process.platform, r = this.defaults[e] || this.defaults.fallback, u = !!t.hasUnicode, n = !!t.hasColor;
|
||
if (!r)
|
||
throw this.newMissingDefaultThemeError(e, u, n);
|
||
if (!r[u][n]) {
|
||
if (u && n && r[!u][n])
|
||
u = !1;
|
||
else if (u && n && r[u][!n])
|
||
n = !1;
|
||
else if (u && n && r[!u][!n])
|
||
u = !1, n = !1;
|
||
else if (u && !n && r[!u][n])
|
||
u = !1;
|
||
else if (!u && n && r[u][!n])
|
||
n = !1;
|
||
else if (r === this.defaults.fallback)
|
||
throw this.newMissingDefaultThemeError(e, u, n);
|
||
}
|
||
return r[u][n] ? this.getTheme(r[u][n]) : this.getDefault(Object.assign({}, t, { platform: "fallback" }));
|
||
};
|
||
z.newMissingThemeError = /* @__PURE__ */ s(function t(e) {
|
||
var r = new Error('Could not find a gauge theme named "' + e + '"');
|
||
return Error.captureStackTrace.call(r, t), r.theme = e, r.code = "EMISSINGTHEME", r;
|
||
}, "newMissingThemeError");
|
||
z.newMissingDefaultThemeError = /* @__PURE__ */ s(function t(e, r, u) {
|
||
var n = new Error(
|
||
`Could not find a gauge theme for your platform/unicode/color use combo:
|
||
platform = ` + e + `
|
||
hasUnicode = ` + r + `
|
||
hasColor = ` + u
|
||
);
|
||
return Error.captureStackTrace.call(n, t), n.platform = e, n.hasUnicode = r, n.hasColor = u, n.code = "EMISSINGTHEME", n;
|
||
}, "newMissingDefaultThemeError");
|
||
z.newThemeSet = function() {
|
||
var t = /* @__PURE__ */ s(function(e) {
|
||
return t.getDefault(e);
|
||
}, "themeset");
|
||
return Object.assign(t, z, {
|
||
themes: Object.assign({}, this.themes),
|
||
baseTheme: Object.assign({}, this.baseTheme),
|
||
defaults: JSON.parse(JSON.stringify(this.defaults || {}))
|
||
});
|
||
};
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/themes.js
|
||
var _o = c((u8, Oo) => {
|
||
"use strict";
|
||
var ve = ir().color, q0 = $o(), Z = Oo.exports = new q0();
|
||
Z.addTheme("ASCII", {
|
||
preProgressbar: "[",
|
||
postProgressbar: "]",
|
||
progressbarTheme: {
|
||
complete: "#",
|
||
remaining: "."
|
||
},
|
||
activityIndicatorTheme: "-\\|/",
|
||
preSubsection: ">"
|
||
});
|
||
Z.addTheme("colorASCII", Z.getTheme("ASCII"), {
|
||
progressbarTheme: {
|
||
preComplete: ve("bgBrightWhite", "brightWhite"),
|
||
complete: "#",
|
||
postComplete: ve("reset"),
|
||
preRemaining: ve("bgBrightBlack", "brightBlack"),
|
||
remaining: ".",
|
||
postRemaining: ve("reset")
|
||
}
|
||
});
|
||
Z.addTheme("brailleSpinner", {
|
||
preProgressbar: "(",
|
||
postProgressbar: ")",
|
||
progressbarTheme: {
|
||
complete: "#",
|
||
remaining: "\u2802"
|
||
},
|
||
activityIndicatorTheme: "\u280B\u2819\u2839\u2838\u283C\u2834\u2826\u2827\u2807\u280F",
|
||
preSubsection: ">"
|
||
});
|
||
Z.addTheme("colorBrailleSpinner", Z.getTheme("brailleSpinner"), {
|
||
progressbarTheme: {
|
||
preComplete: ve("bgBrightWhite", "brightWhite"),
|
||
complete: "#",
|
||
postComplete: ve("reset"),
|
||
preRemaining: ve("bgBrightBlack", "brightBlack"),
|
||
remaining: "\u2802",
|
||
postRemaining: ve("reset")
|
||
}
|
||
});
|
||
Z.setDefault({}, "ASCII");
|
||
Z.setDefault({ hasColor: !0 }, "colorASCII");
|
||
Z.setDefault({ platform: "darwin", hasUnicode: !0 }, "brailleSpinner");
|
||
Z.setDefault({ platform: "darwin", hasUnicode: !0, hasColor: !0 }, "colorBrailleSpinner");
|
||
Z.setDefault({ platform: "linux", hasUnicode: !0 }, "brailleSpinner");
|
||
Z.setDefault({ platform: "linux", hasUnicode: !0, hasColor: !0 }, "colorBrailleSpinner");
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/set-interval.js
|
||
var Lo = c((i8, Io) => {
|
||
"use strict";
|
||
Io.exports = setInterval;
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/process.js
|
||
var Pu = c((s8, ko) => {
|
||
"use strict";
|
||
ko.exports = process;
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/set-immediate.js
|
||
var Po = c((n8, Mu) => {
|
||
"use strict";
|
||
var N0 = Pu();
|
||
try {
|
||
Mu.exports = setImmediate;
|
||
} catch {
|
||
Mu.exports = N0.nextTick;
|
||
}
|
||
});
|
||
|
||
// ../node_modules/gauge/lib/index.js
|
||
var Ro = c((o8, Mo) => {
|
||
"use strict";
|
||
var j0 = lo(), G0 = co(), W0 = Fo(), V0 = (bo(), Vf(Eo)).onExit, U0 = _o(), Y0 = Lo(), Me = Pu(), H0 = Po();
|
||
Mo.exports = M;
|
||
function pr(t, e) {
|
||
return function() {
|
||
return e.call(t);
|
||
};
|
||
}
|
||
s(pr, "callWith");
|
||
function M(t, e) {
|
||
var r, u;
|
||
t && t.write ? (u = t, r = e || {}) : e && e.write ? (u = e, r = t || {}) : (u = Me.stderr, r = t || e || {}), this._status = {
|
||
spun: 0,
|
||
section: "",
|
||
subsection: ""
|
||
}, this._paused = !1, this._disabled = !0, this._showing = !1, this._onScreen = !1, this._needsRedraw = !1, this._hideCursor = r.hideCursor ==
|
||
null ? !0 : r.hideCursor, this._fixedFramerate = r.fixedFramerate == null ? !/^v0\.8\./.test(Me.version) : r.fixedFramerate, this._lastUpdateAt =
|
||
null, this._updateInterval = r.updateInterval == null ? 50 : r.updateInterval, this._themes = r.themes || U0, this._theme = r.theme;
|
||
var n = this._computeTheme(r.theme), o = r.template || [
|
||
{ type: "progressbar", length: 20 },
|
||
{ type: "activityIndicator", kerning: 1, length: 1 },
|
||
{ type: "section", kerning: 1, default: "" },
|
||
{ type: "subsection", kerning: 1, default: "" }
|
||
];
|
||
this.setWriteTo(u, r.tty);
|
||
var i = r.Plumbing || j0;
|
||
this._gauge = new i(n, o, this.getWidth()), this._$$doRedraw = pr(this, this._doRedraw), this._$$handleSizeChange = pr(this, this._handleSizeChange),
|
||
this._cleanupOnExit = r.cleanupOnExit == null || r.cleanupOnExit, this._removeOnExit = null, r.enabled || r.enabled == null && this._tty &&
|
||
this._tty.isTTY ? this.enable() : this.disable();
|
||
}
|
||
s(M, "Gauge");
|
||
M.prototype = {};
|
||
M.prototype.isEnabled = function() {
|
||
return !this._disabled;
|
||
};
|
||
M.prototype.setTemplate = function(t) {
|
||
this._gauge.setTemplate(t), this._showing && this._requestRedraw();
|
||
};
|
||
M.prototype._computeTheme = function(t) {
|
||
if (t || (t = {}), typeof t == "string")
|
||
t = this._themes.getTheme(t);
|
||
else if (Object.keys(t).length === 0 || t.hasUnicode != null || t.hasColor != null) {
|
||
var e = t.hasUnicode == null ? G0() : t.hasUnicode, r = t.hasColor == null ? W0 : t.hasColor;
|
||
t = this._themes.getDefault({
|
||
hasUnicode: e,
|
||
hasColor: r,
|
||
platform: t.platform
|
||
});
|
||
}
|
||
return t;
|
||
};
|
||
M.prototype.setThemeset = function(t) {
|
||
this._themes = t, this.setTheme(this._theme);
|
||
};
|
||
M.prototype.setTheme = function(t) {
|
||
this._gauge.setTheme(this._computeTheme(t)), this._showing && this._requestRedraw(), this._theme = t;
|
||
};
|
||
M.prototype._requestRedraw = function() {
|
||
this._needsRedraw = !0, this._fixedFramerate || this._doRedraw();
|
||
};
|
||
M.prototype.getWidth = function() {
|
||
return (this._tty && this._tty.columns || 80) - 1;
|
||
};
|
||
M.prototype.setWriteTo = function(t, e) {
|
||
var r = !this._disabled;
|
||
r && this.disable(), this._writeTo = t, this._tty = e || t === Me.stderr && Me.stdout.isTTY && Me.stdout || t.isTTY && t || this._tty, this.
|
||
_gauge && this._gauge.setWidth(this.getWidth()), r && this.enable();
|
||
};
|
||
M.prototype.enable = function() {
|
||
this._disabled && (this._disabled = !1, this._tty && this._enableEvents(), this._showing && this.show());
|
||
};
|
||
M.prototype.disable = function() {
|
||
this._disabled || (this._showing && (this._lastUpdateAt = null, this._showing = !1, this._doRedraw(), this._showing = !0), this._disabled =
|
||
!0, this._tty && this._disableEvents());
|
||
};
|
||
M.prototype._enableEvents = function() {
|
||
this._cleanupOnExit && (this._removeOnExit = V0(pr(this, this.disable))), this._tty.on("resize", this._$$handleSizeChange), this._fixedFramerate &&
|
||
(this.redrawTracker = Y0(this._$$doRedraw, this._updateInterval), this.redrawTracker.unref && this.redrawTracker.unref());
|
||
};
|
||
M.prototype._disableEvents = function() {
|
||
this._tty.removeListener("resize", this._$$handleSizeChange), this._fixedFramerate && clearInterval(this.redrawTracker), this._removeOnExit &&
|
||
this._removeOnExit();
|
||
};
|
||
M.prototype.hide = function(t) {
|
||
if (this._disabled || !this._showing)
|
||
return t && Me.nextTick(t);
|
||
this._showing = !1, this._doRedraw(), t && H0(t);
|
||
};
|
||
M.prototype.show = function(t, e) {
|
||
if (this._showing = !0, typeof t == "string")
|
||
this._status.section = t;
|
||
else if (typeof t == "object")
|
||
for (var r = Object.keys(t), u = 0; u < r.length; ++u) {
|
||
var n = r[u];
|
||
this._status[n] = t[n];
|
||
}
|
||
e != null && (this._status.completed = e), !this._disabled && this._requestRedraw();
|
||
};
|
||
M.prototype.pulse = function(t) {
|
||
this._status.subsection = t || "", this._status.spun++, !this._disabled && this._showing && this._requestRedraw();
|
||
};
|
||
M.prototype._handleSizeChange = function() {
|
||
this._gauge.setWidth(this._tty.columns - 1), this._requestRedraw();
|
||
};
|
||
M.prototype._doRedraw = function() {
|
||
if (!(this._disabled || this._paused)) {
|
||
if (!this._fixedFramerate) {
|
||
var t = Date.now();
|
||
if (this._lastUpdateAt && t - this._lastUpdateAt < this._updateInterval)
|
||
return;
|
||
this._lastUpdateAt = t;
|
||
}
|
||
if (!this._showing && this._onScreen) {
|
||
this._onScreen = !1;
|
||
var e = this._gauge.hide();
|
||
return this._hideCursor && (e += this._gauge.showCursor()), this._writeTo.write(e);
|
||
}
|
||
!this._showing && !this._onScreen || (this._showing && !this._onScreen && (this._onScreen = !0, this._needsRedraw = !0, this._hideCursor &&
|
||
this._writeTo.write(this._gauge.hideCursor())), this._needsRedraw && (this._writeTo.write(this._gauge.show(this._status)) || (this._paused =
|
||
!0, this._writeTo.on("drain", pr(this, function() {
|
||
this._paused = !1, this._doRedraw();
|
||
})))));
|
||
}
|
||
};
|
||
});
|
||
|
||
// ../node_modules/set-blocking/index.js
|
||
var No = c((a8, qo) => {
|
||
qo.exports = function(t) {
|
||
[process.stdout, process.stderr].forEach(function(e) {
|
||
e._handle && e.isTTY && typeof e._handle.setBlocking == "function" && e._handle.setBlocking(t);
|
||
});
|
||
};
|
||
});
|
||
|
||
// ../node_modules/npmlog/lib/log.js
|
||
var Uo = c((Wo, Vo) => {
|
||
"use strict";
|
||
var jo = Ln(), z0 = Ro(), K0 = k("events").EventEmitter, C = Wo = Vo.exports = new K0(), Ru = k("util"), Z0 = No(), qu = ir();
|
||
Z0(!0);
|
||
var ce = process.stderr;
|
||
Object.defineProperty(C, "stream", {
|
||
set: /* @__PURE__ */ s(function(t) {
|
||
ce = t, this.gauge && this.gauge.setWriteTo(ce, ce);
|
||
}, "set"),
|
||
get: /* @__PURE__ */ s(function() {
|
||
return ce;
|
||
}, "get")
|
||
});
|
||
var tt;
|
||
C.useColor = function() {
|
||
return tt ?? ce.isTTY;
|
||
};
|
||
C.enableColor = function() {
|
||
tt = !0, this.gauge.setTheme({ hasColor: tt, hasUnicode: rt });
|
||
};
|
||
C.disableColor = function() {
|
||
tt = !1, this.gauge.setTheme({ hasColor: tt, hasUnicode: rt });
|
||
};
|
||
C.level = "info";
|
||
C.gauge = new z0(ce, {
|
||
enabled: !1,
|
||
// no progress bars unless asked
|
||
theme: { hasColor: C.useColor() },
|
||
template: [
|
||
{ type: "progressbar", length: 20 },
|
||
{ type: "activityIndicator", kerning: 1, length: 1 },
|
||
{ type: "section", default: "" },
|
||
":",
|
||
{ type: "logline", kerning: 1, default: "" }
|
||
]
|
||
});
|
||
C.tracker = new jo.TrackerGroup();
|
||
C.progressEnabled = C.gauge.isEnabled();
|
||
var rt;
|
||
C.enableUnicode = function() {
|
||
rt = !0, this.gauge.setTheme({ hasColor: this.useColor(), hasUnicode: rt });
|
||
};
|
||
C.disableUnicode = function() {
|
||
rt = !1, this.gauge.setTheme({ hasColor: this.useColor(), hasUnicode: rt });
|
||
};
|
||
C.setGaugeThemeset = function(t) {
|
||
this.gauge.setThemeset(t);
|
||
};
|
||
C.setGaugeTemplate = function(t) {
|
||
this.gauge.setTemplate(t);
|
||
};
|
||
C.enableProgress = function() {
|
||
this.progressEnabled || this._paused || (this.progressEnabled = !0, this.tracker.on("change", this.showProgress), this.gauge.enable());
|
||
};
|
||
C.disableProgress = function() {
|
||
this.progressEnabled && (this.progressEnabled = !1, this.tracker.removeListener("change", this.showProgress), this.gauge.disable());
|
||
};
|
||
var Nu = ["newGroup", "newItem", "newStream"], Go = /* @__PURE__ */ s(function(t) {
|
||
return Object.keys(C).forEach(function(e) {
|
||
if (e[0] !== "_" && !Nu.filter(function(u) {
|
||
return u === e;
|
||
}).length && !t[e] && typeof C[e] == "function") {
|
||
var r = C[e];
|
||
t[e] = function() {
|
||
return r.apply(C, arguments);
|
||
};
|
||
}
|
||
}), t instanceof jo.TrackerGroup && Nu.forEach(function(e) {
|
||
var r = t[e];
|
||
t[e] = function() {
|
||
return Go(r.apply(t, arguments));
|
||
};
|
||
}), t;
|
||
}, "mixinLog");
|
||
Nu.forEach(function(t) {
|
||
C[t] = function() {
|
||
return Go(this.tracker[t].apply(this.tracker, arguments));
|
||
};
|
||
});
|
||
C.clearProgress = function(t) {
|
||
if (!this.progressEnabled)
|
||
return t && process.nextTick(t);
|
||
this.gauge.hide(t);
|
||
};
|
||
C.showProgress = function(t, e) {
|
||
if (this.progressEnabled) {
|
||
var r = {};
|
||
t && (r.section = t);
|
||
var u = C.record[C.record.length - 1];
|
||
if (u) {
|
||
r.subsection = u.prefix;
|
||
var n = C.disp[u.level] || u.level, o = this._format(n, C.style[u.level]);
|
||
u.prefix && (o += " " + this._format(u.prefix, this.prefixStyle)), o += " " + u.message.split(/\r?\n/)[0], r.logline = o;
|
||
}
|
||
r.completed = e || this.tracker.completed(), this.gauge.show(r);
|
||
}
|
||
}.bind(C);
|
||
C.pause = function() {
|
||
this._paused = !0, this.progressEnabled && this.gauge.disable();
|
||
};
|
||
C.resume = function() {
|
||
if (this._paused) {
|
||
this._paused = !1;
|
||
var t = this._buffer;
|
||
this._buffer = [], t.forEach(function(e) {
|
||
this.emitLog(e);
|
||
}, this), this.progressEnabled && this.gauge.enable();
|
||
}
|
||
};
|
||
C._buffer = [];
|
||
var J0 = 0;
|
||
C.record = [];
|
||
C.maxRecordSize = 1e4;
|
||
C.log = function(t, e, r) {
|
||
var u = this.levels[t];
|
||
if (u === void 0)
|
||
return this.emit("error", new Error(Ru.format(
|
||
"Undefined log level: %j",
|
||
t
|
||
)));
|
||
for (var n = new Array(arguments.length - 2), o = null, i = 2; i < arguments.length; i++) {
|
||
var D = n[i - 2] = arguments[i];
|
||
typeof D == "object" && D instanceof Error && D.stack && Object.defineProperty(D, "stack", {
|
||
value: o = D.stack + "",
|
||
enumerable: !0,
|
||
writable: !0
|
||
});
|
||
}
|
||
o && n.unshift(o + `
|
||
`), r = Ru.format.apply(Ru, n);
|
||
var a = {
|
||
id: J0++,
|
||
level: t,
|
||
prefix: String(e || ""),
|
||
message: r,
|
||
messageRaw: n
|
||
};
|
||
this.emit("log", a), this.emit("log." + t, a), a.prefix && this.emit(a.prefix, a), this.record.push(a);
|
||
var l = this.maxRecordSize, h = this.record.length - l;
|
||
if (h > l / 10) {
|
||
var p = Math.floor(l * 0.9);
|
||
this.record = this.record.slice(-1 * p);
|
||
}
|
||
this.emitLog(a);
|
||
}.bind(C);
|
||
C.emitLog = function(t) {
|
||
if (this._paused) {
|
||
this._buffer.push(t);
|
||
return;
|
||
}
|
||
this.progressEnabled && this.gauge.pulse(t.prefix);
|
||
var e = this.levels[t.level];
|
||
if (e !== void 0 && !(e < this.levels[this.level]) && !(e > 0 && !isFinite(e))) {
|
||
var r = C.disp[t.level] != null ? C.disp[t.level] : t.level;
|
||
this.clearProgress(), t.message.split(/\r?\n/).forEach(function(u) {
|
||
var n = this.heading;
|
||
n && (this.write(n, this.headingStyle), this.write(" ")), this.write(r, C.style[t.level]);
|
||
var o = t.prefix || "";
|
||
o && this.write(" "), this.write(o, this.prefixStyle), this.write(" " + u + `
|
||
`);
|
||
}, this), this.showProgress();
|
||
}
|
||
};
|
||
C._format = function(t, e) {
|
||
if (ce) {
|
||
var r = "";
|
||
if (this.useColor()) {
|
||
e = e || {};
|
||
var u = [];
|
||
e.fg && u.push(e.fg), e.bg && u.push("bg" + e.bg[0].toUpperCase() + e.bg.slice(1)), e.bold && u.push("bold"), e.underline && u.push(
|
||
"underline"), e.inverse && u.push("inverse"), u.length && (r += qu.color(u)), e.beep && (r += qu.beep());
|
||
}
|
||
return r += t, this.useColor() && (r += qu.color("reset")), r;
|
||
}
|
||
};
|
||
C.write = function(t, e) {
|
||
ce && ce.write(this._format(t, e));
|
||
};
|
||
C.addLevel = function(t, e, r, u) {
|
||
u == null && (u = t), this.levels[t] = e, this.style[t] = r, this[t] || (this[t] = function() {
|
||
var n = new Array(arguments.length + 1);
|
||
n[0] = t;
|
||
for (var o = 0; o < arguments.length; o++)
|
||
n[o + 1] = arguments[o];
|
||
return this.log.apply(this, n);
|
||
}.bind(this)), this.disp[t] = u;
|
||
};
|
||
C.prefixStyle = { fg: "magenta" };
|
||
C.headingStyle = { fg: "white", bg: "black" };
|
||
C.style = {};
|
||
C.levels = {};
|
||
C.disp = {};
|
||
C.addLevel("silly", -1 / 0, { inverse: !0 }, "sill");
|
||
C.addLevel("verbose", 1e3, { fg: "cyan", bg: "black" }, "verb");
|
||
C.addLevel("info", 2e3, { fg: "green" });
|
||
C.addLevel("timing", 2500, { fg: "green", bg: "black" });
|
||
C.addLevel("http", 3e3, { fg: "green", bg: "black" });
|
||
C.addLevel("notice", 3500, { fg: "cyan", bg: "black" });
|
||
C.addLevel("warn", 4e3, { fg: "black", bg: "yellow" }, "WARN");
|
||
C.addLevel("error", 5e3, { fg: "red", bg: "black" }, "ERR!");
|
||
C.addLevel("silent", 1 / 0);
|
||
C.on("error", function() {
|
||
});
|
||
});
|
||
|
||
// ../node_modules/pretty-hrtime/index.js
|
||
var zo = c((h8, Ho) => {
|
||
"use strict";
|
||
var X0 = ["h", "min", "s", "ms", "\u03BCs", "ns"], Q0 = ["hour", "minute", "second", "millisecond", "microsecond", "nanosecond"], Yo = [3600,
|
||
60, 1, 1e6, 1e3, 1];
|
||
Ho.exports = function(t, e) {
|
||
var r, u, n, o, i, D, a, l, h, p;
|
||
if (r = !1, u = !1, e && (r = e.verbose || !1, u = e.precise || !1), !Array.isArray(t) || t.length !== 2 || typeof t[0] != "number" || typeof t[1] !=
|
||
"number")
|
||
return "";
|
||
for (t[1] < 0 && (p = t[0] + t[1] / 1e9, t[0] = parseInt(p), t[1] = parseFloat((p % 1).toPrecision(9)) * 1e9), h = "", n = 0; n < 6 && (o =
|
||
n < 3 ? 0 : 1, i = t[o], n !== 3 && n !== 0 && (i = i % Yo[n - 1]), n === 2 && (i += t[1] / 1e9), D = i / Yo[n], !(D >= 1 && (r && (D = Math.
|
||
floor(D)), u ? l = D.toString() : (a = D >= 10 ? 0 : 2, l = D.toFixed(a)), l.indexOf(".") > -1 && l[l.length - 1] === "0" && (l = l.replace(
|
||
/\.?0+$/, "")), h && (h += " "), h += l, r ? (h += " " + Q0[n], l !== "1" && (h += "s")) : h += " " + X0[n], !r))); n++)
|
||
;
|
||
return h;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/sisteransi/src/index.js
|
||
var A = c((c8, Ko) => {
|
||
"use strict";
|
||
var ju = "\x1B", _ = `${ju}[`, ep = "\x07", Gu = {
|
||
to(t, e) {
|
||
return e ? `${_}${e + 1};${t + 1}H` : `${_}${t + 1}G`;
|
||
},
|
||
move(t, e) {
|
||
let r = "";
|
||
return t < 0 ? r += `${_}${-t}D` : t > 0 && (r += `${_}${t}C`), e < 0 ? r += `${_}${-e}A` : e > 0 && (r += `${_}${e}B`), r;
|
||
},
|
||
up: /* @__PURE__ */ s((t = 1) => `${_}${t}A`, "up"),
|
||
down: /* @__PURE__ */ s((t = 1) => `${_}${t}B`, "down"),
|
||
forward: /* @__PURE__ */ s((t = 1) => `${_}${t}C`, "forward"),
|
||
backward: /* @__PURE__ */ s((t = 1) => `${_}${t}D`, "backward"),
|
||
nextLine: /* @__PURE__ */ s((t = 1) => `${_}E`.repeat(t), "nextLine"),
|
||
prevLine: /* @__PURE__ */ s((t = 1) => `${_}F`.repeat(t), "prevLine"),
|
||
left: `${_}G`,
|
||
hide: `${_}?25l`,
|
||
show: `${_}?25h`,
|
||
save: `${ju}7`,
|
||
restore: `${ju}8`
|
||
}, tp = {
|
||
up: /* @__PURE__ */ s((t = 1) => `${_}S`.repeat(t), "up"),
|
||
down: /* @__PURE__ */ s((t = 1) => `${_}T`.repeat(t), "down")
|
||
}, rp = {
|
||
screen: `${_}2J`,
|
||
up: /* @__PURE__ */ s((t = 1) => `${_}1J`.repeat(t), "up"),
|
||
down: /* @__PURE__ */ s((t = 1) => `${_}J`.repeat(t), "down"),
|
||
line: `${_}2K`,
|
||
lineEnd: `${_}K`,
|
||
lineStart: `${_}1K`,
|
||
lines(t) {
|
||
let e = "";
|
||
for (let r = 0; r < t; r++)
|
||
e += this.line + (r < t - 1 ? Gu.up() : "");
|
||
return t && (e += Gu.left), e;
|
||
}
|
||
};
|
||
Ko.exports = { cursor: Gu, scroll: tp, erase: rp, beep: ep };
|
||
});
|
||
|
||
// ../node_modules/picocolors/picocolors.js
|
||
var ut = c((f8, Wu) => {
|
||
var gr = process || {}, Zo = gr.argv || [], mr = gr.env || {}, up = !(mr.NO_COLOR || Zo.includes("--no-color")) && (!!mr.FORCE_COLOR || Zo.
|
||
includes("--color") || gr.platform === "win32" || (gr.stdout || {}).isTTY && mr.TERM !== "dumb" || !!mr.CI), ip = /* @__PURE__ */ s((t, e, r = t) => (u) => {
|
||
let n = "" + u, o = n.indexOf(e, t.length);
|
||
return ~o ? t + sp(n, e, r, o) + e : t + n + e;
|
||
}, "formatter"), sp = /* @__PURE__ */ s((t, e, r, u) => {
|
||
let n = "", o = 0;
|
||
do
|
||
n += t.substring(o, u) + r, o = u + e.length, u = t.indexOf(e, o);
|
||
while (~u);
|
||
return n + t.substring(o);
|
||
}, "replaceClose"), Jo = /* @__PURE__ */ s((t = up) => {
|
||
let e = t ? ip : () => String;
|
||
return {
|
||
isColorSupported: t,
|
||
reset: e("\x1B[0m", "\x1B[0m"),
|
||
bold: e("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
|
||
dim: e("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
|
||
italic: e("\x1B[3m", "\x1B[23m"),
|
||
underline: e("\x1B[4m", "\x1B[24m"),
|
||
inverse: e("\x1B[7m", "\x1B[27m"),
|
||
hidden: e("\x1B[8m", "\x1B[28m"),
|
||
strikethrough: e("\x1B[9m", "\x1B[29m"),
|
||
black: e("\x1B[30m", "\x1B[39m"),
|
||
red: e("\x1B[31m", "\x1B[39m"),
|
||
green: e("\x1B[32m", "\x1B[39m"),
|
||
yellow: e("\x1B[33m", "\x1B[39m"),
|
||
blue: e("\x1B[34m", "\x1B[39m"),
|
||
magenta: e("\x1B[35m", "\x1B[39m"),
|
||
cyan: e("\x1B[36m", "\x1B[39m"),
|
||
white: e("\x1B[37m", "\x1B[39m"),
|
||
gray: e("\x1B[90m", "\x1B[39m"),
|
||
bgBlack: e("\x1B[40m", "\x1B[49m"),
|
||
bgRed: e("\x1B[41m", "\x1B[49m"),
|
||
bgGreen: e("\x1B[42m", "\x1B[49m"),
|
||
bgYellow: e("\x1B[43m", "\x1B[49m"),
|
||
bgBlue: e("\x1B[44m", "\x1B[49m"),
|
||
bgMagenta: e("\x1B[45m", "\x1B[49m"),
|
||
bgCyan: e("\x1B[46m", "\x1B[49m"),
|
||
bgWhite: e("\x1B[47m", "\x1B[49m"),
|
||
blackBright: e("\x1B[90m", "\x1B[39m"),
|
||
redBright: e("\x1B[91m", "\x1B[39m"),
|
||
greenBright: e("\x1B[92m", "\x1B[39m"),
|
||
yellowBright: e("\x1B[93m", "\x1B[39m"),
|
||
blueBright: e("\x1B[94m", "\x1B[39m"),
|
||
magentaBright: e("\x1B[95m", "\x1B[39m"),
|
||
cyanBright: e("\x1B[96m", "\x1B[39m"),
|
||
whiteBright: e("\x1B[97m", "\x1B[39m"),
|
||
bgBlackBright: e("\x1B[100m", "\x1B[49m"),
|
||
bgRedBright: e("\x1B[101m", "\x1B[49m"),
|
||
bgGreenBright: e("\x1B[102m", "\x1B[49m"),
|
||
bgYellowBright: e("\x1B[103m", "\x1B[49m"),
|
||
bgBlueBright: e("\x1B[104m", "\x1B[49m"),
|
||
bgMagentaBright: e("\x1B[105m", "\x1B[49m"),
|
||
bgCyanBright: e("\x1B[106m", "\x1B[49m"),
|
||
bgWhiteBright: e("\x1B[107m", "\x1B[49m")
|
||
};
|
||
}, "createColors");
|
||
Wu.exports = Jo();
|
||
Wu.exports.createColors = Jo;
|
||
});
|
||
|
||
// ../node_modules/eastasianwidth/eastasianwidth.js
|
||
var ii = c((z8, ui) => {
|
||
var Ae = {};
|
||
typeof ui > "u" ? window.eastasianwidth = Ae : ui.exports = Ae;
|
||
Ae.eastAsianWidth = function(t) {
|
||
var e = t.charCodeAt(0), r = t.length == 2 ? t.charCodeAt(1) : 0, u = e;
|
||
return 55296 <= e && e <= 56319 && 56320 <= r && r <= 57343 && (e &= 1023, r &= 1023, u = e << 10 | r, u += 65536), u == 12288 || 65281 <=
|
||
u && u <= 65376 || 65504 <= u && u <= 65510 ? "F" : u == 8361 || 65377 <= u && u <= 65470 || 65474 <= u && u <= 65479 || 65482 <= u && u <=
|
||
65487 || 65490 <= u && u <= 65495 || 65498 <= u && u <= 65500 || 65512 <= u && u <= 65518 ? "H" : 4352 <= u && u <= 4447 || 4515 <= u &&
|
||
u <= 4519 || 4602 <= u && u <= 4607 || 9001 <= u && u <= 9002 || 11904 <= u && u <= 11929 || 11931 <= u && u <= 12019 || 12032 <= u && u <=
|
||
12245 || 12272 <= u && u <= 12283 || 12289 <= u && u <= 12350 || 12353 <= u && u <= 12438 || 12441 <= u && u <= 12543 || 12549 <= u && u <=
|
||
12589 || 12593 <= u && u <= 12686 || 12688 <= u && u <= 12730 || 12736 <= u && u <= 12771 || 12784 <= u && u <= 12830 || 12832 <= u && u <=
|
||
12871 || 12880 <= u && u <= 13054 || 13056 <= u && u <= 19903 || 19968 <= u && u <= 42124 || 42128 <= u && u <= 42182 || 43360 <= u && u <=
|
||
43388 || 44032 <= u && u <= 55203 || 55216 <= u && u <= 55238 || 55243 <= u && u <= 55291 || 63744 <= u && u <= 64255 || 65040 <= u && u <=
|
||
65049 || 65072 <= u && u <= 65106 || 65108 <= u && u <= 65126 || 65128 <= u && u <= 65131 || 110592 <= u && u <= 110593 || 127488 <= u &&
|
||
u <= 127490 || 127504 <= u && u <= 127546 || 127552 <= u && u <= 127560 || 127568 <= u && u <= 127569 || 131072 <= u && u <= 194367 || 177984 <=
|
||
u && u <= 196605 || 196608 <= u && u <= 262141 ? "W" : 32 <= u && u <= 126 || 162 <= u && u <= 163 || 165 <= u && u <= 166 || u == 172 ||
|
||
u == 175 || 10214 <= u && u <= 10221 || 10629 <= u && u <= 10630 ? "Na" : u == 161 || u == 164 || 167 <= u && u <= 168 || u == 170 || 173 <=
|
||
u && u <= 174 || 176 <= u && u <= 180 || 182 <= u && u <= 186 || 188 <= u && u <= 191 || u == 198 || u == 208 || 215 <= u && u <= 216 ||
|
||
222 <= u && u <= 225 || u == 230 || 232 <= u && u <= 234 || 236 <= u && u <= 237 || u == 240 || 242 <= u && u <= 243 || 247 <= u && u <=
|
||
250 || u == 252 || u == 254 || u == 257 || u == 273 || u == 275 || u == 283 || 294 <= u && u <= 295 || u == 299 || 305 <= u && u <= 307 ||
|
||
u == 312 || 319 <= u && u <= 322 || u == 324 || 328 <= u && u <= 331 || u == 333 || 338 <= u && u <= 339 || 358 <= u && u <= 359 || u ==
|
||
363 || u == 462 || u == 464 || u == 466 || u == 468 || u == 470 || u == 472 || u == 474 || u == 476 || u == 593 || u == 609 || u == 708 ||
|
||
u == 711 || 713 <= u && u <= 715 || u == 717 || u == 720 || 728 <= u && u <= 731 || u == 733 || u == 735 || 768 <= u && u <= 879 || 913 <=
|
||
u && u <= 929 || 931 <= u && u <= 937 || 945 <= u && u <= 961 || 963 <= u && u <= 969 || u == 1025 || 1040 <= u && u <= 1103 || u == 1105 ||
|
||
u == 8208 || 8211 <= u && u <= 8214 || 8216 <= u && u <= 8217 || 8220 <= u && u <= 8221 || 8224 <= u && u <= 8226 || 8228 <= u && u <= 8231 ||
|
||
u == 8240 || 8242 <= u && u <= 8243 || u == 8245 || u == 8251 || u == 8254 || u == 8308 || u == 8319 || 8321 <= u && u <= 8324 || u == 8364 ||
|
||
u == 8451 || u == 8453 || u == 8457 || u == 8467 || u == 8470 || 8481 <= u && u <= 8482 || u == 8486 || u == 8491 || 8531 <= u && u <= 8532 ||
|
||
8539 <= u && u <= 8542 || 8544 <= u && u <= 8555 || 8560 <= u && u <= 8569 || u == 8585 || 8592 <= u && u <= 8601 || 8632 <= u && u <= 8633 ||
|
||
u == 8658 || u == 8660 || u == 8679 || u == 8704 || 8706 <= u && u <= 8707 || 8711 <= u && u <= 8712 || u == 8715 || u == 8719 || u == 8721 ||
|
||
u == 8725 || u == 8730 || 8733 <= u && u <= 8736 || u == 8739 || u == 8741 || 8743 <= u && u <= 8748 || u == 8750 || 8756 <= u && u <= 8759 ||
|
||
8764 <= u && u <= 8765 || u == 8776 || u == 8780 || u == 8786 || 8800 <= u && u <= 8801 || 8804 <= u && u <= 8807 || 8810 <= u && u <= 8811 ||
|
||
8814 <= u && u <= 8815 || 8834 <= u && u <= 8835 || 8838 <= u && u <= 8839 || u == 8853 || u == 8857 || u == 8869 || u == 8895 || u == 8978 ||
|
||
9312 <= u && u <= 9449 || 9451 <= u && u <= 9547 || 9552 <= u && u <= 9587 || 9600 <= u && u <= 9615 || 9618 <= u && u <= 9621 || 9632 <=
|
||
u && u <= 9633 || 9635 <= u && u <= 9641 || 9650 <= u && u <= 9651 || 9654 <= u && u <= 9655 || 9660 <= u && u <= 9661 || 9664 <= u && u <=
|
||
9665 || 9670 <= u && u <= 9672 || u == 9675 || 9678 <= u && u <= 9681 || 9698 <= u && u <= 9701 || u == 9711 || 9733 <= u && u <= 9734 ||
|
||
u == 9737 || 9742 <= u && u <= 9743 || 9748 <= u && u <= 9749 || u == 9756 || u == 9758 || u == 9792 || u == 9794 || 9824 <= u && u <= 9825 ||
|
||
9827 <= u && u <= 9829 || 9831 <= u && u <= 9834 || 9836 <= u && u <= 9837 || u == 9839 || 9886 <= u && u <= 9887 || 9918 <= u && u <= 9919 ||
|
||
9924 <= u && u <= 9933 || 9935 <= u && u <= 9953 || u == 9955 || 9960 <= u && u <= 9983 || u == 10045 || u == 10071 || 10102 <= u && u <=
|
||
10111 || 11093 <= u && u <= 11097 || 12872 <= u && u <= 12879 || 57344 <= u && u <= 63743 || 65024 <= u && u <= 65039 || u == 65533 || 127232 <=
|
||
u && u <= 127242 || 127248 <= u && u <= 127277 || 127280 <= u && u <= 127337 || 127344 <= u && u <= 127386 || 917760 <= u && u <= 917999 ||
|
||
983040 <= u && u <= 1048573 || 1048576 <= u && u <= 1114109 ? "A" : "N";
|
||
};
|
||
Ae.characterLength = function(t) {
|
||
var e = this.eastAsianWidth(t);
|
||
return e == "F" || e == "W" || e == "A" ? 2 : 1;
|
||
};
|
||
function PD(t) {
|
||
return t.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
|
||
}
|
||
s(PD, "stringToArray");
|
||
Ae.length = function(t) {
|
||
for (var e = PD(t), r = 0, u = 0; u < e.length; u++)
|
||
r = r + this.characterLength(e[u]);
|
||
return r;
|
||
};
|
||
Ae.slice = function(t, e, r) {
|
||
textLen = Ae.length(t), e = e || 0, r = r || 1, e < 0 && (e = textLen + e), r < 0 && (r = textLen + r);
|
||
for (var u = "", n = 0, o = PD(t), i = 0; i < o.length; i++) {
|
||
var D = o[i], a = Ae.length(D);
|
||
if (n >= e - (a == 2 ? 1 : 0))
|
||
if (n + a <= r)
|
||
u += D;
|
||
else
|
||
break;
|
||
n += a;
|
||
}
|
||
return u;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/emoji-regex/index.js
|
||
var si = c((Z8, MD) => {
|
||
"use strict";
|
||
MD.exports = 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;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/cli-boxes/boxes.json
|
||
var JD = c((E1, lm) => {
|
||
lm.exports = {
|
||
single: {
|
||
topLeft: "\u250C",
|
||
top: "\u2500",
|
||
topRight: "\u2510",
|
||
right: "\u2502",
|
||
bottomRight: "\u2518",
|
||
bottom: "\u2500",
|
||
bottomLeft: "\u2514",
|
||
left: "\u2502"
|
||
},
|
||
double: {
|
||
topLeft: "\u2554",
|
||
top: "\u2550",
|
||
topRight: "\u2557",
|
||
right: "\u2551",
|
||
bottomRight: "\u255D",
|
||
bottom: "\u2550",
|
||
bottomLeft: "\u255A",
|
||
left: "\u2551"
|
||
},
|
||
round: {
|
||
topLeft: "\u256D",
|
||
top: "\u2500",
|
||
topRight: "\u256E",
|
||
right: "\u2502",
|
||
bottomRight: "\u256F",
|
||
bottom: "\u2500",
|
||
bottomLeft: "\u2570",
|
||
left: "\u2502"
|
||
},
|
||
bold: {
|
||
topLeft: "\u250F",
|
||
top: "\u2501",
|
||
topRight: "\u2513",
|
||
right: "\u2503",
|
||
bottomRight: "\u251B",
|
||
bottom: "\u2501",
|
||
bottomLeft: "\u2517",
|
||
left: "\u2503"
|
||
},
|
||
singleDouble: {
|
||
topLeft: "\u2553",
|
||
top: "\u2500",
|
||
topRight: "\u2556",
|
||
right: "\u2551",
|
||
bottomRight: "\u255C",
|
||
bottom: "\u2500",
|
||
bottomLeft: "\u2559",
|
||
left: "\u2551"
|
||
},
|
||
doubleSingle: {
|
||
topLeft: "\u2552",
|
||
top: "\u2550",
|
||
topRight: "\u2555",
|
||
right: "\u2502",
|
||
bottomRight: "\u255B",
|
||
bottom: "\u2550",
|
||
bottomLeft: "\u2558",
|
||
left: "\u2502"
|
||
},
|
||
classic: {
|
||
topLeft: "+",
|
||
top: "-",
|
||
topRight: "+",
|
||
right: "|",
|
||
bottomRight: "+",
|
||
bottom: "-",
|
||
bottomLeft: "+",
|
||
left: "|"
|
||
},
|
||
arrow: {
|
||
topLeft: "\u2198",
|
||
top: "\u2193",
|
||
topRight: "\u2199",
|
||
right: "\u2190",
|
||
bottomRight: "\u2196",
|
||
bottom: "\u2191",
|
||
bottomLeft: "\u2197",
|
||
left: "\u2192"
|
||
}
|
||
};
|
||
});
|
||
|
||
// ../node_modules/cli-boxes/index.js
|
||
var hi = c((b1, li) => {
|
||
"use strict";
|
||
var XD = JD();
|
||
li.exports = XD;
|
||
li.exports.default = XD;
|
||
});
|
||
|
||
// ../node_modules/ansi-align/index.js
|
||
var ia = c((y1, ua) => {
|
||
"use strict";
|
||
var gm = Ze();
|
||
function Ne(t, e) {
|
||
if (!t) return t;
|
||
e = e || {};
|
||
let r = e.align || "center";
|
||
if (r === "left") return t;
|
||
let u = e.split || `
|
||
`, n = e.pad || " ", o = r !== "right" ? Fm : Cm, i = !1;
|
||
Array.isArray(t) || (i = !0, t = String(t).split(u));
|
||
let D, a = 0;
|
||
return t = t.map(function(l) {
|
||
return l = String(l), D = gm(l), a = Math.max(D, a), {
|
||
str: l,
|
||
width: D
|
||
};
|
||
}).map(function(l) {
|
||
return new Array(o(a, l.width) + 1).join(n) + l.str;
|
||
}), i ? t.join(u) : t;
|
||
}
|
||
s(Ne, "ansiAlign");
|
||
Ne.left = /* @__PURE__ */ s(function(e) {
|
||
return Ne(e, { align: "left" });
|
||
}, "left");
|
||
Ne.center = /* @__PURE__ */ s(function(e) {
|
||
return Ne(e, { align: "center" });
|
||
}, "center");
|
||
Ne.right = /* @__PURE__ */ s(function(e) {
|
||
return Ne(e, { align: "right" });
|
||
}, "right");
|
||
ua.exports = Ne;
|
||
function Fm(t, e) {
|
||
return Math.floor((t - e) / 2);
|
||
}
|
||
s(Fm, "halfDiff");
|
||
function Cm(t, e) {
|
||
return t - e;
|
||
}
|
||
s(Cm, "fullDiff");
|
||
});
|
||
|
||
// ../node_modules/kleur/index.js
|
||
var I = c((n6, xa) => {
|
||
"use strict";
|
||
var { FORCE_COLOR: Vm, NODE_DISABLE_COLORS: Um, TERM: Ym } = process.env, B = {
|
||
enabled: !Um && Ym !== "dumb" && Vm !== "0",
|
||
// modifiers
|
||
reset: w(0, 0),
|
||
bold: w(1, 22),
|
||
dim: w(2, 22),
|
||
italic: w(3, 23),
|
||
underline: w(4, 24),
|
||
inverse: w(7, 27),
|
||
hidden: w(8, 28),
|
||
strikethrough: w(9, 29),
|
||
// colors
|
||
black: w(30, 39),
|
||
red: w(31, 39),
|
||
green: w(32, 39),
|
||
yellow: w(33, 39),
|
||
blue: w(34, 39),
|
||
magenta: w(35, 39),
|
||
cyan: w(36, 39),
|
||
white: w(37, 39),
|
||
gray: w(90, 39),
|
||
grey: w(90, 39),
|
||
// background colors
|
||
bgBlack: w(40, 49),
|
||
bgRed: w(41, 49),
|
||
bgGreen: w(42, 49),
|
||
bgYellow: w(43, 49),
|
||
bgBlue: w(44, 49),
|
||
bgMagenta: w(45, 49),
|
||
bgCyan: w(46, 49),
|
||
bgWhite: w(47, 49)
|
||
};
|
||
function ba(t, e) {
|
||
let r = 0, u, n = "", o = "";
|
||
for (; r < t.length; r++)
|
||
u = t[r], n += u.open, o += u.close, e.includes(u.close) && (e = e.replace(u.rgx, u.close + u.open));
|
||
return n + e + o;
|
||
}
|
||
s(ba, "run");
|
||
function Hm(t, e) {
|
||
let r = { has: t, keys: e };
|
||
return r.reset = B.reset.bind(r), r.bold = B.bold.bind(r), r.dim = B.dim.bind(r), r.italic = B.italic.bind(r), r.underline = B.underline.
|
||
bind(r), r.inverse = B.inverse.bind(r), r.hidden = B.hidden.bind(r), r.strikethrough = B.strikethrough.bind(r), r.black = B.black.bind(r),
|
||
r.red = B.red.bind(r), r.green = B.green.bind(r), r.yellow = B.yellow.bind(r), r.blue = B.blue.bind(r), r.magenta = B.magenta.bind(r), r.
|
||
cyan = B.cyan.bind(r), r.white = B.white.bind(r), r.gray = B.gray.bind(r), r.grey = B.grey.bind(r), r.bgBlack = B.bgBlack.bind(r), r.bgRed =
|
||
B.bgRed.bind(r), r.bgGreen = B.bgGreen.bind(r), r.bgYellow = B.bgYellow.bind(r), r.bgBlue = B.bgBlue.bind(r), r.bgMagenta = B.bgMagenta.
|
||
bind(r), r.bgCyan = B.bgCyan.bind(r), r.bgWhite = B.bgWhite.bind(r), r;
|
||
}
|
||
s(Hm, "chain");
|
||
function w(t, e) {
|
||
let r = {
|
||
open: `\x1B[${t}m`,
|
||
close: `\x1B[${e}m`,
|
||
rgx: new RegExp(`\\x1b\\[${e}m`, "g")
|
||
};
|
||
return function(u) {
|
||
return this !== void 0 && this.has !== void 0 ? (this.has.includes(t) || (this.has.push(t), this.keys.push(r)), u === void 0 ? this : B.
|
||
enabled ? ba(this.keys, u + "") : u + "") : u === void 0 ? Hm([t], [r]) : B.enabled ? ba([r], u + "") : u + "";
|
||
};
|
||
}
|
||
s(w, "init");
|
||
xa.exports = B;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/action.js
|
||
var ya = c((D6, va) => {
|
||
"use strict";
|
||
va.exports = (t, e) => {
|
||
if (!(t.meta && t.name !== "escape")) {
|
||
if (t.ctrl) {
|
||
if (t.name === "a") return "first";
|
||
if (t.name === "c" || t.name === "d") return "abort";
|
||
if (t.name === "e") return "last";
|
||
if (t.name === "g") return "reset";
|
||
}
|
||
if (e) {
|
||
if (t.name === "j") return "down";
|
||
if (t.name === "k") return "up";
|
||
}
|
||
return t.name === "return" || t.name === "enter" ? "submit" : t.name === "backspace" ? "delete" : t.name === "delete" ? "deleteForward" :
|
||
t.name === "abort" ? "abort" : t.name === "escape" ? "exit" : t.name === "tab" ? "next" : t.name === "pagedown" ? "nextPage" : t.name ===
|
||
"pageup" ? "prevPage" : t.name === "home" ? "home" : t.name === "end" ? "end" : t.name === "up" ? "up" : t.name === "down" ? "down" : t.
|
||
name === "right" ? "right" : t.name === "left" ? "left" : !1;
|
||
}
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/strip.js
|
||
var $r = c((a6, Ba) => {
|
||
"use strict";
|
||
Ba.exports = (t) => {
|
||
let e = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"), r = new RegExp(e, "g");
|
||
return typeof t == "string" ? t.replace(r, "") : t;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/clear.js
|
||
var $a = c((l6, Ta) => {
|
||
"use strict";
|
||
function zm(t, e) {
|
||
var r = typeof Symbol < "u" && t[Symbol.iterator] || t["@@iterator"];
|
||
if (!r) {
|
||
if (Array.isArray(t) || (r = Km(t)) || e && t && typeof t.length == "number") {
|
||
r && (t = r);
|
||
var u = 0, n = /* @__PURE__ */ s(function() {
|
||
}, "F");
|
||
return { s: n, n: /* @__PURE__ */ s(function() {
|
||
return u >= t.length ? { done: !0 } : { done: !1, value: t[u++] };
|
||
}, "n"), e: /* @__PURE__ */ s(function(l) {
|
||
throw l;
|
||
}, "e"), f: n };
|
||
}
|
||
throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
|
||
}
|
||
var o = !0, i = !1, D;
|
||
return { s: /* @__PURE__ */ s(function() {
|
||
r = r.call(t);
|
||
}, "s"), n: /* @__PURE__ */ s(function() {
|
||
var l = r.next();
|
||
return o = l.done, l;
|
||
}, "n"), e: /* @__PURE__ */ s(function(l) {
|
||
i = !0, D = l;
|
||
}, "e"), f: /* @__PURE__ */ s(function() {
|
||
try {
|
||
!o && r.return != null && r.return();
|
||
} finally {
|
||
if (i) throw D;
|
||
}
|
||
}, "f") };
|
||
}
|
||
s(zm, "_createForOfIteratorHelper");
|
||
function Km(t, e) {
|
||
if (t) {
|
||
if (typeof t == "string") return wa(t, e);
|
||
var r = Object.prototype.toString.call(t).slice(8, -1);
|
||
if (r === "Object" && t.constructor && (r = t.constructor.name), r === "Map" || r === "Set") return Array.from(t);
|
||
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return wa(t, e);
|
||
}
|
||
}
|
||
s(Km, "_unsupportedIterableToArray");
|
||
function wa(t, e) {
|
||
(e == null || e > t.length) && (e = t.length);
|
||
for (var r = 0, u = new Array(e); r < e; r++) u[r] = t[r];
|
||
return u;
|
||
}
|
||
s(wa, "_arrayLikeToArray");
|
||
var Zm = $r(), Sa = A(), Aa = Sa.erase, Jm = Sa.cursor, Xm = /* @__PURE__ */ s((t) => [...Zm(t)].length, "width");
|
||
Ta.exports = function(t, e) {
|
||
if (!e) return Aa.line + Jm.to(0);
|
||
let r = 0, u = t.split(/\r?\n/);
|
||
var n = zm(u), o;
|
||
try {
|
||
for (n.s(); !(o = n.n()).done; ) {
|
||
let i = o.value;
|
||
r += 1 + Math.floor(Math.max(Xm(i) - 1, 0) / e);
|
||
}
|
||
} catch (i) {
|
||
n.e(i);
|
||
} finally {
|
||
n.f();
|
||
}
|
||
return Aa.lines(r);
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/figures.js
|
||
var bi = c((c6, Oa) => {
|
||
"use strict";
|
||
var It = {
|
||
arrowUp: "\u2191",
|
||
arrowDown: "\u2193",
|
||
arrowLeft: "\u2190",
|
||
arrowRight: "\u2192",
|
||
radioOn: "\u25C9",
|
||
radioOff: "\u25EF",
|
||
tick: "\u2714",
|
||
cross: "\u2716",
|
||
ellipsis: "\u2026",
|
||
pointerSmall: "\u203A",
|
||
line: "\u2500",
|
||
pointer: "\u276F"
|
||
}, Qm = {
|
||
arrowUp: It.arrowUp,
|
||
arrowDown: It.arrowDown,
|
||
arrowLeft: It.arrowLeft,
|
||
arrowRight: It.arrowRight,
|
||
radioOn: "(*)",
|
||
radioOff: "( )",
|
||
tick: "\u221A",
|
||
cross: "\xD7",
|
||
ellipsis: "...",
|
||
pointerSmall: "\xBB",
|
||
line: "\u2500",
|
||
pointer: ">"
|
||
}, eg = process.platform === "win32" ? Qm : It;
|
||
Oa.exports = eg;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/style.js
|
||
var Ia = c((d6, _a) => {
|
||
"use strict";
|
||
var ht = I(), Ge = bi(), xi = Object.freeze({
|
||
password: {
|
||
scale: 1,
|
||
render: /* @__PURE__ */ s((t) => "*".repeat(t.length), "render")
|
||
},
|
||
emoji: {
|
||
scale: 2,
|
||
render: /* @__PURE__ */ s((t) => "\u{1F603}".repeat(t.length), "render")
|
||
},
|
||
invisible: {
|
||
scale: 0,
|
||
render: /* @__PURE__ */ s((t) => "", "render")
|
||
},
|
||
default: {
|
||
scale: 1,
|
||
render: /* @__PURE__ */ s((t) => `${t}`, "render")
|
||
}
|
||
}), tg = /* @__PURE__ */ s((t) => xi[t] || xi.default, "render"), Lt = Object.freeze({
|
||
aborted: ht.red(Ge.cross),
|
||
done: ht.green(Ge.tick),
|
||
exited: ht.yellow(Ge.cross),
|
||
default: ht.cyan("?")
|
||
}), rg = /* @__PURE__ */ s((t, e, r) => e ? Lt.aborted : r ? Lt.exited : t ? Lt.done : Lt.default, "symbol"), ug = /* @__PURE__ */ s((t) => ht.
|
||
gray(t ? Ge.ellipsis : Ge.pointerSmall), "delimiter"), ig = /* @__PURE__ */ s((t, e) => ht.gray(t ? e ? Ge.pointerSmall : "+" : Ge.line), "\
|
||
item");
|
||
_a.exports = {
|
||
styles: xi,
|
||
render: tg,
|
||
symbols: Lt,
|
||
symbol: rg,
|
||
delimiter: ug,
|
||
item: ig
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/lines.js
|
||
var ka = c((p6, La) => {
|
||
"use strict";
|
||
var sg = $r();
|
||
La.exports = function(t, e) {
|
||
let r = String(sg(t) || "").split(/\r?\n/);
|
||
return e ? r.map((u) => Math.ceil(u.length / e)).reduce((u, n) => u + n) : r.length;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/wrap.js
|
||
var Ma = c((m6, Pa) => {
|
||
"use strict";
|
||
Pa.exports = (t, e = {}) => {
|
||
let r = Number.isSafeInteger(parseInt(e.margin)) ? new Array(parseInt(e.margin)).fill(" ").join("") : e.margin || "", u = e.width;
|
||
return (t || "").split(/\r?\n/g).map((n) => n.split(/\s+/g).reduce((o, i) => (i.length + r.length >= u || o[o.length - 1].length + i.length +
|
||
1 < u ? o[o.length - 1] += ` ${i}` : o.push(`${r}${i}`), o), [r]).join(`
|
||
`)).join(`
|
||
`);
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/entriesToDisplay.js
|
||
var qa = c((g6, Ra) => {
|
||
"use strict";
|
||
Ra.exports = (t, e, r) => {
|
||
r = r || e;
|
||
let u = Math.min(e - r, t - Math.floor(r / 2));
|
||
u < 0 && (u = 0);
|
||
let n = Math.min(u + r, e);
|
||
return {
|
||
startIndex: u,
|
||
endIndex: n
|
||
};
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/util/index.js
|
||
var te = c((F6, Na) => {
|
||
"use strict";
|
||
Na.exports = {
|
||
action: ya(),
|
||
clear: $a(),
|
||
style: Ia(),
|
||
strip: $r(),
|
||
figures: bi(),
|
||
lines: ka(),
|
||
wrap: Ma(),
|
||
entriesToDisplay: qa()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/prompt.js
|
||
var de = c((C6, Wa) => {
|
||
"use strict";
|
||
var ja = k("readline"), ng = te(), og = ng.action, Dg = k("events"), Ga = A(), ag = Ga.beep, lg = Ga.cursor, hg = I(), vi = class extends Dg {
|
||
static {
|
||
s(this, "Prompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(), this.firstRender = !0, this.in = e.stdin || process.stdin, this.out = e.stdout || process.stdout, this.onRender = (e.onRender ||
|
||
(() => {
|
||
})).bind(this);
|
||
let r = ja.createInterface({
|
||
input: this.in,
|
||
escapeCodeTimeout: 50
|
||
});
|
||
ja.emitKeypressEvents(this.in, r), this.in.isTTY && this.in.setRawMode(!0);
|
||
let u = ["SelectPrompt", "MultiselectPrompt"].indexOf(this.constructor.name) > -1, n = /* @__PURE__ */ s((o, i) => {
|
||
let D = og(i, u);
|
||
D === !1 ? this._ && this._(o, i) : typeof this[D] == "function" ? this[D](i) : this.bell();
|
||
}, "keypress");
|
||
this.close = () => {
|
||
this.out.write(lg.show), this.in.removeListener("keypress", n), this.in.isTTY && this.in.setRawMode(!1), r.close(), this.emit(this.aborted ?
|
||
"abort" : this.exited ? "exit" : "submit", this.value), this.closed = !0;
|
||
}, this.in.on("keypress", n);
|
||
}
|
||
fire() {
|
||
this.emit("state", {
|
||
value: this.value,
|
||
aborted: !!this.aborted,
|
||
exited: !!this.exited
|
||
});
|
||
}
|
||
bell() {
|
||
this.out.write(ag);
|
||
}
|
||
render() {
|
||
this.onRender(hg), this.firstRender && (this.firstRender = !1);
|
||
}
|
||
};
|
||
Wa.exports = vi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/text.js
|
||
var za = c((b6, Ha) => {
|
||
"use strict";
|
||
function Va(t, e, r, u, n, o, i) {
|
||
try {
|
||
var D = t[o](i), a = D.value;
|
||
} catch (l) {
|
||
r(l);
|
||
return;
|
||
}
|
||
D.done ? e(a) : Promise.resolve(a).then(u, n);
|
||
}
|
||
s(Va, "asyncGeneratorStep");
|
||
function Ua(t) {
|
||
return function() {
|
||
var e = this, r = arguments;
|
||
return new Promise(function(u, n) {
|
||
var o = t.apply(e, r);
|
||
function i(a) {
|
||
Va(o, u, n, i, D, "next", a);
|
||
}
|
||
s(i, "_next");
|
||
function D(a) {
|
||
Va(o, u, n, i, D, "throw", a);
|
||
}
|
||
s(D, "_throw"), i(void 0);
|
||
});
|
||
};
|
||
}
|
||
s(Ua, "_asyncToGenerator");
|
||
var Or = I(), cg = de(), Ya = A(), dg = Ya.erase, kt = Ya.cursor, _r = te(), yi = _r.style, Bi = _r.clear, fg = _r.lines, pg = _r.figures,
|
||
wi = class extends cg {
|
||
static {
|
||
s(this, "TextPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.transform = yi.render(e.style), this.scale = this.transform.scale, this.msg = e.message, this.initial = e.initial || "",
|
||
this.validator = e.validate || (() => !0), this.value = "", this.errorMsg = e.error || "Please Enter A Valid Value", this.cursor = +!!this.
|
||
initial, this.cursorOffset = 0, this.clear = Bi("", this.out.columns), this.render();
|
||
}
|
||
set value(e) {
|
||
!e && this.initial ? (this.placeholder = !0, this.rendered = Or.gray(this.transform.render(this.initial))) : (this.placeholder = !1, this.
|
||
rendered = this.transform.render(e)), this._value = e, this.fire();
|
||
}
|
||
get value() {
|
||
return this._value;
|
||
}
|
||
reset() {
|
||
this.value = "", this.cursor = +!!this.initial, this.cursorOffset = 0, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.value = this.value || this.initial, this.done = this.aborted = !0, this.error = !1, this.red = !1, this.fire(), this.render(), this.
|
||
out.write(`
|
||
`), this.close();
|
||
}
|
||
validate() {
|
||
var e = this;
|
||
return Ua(function* () {
|
||
let r = yield e.validator(e.value);
|
||
typeof r == "string" && (e.errorMsg = r, r = !1), e.error = !r;
|
||
})();
|
||
}
|
||
submit() {
|
||
var e = this;
|
||
return Ua(function* () {
|
||
if (e.value = e.value || e.initial, e.cursorOffset = 0, e.cursor = e.rendered.length, yield e.validate(), e.error) {
|
||
e.red = !0, e.fire(), e.render();
|
||
return;
|
||
}
|
||
e.done = !0, e.aborted = !1, e.fire(), e.render(), e.out.write(`
|
||
`), e.close();
|
||
})();
|
||
}
|
||
next() {
|
||
if (!this.placeholder) return this.bell();
|
||
this.value = this.initial, this.cursor = this.rendered.length, this.fire(), this.render();
|
||
}
|
||
moveCursor(e) {
|
||
this.placeholder || (this.cursor = this.cursor + e, this.cursorOffset += e);
|
||
}
|
||
_(e, r) {
|
||
let u = this.value.slice(0, this.cursor), n = this.value.slice(this.cursor);
|
||
this.value = `${u}${e}${n}`, this.red = !1, this.cursor = this.placeholder ? 0 : u.length + 1, this.render();
|
||
}
|
||
delete() {
|
||
if (this.isCursorAtStart()) return this.bell();
|
||
let e = this.value.slice(0, this.cursor - 1), r = this.value.slice(this.cursor);
|
||
this.value = `${e}${r}`, this.red = !1, this.isCursorAtStart() ? this.cursorOffset = 0 : (this.cursorOffset++, this.moveCursor(-1)), this.
|
||
render();
|
||
}
|
||
deleteForward() {
|
||
if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
|
||
let e = this.value.slice(0, this.cursor), r = this.value.slice(this.cursor + 1);
|
||
this.value = `${e}${r}`, this.red = !1, this.isCursorAtEnd() ? this.cursorOffset = 0 : this.cursorOffset++, this.render();
|
||
}
|
||
first() {
|
||
this.cursor = 0, this.render();
|
||
}
|
||
last() {
|
||
this.cursor = this.value.length, this.render();
|
||
}
|
||
left() {
|
||
if (this.cursor <= 0 || this.placeholder) return this.bell();
|
||
this.moveCursor(-1), this.render();
|
||
}
|
||
right() {
|
||
if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
|
||
this.moveCursor(1), this.render();
|
||
}
|
||
isCursorAtStart() {
|
||
return this.cursor === 0 || this.placeholder && this.cursor === 1;
|
||
}
|
||
isCursorAtEnd() {
|
||
return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1;
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender || (this.outputError && this.out.write(kt.down(fg(this.outputError, this.out.columns) - 1) + Bi(this.
|
||
outputError, this.out.columns)), this.out.write(Bi(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
|
||
[yi.symbol(this.done, this.aborted), Or.bold(this.msg), yi.delimiter(this.done), this.red ? Or.red(this.rendered) : this.rendered].join(
|
||
" "), this.error && (this.outputError += this.errorMsg.split(`
|
||
`).reduce((e, r, u) => e + `
|
||
${u ? " " : pg.pointerSmall} ${Or.red().italic(r)}`, "")), this.out.write(dg.line + kt.to(0) + this.outputText + kt.save + this.outputError +
|
||
kt.restore + kt.move(this.cursorOffset, 0)));
|
||
}
|
||
};
|
||
Ha.exports = wi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/select.js
|
||
var Xa = c((v6, Ja) => {
|
||
"use strict";
|
||
var fe = I(), mg = de(), Pt = te(), Ka = Pt.style, Za = Pt.clear, Ir = Pt.figures, gg = Pt.wrap, Fg = Pt.entriesToDisplay, Cg = A(), Eg = Cg.
|
||
cursor, Ai = class extends mg {
|
||
static {
|
||
s(this, "SelectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.hint = e.hint || "- Use arrow-keys. Return to submit.", this.warn = e.warn || "- This option is d\
|
||
isabled", this.cursor = e.initial || 0, this.choices = e.choices.map((r, u) => (typeof r == "string" && (r = {
|
||
title: r,
|
||
value: u
|
||
}), {
|
||
title: r && (r.title || r.value || r),
|
||
value: r && (r.value === void 0 ? u : r.value),
|
||
description: r && r.description,
|
||
selected: r && r.selected,
|
||
disabled: r && r.disabled
|
||
})), this.optionsPerPage = e.optionsPerPage || 10, this.value = (this.choices[this.cursor] || {}).value, this.clear = Za("", this.out.
|
||
columns), this.render();
|
||
}
|
||
moveCursor(e) {
|
||
this.cursor = e, this.value = this.choices[e].value, this.fire();
|
||
}
|
||
reset() {
|
||
this.moveCursor(0), this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.selection.disabled ? this.bell() : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close());
|
||
}
|
||
first() {
|
||
this.moveCursor(0), this.render();
|
||
}
|
||
last() {
|
||
this.moveCursor(this.choices.length - 1), this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.moveCursor(this.choices.length - 1) : this.moveCursor(this.cursor - 1), this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.choices.length - 1 ? this.moveCursor(0) : this.moveCursor(this.cursor + 1), this.render();
|
||
}
|
||
next() {
|
||
this.moveCursor((this.cursor + 1) % this.choices.length), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ") return this.submit();
|
||
}
|
||
get selection() {
|
||
return this.choices[this.cursor];
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender ? this.out.write(Eg.hide) : this.out.write(Za(this.outputText, this.out.columns)), super.render();
|
||
let e = Fg(this.cursor, this.choices.length, this.optionsPerPage), r = e.startIndex, u = e.endIndex;
|
||
if (this.outputText = [Ka.symbol(this.done, this.aborted), fe.bold(this.msg), Ka.delimiter(!1), this.done ? this.selection.title : this.
|
||
selection.disabled ? fe.yellow(this.warn) : fe.gray(this.hint)].join(" "), !this.done) {
|
||
this.outputText += `
|
||
`;
|
||
for (let n = r; n < u; n++) {
|
||
let o, i, D = "", a = this.choices[n];
|
||
n === r && r > 0 ? i = Ir.arrowUp : n === u - 1 && u < this.choices.length ? i = Ir.arrowDown : i = " ", a.disabled ? (o = this.cursor ===
|
||
n ? fe.gray().underline(a.title) : fe.strikethrough().gray(a.title), i = (this.cursor === n ? fe.bold().gray(Ir.pointer) + " " : "\
|
||
") + i) : (o = this.cursor === n ? fe.cyan().underline(a.title) : a.title, i = (this.cursor === n ? fe.cyan(Ir.pointer) + " " : " ") + i,
|
||
a.description && this.cursor === n && (D = ` - ${a.description}`, (i.length + o.length + D.length >= this.out.columns || a.description.
|
||
split(/\r?\n/).length > 1) && (D = `
|
||
` + gg(a.description, {
|
||
margin: 3,
|
||
width: this.out.columns
|
||
})))), this.outputText += `${i} ${o}${fe.gray(D)}
|
||
`;
|
||
}
|
||
}
|
||
this.out.write(this.outputText);
|
||
}
|
||
};
|
||
Ja.exports = Ai;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/toggle.js
|
||
var il = c((B6, ul) => {
|
||
"use strict";
|
||
var Lr = I(), bg = de(), tl = te(), Qa = tl.style, xg = tl.clear, rl = A(), el = rl.cursor, vg = rl.erase, Si = class extends bg {
|
||
static {
|
||
s(this, "TogglePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.value = !!e.initial, this.active = e.active || "on", this.inactive = e.inactive || "off", this.initialValue =
|
||
this.value, this.render();
|
||
}
|
||
reset() {
|
||
this.value = this.initialValue, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
deactivate() {
|
||
if (this.value === !1) return this.bell();
|
||
this.value = !1, this.render();
|
||
}
|
||
activate() {
|
||
if (this.value === !0) return this.bell();
|
||
this.value = !0, this.render();
|
||
}
|
||
delete() {
|
||
this.deactivate();
|
||
}
|
||
left() {
|
||
this.deactivate();
|
||
}
|
||
right() {
|
||
this.activate();
|
||
}
|
||
down() {
|
||
this.deactivate();
|
||
}
|
||
up() {
|
||
this.activate();
|
||
}
|
||
next() {
|
||
this.value = !this.value, this.fire(), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ")
|
||
this.value = !this.value;
|
||
else if (e === "1")
|
||
this.value = !0;
|
||
else if (e === "0")
|
||
this.value = !1;
|
||
else return this.bell();
|
||
this.render();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(el.hide) : this.out.write(xg(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [Qa.symbol(this.done, this.aborted), Lr.bold(this.msg), Qa.delimiter(this.done), this.value ? this.inactive : Lr.cyan().underline(
|
||
this.inactive), Lr.gray("/"), this.value ? Lr.cyan().underline(this.active) : this.active].join(" "), this.out.write(vg.line + el.to(0) +
|
||
this.outputText));
|
||
}
|
||
};
|
||
ul.exports = Si;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/datepart.js
|
||
var se = c((A6, sl) => {
|
||
"use strict";
|
||
var Ti = class t {
|
||
static {
|
||
s(this, "DatePart");
|
||
}
|
||
constructor({
|
||
token: e,
|
||
date: r,
|
||
parts: u,
|
||
locales: n
|
||
}) {
|
||
this.token = e, this.date = r || /* @__PURE__ */ new Date(), this.parts = u || [this], this.locales = n || {};
|
||
}
|
||
up() {
|
||
}
|
||
down() {
|
||
}
|
||
next() {
|
||
let e = this.parts.indexOf(this);
|
||
return this.parts.find((r, u) => u > e && r instanceof t);
|
||
}
|
||
setTo(e) {
|
||
}
|
||
prev() {
|
||
let e = [].concat(this.parts).reverse(), r = e.indexOf(this);
|
||
return e.find((u, n) => n > r && u instanceof t);
|
||
}
|
||
toString() {
|
||
return String(this.date);
|
||
}
|
||
};
|
||
sl.exports = Ti;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/meridiem.js
|
||
var ol = c((T6, nl) => {
|
||
"use strict";
|
||
var yg = se(), $i = class extends yg {
|
||
static {
|
||
s(this, "Meridiem");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setHours((this.date.getHours() + 12) % 24);
|
||
}
|
||
down() {
|
||
this.up();
|
||
}
|
||
toString() {
|
||
let e = this.date.getHours() > 12 ? "pm" : "am";
|
||
return /\A/.test(this.token) ? e.toUpperCase() : e;
|
||
}
|
||
};
|
||
nl.exports = $i;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/day.js
|
||
var al = c((O6, Dl) => {
|
||
"use strict";
|
||
var Bg = se(), wg = /* @__PURE__ */ s((t) => (t = t % 10, t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th"), "pos"), Oi = class extends Bg {
|
||
static {
|
||
s(this, "Day");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setDate(this.date.getDate() + 1);
|
||
}
|
||
down() {
|
||
this.date.setDate(this.date.getDate() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setDate(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getDate(), r = this.date.getDay();
|
||
return this.token === "DD" ? String(e).padStart(2, "0") : this.token === "Do" ? e + wg(e) : this.token === "d" ? r + 1 : this.token ===
|
||
"ddd" ? this.locales.weekdaysShort[r] : this.token === "dddd" ? this.locales.weekdays[r] : e;
|
||
}
|
||
};
|
||
Dl.exports = Oi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/hours.js
|
||
var hl = c((I6, ll) => {
|
||
"use strict";
|
||
var Ag = se(), _i = class extends Ag {
|
||
static {
|
||
s(this, "Hours");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setHours(this.date.getHours() + 1);
|
||
}
|
||
down() {
|
||
this.date.setHours(this.date.getHours() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setHours(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getHours();
|
||
return /h/.test(this.token) && (e = e % 12 || 12), this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
ll.exports = _i;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/milliseconds.js
|
||
var dl = c((k6, cl) => {
|
||
"use strict";
|
||
var Sg = se(), Ii = class extends Sg {
|
||
static {
|
||
s(this, "Milliseconds");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMilliseconds(this.date.getMilliseconds() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMilliseconds(this.date.getMilliseconds() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setMilliseconds(parseInt(e.substr(-this.token.length)));
|
||
}
|
||
toString() {
|
||
return String(this.date.getMilliseconds()).padStart(4, "0").substr(0, this.token.length);
|
||
}
|
||
};
|
||
cl.exports = Ii;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/minutes.js
|
||
var pl = c((M6, fl) => {
|
||
"use strict";
|
||
var Tg = se(), Li = class extends Tg {
|
||
static {
|
||
s(this, "Minutes");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMinutes(this.date.getMinutes() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMinutes(this.date.getMinutes() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setMinutes(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getMinutes();
|
||
return this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
fl.exports = Li;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/month.js
|
||
var gl = c((q6, ml) => {
|
||
"use strict";
|
||
var $g = se(), ki = class extends $g {
|
||
static {
|
||
s(this, "Month");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMonth(this.date.getMonth() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMonth(this.date.getMonth() - 1);
|
||
}
|
||
setTo(e) {
|
||
e = parseInt(e.substr(-2)) - 1, this.date.setMonth(e < 0 ? 0 : e);
|
||
}
|
||
toString() {
|
||
let e = this.date.getMonth(), r = this.token.length;
|
||
return r === 2 ? String(e + 1).padStart(2, "0") : r === 3 ? this.locales.monthsShort[e] : r === 4 ? this.locales.months[e] : String(e +
|
||
1);
|
||
}
|
||
};
|
||
ml.exports = ki;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/seconds.js
|
||
var Cl = c((j6, Fl) => {
|
||
"use strict";
|
||
var Og = se(), Pi = class extends Og {
|
||
static {
|
||
s(this, "Seconds");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setSeconds(this.date.getSeconds() + 1);
|
||
}
|
||
down() {
|
||
this.date.setSeconds(this.date.getSeconds() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setSeconds(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getSeconds();
|
||
return this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
Fl.exports = Pi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/year.js
|
||
var bl = c((W6, El) => {
|
||
"use strict";
|
||
var _g = se(), Mi = class extends _g {
|
||
static {
|
||
s(this, "Year");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setFullYear(this.date.getFullYear() + 1);
|
||
}
|
||
down() {
|
||
this.date.setFullYear(this.date.getFullYear() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setFullYear(e.substr(-4));
|
||
}
|
||
toString() {
|
||
let e = String(this.date.getFullYear()).padStart(4, "0");
|
||
return this.token.length === 2 ? e.substr(-2) : e;
|
||
}
|
||
};
|
||
El.exports = Mi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/dateparts/index.js
|
||
var vl = c((U6, xl) => {
|
||
"use strict";
|
||
xl.exports = {
|
||
DatePart: se(),
|
||
Meridiem: ol(),
|
||
Day: al(),
|
||
Hours: hl(),
|
||
Milliseconds: dl(),
|
||
Minutes: pl(),
|
||
Month: gl(),
|
||
Seconds: Cl(),
|
||
Year: bl()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/date.js
|
||
var Il = c((Y6, _l) => {
|
||
"use strict";
|
||
function yl(t, e, r, u, n, o, i) {
|
||
try {
|
||
var D = t[o](i), a = D.value;
|
||
} catch (l) {
|
||
r(l);
|
||
return;
|
||
}
|
||
D.done ? e(a) : Promise.resolve(a).then(u, n);
|
||
}
|
||
s(yl, "asyncGeneratorStep");
|
||
function Bl(t) {
|
||
return function() {
|
||
var e = this, r = arguments;
|
||
return new Promise(function(u, n) {
|
||
var o = t.apply(e, r);
|
||
function i(a) {
|
||
yl(o, u, n, i, D, "next", a);
|
||
}
|
||
s(i, "_next");
|
||
function D(a) {
|
||
yl(o, u, n, i, D, "throw", a);
|
||
}
|
||
s(D, "_throw"), i(void 0);
|
||
});
|
||
};
|
||
}
|
||
s(Bl, "_asyncToGenerator");
|
||
var Ri = I(), Ig = de(), Ni = te(), wl = Ni.style, Al = Ni.clear, Lg = Ni.figures, Ol = A(), kg = Ol.erase, Sl = Ol.cursor, pe = vl(), Tl = pe.
|
||
DatePart, Pg = pe.Meridiem, Mg = pe.Day, Rg = pe.Hours, qg = pe.Milliseconds, Ng = pe.Minutes, jg = pe.Month, Gg = pe.Seconds, Wg = pe.Year,
|
||
Vg = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g, $l = {
|
||
1: ({
|
||
token: t
|
||
}) => t.replace(/\\(.)/g, "$1"),
|
||
2: (t) => new Mg(t),
|
||
// Day // TODO
|
||
3: (t) => new jg(t),
|
||
// Month
|
||
4: (t) => new Wg(t),
|
||
// Year
|
||
5: (t) => new Pg(t),
|
||
// AM/PM // TODO (special)
|
||
6: (t) => new Rg(t),
|
||
// Hours
|
||
7: (t) => new Ng(t),
|
||
// Minutes
|
||
8: (t) => new Gg(t),
|
||
// Seconds
|
||
9: (t) => new qg(t)
|
||
// Fractional seconds
|
||
}, Ug = {
|
||
months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","),
|
||
monthsShort: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
|
||
weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
|
||
weekdaysShort: "Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")
|
||
}, qi = class extends Ig {
|
||
static {
|
||
s(this, "DatePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.cursor = 0, this.typed = "", this.locales = Object.assign(Ug, e.locales), this._date = e.initial ||
|
||
/* @__PURE__ */ new Date(), this.errorMsg = e.error || "Please Enter A Valid Value", this.validator = e.validate || (() => !0), this.mask =
|
||
e.mask || "YYYY-MM-DD HH:mm:ss", this.clear = Al("", this.out.columns), this.render();
|
||
}
|
||
get value() {
|
||
return this.date;
|
||
}
|
||
get date() {
|
||
return this._date;
|
||
}
|
||
set date(e) {
|
||
e && this._date.setTime(e.getTime());
|
||
}
|
||
set mask(e) {
|
||
let r;
|
||
for (this.parts = []; r = Vg.exec(e); ) {
|
||
let n = r.shift(), o = r.findIndex((i) => i != null);
|
||
this.parts.push(o in $l ? $l[o]({
|
||
token: r[o] || n,
|
||
date: this.date,
|
||
parts: this.parts,
|
||
locales: this.locales
|
||
}) : r[o] || n);
|
||
}
|
||
let u = this.parts.reduce((n, o) => (typeof o == "string" && typeof n[n.length - 1] == "string" ? n[n.length - 1] += o : n.push(o), n),
|
||
[]);
|
||
this.parts.splice(0), this.parts.push(...u), this.reset();
|
||
}
|
||
moveCursor(e) {
|
||
this.typed = "", this.cursor = e, this.fire();
|
||
}
|
||
reset() {
|
||
this.moveCursor(this.parts.findIndex((e) => e instanceof Tl)), this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
validate() {
|
||
var e = this;
|
||
return Bl(function* () {
|
||
let r = yield e.validator(e.value);
|
||
typeof r == "string" && (e.errorMsg = r, r = !1), e.error = !r;
|
||
})();
|
||
}
|
||
submit() {
|
||
var e = this;
|
||
return Bl(function* () {
|
||
if (yield e.validate(), e.error) {
|
||
e.color = "red", e.fire(), e.render();
|
||
return;
|
||
}
|
||
e.done = !0, e.aborted = !1, e.fire(), e.render(), e.out.write(`
|
||
`), e.close();
|
||
})();
|
||
}
|
||
up() {
|
||
this.typed = "", this.parts[this.cursor].up(), this.render();
|
||
}
|
||
down() {
|
||
this.typed = "", this.parts[this.cursor].down(), this.render();
|
||
}
|
||
left() {
|
||
let e = this.parts[this.cursor].prev();
|
||
if (e == null) return this.bell();
|
||
this.moveCursor(this.parts.indexOf(e)), this.render();
|
||
}
|
||
right() {
|
||
let e = this.parts[this.cursor].next();
|
||
if (e == null) return this.bell();
|
||
this.moveCursor(this.parts.indexOf(e)), this.render();
|
||
}
|
||
next() {
|
||
let e = this.parts[this.cursor].next();
|
||
this.moveCursor(e ? this.parts.indexOf(e) : this.parts.findIndex((r) => r instanceof Tl)), this.render();
|
||
}
|
||
_(e) {
|
||
/\d/.test(e) && (this.typed += e, this.parts[this.cursor].setTo(this.typed), this.render());
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(Sl.hide) : this.out.write(Al(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [wl.symbol(this.done, this.aborted), Ri.bold(this.msg), wl.delimiter(!1), this.parts.reduce((e, r, u) => e.concat(u === this.
|
||
cursor && !this.done ? Ri.cyan().underline(r.toString()) : r), []).join("")].join(" "), this.error && (this.outputText += this.errorMsg.
|
||
split(`
|
||
`).reduce((e, r, u) => e + `
|
||
${u ? " " : Lg.pointerSmall} ${Ri.red().italic(r)}`, "")), this.out.write(kg.line + Sl.to(0) + this.outputText));
|
||
}
|
||
};
|
||
_l.exports = qi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/number.js
|
||
var Nl = c((z6, ql) => {
|
||
"use strict";
|
||
function Ll(t, e, r, u, n, o, i) {
|
||
try {
|
||
var D = t[o](i), a = D.value;
|
||
} catch (l) {
|
||
r(l);
|
||
return;
|
||
}
|
||
D.done ? e(a) : Promise.resolve(a).then(u, n);
|
||
}
|
||
s(Ll, "asyncGeneratorStep");
|
||
function kl(t) {
|
||
return function() {
|
||
var e = this, r = arguments;
|
||
return new Promise(function(u, n) {
|
||
var o = t.apply(e, r);
|
||
function i(a) {
|
||
Ll(o, u, n, i, D, "next", a);
|
||
}
|
||
s(i, "_next");
|
||
function D(a) {
|
||
Ll(o, u, n, i, D, "throw", a);
|
||
}
|
||
s(D, "_throw"), i(void 0);
|
||
});
|
||
};
|
||
}
|
||
s(kl, "_asyncToGenerator");
|
||
var kr = I(), Yg = de(), Rl = A(), Pr = Rl.cursor, Hg = Rl.erase, Mr = te(), ji = Mr.style, zg = Mr.figures, Pl = Mr.clear, Kg = Mr.lines,
|
||
Zg = /[0-9]/, Gi = /* @__PURE__ */ s((t) => t !== void 0, "isDef"), Ml = /* @__PURE__ */ s((t, e) => {
|
||
let r = Math.pow(10, e);
|
||
return Math.round(t * r) / r;
|
||
}, "round"), Wi = class extends Yg {
|
||
static {
|
||
s(this, "NumberPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.transform = ji.render(e.style), this.msg = e.message, this.initial = Gi(e.initial) ? e.initial : "", this.float = !!e.float,
|
||
this.round = e.round || 2, this.inc = e.increment || 1, this.min = Gi(e.min) ? e.min : -1 / 0, this.max = Gi(e.max) ? e.max : 1 / 0, this.
|
||
errorMsg = e.error || "Please Enter A Valid Value", this.validator = e.validate || (() => !0), this.color = "cyan", this.value = "", this.
|
||
typed = "", this.lastHit = 0, this.render();
|
||
}
|
||
set value(e) {
|
||
!e && e !== 0 ? (this.placeholder = !0, this.rendered = kr.gray(this.transform.render(`${this.initial}`)), this._value = "") : (this.placeholder =
|
||
!1, this.rendered = this.transform.render(`${Ml(e, this.round)}`), this._value = Ml(e, this.round)), this.fire();
|
||
}
|
||
get value() {
|
||
return this._value;
|
||
}
|
||
parse(e) {
|
||
return this.float ? parseFloat(e) : parseInt(e);
|
||
}
|
||
valid(e) {
|
||
return e === "-" || e === "." && this.float || Zg.test(e);
|
||
}
|
||
reset() {
|
||
this.typed = "", this.value = "", this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
let e = this.value;
|
||
this.value = e !== "" ? e : this.initial, this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`\
|
||
|
||
`), this.close();
|
||
}
|
||
validate() {
|
||
var e = this;
|
||
return kl(function* () {
|
||
let r = yield e.validator(e.value);
|
||
typeof r == "string" && (e.errorMsg = r, r = !1), e.error = !r;
|
||
})();
|
||
}
|
||
submit() {
|
||
var e = this;
|
||
return kl(function* () {
|
||
if (yield e.validate(), e.error) {
|
||
e.color = "red", e.fire(), e.render();
|
||
return;
|
||
}
|
||
let r = e.value;
|
||
e.value = r !== "" ? r : e.initial, e.done = !0, e.aborted = !1, e.error = !1, e.fire(), e.render(), e.out.write(`
|
||
`), e.close();
|
||
})();
|
||
}
|
||
up() {
|
||
if (this.typed = "", this.value === "" && (this.value = this.min - this.inc), this.value >= this.max) return this.bell();
|
||
this.value += this.inc, this.color = "cyan", this.fire(), this.render();
|
||
}
|
||
down() {
|
||
if (this.typed = "", this.value === "" && (this.value = this.min + this.inc), this.value <= this.min) return this.bell();
|
||
this.value -= this.inc, this.color = "cyan", this.fire(), this.render();
|
||
}
|
||
delete() {
|
||
let e = this.value.toString();
|
||
if (e.length === 0) return this.bell();
|
||
this.value = this.parse(e = e.slice(0, -1)) || "", this.value !== "" && this.value < this.min && (this.value = this.min), this.color =
|
||
"cyan", this.fire(), this.render();
|
||
}
|
||
next() {
|
||
this.value = this.initial, this.fire(), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (!this.valid(e)) return this.bell();
|
||
let u = Date.now();
|
||
if (u - this.lastHit > 1e3 && (this.typed = ""), this.typed += e, this.lastHit = u, this.color = "cyan", e === ".") return this.fire();
|
||
this.value = Math.min(this.parse(this.typed), this.max), this.value > this.max && (this.value = this.max), this.value < this.min && (this.
|
||
value = this.min), this.fire(), this.render();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender || (this.outputError && this.out.write(Pr.down(Kg(this.outputError, this.out.columns) - 1) + Pl(this.
|
||
outputError, this.out.columns)), this.out.write(Pl(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
|
||
[ji.symbol(this.done, this.aborted), kr.bold(this.msg), ji.delimiter(this.done), !this.done || !this.done && !this.placeholder ? kr[this.
|
||
color]().underline(this.rendered) : this.rendered].join(" "), this.error && (this.outputError += this.errorMsg.split(`
|
||
`).reduce((e, r, u) => e + `
|
||
${u ? " " : zg.pointerSmall} ${kr.red().italic(r)}`, "")), this.out.write(Hg.line + Pr.to(0) + this.outputText + Pr.save + this.outputError +
|
||
Pr.restore));
|
||
}
|
||
};
|
||
ql.exports = Wi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/multiselect.js
|
||
var Ui = c((Z6, Wl) => {
|
||
"use strict";
|
||
var ne = I(), Jg = A(), Xg = Jg.cursor, Qg = de(), Mt = te(), jl = Mt.clear, $e = Mt.figures, Gl = Mt.style, eF = Mt.wrap, tF = Mt.entriesToDisplay,
|
||
Vi = class extends Qg {
|
||
static {
|
||
s(this, "MultiselectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.cursor = e.cursor || 0, this.scrollIndex = e.cursor || 0, this.hint = e.hint || "", this.warn = e.
|
||
warn || "- This option is disabled -", this.minSelected = e.min, this.showMinError = !1, this.maxChoices = e.max, this.instructions = e.
|
||
instructions, this.optionsPerPage = e.optionsPerPage || 10, this.value = e.choices.map((r, u) => (typeof r == "string" && (r = {
|
||
title: r,
|
||
value: u
|
||
}), {
|
||
title: r && (r.title || r.value || r),
|
||
description: r && r.description,
|
||
value: r && (r.value === void 0 ? u : r.value),
|
||
selected: r && r.selected,
|
||
disabled: r && r.disabled
|
||
})), this.clear = jl("", this.out.columns), e.overrideRender || this.render();
|
||
}
|
||
reset() {
|
||
this.value.map((e) => !e.selected), this.cursor = 0, this.fire(), this.render();
|
||
}
|
||
selected() {
|
||
return this.value.filter((e) => e.selected);
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
let e = this.value.filter((r) => r.selected);
|
||
this.minSelected && e.length < this.minSelected ? (this.showMinError = !0, this.render()) : (this.done = !0, this.aborted = !1, this.fire(),
|
||
this.render(), this.out.write(`
|
||
`), this.close());
|
||
}
|
||
first() {
|
||
this.cursor = 0, this.render();
|
||
}
|
||
last() {
|
||
this.cursor = this.value.length - 1, this.render();
|
||
}
|
||
next() {
|
||
this.cursor = (this.cursor + 1) % this.value.length, this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.cursor = this.value.length - 1 : this.cursor--, this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.value.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
|
||
}
|
||
left() {
|
||
this.value[this.cursor].selected = !1, this.render();
|
||
}
|
||
right() {
|
||
if (this.value.filter((e) => e.selected).length >= this.maxChoices) return this.bell();
|
||
this.value[this.cursor].selected = !0, this.render();
|
||
}
|
||
handleSpaceToggle() {
|
||
let e = this.value[this.cursor];
|
||
if (e.selected)
|
||
e.selected = !1, this.render();
|
||
else {
|
||
if (e.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
|
||
return this.bell();
|
||
e.selected = !0, this.render();
|
||
}
|
||
}
|
||
toggleAll() {
|
||
if (this.maxChoices !== void 0 || this.value[this.cursor].disabled)
|
||
return this.bell();
|
||
let e = !this.value[this.cursor].selected;
|
||
this.value.filter((r) => !r.disabled).forEach((r) => r.selected = e), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ")
|
||
this.handleSpaceToggle();
|
||
else if (e === "a")
|
||
this.toggleAll();
|
||
else
|
||
return this.bell();
|
||
}
|
||
renderInstructions() {
|
||
return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
|
||
Instructions:
|
||
${$e.arrowUp}/${$e.arrowDown}: Highlight option
|
||
${$e.arrowLeft}/${$e.arrowRight}/[space]: Toggle selection
|
||
` + (this.maxChoices === void 0 ? ` a: Toggle all
|
||
` : "") + " enter/return: Complete answer" : "";
|
||
}
|
||
renderOption(e, r, u, n) {
|
||
let o = (r.selected ? ne.green($e.radioOn) : $e.radioOff) + " " + n + " ", i, D;
|
||
return r.disabled ? i = e === u ? ne.gray().underline(r.title) : ne.strikethrough().gray(r.title) : (i = e === u ? ne.cyan().underline(
|
||
r.title) : r.title, e === u && r.description && (D = ` - ${r.description}`, (o.length + i.length + D.length >= this.out.columns || r.description.
|
||
split(/\r?\n/).length > 1) && (D = `
|
||
` + eF(r.description, {
|
||
margin: o.length,
|
||
width: this.out.columns
|
||
})))), o + i + ne.gray(D || "");
|
||
}
|
||
// shared with autocompleteMultiselect
|
||
paginateOptions(e) {
|
||
if (e.length === 0)
|
||
return ne.red("No matches for this query.");
|
||
let r = tF(this.cursor, e.length, this.optionsPerPage), u = r.startIndex, n = r.endIndex, o, i = [];
|
||
for (let D = u; D < n; D++)
|
||
D === u && u > 0 ? o = $e.arrowUp : D === n - 1 && n < e.length ? o = $e.arrowDown : o = " ", i.push(this.renderOption(this.cursor, e[D],
|
||
D, o));
|
||
return `
|
||
` + i.join(`
|
||
`);
|
||
}
|
||
// shared with autocomleteMultiselect
|
||
renderOptions(e) {
|
||
return this.done ? "" : this.paginateOptions(e);
|
||
}
|
||
renderDoneOrInstructions() {
|
||
if (this.done)
|
||
return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
|
||
let e = [ne.gray(this.hint), this.renderInstructions()];
|
||
return this.value[this.cursor].disabled && e.push(ne.yellow(this.warn)), e.join(" ");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender && this.out.write(Xg.hide), super.render();
|
||
let e = [Gl.symbol(this.done, this.aborted), ne.bold(this.msg), Gl.delimiter(!1), this.renderDoneOrInstructions()].join(" ");
|
||
this.showMinError && (e += ne.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), e += this.renderOptions(
|
||
this.value), this.out.write(this.clear + e), this.clear = jl(e, this.out.columns);
|
||
}
|
||
};
|
||
Wl.exports = Vi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/autocomplete.js
|
||
var Zl = c((X6, Kl) => {
|
||
"use strict";
|
||
function Vl(t, e, r, u, n, o, i) {
|
||
try {
|
||
var D = t[o](i), a = D.value;
|
||
} catch (l) {
|
||
r(l);
|
||
return;
|
||
}
|
||
D.done ? e(a) : Promise.resolve(a).then(u, n);
|
||
}
|
||
s(Vl, "asyncGeneratorStep");
|
||
function rF(t) {
|
||
return function() {
|
||
var e = this, r = arguments;
|
||
return new Promise(function(u, n) {
|
||
var o = t.apply(e, r);
|
||
function i(a) {
|
||
Vl(o, u, n, i, D, "next", a);
|
||
}
|
||
s(i, "_next");
|
||
function D(a) {
|
||
Vl(o, u, n, i, D, "throw", a);
|
||
}
|
||
s(D, "_throw"), i(void 0);
|
||
});
|
||
};
|
||
}
|
||
s(rF, "_asyncToGenerator");
|
||
var Rt = I(), uF = de(), zl = A(), iF = zl.erase, Ul = zl.cursor, qt = te(), Yi = qt.style, Yl = qt.clear, Hi = qt.figures, sF = qt.wrap, nF = qt.
|
||
entriesToDisplay, Hl = /* @__PURE__ */ s((t, e) => t[e] && (t[e].value || t[e].title || t[e]), "getVal"), oF = /* @__PURE__ */ s((t, e) => t[e] &&
|
||
(t[e].title || t[e].value || t[e]), "getTitle"), DF = /* @__PURE__ */ s((t, e) => {
|
||
let r = t.findIndex((u) => u.value === e || u.title === e);
|
||
return r > -1 ? r : void 0;
|
||
}, "getIndex"), zi = class extends uF {
|
||
static {
|
||
s(this, "AutocompletePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.suggest = e.suggest, this.choices = e.choices, this.initial = typeof e.initial == "number" ? e.initial :
|
||
DF(e.choices, e.initial), this.select = this.initial || e.cursor || 0, this.i18n = {
|
||
noMatches: e.noMatches || "no matches found"
|
||
}, this.fallback = e.fallback || this.initial, this.clearFirst = e.clearFirst || !1, this.suggestions = [], this.input = "", this.limit =
|
||
e.limit || 10, this.cursor = 0, this.transform = Yi.render(e.style), this.scale = this.transform.scale, this.render = this.render.bind(
|
||
this), this.complete = this.complete.bind(this), this.clear = Yl("", this.out.columns), this.complete(this.render), this.render();
|
||
}
|
||
set fallback(e) {
|
||
this._fb = Number.isSafeInteger(parseInt(e)) ? parseInt(e) : e;
|
||
}
|
||
get fallback() {
|
||
let e;
|
||
return typeof this._fb == "number" ? e = this.choices[this._fb] : typeof this._fb == "string" && (e = {
|
||
title: this._fb
|
||
}), e || this._fb || {
|
||
title: this.i18n.noMatches
|
||
};
|
||
}
|
||
moveSelect(e) {
|
||
this.select = e, this.suggestions.length > 0 ? this.value = Hl(this.suggestions, e) : this.value = this.fallback.value, this.fire();
|
||
}
|
||
complete(e) {
|
||
var r = this;
|
||
return rF(function* () {
|
||
let u = r.completing = r.suggest(r.input, r.choices), n = yield u;
|
||
if (r.completing !== u) return;
|
||
r.suggestions = n.map((i, D, a) => ({
|
||
title: oF(a, D),
|
||
value: Hl(a, D),
|
||
description: i.description
|
||
})), r.completing = !1;
|
||
let o = Math.max(n.length - 1, 0);
|
||
r.moveSelect(Math.min(o, r.select)), e && e();
|
||
})();
|
||
}
|
||
reset() {
|
||
this.input = "", this.complete(() => {
|
||
this.moveSelect(this.initial !== void 0 ? this.initial : 0), this.render();
|
||
}), this.render();
|
||
}
|
||
exit() {
|
||
this.clearFirst && this.input.length > 0 ? this.reset() : (this.done = this.exited = !0, this.aborted = !1, this.fire(), this.render(),
|
||
this.out.write(`
|
||
`), this.close());
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.exited = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.done = !0, this.aborted = this.exited = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
_(e, r) {
|
||
let u = this.input.slice(0, this.cursor), n = this.input.slice(this.cursor);
|
||
this.input = `${u}${e}${n}`, this.cursor = u.length + 1, this.complete(this.render), this.render();
|
||
}
|
||
delete() {
|
||
if (this.cursor === 0) return this.bell();
|
||
let e = this.input.slice(0, this.cursor - 1), r = this.input.slice(this.cursor);
|
||
this.input = `${e}${r}`, this.complete(this.render), this.cursor = this.cursor - 1, this.render();
|
||
}
|
||
deleteForward() {
|
||
if (this.cursor * this.scale >= this.rendered.length) return this.bell();
|
||
let e = this.input.slice(0, this.cursor), r = this.input.slice(this.cursor + 1);
|
||
this.input = `${e}${r}`, this.complete(this.render), this.render();
|
||
}
|
||
first() {
|
||
this.moveSelect(0), this.render();
|
||
}
|
||
last() {
|
||
this.moveSelect(this.suggestions.length - 1), this.render();
|
||
}
|
||
up() {
|
||
this.select === 0 ? this.moveSelect(this.suggestions.length - 1) : this.moveSelect(this.select - 1), this.render();
|
||
}
|
||
down() {
|
||
this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
|
||
}
|
||
next() {
|
||
this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
|
||
}
|
||
nextPage() {
|
||
this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1)), this.render();
|
||
}
|
||
prevPage() {
|
||
this.moveSelect(Math.max(this.select - this.limit, 0)), this.render();
|
||
}
|
||
left() {
|
||
if (this.cursor <= 0) return this.bell();
|
||
this.cursor = this.cursor - 1, this.render();
|
||
}
|
||
right() {
|
||
if (this.cursor * this.scale >= this.rendered.length) return this.bell();
|
||
this.cursor = this.cursor + 1, this.render();
|
||
}
|
||
renderOption(e, r, u, n) {
|
||
let o, i = u ? Hi.arrowUp : n ? Hi.arrowDown : " ", D = r ? Rt.cyan().underline(e.title) : e.title;
|
||
return i = (r ? Rt.cyan(Hi.pointer) + " " : " ") + i, e.description && (o = ` - ${e.description}`, (i.length + D.length + o.length >=
|
||
this.out.columns || e.description.split(/\r?\n/).length > 1) && (o = `
|
||
` + sF(e.description, {
|
||
margin: 3,
|
||
width: this.out.columns
|
||
}))), i + " " + D + Rt.gray(o || "");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender ? this.out.write(Ul.hide) : this.out.write(Yl(this.outputText, this.out.columns)), super.render();
|
||
let e = nF(this.select, this.choices.length, this.limit), r = e.startIndex, u = e.endIndex;
|
||
if (this.outputText = [Yi.symbol(this.done, this.aborted, this.exited), Rt.bold(this.msg), Yi.delimiter(this.completing), this.done &&
|
||
this.suggestions[this.select] ? this.suggestions[this.select].title : this.rendered = this.transform.render(this.input)].join(" "), !this.
|
||
done) {
|
||
let n = this.suggestions.slice(r, u).map((o, i) => this.renderOption(o, this.select === i + r, i === 0 && r > 0, i + r === u - 1 && u <
|
||
this.choices.length)).join(`
|
||
`);
|
||
this.outputText += `
|
||
` + (n || Rt.gray(this.fallback.title));
|
||
}
|
||
this.out.write(iF.line + Ul.to(0) + this.outputText);
|
||
}
|
||
};
|
||
Kl.exports = zi;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/autocompleteMultiselect.js
|
||
var eh = c((eb, Ql) => {
|
||
"use strict";
|
||
var me = I(), aF = A(), lF = aF.cursor, hF = Ui(), Zi = te(), Jl = Zi.clear, Xl = Zi.style, ct = Zi.figures, Ki = class extends hF {
|
||
static {
|
||
s(this, "AutocompleteMultiselectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
e.overrideRender = !0, super(e), this.inputValue = "", this.clear = Jl("", this.out.columns), this.filteredOptions = this.value, this.
|
||
render();
|
||
}
|
||
last() {
|
||
this.cursor = this.filteredOptions.length - 1, this.render();
|
||
}
|
||
next() {
|
||
this.cursor = (this.cursor + 1) % this.filteredOptions.length, this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.cursor = this.filteredOptions.length - 1 : this.cursor--, this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.filteredOptions.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
|
||
}
|
||
left() {
|
||
this.filteredOptions[this.cursor].selected = !1, this.render();
|
||
}
|
||
right() {
|
||
if (this.value.filter((e) => e.selected).length >= this.maxChoices) return this.bell();
|
||
this.filteredOptions[this.cursor].selected = !0, this.render();
|
||
}
|
||
delete() {
|
||
this.inputValue.length && (this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1), this.updateFilteredOptions());
|
||
}
|
||
updateFilteredOptions() {
|
||
let e = this.filteredOptions[this.cursor];
|
||
this.filteredOptions = this.value.filter((u) => this.inputValue ? !!(typeof u.title == "string" && u.title.toLowerCase().includes(this.
|
||
inputValue.toLowerCase()) || typeof u.value == "string" && u.value.toLowerCase().includes(this.inputValue.toLowerCase())) : !0);
|
||
let r = this.filteredOptions.findIndex((u) => u === e);
|
||
this.cursor = r < 0 ? 0 : r, this.render();
|
||
}
|
||
handleSpaceToggle() {
|
||
let e = this.filteredOptions[this.cursor];
|
||
if (e.selected)
|
||
e.selected = !1, this.render();
|
||
else {
|
||
if (e.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
|
||
return this.bell();
|
||
e.selected = !0, this.render();
|
||
}
|
||
}
|
||
handleInputChange(e) {
|
||
this.inputValue = this.inputValue + e, this.updateFilteredOptions();
|
||
}
|
||
_(e, r) {
|
||
e === " " ? this.handleSpaceToggle() : this.handleInputChange(e);
|
||
}
|
||
renderInstructions() {
|
||
return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
|
||
Instructions:
|
||
${ct.arrowUp}/${ct.arrowDown}: Highlight option
|
||
${ct.arrowLeft}/${ct.arrowRight}/[space]: Toggle selection
|
||
[a,b,c]/delete: Filter choices
|
||
enter/return: Complete answer
|
||
` : "";
|
||
}
|
||
renderCurrentInput() {
|
||
return `
|
||
Filtered results for: ${this.inputValue ? this.inputValue : me.gray("Enter something to filter")}
|
||
`;
|
||
}
|
||
renderOption(e, r, u) {
|
||
let n;
|
||
return r.disabled ? n = e === u ? me.gray().underline(r.title) : me.strikethrough().gray(r.title) : n = e === u ? me.cyan().underline(
|
||
r.title) : r.title, (r.selected ? me.green(ct.radioOn) : ct.radioOff) + " " + n;
|
||
}
|
||
renderDoneOrInstructions() {
|
||
if (this.done)
|
||
return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
|
||
let e = [me.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
|
||
return this.filteredOptions.length && this.filteredOptions[this.cursor].disabled && e.push(me.yellow(this.warn)), e.join(" ");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender && this.out.write(lF.hide), super.render();
|
||
let e = [Xl.symbol(this.done, this.aborted), me.bold(this.msg), Xl.delimiter(!1), this.renderDoneOrInstructions()].join(" ");
|
||
this.showMinError && (e += me.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), e += this.renderOptions(
|
||
this.filteredOptions), this.out.write(this.clear + e), this.clear = Jl(e, this.out.columns);
|
||
}
|
||
};
|
||
Ql.exports = Ki;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/confirm.js
|
||
var oh = c((rb, nh) => {
|
||
"use strict";
|
||
var th = I(), cF = de(), ih = te(), rh = ih.style, dF = ih.clear, sh = A(), fF = sh.erase, uh = sh.cursor, Ji = class extends cF {
|
||
static {
|
||
s(this, "ConfirmPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.value = e.initial, this.initialValue = !!e.initial, this.yesMsg = e.yes || "yes", this.yesOption =
|
||
e.yesOption || "(Y/n)", this.noMsg = e.no || "no", this.noOption = e.noOption || "(y/N)", this.render();
|
||
}
|
||
reset() {
|
||
this.value = this.initialValue, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.value = this.value || !1, this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
_(e, r) {
|
||
return e.toLowerCase() === "y" ? (this.value = !0, this.submit()) : e.toLowerCase() === "n" ? (this.value = !1, this.submit()) : this.
|
||
bell();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(uh.hide) : this.out.write(dF(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [rh.symbol(this.done, this.aborted), th.bold(this.msg), rh.delimiter(this.done), this.done ? this.value ? this.yesMsg : this.
|
||
noMsg : th.gray(this.initialValue ? this.yesOption : this.noOption)].join(" "), this.out.write(fF.line + uh.to(0) + this.outputText));
|
||
}
|
||
};
|
||
nh.exports = Ji;
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/elements/index.js
|
||
var ah = c((ib, Dh) => {
|
||
"use strict";
|
||
Dh.exports = {
|
||
TextPrompt: za(),
|
||
SelectPrompt: Xa(),
|
||
TogglePrompt: il(),
|
||
DatePrompt: Il(),
|
||
NumberPrompt: Nl(),
|
||
MultiselectPrompt: Ui(),
|
||
AutocompletePrompt: Zl(),
|
||
AutocompleteMultiselectPrompt: eh(),
|
||
ConfirmPrompt: oh()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/prompts.js
|
||
var hh = c((lh) => {
|
||
"use strict";
|
||
var U = lh, pF = ah(), Rr = /* @__PURE__ */ s((t) => t, "noop");
|
||
function oe(t, e, r = {}) {
|
||
return new Promise((u, n) => {
|
||
let o = new pF[t](e), i = r.onAbort || Rr, D = r.onSubmit || Rr, a = r.onExit || Rr;
|
||
o.on("state", e.onState || Rr), o.on("submit", (l) => u(D(l))), o.on("exit", (l) => u(a(l))), o.on("abort", (l) => n(i(l)));
|
||
});
|
||
}
|
||
s(oe, "toPrompt");
|
||
U.text = (t) => oe("TextPrompt", t);
|
||
U.password = (t) => (t.style = "password", U.text(t));
|
||
U.invisible = (t) => (t.style = "invisible", U.text(t));
|
||
U.number = (t) => oe("NumberPrompt", t);
|
||
U.date = (t) => oe("DatePrompt", t);
|
||
U.confirm = (t) => oe("ConfirmPrompt", t);
|
||
U.list = (t) => {
|
||
let e = t.separator || ",";
|
||
return oe("TextPrompt", t, {
|
||
onSubmit: /* @__PURE__ */ s((r) => r.split(e).map((u) => u.trim()), "onSubmit")
|
||
});
|
||
};
|
||
U.toggle = (t) => oe("TogglePrompt", t);
|
||
U.select = (t) => oe("SelectPrompt", t);
|
||
U.multiselect = (t) => {
|
||
t.choices = [].concat(t.choices || []);
|
||
let e = /* @__PURE__ */ s((r) => r.filter((u) => u.selected).map((u) => u.value), "toSelected");
|
||
return oe("MultiselectPrompt", t, {
|
||
onAbort: e,
|
||
onSubmit: e
|
||
});
|
||
};
|
||
U.autocompleteMultiselect = (t) => {
|
||
t.choices = [].concat(t.choices || []);
|
||
let e = /* @__PURE__ */ s((r) => r.filter((u) => u.selected).map((u) => u.value), "toSelected");
|
||
return oe("AutocompleteMultiselectPrompt", t, {
|
||
onAbort: e,
|
||
onSubmit: e
|
||
});
|
||
};
|
||
var mF = /* @__PURE__ */ s((t, e) => Promise.resolve(e.filter((r) => r.title.slice(0, t.length).toLowerCase() === t.toLowerCase())), "byTi\
|
||
tle");
|
||
U.autocomplete = (t) => (t.suggest = t.suggest || mF, t.choices = [].concat(t.choices || []), oe("AutocompletePrompt", t));
|
||
});
|
||
|
||
// ../node_modules/prompts/dist/index.js
|
||
var Ch = c((ob, Fh) => {
|
||
"use strict";
|
||
function ch(t, e) {
|
||
var r = Object.keys(t);
|
||
if (Object.getOwnPropertySymbols) {
|
||
var u = Object.getOwnPropertySymbols(t);
|
||
e && (u = u.filter(function(n) {
|
||
return Object.getOwnPropertyDescriptor(t, n).enumerable;
|
||
})), r.push.apply(r, u);
|
||
}
|
||
return r;
|
||
}
|
||
s(ch, "ownKeys");
|
||
function dh(t) {
|
||
for (var e = 1; e < arguments.length; e++) {
|
||
var r = arguments[e] != null ? arguments[e] : {};
|
||
e % 2 ? ch(Object(r), !0).forEach(function(u) {
|
||
gF(t, u, r[u]);
|
||
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(r)) : ch(Object(r)).forEach(function(u) {
|
||
Object.defineProperty(t, u, Object.getOwnPropertyDescriptor(r, u));
|
||
});
|
||
}
|
||
return t;
|
||
}
|
||
s(dh, "_objectSpread");
|
||
function gF(t, e, r) {
|
||
return e in t ? Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : t[e] = r, t;
|
||
}
|
||
s(gF, "_defineProperty");
|
||
function FF(t, e) {
|
||
var r = typeof Symbol < "u" && t[Symbol.iterator] || t["@@iterator"];
|
||
if (!r) {
|
||
if (Array.isArray(t) || (r = CF(t)) || e && t && typeof t.length == "number") {
|
||
r && (t = r);
|
||
var u = 0, n = /* @__PURE__ */ s(function() {
|
||
}, "F");
|
||
return { s: n, n: /* @__PURE__ */ s(function() {
|
||
return u >= t.length ? { done: !0 } : { done: !1, value: t[u++] };
|
||
}, "n"), e: /* @__PURE__ */ s(function(l) {
|
||
throw l;
|
||
}, "e"), f: n };
|
||
}
|
||
throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
|
||
}
|
||
var o = !0, i = !1, D;
|
||
return { s: /* @__PURE__ */ s(function() {
|
||
r = r.call(t);
|
||
}, "s"), n: /* @__PURE__ */ s(function() {
|
||
var l = r.next();
|
||
return o = l.done, l;
|
||
}, "n"), e: /* @__PURE__ */ s(function(l) {
|
||
i = !0, D = l;
|
||
}, "e"), f: /* @__PURE__ */ s(function() {
|
||
try {
|
||
!o && r.return != null && r.return();
|
||
} finally {
|
||
if (i) throw D;
|
||
}
|
||
}, "f") };
|
||
}
|
||
s(FF, "_createForOfIteratorHelper");
|
||
function CF(t, e) {
|
||
if (t) {
|
||
if (typeof t == "string") return fh(t, e);
|
||
var r = Object.prototype.toString.call(t).slice(8, -1);
|
||
if (r === "Object" && t.constructor && (r = t.constructor.name), r === "Map" || r === "Set") return Array.from(t);
|
||
if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return fh(t, e);
|
||
}
|
||
}
|
||
s(CF, "_unsupportedIterableToArray");
|
||
function fh(t, e) {
|
||
(e == null || e > t.length) && (e = t.length);
|
||
for (var r = 0, u = new Array(e); r < e; r++) u[r] = t[r];
|
||
return u;
|
||
}
|
||
s(fh, "_arrayLikeToArray");
|
||
function ph(t, e, r, u, n, o, i) {
|
||
try {
|
||
var D = t[o](i), a = D.value;
|
||
} catch (l) {
|
||
r(l);
|
||
return;
|
||
}
|
||
D.done ? e(a) : Promise.resolve(a).then(u, n);
|
||
}
|
||
s(ph, "asyncGeneratorStep");
|
||
function mh(t) {
|
||
return function() {
|
||
var e = this, r = arguments;
|
||
return new Promise(function(u, n) {
|
||
var o = t.apply(e, r);
|
||
function i(a) {
|
||
ph(o, u, n, i, D, "next", a);
|
||
}
|
||
s(i, "_next");
|
||
function D(a) {
|
||
ph(o, u, n, i, D, "throw", a);
|
||
}
|
||
s(D, "_throw"), i(void 0);
|
||
});
|
||
};
|
||
}
|
||
s(mh, "_asyncToGenerator");
|
||
var Xi = hh(), EF = ["suggest", "format", "onState", "validate", "onRender", "type"], gh = /* @__PURE__ */ s(() => {
|
||
}, "noop");
|
||
function Oe() {
|
||
return Qi.apply(this, arguments);
|
||
}
|
||
s(Oe, "prompt");
|
||
function Qi() {
|
||
return Qi = mh(function* (t = [], {
|
||
onSubmit: e = gh,
|
||
onCancel: r = gh
|
||
} = {}) {
|
||
let u = {}, n = Oe._override || {};
|
||
t = [].concat(t);
|
||
let o, i, D, a, l, h, p = /* @__PURE__ */ function() {
|
||
var E = mh(function* (b, y, R = !1) {
|
||
if (!(!R && b.validate && b.validate(y) !== !0))
|
||
return b.format ? yield b.format(y, u) : y;
|
||
});
|
||
return /* @__PURE__ */ s(function(y, R) {
|
||
return E.apply(this, arguments);
|
||
}, "getFormattedAnswer");
|
||
}();
|
||
var d = FF(t), m;
|
||
try {
|
||
for (d.s(); !(m = d.n()).done; ) {
|
||
i = m.value;
|
||
var g = i;
|
||
if (a = g.name, l = g.type, typeof l == "function" && (l = yield l(o, dh({}, u), i), i.type = l), !!l) {
|
||
for (let E in i) {
|
||
if (EF.includes(E)) continue;
|
||
let b = i[E];
|
||
i[E] = typeof b == "function" ? yield b(o, dh({}, u), h) : b;
|
||
}
|
||
if (h = i, typeof i.message != "string")
|
||
throw new Error("prompt message is required");
|
||
var F = i;
|
||
if (a = F.name, l = F.type, Xi[l] === void 0)
|
||
throw new Error(`prompt type (${l}) is not defined`);
|
||
if (n[i.name] !== void 0 && (o = yield p(i, n[i.name]), o !== void 0)) {
|
||
u[a] = o;
|
||
continue;
|
||
}
|
||
try {
|
||
o = Oe._injected ? bF(Oe._injected, i.initial) : yield Xi[l](i), u[a] = o = yield p(i, o, !0), D = yield e(i, o, u);
|
||
} catch {
|
||
D = !(yield r(i, u));
|
||
}
|
||
if (D) return u;
|
||
}
|
||
}
|
||
} catch (E) {
|
||
d.e(E);
|
||
} finally {
|
||
d.f();
|
||
}
|
||
return u;
|
||
}), Qi.apply(this, arguments);
|
||
}
|
||
s(Qi, "_prompt");
|
||
function bF(t, e) {
|
||
let r = t.shift();
|
||
if (r instanceof Error)
|
||
throw r;
|
||
return r === void 0 ? e : r;
|
||
}
|
||
s(bF, "getInjectedAnswer");
|
||
function xF(t) {
|
||
Oe._injected = (Oe._injected || []).concat(t);
|
||
}
|
||
s(xF, "inject");
|
||
function vF(t) {
|
||
Oe._override = Object.assign({}, t);
|
||
}
|
||
s(vF, "override");
|
||
Fh.exports = Object.assign(Oe, {
|
||
prompt: Oe,
|
||
prompts: Xi,
|
||
inject: xF,
|
||
override: vF
|
||
});
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/action.js
|
||
var bh = c((ab, Eh) => {
|
||
"use strict";
|
||
Eh.exports = (t, e) => {
|
||
if (!(t.meta && t.name !== "escape")) {
|
||
if (t.ctrl) {
|
||
if (t.name === "a") return "first";
|
||
if (t.name === "c" || t.name === "d") return "abort";
|
||
if (t.name === "e") return "last";
|
||
if (t.name === "g") return "reset";
|
||
}
|
||
if (e) {
|
||
if (t.name === "j") return "down";
|
||
if (t.name === "k") return "up";
|
||
}
|
||
return t.name === "return" || t.name === "enter" ? "submit" : t.name === "backspace" ? "delete" : t.name === "delete" ? "deleteForward" :
|
||
t.name === "abort" ? "abort" : t.name === "escape" ? "exit" : t.name === "tab" ? "next" : t.name === "pagedown" ? "nextPage" : t.name ===
|
||
"pageup" ? "prevPage" : t.name === "home" ? "home" : t.name === "end" ? "end" : t.name === "up" ? "up" : t.name === "down" ? "down" : t.
|
||
name === "right" ? "right" : t.name === "left" ? "left" : !1;
|
||
}
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/strip.js
|
||
var qr = c((lb, xh) => {
|
||
"use strict";
|
||
xh.exports = (t) => {
|
||
let e = [
|
||
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"
|
||
].join("|"), r = new RegExp(e, "g");
|
||
return typeof t == "string" ? t.replace(r, "") : t;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/clear.js
|
||
var Bh = c((hb, yh) => {
|
||
"use strict";
|
||
var yF = qr(), { erase: vh, cursor: BF } = A(), wF = /* @__PURE__ */ s((t) => [...yF(t)].length, "width");
|
||
yh.exports = function(t, e) {
|
||
if (!e) return vh.line + BF.to(0);
|
||
let r = 0, u = t.split(/\r?\n/);
|
||
for (let n of u)
|
||
r += 1 + Math.floor(Math.max(wF(n) - 1, 0) / e);
|
||
return vh.lines(r);
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/figures.js
|
||
var es = c((db, wh) => {
|
||
"use strict";
|
||
var Nt = {
|
||
arrowUp: "\u2191",
|
||
arrowDown: "\u2193",
|
||
arrowLeft: "\u2190",
|
||
arrowRight: "\u2192",
|
||
radioOn: "\u25C9",
|
||
radioOff: "\u25EF",
|
||
tick: "\u2714",
|
||
cross: "\u2716",
|
||
ellipsis: "\u2026",
|
||
pointerSmall: "\u203A",
|
||
line: "\u2500",
|
||
pointer: "\u276F"
|
||
}, AF = {
|
||
arrowUp: Nt.arrowUp,
|
||
arrowDown: Nt.arrowDown,
|
||
arrowLeft: Nt.arrowLeft,
|
||
arrowRight: Nt.arrowRight,
|
||
radioOn: "(*)",
|
||
radioOff: "( )",
|
||
tick: "\u221A",
|
||
cross: "\xD7",
|
||
ellipsis: "...",
|
||
pointerSmall: "\xBB",
|
||
line: "\u2500",
|
||
pointer: ">"
|
||
}, SF = process.platform === "win32" ? AF : Nt;
|
||
wh.exports = SF;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/style.js
|
||
var Sh = c((fb, Ah) => {
|
||
"use strict";
|
||
var dt = I(), We = es(), ts = Object.freeze({
|
||
password: { scale: 1, render: /* @__PURE__ */ s((t) => "*".repeat(t.length), "render") },
|
||
emoji: { scale: 2, render: /* @__PURE__ */ s((t) => "\u{1F603}".repeat(t.length), "render") },
|
||
invisible: { scale: 0, render: /* @__PURE__ */ s((t) => "", "render") },
|
||
default: { scale: 1, render: /* @__PURE__ */ s((t) => `${t}`, "render") }
|
||
}), TF = /* @__PURE__ */ s((t) => ts[t] || ts.default, "render"), jt = Object.freeze({
|
||
aborted: dt.red(We.cross),
|
||
done: dt.green(We.tick),
|
||
exited: dt.yellow(We.cross),
|
||
default: dt.cyan("?")
|
||
}), $F = /* @__PURE__ */ s((t, e, r) => e ? jt.aborted : r ? jt.exited : t ? jt.done : jt.default, "symbol"), OF = /* @__PURE__ */ s((t) => dt.
|
||
gray(t ? We.ellipsis : We.pointerSmall), "delimiter"), _F = /* @__PURE__ */ s((t, e) => dt.gray(t ? e ? We.pointerSmall : "+" : We.line), "\
|
||
item");
|
||
Ah.exports = {
|
||
styles: ts,
|
||
render: TF,
|
||
symbols: jt,
|
||
symbol: $F,
|
||
delimiter: OF,
|
||
item: _F
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/lines.js
|
||
var $h = c((mb, Th) => {
|
||
"use strict";
|
||
var IF = qr();
|
||
Th.exports = function(t, e) {
|
||
let r = String(IF(t) || "").split(/\r?\n/);
|
||
return e ? r.map((u) => Math.ceil(u.length / e)).reduce((u, n) => u + n) : r.length;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/wrap.js
|
||
var _h = c((gb, Oh) => {
|
||
"use strict";
|
||
Oh.exports = (t, e = {}) => {
|
||
let r = Number.isSafeInteger(parseInt(e.margin)) ? new Array(parseInt(e.margin)).fill(" ").join("") : e.margin || "", u = e.width;
|
||
return (t || "").split(/\r?\n/g).map((n) => n.split(/\s+/g).reduce((o, i) => (i.length + r.length >= u || o[o.length - 1].length + i.length +
|
||
1 < u ? o[o.length - 1] += ` ${i}` : o.push(`${r}${i}`), o), [r]).join(`
|
||
`)).join(`
|
||
`);
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/entriesToDisplay.js
|
||
var Lh = c((Fb, Ih) => {
|
||
"use strict";
|
||
Ih.exports = (t, e, r) => {
|
||
r = r || e;
|
||
let u = Math.min(e - r, t - Math.floor(r / 2));
|
||
u < 0 && (u = 0);
|
||
let n = Math.min(u + r, e);
|
||
return { startIndex: u, endIndex: n };
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/util/index.js
|
||
var re = c((Cb, kh) => {
|
||
"use strict";
|
||
kh.exports = {
|
||
action: bh(),
|
||
clear: Bh(),
|
||
style: Sh(),
|
||
strip: qr(),
|
||
figures: es(),
|
||
lines: $h(),
|
||
wrap: _h(),
|
||
entriesToDisplay: Lh()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/prompt.js
|
||
var ge = c((Eb, Mh) => {
|
||
"use strict";
|
||
var Ph = k("readline"), { action: LF } = re(), kF = k("events"), { beep: PF, cursor: MF } = A(), RF = I(), rs = class extends kF {
|
||
static {
|
||
s(this, "Prompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(), this.firstRender = !0, this.in = e.stdin || process.stdin, this.out = e.stdout || process.stdout, this.onRender = (e.onRender ||
|
||
(() => {
|
||
})).bind(this);
|
||
let r = Ph.createInterface({ input: this.in, escapeCodeTimeout: 50 });
|
||
Ph.emitKeypressEvents(this.in, r), this.in.isTTY && this.in.setRawMode(!0);
|
||
let u = ["SelectPrompt", "MultiselectPrompt"].indexOf(this.constructor.name) > -1, n = /* @__PURE__ */ s((o, i) => {
|
||
let D = LF(i, u);
|
||
D === !1 ? this._ && this._(o, i) : typeof this[D] == "function" ? this[D](i) : this.bell();
|
||
}, "keypress");
|
||
this.close = () => {
|
||
this.out.write(MF.show), this.in.removeListener("keypress", n), this.in.isTTY && this.in.setRawMode(!1), r.close(), this.emit(this.aborted ?
|
||
"abort" : this.exited ? "exit" : "submit", this.value), this.closed = !0;
|
||
}, this.in.on("keypress", n);
|
||
}
|
||
fire() {
|
||
this.emit("state", {
|
||
value: this.value,
|
||
aborted: !!this.aborted,
|
||
exited: !!this.exited
|
||
});
|
||
}
|
||
bell() {
|
||
this.out.write(PF);
|
||
}
|
||
render() {
|
||
this.onRender(RF), this.firstRender && (this.firstRender = !1);
|
||
}
|
||
};
|
||
Mh.exports = rs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/text.js
|
||
var qh = c((xb, Rh) => {
|
||
var Nr = I(), qF = ge(), { erase: NF, cursor: Gt } = A(), { style: us, clear: is, lines: jF, figures: GF } = re(), ss = class extends qF {
|
||
static {
|
||
s(this, "TextPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.transform = us.render(e.style), this.scale = this.transform.scale, this.msg = e.message, this.initial = e.initial || "",
|
||
this.validator = e.validate || (() => !0), this.value = "", this.errorMsg = e.error || "Please Enter A Valid Value", this.cursor = +!!this.
|
||
initial, this.cursorOffset = 0, this.clear = is("", this.out.columns), this.render();
|
||
}
|
||
set value(e) {
|
||
!e && this.initial ? (this.placeholder = !0, this.rendered = Nr.gray(this.transform.render(this.initial))) : (this.placeholder = !1, this.
|
||
rendered = this.transform.render(e)), this._value = e, this.fire();
|
||
}
|
||
get value() {
|
||
return this._value;
|
||
}
|
||
reset() {
|
||
this.value = "", this.cursor = +!!this.initial, this.cursorOffset = 0, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.value = this.value || this.initial, this.done = this.aborted = !0, this.error = !1, this.red = !1, this.fire(), this.render(), this.
|
||
out.write(`
|
||
`), this.close();
|
||
}
|
||
async validate() {
|
||
let e = await this.validator(this.value);
|
||
typeof e == "string" && (this.errorMsg = e, e = !1), this.error = !e;
|
||
}
|
||
async submit() {
|
||
if (this.value = this.value || this.initial, this.cursorOffset = 0, this.cursor = this.rendered.length, await this.validate(), this.error) {
|
||
this.red = !0, this.fire(), this.render();
|
||
return;
|
||
}
|
||
this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
next() {
|
||
if (!this.placeholder) return this.bell();
|
||
this.value = this.initial, this.cursor = this.rendered.length, this.fire(), this.render();
|
||
}
|
||
moveCursor(e) {
|
||
this.placeholder || (this.cursor = this.cursor + e, this.cursorOffset += e);
|
||
}
|
||
_(e, r) {
|
||
let u = this.value.slice(0, this.cursor), n = this.value.slice(this.cursor);
|
||
this.value = `${u}${e}${n}`, this.red = !1, this.cursor = this.placeholder ? 0 : u.length + 1, this.render();
|
||
}
|
||
delete() {
|
||
if (this.isCursorAtStart()) return this.bell();
|
||
let e = this.value.slice(0, this.cursor - 1), r = this.value.slice(this.cursor);
|
||
this.value = `${e}${r}`, this.red = !1, this.isCursorAtStart() ? this.cursorOffset = 0 : (this.cursorOffset++, this.moveCursor(-1)), this.
|
||
render();
|
||
}
|
||
deleteForward() {
|
||
if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
|
||
let e = this.value.slice(0, this.cursor), r = this.value.slice(this.cursor + 1);
|
||
this.value = `${e}${r}`, this.red = !1, this.isCursorAtEnd() ? this.cursorOffset = 0 : this.cursorOffset++, this.render();
|
||
}
|
||
first() {
|
||
this.cursor = 0, this.render();
|
||
}
|
||
last() {
|
||
this.cursor = this.value.length, this.render();
|
||
}
|
||
left() {
|
||
if (this.cursor <= 0 || this.placeholder) return this.bell();
|
||
this.moveCursor(-1), this.render();
|
||
}
|
||
right() {
|
||
if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
|
||
this.moveCursor(1), this.render();
|
||
}
|
||
isCursorAtStart() {
|
||
return this.cursor === 0 || this.placeholder && this.cursor === 1;
|
||
}
|
||
isCursorAtEnd() {
|
||
return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1;
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender || (this.outputError && this.out.write(Gt.down(jF(this.outputError, this.out.columns) - 1) + is(this.
|
||
outputError, this.out.columns)), this.out.write(is(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
|
||
[
|
||
us.symbol(this.done, this.aborted),
|
||
Nr.bold(this.msg),
|
||
us.delimiter(this.done),
|
||
this.red ? Nr.red(this.rendered) : this.rendered
|
||
].join(" "), this.error && (this.outputError += this.errorMsg.split(`
|
||
`).reduce((e, r, u) => e + `
|
||
${u ? " " : GF.pointerSmall} ${Nr.red().italic(r)}`, "")), this.out.write(NF.line + Gt.to(0) + this.outputText + Gt.save + this.outputError +
|
||
Gt.restore + Gt.move(this.cursorOffset, 0)));
|
||
}
|
||
};
|
||
Rh.exports = ss;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/select.js
|
||
var Wh = c((yb, Gh) => {
|
||
"use strict";
|
||
var Fe = I(), WF = ge(), { style: Nh, clear: jh, figures: jr, wrap: VF, entriesToDisplay: UF } = re(), { cursor: YF } = A(), ns = class extends WF {
|
||
static {
|
||
s(this, "SelectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.hint = e.hint || "- Use arrow-keys. Return to submit.", this.warn = e.warn || "- This option is d\
|
||
isabled", this.cursor = e.initial || 0, this.choices = e.choices.map((r, u) => (typeof r == "string" && (r = { title: r, value: u }), {
|
||
title: r && (r.title || r.value || r),
|
||
value: r && (r.value === void 0 ? u : r.value),
|
||
description: r && r.description,
|
||
selected: r && r.selected,
|
||
disabled: r && r.disabled
|
||
})), this.optionsPerPage = e.optionsPerPage || 10, this.value = (this.choices[this.cursor] || {}).value, this.clear = jh("", this.out.
|
||
columns), this.render();
|
||
}
|
||
moveCursor(e) {
|
||
this.cursor = e, this.value = this.choices[e].value, this.fire();
|
||
}
|
||
reset() {
|
||
this.moveCursor(0), this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.selection.disabled ? this.bell() : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close());
|
||
}
|
||
first() {
|
||
this.moveCursor(0), this.render();
|
||
}
|
||
last() {
|
||
this.moveCursor(this.choices.length - 1), this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.moveCursor(this.choices.length - 1) : this.moveCursor(this.cursor - 1), this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.choices.length - 1 ? this.moveCursor(0) : this.moveCursor(this.cursor + 1), this.render();
|
||
}
|
||
next() {
|
||
this.moveCursor((this.cursor + 1) % this.choices.length), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ") return this.submit();
|
||
}
|
||
get selection() {
|
||
return this.choices[this.cursor];
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender ? this.out.write(YF.hide) : this.out.write(jh(this.outputText, this.out.columns)), super.render();
|
||
let { startIndex: e, endIndex: r } = UF(this.cursor, this.choices.length, this.optionsPerPage);
|
||
if (this.outputText = [
|
||
Nh.symbol(this.done, this.aborted),
|
||
Fe.bold(this.msg),
|
||
Nh.delimiter(!1),
|
||
this.done ? this.selection.title : this.selection.disabled ? Fe.yellow(this.warn) : Fe.gray(this.hint)
|
||
].join(" "), !this.done) {
|
||
this.outputText += `
|
||
`;
|
||
for (let u = e; u < r; u++) {
|
||
let n, o, i = "", D = this.choices[u];
|
||
u === e && e > 0 ? o = jr.arrowUp : u === r - 1 && r < this.choices.length ? o = jr.arrowDown : o = " ", D.disabled ? (n = this.cursor ===
|
||
u ? Fe.gray().underline(D.title) : Fe.strikethrough().gray(D.title), o = (this.cursor === u ? Fe.bold().gray(jr.pointer) + " " : "\
|
||
") + o) : (n = this.cursor === u ? Fe.cyan().underline(D.title) : D.title, o = (this.cursor === u ? Fe.cyan(jr.pointer) + " " : " ") + o,
|
||
D.description && this.cursor === u && (i = ` - ${D.description}`, (o.length + n.length + i.length >= this.out.columns || D.description.
|
||
split(/\r?\n/).length > 1) && (i = `
|
||
` + VF(D.description, { margin: 3, width: this.out.columns })))), this.outputText += `${o} ${n}${Fe.gray(i)}
|
||
`;
|
||
}
|
||
}
|
||
this.out.write(this.outputText);
|
||
}
|
||
};
|
||
Gh.exports = ns;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/toggle.js
|
||
var Hh = c((wb, Yh) => {
|
||
var Gr = I(), HF = ge(), { style: Vh, clear: zF } = re(), { cursor: Uh, erase: KF } = A(), os = class extends HF {
|
||
static {
|
||
s(this, "TogglePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.value = !!e.initial, this.active = e.active || "on", this.inactive = e.inactive || "off", this.initialValue =
|
||
this.value, this.render();
|
||
}
|
||
reset() {
|
||
this.value = this.initialValue, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
deactivate() {
|
||
if (this.value === !1) return this.bell();
|
||
this.value = !1, this.render();
|
||
}
|
||
activate() {
|
||
if (this.value === !0) return this.bell();
|
||
this.value = !0, this.render();
|
||
}
|
||
delete() {
|
||
this.deactivate();
|
||
}
|
||
left() {
|
||
this.deactivate();
|
||
}
|
||
right() {
|
||
this.activate();
|
||
}
|
||
down() {
|
||
this.deactivate();
|
||
}
|
||
up() {
|
||
this.activate();
|
||
}
|
||
next() {
|
||
this.value = !this.value, this.fire(), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ")
|
||
this.value = !this.value;
|
||
else if (e === "1")
|
||
this.value = !0;
|
||
else if (e === "0")
|
||
this.value = !1;
|
||
else return this.bell();
|
||
this.render();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(Uh.hide) : this.out.write(zF(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [
|
||
Vh.symbol(this.done, this.aborted),
|
||
Gr.bold(this.msg),
|
||
Vh.delimiter(this.done),
|
||
this.value ? this.inactive : Gr.cyan().underline(this.inactive),
|
||
Gr.gray("/"),
|
||
this.value ? Gr.cyan().underline(this.active) : this.active
|
||
].join(" "), this.out.write(KF.line + Uh.to(0) + this.outputText));
|
||
}
|
||
};
|
||
Yh.exports = os;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/datepart.js
|
||
var De = c((Sb, zh) => {
|
||
"use strict";
|
||
var Ds = class t {
|
||
static {
|
||
s(this, "DatePart");
|
||
}
|
||
constructor({ token: e, date: r, parts: u, locales: n }) {
|
||
this.token = e, this.date = r || /* @__PURE__ */ new Date(), this.parts = u || [this], this.locales = n || {};
|
||
}
|
||
up() {
|
||
}
|
||
down() {
|
||
}
|
||
next() {
|
||
let e = this.parts.indexOf(this);
|
||
return this.parts.find((r, u) => u > e && r instanceof t);
|
||
}
|
||
setTo(e) {
|
||
}
|
||
prev() {
|
||
let e = [].concat(this.parts).reverse(), r = e.indexOf(this);
|
||
return e.find((u, n) => n > r && u instanceof t);
|
||
}
|
||
toString() {
|
||
return String(this.date);
|
||
}
|
||
};
|
||
zh.exports = Ds;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/meridiem.js
|
||
var Zh = c(($b, Kh) => {
|
||
"use strict";
|
||
var ZF = De(), as = class extends ZF {
|
||
static {
|
||
s(this, "Meridiem");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setHours((this.date.getHours() + 12) % 24);
|
||
}
|
||
down() {
|
||
this.up();
|
||
}
|
||
toString() {
|
||
let e = this.date.getHours() > 12 ? "pm" : "am";
|
||
return /\A/.test(this.token) ? e.toUpperCase() : e;
|
||
}
|
||
};
|
||
Kh.exports = as;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/day.js
|
||
var Xh = c((_b, Jh) => {
|
||
"use strict";
|
||
var JF = De(), XF = /* @__PURE__ */ s((t) => (t = t % 10, t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th"), "pos"), ls = class extends JF {
|
||
static {
|
||
s(this, "Day");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setDate(this.date.getDate() + 1);
|
||
}
|
||
down() {
|
||
this.date.setDate(this.date.getDate() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setDate(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getDate(), r = this.date.getDay();
|
||
return this.token === "DD" ? String(e).padStart(2, "0") : this.token === "Do" ? e + XF(e) : this.token === "d" ? r + 1 : this.token ===
|
||
"ddd" ? this.locales.weekdaysShort[r] : this.token === "dddd" ? this.locales.weekdays[r] : e;
|
||
}
|
||
};
|
||
Jh.exports = ls;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/hours.js
|
||
var ec = c((Lb, Qh) => {
|
||
"use strict";
|
||
var QF = De(), hs = class extends QF {
|
||
static {
|
||
s(this, "Hours");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setHours(this.date.getHours() + 1);
|
||
}
|
||
down() {
|
||
this.date.setHours(this.date.getHours() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setHours(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getHours();
|
||
return /h/.test(this.token) && (e = e % 12 || 12), this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
Qh.exports = hs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/milliseconds.js
|
||
var rc = c((Pb, tc) => {
|
||
"use strict";
|
||
var e2 = De(), cs = class extends e2 {
|
||
static {
|
||
s(this, "Milliseconds");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMilliseconds(this.date.getMilliseconds() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMilliseconds(this.date.getMilliseconds() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setMilliseconds(parseInt(e.substr(-this.token.length)));
|
||
}
|
||
toString() {
|
||
return String(this.date.getMilliseconds()).padStart(4, "0").substr(0, this.token.length);
|
||
}
|
||
};
|
||
tc.exports = cs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/minutes.js
|
||
var ic = c((Rb, uc) => {
|
||
"use strict";
|
||
var t2 = De(), ds = class extends t2 {
|
||
static {
|
||
s(this, "Minutes");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMinutes(this.date.getMinutes() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMinutes(this.date.getMinutes() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setMinutes(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getMinutes();
|
||
return this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
uc.exports = ds;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/month.js
|
||
var nc = c((Nb, sc) => {
|
||
"use strict";
|
||
var r2 = De(), fs = class extends r2 {
|
||
static {
|
||
s(this, "Month");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setMonth(this.date.getMonth() + 1);
|
||
}
|
||
down() {
|
||
this.date.setMonth(this.date.getMonth() - 1);
|
||
}
|
||
setTo(e) {
|
||
e = parseInt(e.substr(-2)) - 1, this.date.setMonth(e < 0 ? 0 : e);
|
||
}
|
||
toString() {
|
||
let e = this.date.getMonth(), r = this.token.length;
|
||
return r === 2 ? String(e + 1).padStart(2, "0") : r === 3 ? this.locales.monthsShort[e] : r === 4 ? this.locales.months[e] : String(e +
|
||
1);
|
||
}
|
||
};
|
||
sc.exports = fs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/seconds.js
|
||
var Dc = c((Gb, oc) => {
|
||
"use strict";
|
||
var u2 = De(), ps = class extends u2 {
|
||
static {
|
||
s(this, "Seconds");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setSeconds(this.date.getSeconds() + 1);
|
||
}
|
||
down() {
|
||
this.date.setSeconds(this.date.getSeconds() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setSeconds(parseInt(e.substr(-2)));
|
||
}
|
||
toString() {
|
||
let e = this.date.getSeconds();
|
||
return this.token.length > 1 ? String(e).padStart(2, "0") : e;
|
||
}
|
||
};
|
||
oc.exports = ps;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/year.js
|
||
var lc = c((Vb, ac) => {
|
||
"use strict";
|
||
var i2 = De(), ms = class extends i2 {
|
||
static {
|
||
s(this, "Year");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e);
|
||
}
|
||
up() {
|
||
this.date.setFullYear(this.date.getFullYear() + 1);
|
||
}
|
||
down() {
|
||
this.date.setFullYear(this.date.getFullYear() - 1);
|
||
}
|
||
setTo(e) {
|
||
this.date.setFullYear(e.substr(-4));
|
||
}
|
||
toString() {
|
||
let e = String(this.date.getFullYear()).padStart(4, "0");
|
||
return this.token.length === 2 ? e.substr(-2) : e;
|
||
}
|
||
};
|
||
ac.exports = ms;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/dateparts/index.js
|
||
var cc = c((Yb, hc) => {
|
||
"use strict";
|
||
hc.exports = {
|
||
DatePart: De(),
|
||
Meridiem: Zh(),
|
||
Day: Xh(),
|
||
Hours: ec(),
|
||
Milliseconds: rc(),
|
||
Minutes: ic(),
|
||
Month: nc(),
|
||
Seconds: Dc(),
|
||
Year: lc()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/date.js
|
||
var Cc = c((Hb, Fc) => {
|
||
"use strict";
|
||
var gs = I(), s2 = ge(), { style: dc, clear: fc, figures: n2 } = re(), { erase: o2, cursor: pc } = A(), { DatePart: mc, Meridiem: D2, Day: a2,
|
||
Hours: l2, Milliseconds: h2, Minutes: c2, Month: d2, Seconds: f2, Year: p2 } = cc(), m2 = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,
|
||
gc = {
|
||
1: ({ token: t }) => t.replace(/\\(.)/g, "$1"),
|
||
2: (t) => new a2(t),
|
||
// Day // TODO
|
||
3: (t) => new d2(t),
|
||
// Month
|
||
4: (t) => new p2(t),
|
||
// Year
|
||
5: (t) => new D2(t),
|
||
// AM/PM // TODO (special)
|
||
6: (t) => new l2(t),
|
||
// Hours
|
||
7: (t) => new c2(t),
|
||
// Minutes
|
||
8: (t) => new f2(t),
|
||
// Seconds
|
||
9: (t) => new h2(t)
|
||
// Fractional seconds
|
||
}, g2 = {
|
||
months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","),
|
||
monthsShort: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
|
||
weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
|
||
weekdaysShort: "Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")
|
||
}, Fs = class extends s2 {
|
||
static {
|
||
s(this, "DatePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.cursor = 0, this.typed = "", this.locales = Object.assign(g2, e.locales), this._date = e.initial ||
|
||
/* @__PURE__ */ new Date(), this.errorMsg = e.error || "Please Enter A Valid Value", this.validator = e.validate || (() => !0), this.mask =
|
||
e.mask || "YYYY-MM-DD HH:mm:ss", this.clear = fc("", this.out.columns), this.render();
|
||
}
|
||
get value() {
|
||
return this.date;
|
||
}
|
||
get date() {
|
||
return this._date;
|
||
}
|
||
set date(e) {
|
||
e && this._date.setTime(e.getTime());
|
||
}
|
||
set mask(e) {
|
||
let r;
|
||
for (this.parts = []; r = m2.exec(e); ) {
|
||
let n = r.shift(), o = r.findIndex((i) => i != null);
|
||
this.parts.push(o in gc ? gc[o]({ token: r[o] || n, date: this.date, parts: this.parts, locales: this.locales }) : r[o] || n);
|
||
}
|
||
let u = this.parts.reduce((n, o) => (typeof o == "string" && typeof n[n.length - 1] == "string" ? n[n.length - 1] += o : n.push(o), n),
|
||
[]);
|
||
this.parts.splice(0), this.parts.push(...u), this.reset();
|
||
}
|
||
moveCursor(e) {
|
||
this.typed = "", this.cursor = e, this.fire();
|
||
}
|
||
reset() {
|
||
this.moveCursor(this.parts.findIndex((e) => e instanceof mc)), this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
async validate() {
|
||
let e = await this.validator(this.value);
|
||
typeof e == "string" && (this.errorMsg = e, e = !1), this.error = !e;
|
||
}
|
||
async submit() {
|
||
if (await this.validate(), this.error) {
|
||
this.color = "red", this.fire(), this.render();
|
||
return;
|
||
}
|
||
this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
up() {
|
||
this.typed = "", this.parts[this.cursor].up(), this.render();
|
||
}
|
||
down() {
|
||
this.typed = "", this.parts[this.cursor].down(), this.render();
|
||
}
|
||
left() {
|
||
let e = this.parts[this.cursor].prev();
|
||
if (e == null) return this.bell();
|
||
this.moveCursor(this.parts.indexOf(e)), this.render();
|
||
}
|
||
right() {
|
||
let e = this.parts[this.cursor].next();
|
||
if (e == null) return this.bell();
|
||
this.moveCursor(this.parts.indexOf(e)), this.render();
|
||
}
|
||
next() {
|
||
let e = this.parts[this.cursor].next();
|
||
this.moveCursor(e ? this.parts.indexOf(e) : this.parts.findIndex((r) => r instanceof mc)), this.render();
|
||
}
|
||
_(e) {
|
||
/\d/.test(e) && (this.typed += e, this.parts[this.cursor].setTo(this.typed), this.render());
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(pc.hide) : this.out.write(fc(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [
|
||
dc.symbol(this.done, this.aborted),
|
||
gs.bold(this.msg),
|
||
dc.delimiter(!1),
|
||
this.parts.reduce((e, r, u) => e.concat(u === this.cursor && !this.done ? gs.cyan().underline(r.toString()) : r), []).join("")
|
||
].join(" "), this.error && (this.outputText += this.errorMsg.split(`
|
||
`).reduce(
|
||
(e, r, u) => e + `
|
||
${u ? " " : n2.pointerSmall} ${gs.red().italic(r)}`,
|
||
""
|
||
)), this.out.write(o2.line + pc.to(0) + this.outputText));
|
||
}
|
||
};
|
||
Fc.exports = Fs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/number.js
|
||
var vc = c((Kb, xc) => {
|
||
var Wr = I(), F2 = ge(), { cursor: Vr, erase: C2 } = A(), { style: Cs, figures: E2, clear: Ec, lines: b2 } = re(), x2 = /[0-9]/, Es = /* @__PURE__ */ s(
|
||
(t) => t !== void 0, "isDef"), bc = /* @__PURE__ */ s((t, e) => {
|
||
let r = Math.pow(10, e);
|
||
return Math.round(t * r) / r;
|
||
}, "round"), bs = class extends F2 {
|
||
static {
|
||
s(this, "NumberPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.transform = Cs.render(e.style), this.msg = e.message, this.initial = Es(e.initial) ? e.initial : "", this.float = !!e.float,
|
||
this.round = e.round || 2, this.inc = e.increment || 1, this.min = Es(e.min) ? e.min : -1 / 0, this.max = Es(e.max) ? e.max : 1 / 0, this.
|
||
errorMsg = e.error || "Please Enter A Valid Value", this.validator = e.validate || (() => !0), this.color = "cyan", this.value = "", this.
|
||
typed = "", this.lastHit = 0, this.render();
|
||
}
|
||
set value(e) {
|
||
!e && e !== 0 ? (this.placeholder = !0, this.rendered = Wr.gray(this.transform.render(`${this.initial}`)), this._value = "") : (this.placeholder =
|
||
!1, this.rendered = this.transform.render(`${bc(e, this.round)}`), this._value = bc(e, this.round)), this.fire();
|
||
}
|
||
get value() {
|
||
return this._value;
|
||
}
|
||
parse(e) {
|
||
return this.float ? parseFloat(e) : parseInt(e);
|
||
}
|
||
valid(e) {
|
||
return e === "-" || e === "." && this.float || x2.test(e);
|
||
}
|
||
reset() {
|
||
this.typed = "", this.value = "", this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
let e = this.value;
|
||
this.value = e !== "" ? e : this.initial, this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`\
|
||
|
||
`), this.close();
|
||
}
|
||
async validate() {
|
||
let e = await this.validator(this.value);
|
||
typeof e == "string" && (this.errorMsg = e, e = !1), this.error = !e;
|
||
}
|
||
async submit() {
|
||
if (await this.validate(), this.error) {
|
||
this.color = "red", this.fire(), this.render();
|
||
return;
|
||
}
|
||
let e = this.value;
|
||
this.value = e !== "" ? e : this.initial, this.done = !0, this.aborted = !1, this.error = !1, this.fire(), this.render(), this.out.write(
|
||
`
|
||
`), this.close();
|
||
}
|
||
up() {
|
||
if (this.typed = "", this.value === "" && (this.value = this.min - this.inc), this.value >= this.max) return this.bell();
|
||
this.value += this.inc, this.color = "cyan", this.fire(), this.render();
|
||
}
|
||
down() {
|
||
if (this.typed = "", this.value === "" && (this.value = this.min + this.inc), this.value <= this.min) return this.bell();
|
||
this.value -= this.inc, this.color = "cyan", this.fire(), this.render();
|
||
}
|
||
delete() {
|
||
let e = this.value.toString();
|
||
if (e.length === 0) return this.bell();
|
||
this.value = this.parse(e = e.slice(0, -1)) || "", this.value !== "" && this.value < this.min && (this.value = this.min), this.color =
|
||
"cyan", this.fire(), this.render();
|
||
}
|
||
next() {
|
||
this.value = this.initial, this.fire(), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (!this.valid(e)) return this.bell();
|
||
let u = Date.now();
|
||
if (u - this.lastHit > 1e3 && (this.typed = ""), this.typed += e, this.lastHit = u, this.color = "cyan", e === ".") return this.fire();
|
||
this.value = Math.min(this.parse(this.typed), this.max), this.value > this.max && (this.value = this.max), this.value < this.min && (this.
|
||
value = this.min), this.fire(), this.render();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender || (this.outputError && this.out.write(Vr.down(b2(this.outputError, this.out.columns) - 1) + Ec(this.
|
||
outputError, this.out.columns)), this.out.write(Ec(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
|
||
[
|
||
Cs.symbol(this.done, this.aborted),
|
||
Wr.bold(this.msg),
|
||
Cs.delimiter(this.done),
|
||
!this.done || !this.done && !this.placeholder ? Wr[this.color]().underline(this.rendered) : this.rendered
|
||
].join(" "), this.error && (this.outputError += this.errorMsg.split(`
|
||
`).reduce((e, r, u) => e + `
|
||
${u ? " " : E2.pointerSmall} ${Wr.red().italic(r)}`, "")), this.out.write(C2.line + Vr.to(0) + this.outputText + Vr.save + this.outputError +
|
||
Vr.restore));
|
||
}
|
||
};
|
||
xc.exports = bs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/multiselect.js
|
||
var vs = c((Jb, wc) => {
|
||
"use strict";
|
||
var ae = I(), { cursor: v2 } = A(), y2 = ge(), { clear: yc, figures: _e, style: Bc, wrap: B2, entriesToDisplay: w2 } = re(), xs = class extends y2 {
|
||
static {
|
||
s(this, "MultiselectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.cursor = e.cursor || 0, this.scrollIndex = e.cursor || 0, this.hint = e.hint || "", this.warn = e.
|
||
warn || "- This option is disabled -", this.minSelected = e.min, this.showMinError = !1, this.maxChoices = e.max, this.instructions = e.
|
||
instructions, this.optionsPerPage = e.optionsPerPage || 10, this.value = e.choices.map((r, u) => (typeof r == "string" && (r = { title: r,
|
||
value: u }), {
|
||
title: r && (r.title || r.value || r),
|
||
description: r && r.description,
|
||
value: r && (r.value === void 0 ? u : r.value),
|
||
selected: r && r.selected,
|
||
disabled: r && r.disabled
|
||
})), this.clear = yc("", this.out.columns), e.overrideRender || this.render();
|
||
}
|
||
reset() {
|
||
this.value.map((e) => !e.selected), this.cursor = 0, this.fire(), this.render();
|
||
}
|
||
selected() {
|
||
return this.value.filter((e) => e.selected);
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
let e = this.value.filter((r) => r.selected);
|
||
this.minSelected && e.length < this.minSelected ? (this.showMinError = !0, this.render()) : (this.done = !0, this.aborted = !1, this.fire(),
|
||
this.render(), this.out.write(`
|
||
`), this.close());
|
||
}
|
||
first() {
|
||
this.cursor = 0, this.render();
|
||
}
|
||
last() {
|
||
this.cursor = this.value.length - 1, this.render();
|
||
}
|
||
next() {
|
||
this.cursor = (this.cursor + 1) % this.value.length, this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.cursor = this.value.length - 1 : this.cursor--, this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.value.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
|
||
}
|
||
left() {
|
||
this.value[this.cursor].selected = !1, this.render();
|
||
}
|
||
right() {
|
||
if (this.value.filter((e) => e.selected).length >= this.maxChoices) return this.bell();
|
||
this.value[this.cursor].selected = !0, this.render();
|
||
}
|
||
handleSpaceToggle() {
|
||
let e = this.value[this.cursor];
|
||
if (e.selected)
|
||
e.selected = !1, this.render();
|
||
else {
|
||
if (e.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
|
||
return this.bell();
|
||
e.selected = !0, this.render();
|
||
}
|
||
}
|
||
toggleAll() {
|
||
if (this.maxChoices !== void 0 || this.value[this.cursor].disabled)
|
||
return this.bell();
|
||
let e = !this.value[this.cursor].selected;
|
||
this.value.filter((r) => !r.disabled).forEach((r) => r.selected = e), this.render();
|
||
}
|
||
_(e, r) {
|
||
if (e === " ")
|
||
this.handleSpaceToggle();
|
||
else if (e === "a")
|
||
this.toggleAll();
|
||
else
|
||
return this.bell();
|
||
}
|
||
renderInstructions() {
|
||
return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
|
||
Instructions:
|
||
${_e.arrowUp}/${_e.arrowDown}: Highlight option
|
||
${_e.arrowLeft}/${_e.arrowRight}/[space]: Toggle selection
|
||
` + (this.maxChoices === void 0 ? ` a: Toggle all
|
||
` : "") + " enter/return: Complete answer" : "";
|
||
}
|
||
renderOption(e, r, u, n) {
|
||
let o = (r.selected ? ae.green(_e.radioOn) : _e.radioOff) + " " + n + " ", i, D;
|
||
return r.disabled ? i = e === u ? ae.gray().underline(r.title) : ae.strikethrough().gray(r.title) : (i = e === u ? ae.cyan().underline(
|
||
r.title) : r.title, e === u && r.description && (D = ` - ${r.description}`, (o.length + i.length + D.length >= this.out.columns || r.description.
|
||
split(/\r?\n/).length > 1) && (D = `
|
||
` + B2(r.description, { margin: o.length, width: this.out.columns })))), o + i + ae.gray(D || "");
|
||
}
|
||
// shared with autocompleteMultiselect
|
||
paginateOptions(e) {
|
||
if (e.length === 0)
|
||
return ae.red("No matches for this query.");
|
||
let { startIndex: r, endIndex: u } = w2(this.cursor, e.length, this.optionsPerPage), n, o = [];
|
||
for (let i = r; i < u; i++)
|
||
i === r && r > 0 ? n = _e.arrowUp : i === u - 1 && u < e.length ? n = _e.arrowDown : n = " ", o.push(this.renderOption(this.cursor, e[i],
|
||
i, n));
|
||
return `
|
||
` + o.join(`
|
||
`);
|
||
}
|
||
// shared with autocomleteMultiselect
|
||
renderOptions(e) {
|
||
return this.done ? "" : this.paginateOptions(e);
|
||
}
|
||
renderDoneOrInstructions() {
|
||
if (this.done)
|
||
return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
|
||
let e = [ae.gray(this.hint), this.renderInstructions()];
|
||
return this.value[this.cursor].disabled && e.push(ae.yellow(this.warn)), e.join(" ");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender && this.out.write(v2.hide), super.render();
|
||
let e = [
|
||
Bc.symbol(this.done, this.aborted),
|
||
ae.bold(this.msg),
|
||
Bc.delimiter(!1),
|
||
this.renderDoneOrInstructions()
|
||
].join(" ");
|
||
this.showMinError && (e += ae.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), e += this.renderOptions(
|
||
this.value), this.out.write(this.clear + e), this.clear = yc(e, this.out.columns);
|
||
}
|
||
};
|
||
wc.exports = xs;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/autocomplete.js
|
||
var Oc = c((Qb, $c) => {
|
||
"use strict";
|
||
var Wt = I(), A2 = ge(), { erase: S2, cursor: Ac } = A(), { style: ys, clear: Sc, figures: Bs, wrap: T2, entriesToDisplay: $2 } = re(), Tc = /* @__PURE__ */ s(
|
||
(t, e) => t[e] && (t[e].value || t[e].title || t[e]), "getVal"), O2 = /* @__PURE__ */ s((t, e) => t[e] && (t[e].title || t[e].value || t[e]),
|
||
"getTitle"), _2 = /* @__PURE__ */ s((t, e) => {
|
||
let r = t.findIndex((u) => u.value === e || u.title === e);
|
||
return r > -1 ? r : void 0;
|
||
}, "getIndex"), ws = class extends A2 {
|
||
static {
|
||
s(this, "AutocompletePrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.suggest = e.suggest, this.choices = e.choices, this.initial = typeof e.initial == "number" ? e.initial :
|
||
_2(e.choices, e.initial), this.select = this.initial || e.cursor || 0, this.i18n = { noMatches: e.noMatches || "no matches found" }, this.
|
||
fallback = e.fallback || this.initial, this.clearFirst = e.clearFirst || !1, this.suggestions = [], this.input = "", this.limit = e.limit ||
|
||
10, this.cursor = 0, this.transform = ys.render(e.style), this.scale = this.transform.scale, this.render = this.render.bind(this), this.
|
||
complete = this.complete.bind(this), this.clear = Sc("", this.out.columns), this.complete(this.render), this.render();
|
||
}
|
||
set fallback(e) {
|
||
this._fb = Number.isSafeInteger(parseInt(e)) ? parseInt(e) : e;
|
||
}
|
||
get fallback() {
|
||
let e;
|
||
return typeof this._fb == "number" ? e = this.choices[this._fb] : typeof this._fb == "string" && (e = { title: this._fb }), e || this.
|
||
_fb || { title: this.i18n.noMatches };
|
||
}
|
||
moveSelect(e) {
|
||
this.select = e, this.suggestions.length > 0 ? this.value = Tc(this.suggestions, e) : this.value = this.fallback.value, this.fire();
|
||
}
|
||
async complete(e) {
|
||
let r = this.completing = this.suggest(this.input, this.choices), u = await r;
|
||
if (this.completing !== r) return;
|
||
this.suggestions = u.map((o, i, D) => ({ title: O2(D, i), value: Tc(D, i), description: o.description })), this.completing = !1;
|
||
let n = Math.max(u.length - 1, 0);
|
||
this.moveSelect(Math.min(n, this.select)), e && e();
|
||
}
|
||
reset() {
|
||
this.input = "", this.complete(() => {
|
||
this.moveSelect(this.initial !== void 0 ? this.initial : 0), this.render();
|
||
}), this.render();
|
||
}
|
||
exit() {
|
||
this.clearFirst && this.input.length > 0 ? this.reset() : (this.done = this.exited = !0, this.aborted = !1, this.fire(), this.render(),
|
||
this.out.write(`
|
||
`), this.close());
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.exited = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.done = !0, this.aborted = this.exited = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
_(e, r) {
|
||
let u = this.input.slice(0, this.cursor), n = this.input.slice(this.cursor);
|
||
this.input = `${u}${e}${n}`, this.cursor = u.length + 1, this.complete(this.render), this.render();
|
||
}
|
||
delete() {
|
||
if (this.cursor === 0) return this.bell();
|
||
let e = this.input.slice(0, this.cursor - 1), r = this.input.slice(this.cursor);
|
||
this.input = `${e}${r}`, this.complete(this.render), this.cursor = this.cursor - 1, this.render();
|
||
}
|
||
deleteForward() {
|
||
if (this.cursor * this.scale >= this.rendered.length) return this.bell();
|
||
let e = this.input.slice(0, this.cursor), r = this.input.slice(this.cursor + 1);
|
||
this.input = `${e}${r}`, this.complete(this.render), this.render();
|
||
}
|
||
first() {
|
||
this.moveSelect(0), this.render();
|
||
}
|
||
last() {
|
||
this.moveSelect(this.suggestions.length - 1), this.render();
|
||
}
|
||
up() {
|
||
this.select === 0 ? this.moveSelect(this.suggestions.length - 1) : this.moveSelect(this.select - 1), this.render();
|
||
}
|
||
down() {
|
||
this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
|
||
}
|
||
next() {
|
||
this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
|
||
}
|
||
nextPage() {
|
||
this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1)), this.render();
|
||
}
|
||
prevPage() {
|
||
this.moveSelect(Math.max(this.select - this.limit, 0)), this.render();
|
||
}
|
||
left() {
|
||
if (this.cursor <= 0) return this.bell();
|
||
this.cursor = this.cursor - 1, this.render();
|
||
}
|
||
right() {
|
||
if (this.cursor * this.scale >= this.rendered.length) return this.bell();
|
||
this.cursor = this.cursor + 1, this.render();
|
||
}
|
||
renderOption(e, r, u, n) {
|
||
let o, i = u ? Bs.arrowUp : n ? Bs.arrowDown : " ", D = r ? Wt.cyan().underline(e.title) : e.title;
|
||
return i = (r ? Wt.cyan(Bs.pointer) + " " : " ") + i, e.description && (o = ` - ${e.description}`, (i.length + D.length + o.length >=
|
||
this.out.columns || e.description.split(/\r?\n/).length > 1) && (o = `
|
||
` + T2(e.description, { margin: 3, width: this.out.columns }))), i + " " + D + Wt.gray(o || "");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender ? this.out.write(Ac.hide) : this.out.write(Sc(this.outputText, this.out.columns)), super.render();
|
||
let { startIndex: e, endIndex: r } = $2(this.select, this.choices.length, this.limit);
|
||
if (this.outputText = [
|
||
ys.symbol(this.done, this.aborted, this.exited),
|
||
Wt.bold(this.msg),
|
||
ys.delimiter(this.completing),
|
||
this.done && this.suggestions[this.select] ? this.suggestions[this.select].title : this.rendered = this.transform.render(this.input)
|
||
].join(" "), !this.done) {
|
||
let u = this.suggestions.slice(e, r).map((n, o) => this.renderOption(
|
||
n,
|
||
this.select === o + e,
|
||
o === 0 && e > 0,
|
||
o + e === r - 1 && r < this.choices.length
|
||
)).join(`
|
||
`);
|
||
this.outputText += `
|
||
` + (u || Wt.gray(this.fallback.title));
|
||
}
|
||
this.out.write(S2.line + Ac.to(0) + this.outputText);
|
||
}
|
||
};
|
||
$c.exports = ws;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/autocompleteMultiselect.js
|
||
var kc = c((tx, Lc) => {
|
||
"use strict";
|
||
var Ce = I(), { cursor: I2 } = A(), L2 = vs(), { clear: _c, style: Ic, figures: ft } = re(), As = class extends L2 {
|
||
static {
|
||
s(this, "AutocompleteMultiselectPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
e.overrideRender = !0, super(e), this.inputValue = "", this.clear = _c("", this.out.columns), this.filteredOptions = this.value, this.
|
||
render();
|
||
}
|
||
last() {
|
||
this.cursor = this.filteredOptions.length - 1, this.render();
|
||
}
|
||
next() {
|
||
this.cursor = (this.cursor + 1) % this.filteredOptions.length, this.render();
|
||
}
|
||
up() {
|
||
this.cursor === 0 ? this.cursor = this.filteredOptions.length - 1 : this.cursor--, this.render();
|
||
}
|
||
down() {
|
||
this.cursor === this.filteredOptions.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
|
||
}
|
||
left() {
|
||
this.filteredOptions[this.cursor].selected = !1, this.render();
|
||
}
|
||
right() {
|
||
if (this.value.filter((e) => e.selected).length >= this.maxChoices) return this.bell();
|
||
this.filteredOptions[this.cursor].selected = !0, this.render();
|
||
}
|
||
delete() {
|
||
this.inputValue.length && (this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1), this.updateFilteredOptions());
|
||
}
|
||
updateFilteredOptions() {
|
||
let e = this.filteredOptions[this.cursor];
|
||
this.filteredOptions = this.value.filter((u) => this.inputValue ? !!(typeof u.title == "string" && u.title.toLowerCase().includes(this.
|
||
inputValue.toLowerCase()) || typeof u.value == "string" && u.value.toLowerCase().includes(this.inputValue.toLowerCase())) : !0);
|
||
let r = this.filteredOptions.findIndex((u) => u === e);
|
||
this.cursor = r < 0 ? 0 : r, this.render();
|
||
}
|
||
handleSpaceToggle() {
|
||
let e = this.filteredOptions[this.cursor];
|
||
if (e.selected)
|
||
e.selected = !1, this.render();
|
||
else {
|
||
if (e.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
|
||
return this.bell();
|
||
e.selected = !0, this.render();
|
||
}
|
||
}
|
||
handleInputChange(e) {
|
||
this.inputValue = this.inputValue + e, this.updateFilteredOptions();
|
||
}
|
||
_(e, r) {
|
||
e === " " ? this.handleSpaceToggle() : this.handleInputChange(e);
|
||
}
|
||
renderInstructions() {
|
||
return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
|
||
Instructions:
|
||
${ft.arrowUp}/${ft.arrowDown}: Highlight option
|
||
${ft.arrowLeft}/${ft.arrowRight}/[space]: Toggle selection
|
||
[a,b,c]/delete: Filter choices
|
||
enter/return: Complete answer
|
||
` : "";
|
||
}
|
||
renderCurrentInput() {
|
||
return `
|
||
Filtered results for: ${this.inputValue ? this.inputValue : Ce.gray("Enter something to filter")}
|
||
`;
|
||
}
|
||
renderOption(e, r, u) {
|
||
let n;
|
||
return r.disabled ? n = e === u ? Ce.gray().underline(r.title) : Ce.strikethrough().gray(r.title) : n = e === u ? Ce.cyan().underline(
|
||
r.title) : r.title, (r.selected ? Ce.green(ft.radioOn) : ft.radioOff) + " " + n;
|
||
}
|
||
renderDoneOrInstructions() {
|
||
if (this.done)
|
||
return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
|
||
let e = [Ce.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
|
||
return this.filteredOptions.length && this.filteredOptions[this.cursor].disabled && e.push(Ce.yellow(this.warn)), e.join(" ");
|
||
}
|
||
render() {
|
||
if (this.closed) return;
|
||
this.firstRender && this.out.write(I2.hide), super.render();
|
||
let e = [
|
||
Ic.symbol(this.done, this.aborted),
|
||
Ce.bold(this.msg),
|
||
Ic.delimiter(!1),
|
||
this.renderDoneOrInstructions()
|
||
].join(" ");
|
||
this.showMinError && (e += Ce.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), e += this.renderOptions(
|
||
this.filteredOptions), this.out.write(this.clear + e), this.clear = _c(e, this.out.columns);
|
||
}
|
||
};
|
||
Lc.exports = As;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/confirm.js
|
||
var Nc = c((ux, qc) => {
|
||
var Pc = I(), k2 = ge(), { style: Mc, clear: P2 } = re(), { erase: M2, cursor: Rc } = A(), Ss = class extends k2 {
|
||
static {
|
||
s(this, "ConfirmPrompt");
|
||
}
|
||
constructor(e = {}) {
|
||
super(e), this.msg = e.message, this.value = e.initial, this.initialValue = !!e.initial, this.yesMsg = e.yes || "yes", this.yesOption =
|
||
e.yesOption || "(Y/n)", this.noMsg = e.no || "no", this.noOption = e.noOption || "(y/N)", this.render();
|
||
}
|
||
reset() {
|
||
this.value = this.initialValue, this.fire(), this.render();
|
||
}
|
||
exit() {
|
||
this.abort();
|
||
}
|
||
abort() {
|
||
this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
submit() {
|
||
this.value = this.value || !1, this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
|
||
`), this.close();
|
||
}
|
||
_(e, r) {
|
||
return e.toLowerCase() === "y" ? (this.value = !0, this.submit()) : e.toLowerCase() === "n" ? (this.value = !1, this.submit()) : this.
|
||
bell();
|
||
}
|
||
render() {
|
||
this.closed || (this.firstRender ? this.out.write(Rc.hide) : this.out.write(P2(this.outputText, this.out.columns)), super.render(), this.
|
||
outputText = [
|
||
Mc.symbol(this.done, this.aborted),
|
||
Pc.bold(this.msg),
|
||
Mc.delimiter(this.done),
|
||
this.done ? this.value ? this.yesMsg : this.noMsg : Pc.gray(this.initialValue ? this.yesOption : this.noOption)
|
||
].join(" "), this.out.write(M2.line + Rc.to(0) + this.outputText));
|
||
}
|
||
};
|
||
qc.exports = Ss;
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/elements/index.js
|
||
var Gc = c((sx, jc) => {
|
||
"use strict";
|
||
jc.exports = {
|
||
TextPrompt: qh(),
|
||
SelectPrompt: Wh(),
|
||
TogglePrompt: Hh(),
|
||
DatePrompt: Cc(),
|
||
NumberPrompt: vc(),
|
||
MultiselectPrompt: vs(),
|
||
AutocompletePrompt: Oc(),
|
||
AutocompleteMultiselectPrompt: kc(),
|
||
ConfirmPrompt: Nc()
|
||
};
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/prompts.js
|
||
var Vc = c((Wc) => {
|
||
"use strict";
|
||
var Y = Wc, R2 = Gc(), Ur = /* @__PURE__ */ s((t) => t, "noop");
|
||
function le(t, e, r = {}) {
|
||
return new Promise((u, n) => {
|
||
let o = new R2[t](e), i = r.onAbort || Ur, D = r.onSubmit || Ur, a = r.onExit || Ur;
|
||
o.on("state", e.onState || Ur), o.on("submit", (l) => u(D(l))), o.on("exit", (l) => u(a(l))), o.on("abort", (l) => n(i(l)));
|
||
});
|
||
}
|
||
s(le, "toPrompt");
|
||
Y.text = (t) => le("TextPrompt", t);
|
||
Y.password = (t) => (t.style = "password", Y.text(t));
|
||
Y.invisible = (t) => (t.style = "invisible", Y.text(t));
|
||
Y.number = (t) => le("NumberPrompt", t);
|
||
Y.date = (t) => le("DatePrompt", t);
|
||
Y.confirm = (t) => le("ConfirmPrompt", t);
|
||
Y.list = (t) => {
|
||
let e = t.separator || ",";
|
||
return le("TextPrompt", t, {
|
||
onSubmit: /* @__PURE__ */ s((r) => r.split(e).map((u) => u.trim()), "onSubmit")
|
||
});
|
||
};
|
||
Y.toggle = (t) => le("TogglePrompt", t);
|
||
Y.select = (t) => le("SelectPrompt", t);
|
||
Y.multiselect = (t) => {
|
||
t.choices = [].concat(t.choices || []);
|
||
let e = /* @__PURE__ */ s((r) => r.filter((u) => u.selected).map((u) => u.value), "toSelected");
|
||
return le("MultiselectPrompt", t, {
|
||
onAbort: e,
|
||
onSubmit: e
|
||
});
|
||
};
|
||
Y.autocompleteMultiselect = (t) => {
|
||
t.choices = [].concat(t.choices || []);
|
||
let e = /* @__PURE__ */ s((r) => r.filter((u) => u.selected).map((u) => u.value), "toSelected");
|
||
return le("AutocompleteMultiselectPrompt", t, {
|
||
onAbort: e,
|
||
onSubmit: e
|
||
});
|
||
};
|
||
var q2 = /* @__PURE__ */ s((t, e) => Promise.resolve(
|
||
e.filter((r) => r.title.slice(0, t.length).toLowerCase() === t.toLowerCase())
|
||
), "byTitle");
|
||
Y.autocomplete = (t) => (t.suggest = t.suggest || q2, t.choices = [].concat(t.choices || []), le("AutocompletePrompt", t));
|
||
});
|
||
|
||
// ../node_modules/prompts/lib/index.js
|
||
var Hc = c((Dx, Yc) => {
|
||
"use strict";
|
||
var Ts = Vc(), N2 = ["suggest", "format", "onState", "validate", "onRender", "type"], Uc = /* @__PURE__ */ s(() => {
|
||
}, "noop");
|
||
async function Ie(t = [], { onSubmit: e = Uc, onCancel: r = Uc } = {}) {
|
||
let u = {}, n = Ie._override || {};
|
||
t = [].concat(t);
|
||
let o, i, D, a, l, h, p = /* @__PURE__ */ s(async (d, m, g = !1) => {
|
||
if (!(!g && d.validate && d.validate(m) !== !0))
|
||
return d.format ? await d.format(m, u) : m;
|
||
}, "getFormattedAnswer");
|
||
for (i of t)
|
||
if ({ name: a, type: l } = i, typeof l == "function" && (l = await l(o, { ...u }, i), i.type = l), !!l) {
|
||
for (let d in i) {
|
||
if (N2.includes(d)) continue;
|
||
let m = i[d];
|
||
i[d] = typeof m == "function" ? await m(o, { ...u }, h) : m;
|
||
}
|
||
if (h = i, typeof i.message != "string")
|
||
throw new Error("prompt message is required");
|
||
if ({ name: a, type: l } = i, Ts[l] === void 0)
|
||
throw new Error(`prompt type (${l}) is not defined`);
|
||
if (n[i.name] !== void 0 && (o = await p(i, n[i.name]), o !== void 0)) {
|
||
u[a] = o;
|
||
continue;
|
||
}
|
||
try {
|
||
o = Ie._injected ? j2(Ie._injected, i.initial) : await Ts[l](i), u[a] = o = await p(i, o, !0), D = await e(i, o, u);
|
||
} catch {
|
||
D = !await r(i, u);
|
||
}
|
||
if (D) return u;
|
||
}
|
||
return u;
|
||
}
|
||
s(Ie, "prompt");
|
||
function j2(t, e) {
|
||
let r = t.shift();
|
||
if (r instanceof Error)
|
||
throw r;
|
||
return r === void 0 ? e : r;
|
||
}
|
||
s(j2, "getInjectedAnswer");
|
||
function G2(t) {
|
||
Ie._injected = (Ie._injected || []).concat(t);
|
||
}
|
||
s(G2, "inject");
|
||
function W2(t) {
|
||
Ie._override = Object.assign({}, t);
|
||
}
|
||
s(W2, "override");
|
||
Yc.exports = Object.assign(Ie, { prompt: Ie, prompts: Ts, inject: G2, override: W2 });
|
||
});
|
||
|
||
// ../node_modules/prompts/index.js
|
||
var Kc = c((lx, zc) => {
|
||
function V2(t) {
|
||
t = (Array.isArray(t) ? t : t.split(".")).map(Number);
|
||
let e = 0, r = process.versions.node.split(".").map(Number);
|
||
for (; e < t.length; e++) {
|
||
if (r[e] > t[e]) return !1;
|
||
if (t[e] > r[e]) return !0;
|
||
}
|
||
return !1;
|
||
}
|
||
s(V2, "isNodeLT");
|
||
zc.exports = V2("8.6.0") ? Ch() : Hc();
|
||
});
|
||
|
||
// ../node_modules/isexe/windows.js
|
||
var ed = c((Ex, Qc) => {
|
||
Qc.exports = Xc;
|
||
Xc.sync = J2;
|
||
var Zc = k("fs");
|
||
function Z2(t, e) {
|
||
var r = e.pathExt !== void 0 ? e.pathExt : process.env.PATHEXT;
|
||
if (!r || (r = r.split(";"), r.indexOf("") !== -1))
|
||
return !0;
|
||
for (var u = 0; u < r.length; u++) {
|
||
var n = r[u].toLowerCase();
|
||
if (n && t.substr(-n.length).toLowerCase() === n)
|
||
return !0;
|
||
}
|
||
return !1;
|
||
}
|
||
s(Z2, "checkPathExt");
|
||
function Jc(t, e, r) {
|
||
return !t.isSymbolicLink() && !t.isFile() ? !1 : Z2(e, r);
|
||
}
|
||
s(Jc, "checkStat");
|
||
function Xc(t, e, r) {
|
||
Zc.stat(t, function(u, n) {
|
||
r(u, u ? !1 : Jc(n, t, e));
|
||
});
|
||
}
|
||
s(Xc, "isexe");
|
||
function J2(t, e) {
|
||
return Jc(Zc.statSync(t), t, e);
|
||
}
|
||
s(J2, "sync");
|
||
});
|
||
|
||
// ../node_modules/isexe/mode.js
|
||
var sd = c((xx, id) => {
|
||
id.exports = rd;
|
||
rd.sync = X2;
|
||
var td = k("fs");
|
||
function rd(t, e, r) {
|
||
td.stat(t, function(u, n) {
|
||
r(u, u ? !1 : ud(n, e));
|
||
});
|
||
}
|
||
s(rd, "isexe");
|
||
function X2(t, e) {
|
||
return ud(td.statSync(t), e);
|
||
}
|
||
s(X2, "sync");
|
||
function ud(t, e) {
|
||
return t.isFile() && Q2(t, e);
|
||
}
|
||
s(ud, "checkStat");
|
||
function Q2(t, e) {
|
||
var r = t.mode, u = t.uid, n = t.gid, o = e.uid !== void 0 ? e.uid : process.getuid && process.getuid(), i = e.gid !== void 0 ? e.gid : process.
|
||
getgid && process.getgid(), D = parseInt("100", 8), a = parseInt("010", 8), l = parseInt("001", 8), h = D | a, p = r & l || r & a && n ===
|
||
i || r & D && u === o || r & h && o === 0;
|
||
return p;
|
||
}
|
||
s(Q2, "checkMode");
|
||
});
|
||
|
||
// ../node_modules/isexe/index.js
|
||
var od = c((Bx, nd) => {
|
||
var yx = k("fs"), Hr;
|
||
process.platform === "win32" || global.TESTING_WINDOWS ? Hr = ed() : Hr = sd();
|
||
nd.exports = Os;
|
||
Os.sync = eC;
|
||
function Os(t, e, r) {
|
||
if (typeof e == "function" && (r = e, e = {}), !r) {
|
||
if (typeof Promise != "function")
|
||
throw new TypeError("callback not provided");
|
||
return new Promise(function(u, n) {
|
||
Os(t, e || {}, function(o, i) {
|
||
o ? n(o) : u(i);
|
||
});
|
||
});
|
||
}
|
||
Hr(t, e || {}, function(u, n) {
|
||
u && (u.code === "EACCES" || e && e.ignoreErrors) && (u = null, n = !1), r(u, n);
|
||
});
|
||
}
|
||
s(Os, "isexe");
|
||
function eC(t, e) {
|
||
try {
|
||
return Hr.sync(t, e || {});
|
||
} catch (r) {
|
||
if (e && e.ignoreErrors || r.code === "EACCES")
|
||
return !1;
|
||
throw r;
|
||
}
|
||
}
|
||
s(eC, "sync");
|
||
});
|
||
|
||
// ../node_modules/which/which.js
|
||
var fd = c((Ax, dd) => {
|
||
var pt = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys", Dd = k("path"), tC = pt ? ";" :
|
||
":", ad = od(), ld = /* @__PURE__ */ s((t) => Object.assign(new Error(`not found: ${t}`), { code: "ENOENT" }), "getNotFoundError"), hd = /* @__PURE__ */ s(
|
||
(t, e) => {
|
||
let r = e.colon || tC, u = t.match(/\//) || pt && t.match(/\\/) ? [""] : [
|
||
// windows always checks the cwd first
|
||
...pt ? [process.cwd()] : [],
|
||
...(e.path || process.env.PATH || /* istanbul ignore next: very unusual */
|
||
"").split(r)
|
||
], n = pt ? e.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "", o = pt ? n.split(r) : [""];
|
||
return pt && t.indexOf(".") !== -1 && o[0] !== "" && o.unshift(""), {
|
||
pathEnv: u,
|
||
pathExt: o,
|
||
pathExtExe: n
|
||
};
|
||
}, "getPathInfo"), cd = /* @__PURE__ */ s((t, e, r) => {
|
||
typeof e == "function" && (r = e, e = {}), e || (e = {});
|
||
let { pathEnv: u, pathExt: n, pathExtExe: o } = hd(t, e), i = [], D = /* @__PURE__ */ s((l) => new Promise((h, p) => {
|
||
if (l === u.length)
|
||
return e.all && i.length ? h(i) : p(ld(t));
|
||
let d = u[l], m = /^".*"$/.test(d) ? d.slice(1, -1) : d, g = Dd.join(m, t), F = !m && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + g : g;
|
||
h(a(F, l, 0));
|
||
}), "step"), a = /* @__PURE__ */ s((l, h, p) => new Promise((d, m) => {
|
||
if (p === n.length)
|
||
return d(D(h + 1));
|
||
let g = n[p];
|
||
ad(l + g, { pathExt: o }, (F, E) => {
|
||
if (!F && E)
|
||
if (e.all)
|
||
i.push(l + g);
|
||
else
|
||
return d(l + g);
|
||
return d(a(l, h, p + 1));
|
||
});
|
||
}), "subStep");
|
||
return r ? D(0).then((l) => r(null, l), r) : D(0);
|
||
}, "which"), rC = /* @__PURE__ */ s((t, e) => {
|
||
e = e || {};
|
||
let { pathEnv: r, pathExt: u, pathExtExe: n } = hd(t, e), o = [];
|
||
for (let i = 0; i < r.length; i++) {
|
||
let D = r[i], a = /^".*"$/.test(D) ? D.slice(1, -1) : D, l = Dd.join(a, t), h = !a && /^\.[\\\/]/.test(t) ? t.slice(0, 2) + l : l;
|
||
for (let p = 0; p < u.length; p++) {
|
||
let d = h + u[p];
|
||
try {
|
||
if (ad.sync(d, { pathExt: n }))
|
||
if (e.all)
|
||
o.push(d);
|
||
else
|
||
return d;
|
||
} catch {
|
||
}
|
||
}
|
||
}
|
||
if (e.all && o.length)
|
||
return o;
|
||
if (e.nothrow)
|
||
return null;
|
||
throw ld(t);
|
||
}, "whichSync");
|
||
dd.exports = cd;
|
||
cd.sync = rC;
|
||
});
|
||
|
||
// ../node_modules/path-key/index.js
|
||
var md = c((Tx, _s) => {
|
||
"use strict";
|
||
var pd = /* @__PURE__ */ s((t = {}) => {
|
||
let e = t.env || process.env;
|
||
return (t.platform || process.platform) !== "win32" ? "PATH" : Object.keys(e).reverse().find((u) => u.toUpperCase() === "PATH") || "Path";
|
||
}, "pathKey");
|
||
_s.exports = pd;
|
||
_s.exports.default = pd;
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/lib/util/resolveCommand.js
|
||
var Ed = c((Ox, Cd) => {
|
||
"use strict";
|
||
var gd = k("path"), uC = fd(), iC = md();
|
||
function Fd(t, e) {
|
||
let r = t.options.env || process.env, u = process.cwd(), n = t.options.cwd != null, o = n && process.chdir !== void 0 && !process.chdir.
|
||
disabled;
|
||
if (o)
|
||
try {
|
||
process.chdir(t.options.cwd);
|
||
} catch {
|
||
}
|
||
let i;
|
||
try {
|
||
i = uC.sync(t.command, {
|
||
path: r[iC({ env: r })],
|
||
pathExt: e ? gd.delimiter : void 0
|
||
});
|
||
} catch {
|
||
} finally {
|
||
o && process.chdir(u);
|
||
}
|
||
return i && (i = gd.resolve(n ? t.options.cwd : "", i)), i;
|
||
}
|
||
s(Fd, "resolveCommandAttempt");
|
||
function sC(t) {
|
||
return Fd(t) || Fd(t, !0);
|
||
}
|
||
s(sC, "resolveCommand");
|
||
Cd.exports = sC;
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/lib/util/escape.js
|
||
var bd = c((Ix, Ls) => {
|
||
"use strict";
|
||
var Is = /([()\][%!^"`<>&|;, *?])/g;
|
||
function nC(t) {
|
||
return t = t.replace(Is, "^$1"), t;
|
||
}
|
||
s(nC, "escapeCommand");
|
||
function oC(t, e) {
|
||
return t = `${t}`, t = t.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"'), t = t.replace(/(?=(\\+?)?)\1$/, "$1$1"), t = `"${t}"`, t = t.replace(Is,
|
||
"^$1"), e && (t = t.replace(Is, "^$1")), t;
|
||
}
|
||
s(oC, "escapeArgument");
|
||
Ls.exports.command = nC;
|
||
Ls.exports.argument = oC;
|
||
});
|
||
|
||
// ../node_modules/shebang-regex/index.js
|
||
var vd = c((kx, xd) => {
|
||
"use strict";
|
||
xd.exports = /^#!(.*)/;
|
||
});
|
||
|
||
// ../node_modules/shebang-command/index.js
|
||
var Bd = c((Px, yd) => {
|
||
"use strict";
|
||
var DC = vd();
|
||
yd.exports = (t = "") => {
|
||
let e = t.match(DC);
|
||
if (!e)
|
||
return null;
|
||
let [r, u] = e[0].replace(/#! ?/, "").split(" "), n = r.split("/").pop();
|
||
return n === "env" ? u : u ? `${n} ${u}` : n;
|
||
};
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/lib/util/readShebang.js
|
||
var Ad = c((Mx, wd) => {
|
||
"use strict";
|
||
var ks = k("fs"), aC = Bd();
|
||
function lC(t) {
|
||
let r = Buffer.alloc(150), u;
|
||
try {
|
||
u = ks.openSync(t, "r"), ks.readSync(u, r, 0, 150, 0), ks.closeSync(u);
|
||
} catch {
|
||
}
|
||
return aC(r.toString());
|
||
}
|
||
s(lC, "readShebang");
|
||
wd.exports = lC;
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/lib/parse.js
|
||
var Od = c((qx, $d) => {
|
||
"use strict";
|
||
var hC = k("path"), Sd = Ed(), Td = bd(), cC = Ad(), dC = process.platform === "win32", fC = /\.(?:com|exe)$/i, pC = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
|
||
function mC(t) {
|
||
t.file = Sd(t);
|
||
let e = t.file && cC(t.file);
|
||
return e ? (t.args.unshift(t.file), t.command = e, Sd(t)) : t.file;
|
||
}
|
||
s(mC, "detectShebang");
|
||
function gC(t) {
|
||
if (!dC)
|
||
return t;
|
||
let e = mC(t), r = !fC.test(e);
|
||
if (t.options.forceShell || r) {
|
||
let u = pC.test(e);
|
||
t.command = hC.normalize(t.command), t.command = Td.command(t.command), t.args = t.args.map((o) => Td.argument(o, u));
|
||
let n = [t.command].concat(t.args).join(" ");
|
||
t.args = ["/d", "/s", "/c", `"${n}"`], t.command = process.env.comspec || "cmd.exe", t.options.windowsVerbatimArguments = !0;
|
||
}
|
||
return t;
|
||
}
|
||
s(gC, "parseNonShell");
|
||
function FC(t, e, r) {
|
||
e && !Array.isArray(e) && (r = e, e = null), e = e ? e.slice(0) : [], r = Object.assign({}, r);
|
||
let u = {
|
||
command: t,
|
||
args: e,
|
||
options: r,
|
||
file: void 0,
|
||
original: {
|
||
command: t,
|
||
args: e
|
||
}
|
||
};
|
||
return r.shell ? u : gC(u);
|
||
}
|
||
s(FC, "parse");
|
||
$d.exports = FC;
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/lib/enoent.js
|
||
var Ld = c((jx, Id) => {
|
||
"use strict";
|
||
var Ps = process.platform === "win32";
|
||
function Ms(t, e) {
|
||
return Object.assign(new Error(`${e} ${t.command} ENOENT`), {
|
||
code: "ENOENT",
|
||
errno: "ENOENT",
|
||
syscall: `${e} ${t.command}`,
|
||
path: t.command,
|
||
spawnargs: t.args
|
||
});
|
||
}
|
||
s(Ms, "notFoundError");
|
||
function CC(t, e) {
|
||
if (!Ps)
|
||
return;
|
||
let r = t.emit;
|
||
t.emit = function(u, n) {
|
||
if (u === "exit") {
|
||
let o = _d(n, e);
|
||
if (o)
|
||
return r.call(t, "error", o);
|
||
}
|
||
return r.apply(t, arguments);
|
||
};
|
||
}
|
||
s(CC, "hookChildProcess");
|
||
function _d(t, e) {
|
||
return Ps && t === 1 && !e.file ? Ms(e.original, "spawn") : null;
|
||
}
|
||
s(_d, "verifyENOENT");
|
||
function EC(t, e) {
|
||
return Ps && t === 1 && !e.file ? Ms(e.original, "spawnSync") : null;
|
||
}
|
||
s(EC, "verifyENOENTSync");
|
||
Id.exports = {
|
||
hookChildProcess: CC,
|
||
verifyENOENT: _d,
|
||
verifyENOENTSync: EC,
|
||
notFoundError: Ms
|
||
};
|
||
});
|
||
|
||
// ../node_modules/cross-spawn/index.js
|
||
var Md = c((Wx, mt) => {
|
||
"use strict";
|
||
var kd = k("child_process"), Rs = Od(), qs = Ld();
|
||
function Pd(t, e, r) {
|
||
let u = Rs(t, e, r), n = kd.spawn(u.command, u.args, u.options);
|
||
return qs.hookChildProcess(n, u), n;
|
||
}
|
||
s(Pd, "spawn");
|
||
function bC(t, e, r) {
|
||
let u = Rs(t, e, r), n = kd.spawnSync(u.command, u.args, u.options);
|
||
return n.error = n.error || qs.verifyENOENTSync(n.status, u), n;
|
||
}
|
||
s(bC, "spawnSync");
|
||
mt.exports = Pd;
|
||
mt.exports.spawn = Pd;
|
||
mt.exports.sync = bC;
|
||
mt.exports._parse = Rs;
|
||
mt.exports._enoent = qs;
|
||
});
|
||
|
||
// ../node_modules/merge-stream/index.js
|
||
var hf = c((py, lf) => {
|
||
"use strict";
|
||
var { PassThrough: C3 } = k("stream");
|
||
lf.exports = function() {
|
||
var t = [], e = new C3({ objectMode: !0 });
|
||
return e.setMaxListeners(0), e.add = r, e.isEmpty = u, e.on("unpipe", n), Array.prototype.slice.call(arguments).forEach(r), e;
|
||
function r(o) {
|
||
return Array.isArray(o) ? (o.forEach(r), this) : (t.push(o), o.once("end", n.bind(null, o)), o.once("error", e.emit.bind(e, "error")),
|
||
o.pipe(e, { end: !1 }), this);
|
||
}
|
||
s(r, "add");
|
||
function u() {
|
||
return t.length == 0;
|
||
}
|
||
s(u, "isEmpty");
|
||
function n(o) {
|
||
t = t.filter(function(i) {
|
||
return i !== o;
|
||
}), !t.length && e.readable && e.end();
|
||
}
|
||
s(n, "remove");
|
||
};
|
||
});
|
||
|
||
// src/node-logger/index.ts
|
||
var fu = P(Uo(), 1), Mf = P(zo(), 1);
|
||
|
||
// src/node-logger/logger/logger.ts
|
||
var Cn = {};
|
||
tr(Cn, {
|
||
SYMBOLS: () => eE,
|
||
debug: () => du,
|
||
error: () => Fn,
|
||
getLogLevel: () => H3,
|
||
info: () => mn,
|
||
intro: () => J3,
|
||
log: () => gt,
|
||
logBox: () => Z3,
|
||
outro: () => X3,
|
||
setLogLevel: () => pn,
|
||
shouldLog: () => cu,
|
||
step: () => Q3,
|
||
warn: () => gn,
|
||
wrapTextForClack: () => Jt
|
||
});
|
||
|
||
// ../node_modules/@clack/core/dist/index.mjs
|
||
var j = P(A(), 1), lD = P(ut(), 1);
|
||
import { stdin as DD, stdout as aD } from "node:process";
|
||
import * as Be from "node:readline";
|
||
import np from "node:readline";
|
||
import { ReadStream as Xo, WriteStream as op } from "node:tty";
|
||
function Dp({ onlyFirst: t = !1 } = {}) {
|
||
let e = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u00\
|
||
5C|\\u009C))", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");
|
||
return new RegExp(e, t ? void 0 : "g");
|
||
}
|
||
s(Dp, "hu");
|
||
var ap = Dp();
|
||
function hD(t) {
|
||
if (typeof t != "string") throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);
|
||
return t.replace(ap, "");
|
||
}
|
||
s(hD, "Y");
|
||
function cD(t) {
|
||
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
|
||
}
|
||
s(cD, "Z");
|
||
var dD = { exports: {} };
|
||
(function(t) {
|
||
var e = {};
|
||
t.exports = e, e.eastAsianWidth = function(u) {
|
||
var n = u.charCodeAt(0), o = u.length == 2 ? u.charCodeAt(1) : 0, i = n;
|
||
return 55296 <= n && n <= 56319 && 56320 <= o && o <= 57343 && (n &= 1023, o &= 1023, i = n << 10 | o, i += 65536), i == 12288 || 65281 <=
|
||
i && i <= 65376 || 65504 <= i && i <= 65510 ? "F" : i == 8361 || 65377 <= i && i <= 65470 || 65474 <= i && i <= 65479 || 65482 <= i && i <=
|
||
65487 || 65490 <= i && i <= 65495 || 65498 <= i && i <= 65500 || 65512 <= i && i <= 65518 ? "H" : 4352 <= i && i <= 4447 || 4515 <= i &&
|
||
i <= 4519 || 4602 <= i && i <= 4607 || 9001 <= i && i <= 9002 || 11904 <= i && i <= 11929 || 11931 <= i && i <= 12019 || 12032 <= i && i <=
|
||
12245 || 12272 <= i && i <= 12283 || 12289 <= i && i <= 12350 || 12353 <= i && i <= 12438 || 12441 <= i && i <= 12543 || 12549 <= i && i <=
|
||
12589 || 12593 <= i && i <= 12686 || 12688 <= i && i <= 12730 || 12736 <= i && i <= 12771 || 12784 <= i && i <= 12830 || 12832 <= i && i <=
|
||
12871 || 12880 <= i && i <= 13054 || 13056 <= i && i <= 19903 || 19968 <= i && i <= 42124 || 42128 <= i && i <= 42182 || 43360 <= i && i <=
|
||
43388 || 44032 <= i && i <= 55203 || 55216 <= i && i <= 55238 || 55243 <= i && i <= 55291 || 63744 <= i && i <= 64255 || 65040 <= i && i <=
|
||
65049 || 65072 <= i && i <= 65106 || 65108 <= i && i <= 65126 || 65128 <= i && i <= 65131 || 110592 <= i && i <= 110593 || 127488 <= i &&
|
||
i <= 127490 || 127504 <= i && i <= 127546 || 127552 <= i && i <= 127560 || 127568 <= i && i <= 127569 || 131072 <= i && i <= 194367 || 177984 <=
|
||
i && i <= 196605 || 196608 <= i && i <= 262141 ? "W" : 32 <= i && i <= 126 || 162 <= i && i <= 163 || 165 <= i && i <= 166 || i == 172 ||
|
||
i == 175 || 10214 <= i && i <= 10221 || 10629 <= i && i <= 10630 ? "Na" : i == 161 || i == 164 || 167 <= i && i <= 168 || i == 170 || 173 <=
|
||
i && i <= 174 || 176 <= i && i <= 180 || 182 <= i && i <= 186 || 188 <= i && i <= 191 || i == 198 || i == 208 || 215 <= i && i <= 216 ||
|
||
222 <= i && i <= 225 || i == 230 || 232 <= i && i <= 234 || 236 <= i && i <= 237 || i == 240 || 242 <= i && i <= 243 || 247 <= i && i <=
|
||
250 || i == 252 || i == 254 || i == 257 || i == 273 || i == 275 || i == 283 || 294 <= i && i <= 295 || i == 299 || 305 <= i && i <= 307 ||
|
||
i == 312 || 319 <= i && i <= 322 || i == 324 || 328 <= i && i <= 331 || i == 333 || 338 <= i && i <= 339 || 358 <= i && i <= 359 || i ==
|
||
363 || i == 462 || i == 464 || i == 466 || i == 468 || i == 470 || i == 472 || i == 474 || i == 476 || i == 593 || i == 609 || i == 708 ||
|
||
i == 711 || 713 <= i && i <= 715 || i == 717 || i == 720 || 728 <= i && i <= 731 || i == 733 || i == 735 || 768 <= i && i <= 879 || 913 <=
|
||
i && i <= 929 || 931 <= i && i <= 937 || 945 <= i && i <= 961 || 963 <= i && i <= 969 || i == 1025 || 1040 <= i && i <= 1103 || i == 1105 ||
|
||
i == 8208 || 8211 <= i && i <= 8214 || 8216 <= i && i <= 8217 || 8220 <= i && i <= 8221 || 8224 <= i && i <= 8226 || 8228 <= i && i <= 8231 ||
|
||
i == 8240 || 8242 <= i && i <= 8243 || i == 8245 || i == 8251 || i == 8254 || i == 8308 || i == 8319 || 8321 <= i && i <= 8324 || i == 8364 ||
|
||
i == 8451 || i == 8453 || i == 8457 || i == 8467 || i == 8470 || 8481 <= i && i <= 8482 || i == 8486 || i == 8491 || 8531 <= i && i <= 8532 ||
|
||
8539 <= i && i <= 8542 || 8544 <= i && i <= 8555 || 8560 <= i && i <= 8569 || i == 8585 || 8592 <= i && i <= 8601 || 8632 <= i && i <= 8633 ||
|
||
i == 8658 || i == 8660 || i == 8679 || i == 8704 || 8706 <= i && i <= 8707 || 8711 <= i && i <= 8712 || i == 8715 || i == 8719 || i == 8721 ||
|
||
i == 8725 || i == 8730 || 8733 <= i && i <= 8736 || i == 8739 || i == 8741 || 8743 <= i && i <= 8748 || i == 8750 || 8756 <= i && i <= 8759 ||
|
||
8764 <= i && i <= 8765 || i == 8776 || i == 8780 || i == 8786 || 8800 <= i && i <= 8801 || 8804 <= i && i <= 8807 || 8810 <= i && i <= 8811 ||
|
||
8814 <= i && i <= 8815 || 8834 <= i && i <= 8835 || 8838 <= i && i <= 8839 || i == 8853 || i == 8857 || i == 8869 || i == 8895 || i == 8978 ||
|
||
9312 <= i && i <= 9449 || 9451 <= i && i <= 9547 || 9552 <= i && i <= 9587 || 9600 <= i && i <= 9615 || 9618 <= i && i <= 9621 || 9632 <=
|
||
i && i <= 9633 || 9635 <= i && i <= 9641 || 9650 <= i && i <= 9651 || 9654 <= i && i <= 9655 || 9660 <= i && i <= 9661 || 9664 <= i && i <=
|
||
9665 || 9670 <= i && i <= 9672 || i == 9675 || 9678 <= i && i <= 9681 || 9698 <= i && i <= 9701 || i == 9711 || 9733 <= i && i <= 9734 ||
|
||
i == 9737 || 9742 <= i && i <= 9743 || 9748 <= i && i <= 9749 || i == 9756 || i == 9758 || i == 9792 || i == 9794 || 9824 <= i && i <= 9825 ||
|
||
9827 <= i && i <= 9829 || 9831 <= i && i <= 9834 || 9836 <= i && i <= 9837 || i == 9839 || 9886 <= i && i <= 9887 || 9918 <= i && i <= 9919 ||
|
||
9924 <= i && i <= 9933 || 9935 <= i && i <= 9953 || i == 9955 || 9960 <= i && i <= 9983 || i == 10045 || i == 10071 || 10102 <= i && i <=
|
||
10111 || 11093 <= i && i <= 11097 || 12872 <= i && i <= 12879 || 57344 <= i && i <= 63743 || 65024 <= i && i <= 65039 || i == 65533 || 127232 <=
|
||
i && i <= 127242 || 127248 <= i && i <= 127277 || 127280 <= i && i <= 127337 || 127344 <= i && i <= 127386 || 917760 <= i && i <= 917999 ||
|
||
983040 <= i && i <= 1048573 || 1048576 <= i && i <= 1114109 ? "A" : "N";
|
||
}, e.characterLength = function(u) {
|
||
var n = this.eastAsianWidth(u);
|
||
return n == "F" || n == "W" || n == "A" ? 2 : 1;
|
||
};
|
||
function r(u) {
|
||
return u.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
|
||
}
|
||
s(r, "t"), e.length = function(u) {
|
||
for (var n = r(u), o = 0, i = 0; i < n.length; i++) o = o + this.characterLength(n[i]);
|
||
return o;
|
||
}, e.slice = function(u, n, o) {
|
||
textLen = e.length(u), n = n || 0, o = o || 1, n < 0 && (n = textLen + n), o < 0 && (o = textLen + o);
|
||
for (var i = "", D = 0, a = r(u), l = 0; l < a.length; l++) {
|
||
var h = a[l], p = e.length(h);
|
||
if (D >= n - (p == 2 ? 1 : 0)) if (D + p <= o) i += h;
|
||
else break;
|
||
D += p;
|
||
}
|
||
return i;
|
||
};
|
||
})(dD);
|
||
var lp = dD.exports, hp = cD(lp), cp = /* @__PURE__ */ s(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;
|
||
}, "Au"), dp = cD(cp);
|
||
function At(t, e = {}) {
|
||
if (typeof t != "string" || t.length === 0 || (e = { ambiguousIsNarrow: !0, ...e }, t = hD(t), t.length === 0)) return 0;
|
||
t = t.replace(dp(), " ");
|
||
let r = e.ambiguousIsNarrow ? 1 : 2, u = 0;
|
||
for (let n of t) {
|
||
let o = n.codePointAt(0);
|
||
if (!(o <= 31 || o >= 127 && o <= 159 || o >= 768 && o <= 879))
|
||
switch (hp.eastAsianWidth(n)) {
|
||
case "F":
|
||
case "W":
|
||
u += 2;
|
||
break;
|
||
case "A":
|
||
u += r;
|
||
break;
|
||
default:
|
||
u += 1;
|
||
}
|
||
}
|
||
return u;
|
||
}
|
||
s(At, "m");
|
||
var Vu = 10, Qo = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${e + t}m`, "H"), eD = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${38 + t};5;${e}\
|
||
m`, "U"), tD = /* @__PURE__ */ s((t = 0) => (e, r, u) => `\x1B[${38 + t};2;${e};${r};${u}m`, "J"), S = { 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(S.modifier);
|
||
var fp = Object.keys(S.color), pp = Object.keys(S.bgColor);
|
||
[...fp, ...pp];
|
||
function mp() {
|
||
let t = /* @__PURE__ */ new Map();
|
||
for (let [e, r] of Object.entries(S)) {
|
||
for (let [u, n] of Object.entries(r)) S[u] = { open: `\x1B[${n[0]}m`, close: `\x1B[${n[1]}m` }, r[u] = S[u], t.set(n[0], n[1]);
|
||
Object.defineProperty(S, e, { value: r, enumerable: !1 });
|
||
}
|
||
return Object.defineProperty(S, "codes", { value: t, enumerable: !1 }), S.color.close = "\x1B[39m", S.bgColor.close = "\x1B[49m", S.color.
|
||
ansi = Qo(), S.color.ansi256 = eD(), S.color.ansi16m = tD(), S.bgColor.ansi = Qo(Vu), S.bgColor.ansi256 = eD(Vu), S.bgColor.ansi16m = tD(Vu),
|
||
Object.defineProperties(S, { rgbToAnsi256: { value: /* @__PURE__ */ s((e, r, u) => e === r && r === u ? e < 8 ? 16 : e > 248 ? 231 : Math.
|
||
round((e - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(e / 255 * 5) + 6 * Math.round(r / 255 * 5) + Math.round(u / 255 * 5), "value"), enumerable: !1 },
|
||
hexToRgb: { value: /* @__PURE__ */ s((e) => {
|
||
let r = /[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));
|
||
if (!r) return [0, 0, 0];
|
||
let [u] = r;
|
||
u.length === 3 && (u = [...u].map((o) => o + o).join(""));
|
||
let n = Number.parseInt(u, 16);
|
||
return [n >> 16 & 255, n >> 8 & 255, n & 255];
|
||
}, "value"), enumerable: !1 }, hexToAnsi256: { value: /* @__PURE__ */ s((e) => S.rgbToAnsi256(...S.hexToRgb(e)), "value"), enumerable: !1 },
|
||
ansi256ToAnsi: { value: /* @__PURE__ */ s((e) => {
|
||
if (e < 8) return 30 + e;
|
||
if (e < 16) return 90 + (e - 8);
|
||
let r, u, n;
|
||
if (e >= 232) r = ((e - 232) * 10 + 8) / 255, u = r, n = r;
|
||
else {
|
||
e -= 16;
|
||
let D = e % 36;
|
||
r = Math.floor(e / 36) / 5, u = Math.floor(D / 6) / 5, n = D % 6 / 5;
|
||
}
|
||
let o = Math.max(r, u, n) * 2;
|
||
if (o === 0) return 30;
|
||
let i = 30 + (Math.round(n) << 2 | Math.round(u) << 1 | Math.round(r));
|
||
return o === 2 && (i += 60), i;
|
||
}, "value"), enumerable: !1 }, rgbToAnsi: { value: /* @__PURE__ */ s((e, r, u) => S.ansi256ToAnsi(S.rgbToAnsi256(e, r, u)), "value"), enumerable: !1 },
|
||
hexToAnsi: { value: /* @__PURE__ */ s((e) => S.ansi256ToAnsi(S.hexToAnsi256(e)), "value"), enumerable: !1 } }), S;
|
||
}
|
||
s(mp, "gu");
|
||
var gp = mp(), Er = /* @__PURE__ */ new Set(["\x1B", "\x9B"]), Fp = 39, Ku = "\x07", fD = "[", Cp = "]", pD = "m", Zu = `${Cp}8;;`, rD = /* @__PURE__ */ s(
|
||
(t) => `${Er.values().next().value}${fD}${t}${pD}`, "uu"), uD = /* @__PURE__ */ s((t) => `${Er.values().next().value}${Zu}${t}${Ku}`, "Du"),
|
||
Ep = /* @__PURE__ */ s((t) => t.split(" ").map((e) => At(e)), "wu"), Uu = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = [...e], n = !1, o = !1, i = At(hD(t[t.length - 1]));
|
||
for (let [D, a] of u.entries()) {
|
||
let l = At(a);
|
||
if (i + l <= r ? t[t.length - 1] += a : (t.push(a), i = 0), Er.has(a) && (n = !0, o = u.slice(D + 1).join("").startsWith(Zu)), n) {
|
||
o ? a === Ku && (n = !1, o = !1) : a === pD && (n = !1);
|
||
continue;
|
||
}
|
||
i += l, i === r && D < u.length - 1 && (t.push(""), i = 0);
|
||
}
|
||
!i && t[t.length - 1].length > 0 && t.length > 1 && (t[t.length - 2] += t.pop());
|
||
}, "j"), bp = /* @__PURE__ */ s((t) => {
|
||
let e = t.split(" "), r = e.length;
|
||
for (; r > 0 && !(At(e[r - 1]) > 0); ) r--;
|
||
return r === e.length ? t : e.slice(0, r).join(" ") + e.slice(r).join("");
|
||
}, "yu"), xp = /* @__PURE__ */ s((t, e, r = {}) => {
|
||
if (r.trim !== !1 && t.trim() === "") return "";
|
||
let u = "", n, o, i = Ep(t), D = [""];
|
||
for (let [l, h] of t.split(" ").entries()) {
|
||
r.trim !== !1 && (D[D.length - 1] = D[D.length - 1].trimStart());
|
||
let p = At(D[D.length - 1]);
|
||
if (l !== 0 && (p >= e && (r.wordWrap === !1 || r.trim === !1) && (D.push(""), p = 0), (p > 0 || r.trim === !1) && (D[D.length - 1] += "\
|
||
", p++)), r.hard && i[l] > e) {
|
||
let d = e - p, m = 1 + Math.floor((i[l] - d - 1) / e);
|
||
Math.floor((i[l] - 1) / e) < m && D.push(""), Uu(D, h, e);
|
||
continue;
|
||
}
|
||
if (p + i[l] > e && p > 0 && i[l] > 0) {
|
||
if (r.wordWrap === !1 && p < e) {
|
||
Uu(D, h, e);
|
||
continue;
|
||
}
|
||
D.push("");
|
||
}
|
||
if (p + i[l] > e && r.wordWrap === !1) {
|
||
Uu(D, h, e);
|
||
continue;
|
||
}
|
||
D[D.length - 1] += h;
|
||
}
|
||
r.trim !== !1 && (D = D.map((l) => bp(l)));
|
||
let a = [...D.join(`
|
||
`)];
|
||
for (let [l, h] of a.entries()) {
|
||
if (u += h, Er.has(h)) {
|
||
let { groups: d } = new RegExp(`(?:\\${fD}(?<code>\\d+)m|\\${Zu}(?<uri>.*)${Ku})`).exec(a.slice(l).join("")) || { groups: {} };
|
||
if (d.code !== void 0) {
|
||
let m = Number.parseFloat(d.code);
|
||
n = m === Fp ? void 0 : m;
|
||
} else d.uri !== void 0 && (o = d.uri.length === 0 ? void 0 : d.uri);
|
||
}
|
||
let p = gp.codes.get(Number(n));
|
||
a[l + 1] === `
|
||
` ? (o && (u += uD("")), n && p && (u += rD(p))) : h === `
|
||
` && (n && p && (u += rD(n)), o && (u += uD(o)));
|
||
}
|
||
return u;
|
||
}, "_u");
|
||
function iD(t, e, r) {
|
||
return String(t).normalize().replace(/\r\n/g, `
|
||
`).split(`
|
||
`).map((u) => xp(u, e, r)).join(`
|
||
`);
|
||
}
|
||
s(iD, "tu");
|
||
var vp = ["up", "down", "left", "right", "space", "enter", "cancel"], ye = { actions: new Set(vp), aliases: /* @__PURE__ */ new Map([["k", "\
|
||
up"], ["j", "down"], ["h", "left"], ["l", "right"], ["", "cancel"], ["escape", "cancel"]]), messages: { cancel: "Canceled", error: "Somethi\
|
||
ng went wrong" } };
|
||
function Ju(t, e) {
|
||
if (typeof t == "string") return ye.aliases.get(t) === e;
|
||
for (let r of t) if (r !== void 0 && Ju(r, e)) return !0;
|
||
return !1;
|
||
}
|
||
s(Ju, "P");
|
||
function yp(t, e) {
|
||
if (t === e) return;
|
||
let r = t.split(`
|
||
`), u = e.split(`
|
||
`), n = [];
|
||
for (let o = 0; o < Math.max(r.length, u.length); o++) r[o] !== u[o] && n.push(o);
|
||
return n;
|
||
}
|
||
s(yp, "Su");
|
||
var Bp = globalThis.process.platform.startsWith("win"), zu = Symbol("clack:cancel");
|
||
function br(t) {
|
||
return t === zu;
|
||
}
|
||
s(br, "Ou");
|
||
function Fr(t, e) {
|
||
let r = t;
|
||
r.isTTY && r.setRawMode(e);
|
||
}
|
||
s(Fr, "$");
|
||
function mD({ input: t = DD, output: e = aD, overwrite: r = !0, hideCursor: u = !0 } = {}) {
|
||
let n = Be.createInterface({ input: t, output: e, prompt: "", tabSize: 1 });
|
||
Be.emitKeypressEvents(t, n), t instanceof Xo && t.isTTY && t.setRawMode(!0);
|
||
let o = /* @__PURE__ */ s((i, { name: D, sequence: a }) => {
|
||
let l = String(i);
|
||
if (Ju([l, D, a], "cancel")) {
|
||
u && e.write(j.cursor.show), process.exit(0);
|
||
return;
|
||
}
|
||
if (!r) return;
|
||
Be.moveCursor(e, D === "return" ? 0 : -1, D === "return" ? -1 : 0, () => {
|
||
Be.clearLine(e, 1, () => {
|
||
t.once("keypress", o);
|
||
});
|
||
});
|
||
}, "F");
|
||
return u && e.write(j.cursor.hide), t.once("keypress", o), () => {
|
||
t.off("keypress", o), u && e.write(j.cursor.show), t instanceof Xo && t.isTTY && !Bp && t.setRawMode(!1), n.terminal = !1, n.close();
|
||
};
|
||
}
|
||
s(mD, "Mu");
|
||
var gD = /* @__PURE__ */ s((t) => t instanceof op && t.columns ? t.columns : 80, "Tu"), wp = Object.defineProperty, Ap = /* @__PURE__ */ s((t, e, r) => e in
|
||
t ? wp(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r, "Pu"), V = /* @__PURE__ */ s((t, e, r) => (Ap(t, typeof e !=
|
||
"symbol" ? e + "" : e, r), r), "E"), st = class {
|
||
static {
|
||
s(this, "B");
|
||
}
|
||
constructor(e, r = !0) {
|
||
V(this, "input"), V(this, "output"), V(this, "_abortSignal"), V(this, "rl"), V(this, "opts"), V(this, "_render"), V(this, "_track", !1),
|
||
V(this, "_prevFrame", ""), V(this, "_subscribers", /* @__PURE__ */ new Map()), V(this, "_cursor", 0), V(this, "_usePlaceholderAsValue", !0),
|
||
V(this, "state", "initial"), V(this, "error", ""), V(this, "value");
|
||
let { input: u = DD, output: n = aD, render: o, signal: i, ...D } = e;
|
||
this.opts = D, this.onKeypress = this.onKeypress.bind(this), this.close = this.close.bind(this), this.render = this.render.bind(this), this.
|
||
_render = o.bind(this), this._track = r, this._abortSignal = i, this.input = u, this.output = n;
|
||
}
|
||
unsubscribe() {
|
||
this._subscribers.clear();
|
||
}
|
||
setSubscriber(e, r) {
|
||
let u = this._subscribers.get(e) ?? [];
|
||
u.push(r), this._subscribers.set(e, u);
|
||
}
|
||
on(e, r) {
|
||
this.setSubscriber(e, { cb: r });
|
||
}
|
||
once(e, r) {
|
||
this.setSubscriber(e, { cb: r, once: !0 });
|
||
}
|
||
emit(e, ...r) {
|
||
let u = this._subscribers.get(e) ?? [], n = [];
|
||
for (let o of u) o.cb(...r), o.once && n.push(() => u.splice(u.indexOf(o), 1));
|
||
for (let o of n) o();
|
||
}
|
||
prompt() {
|
||
return new Promise((e, r) => {
|
||
if (this._abortSignal) {
|
||
if (this._abortSignal.aborted) return this.state = "cancel", this.close(), e(zu);
|
||
this._abortSignal.addEventListener("abort", () => {
|
||
this.state = "cancel", this.close();
|
||
}, { once: !0 });
|
||
}
|
||
this.rl = np.createInterface({ input: this.input, tabSize: 2, prompt: "", escapeCodeTimeout: 50, terminal: !0 }), this.rl.prompt(), this.
|
||
opts.initialValue !== void 0 && (this._track && this.rl.write(this.opts.initialValue), this._setValue(this.opts.initialValue)), this.input.
|
||
on("keypress", this.onKeypress), Fr(this.input, !0), this.output.on("resize", this.render), this.render(), this.once("submit", () => {
|
||
this.output.write(j.cursor.show), this.output.off("resize", this.render), Fr(this.input, !1), e(this.value);
|
||
}), this.once("cancel", () => {
|
||
this.output.write(j.cursor.show), this.output.off("resize", this.render), Fr(this.input, !1), e(zu);
|
||
});
|
||
});
|
||
}
|
||
_isActionKey(e, r) {
|
||
return e === " ";
|
||
}
|
||
_setValue(e) {
|
||
this.value = e, this.emit("value", this.value);
|
||
}
|
||
onKeypress(e, r) {
|
||
if (this._track && r.name !== "return" && (r.name && this._isActionKey(e, r) && this.rl?.write(null, { ctrl: !0, name: "h" }), this._cursor =
|
||
this.rl?.cursor ?? 0, this._setValue(this.rl?.line)), this.state === "error" && (this.state = "active"), r?.name && (!this._track && ye.
|
||
aliases.has(r.name) && this.emit("cursor", ye.aliases.get(r.name)), ye.actions.has(r.name) && this.emit("cursor", r.name)), e && (e.toLowerCase() ===
|
||
"y" || e.toLowerCase() === "n") && this.emit("confirm", e.toLowerCase() === "y"), this._usePlaceholderAsValue && e === " " && this.opts.
|
||
placeholder && (this.value || (this.rl?.write(this.opts.placeholder), this._setValue(this.opts.placeholder))), this.emit("key", e?.toLowerCase(),
|
||
r), r?.name === "return") {
|
||
if (!this.value && this.opts.placeholder && (this.rl?.write(this.opts.placeholder), this._setValue(this.opts.placeholder)), this.opts.
|
||
validate) {
|
||
let u = this.opts.validate(this.value);
|
||
u && (this.error = u instanceof Error ? u.message : u, this.state = "error", this.rl?.write(this.value));
|
||
}
|
||
this.state !== "error" && (this.state = "submit");
|
||
}
|
||
Ju([e, r?.name, r?.sequence], "cancel") && (this.state = "cancel"), (this.state === "submit" || this.state === "cancel") && this.emit("f\
|
||
inalize"), this.render(), (this.state === "submit" || this.state === "cancel") && this.close();
|
||
}
|
||
close() {
|
||
this.input.unpipe(), this.input.removeListener("keypress", this.onKeypress), this.output.write(`
|
||
`), Fr(this.input, !1), this.rl?.close(), this.rl = void 0, this.emit(`${this.state}`, this.value), this.unsubscribe();
|
||
}
|
||
restoreCursor() {
|
||
let e = iD(this._prevFrame, process.stdout.columns, { hard: !0 }).split(`
|
||
`).length - 1;
|
||
this.output.write(j.cursor.move(-999, e * -1));
|
||
}
|
||
render() {
|
||
let e = iD(this._render(this) ?? "", process.stdout.columns, { hard: !0 });
|
||
if (e !== this._prevFrame) {
|
||
if (this.state === "initial") this.output.write(j.cursor.hide);
|
||
else {
|
||
let r = yp(this._prevFrame, e);
|
||
if (this.restoreCursor(), r && r?.length === 1) {
|
||
let u = r[0];
|
||
this.output.write(j.cursor.move(0, u)), this.output.write(j.erase.lines(1));
|
||
let n = e.split(`
|
||
`);
|
||
this.output.write(n[u]), this._prevFrame = e, this.output.write(j.cursor.move(0, n.length - u - 1));
|
||
return;
|
||
}
|
||
if (r && r?.length > 1) {
|
||
let u = r[0];
|
||
this.output.write(j.cursor.move(0, u)), this.output.write(j.erase.down());
|
||
let n = e.split(`
|
||
`).slice(u);
|
||
this.output.write(n.join(`
|
||
`)), this._prevFrame = e;
|
||
return;
|
||
}
|
||
this.output.write(j.erase.down());
|
||
}
|
||
this.output.write(e), this.state === "initial" && (this.state = "active"), this._prevFrame = e;
|
||
}
|
||
}
|
||
}, Cr = class extends st {
|
||
static {
|
||
s(this, "Nu");
|
||
}
|
||
get cursor() {
|
||
return this.value ? 0 : 1;
|
||
}
|
||
get _value() {
|
||
return this.cursor === 0;
|
||
}
|
||
constructor(e) {
|
||
super(e, !1), this.value = !!e.initialValue, this.on("value", () => {
|
||
this.value = this._value;
|
||
}), this.on("confirm", (r) => {
|
||
this.output.write(j.cursor.move(0, -1)), this.value = r, this.state = "submit", this.close();
|
||
}), this.on("cursor", () => {
|
||
this.value = !this.value;
|
||
});
|
||
}
|
||
};
|
||
var Sp;
|
||
Sp = /* @__PURE__ */ new WeakMap();
|
||
var Tp = Object.defineProperty, $p = /* @__PURE__ */ s((t, e, r) => e in t ? Tp(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) :
|
||
t[e] = r, "zu"), sD = /* @__PURE__ */ s((t, e, r) => ($p(t, typeof e != "symbol" ? e + "" : e, r), r), "iu"), FD = class extends st {
|
||
static {
|
||
s(this, "Yu");
|
||
}
|
||
constructor(t) {
|
||
super(t, !1), sD(this, "options"), sD(this, "cursor", 0), this.options = t.options, this.value = [...t.initialValues ?? []], this.cursor =
|
||
Math.max(this.options.findIndex(({ value: e }) => e === t.cursorAt), 0), this.on("key", (e) => {
|
||
e === "a" && this.toggleAll();
|
||
}), this.on("cursor", (e) => {
|
||
switch (e) {
|
||
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() {
|
||
let t = this.value.length === this.options.length;
|
||
this.value = t ? [] : this.options.map((e) => e.value);
|
||
}
|
||
toggleValue() {
|
||
let t = this.value.includes(this._value);
|
||
this.value = t ? this.value.filter((e) => e !== this._value) : [...this.value, this._value];
|
||
}
|
||
};
|
||
var Op = Object.defineProperty, _p = /* @__PURE__ */ s((t, e, r) => e in t ? Op(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) :
|
||
t[e] = r, "Qu"), nD = /* @__PURE__ */ s((t, e, r) => (_p(t, typeof e != "symbol" ? e + "" : e, r), r), "Fu"), CD = class extends st {
|
||
static {
|
||
s(this, "Xu");
|
||
}
|
||
constructor(t) {
|
||
super(t, !1), nD(this, "options"), nD(this, "cursor", 0), this.options = t.options, this.cursor = this.options.findIndex(({ value: e }) => e ===
|
||
t.initialValue), this.cursor === -1 && (this.cursor = 0), this.changeValue(), this.on("cursor", (e) => {
|
||
switch (e) {
|
||
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 ED = class extends st {
|
||
static {
|
||
s(this, "eD");
|
||
}
|
||
get valueWithCursor() {
|
||
if (this.state === "submit") return this.value;
|
||
let t = this.value ?? "";
|
||
if (this.cursor >= t.length) return `${this.value}\u2588`;
|
||
let e = t.slice(0, this.cursor), [r, ...u] = t.slice(this.cursor);
|
||
return `${e}${lD.default.inverse(r)}${u.join("")}`;
|
||
}
|
||
get cursor() {
|
||
return this._cursor;
|
||
}
|
||
constructor(t) {
|
||
super(t), this.on("finalize", () => {
|
||
this.value || (this.value = t.defaultValue);
|
||
});
|
||
}
|
||
};
|
||
var bD = /* @__PURE__ */ s((t, e, r) => {
|
||
if (!e.has(t)) throw TypeError("Cannot " + r);
|
||
}, "L"), wt = /* @__PURE__ */ s((t, e, r) => (bD(t, e, "read from private field"), r ? r.call(t) : e.get(t)), "f");
|
||
var Yu = /* @__PURE__ */ s((t, e, r, u) => (bD(t, e, "write to private field"), u ? u.call(t, r) : e.set(t, r), r), "b");
|
||
var it, Hu, oD, Ip, Lp, kp, Pp;
|
||
function Mp(t, e) {
|
||
if (t === void 0 || e.length === 0) return 0;
|
||
let r = e.findIndex((u) => u.value === t);
|
||
return r !== -1 ? r : 0;
|
||
}
|
||
s(Mp, "FD");
|
||
it = /* @__PURE__ */ new WeakMap(), Hu = /* @__PURE__ */ new WeakMap(), oD = /* @__PURE__ */ new WeakMap(), Ip = /* @__PURE__ */ new WeakSet(),
|
||
Lp = /* @__PURE__ */ s(function(t, e) {
|
||
let r = e.name === "up", u = e.name === "down";
|
||
r || u ? (Yu(this, it, Math.max(0, Math.min(wt(this, it) + (r ? -1 : 1), this.filteredOptions.length - 1))), this.focusedValue = this.filteredOptions[wt(
|
||
this, it)]?.value, this.multiple || (this.selectedValues = [this.focusedValue]), this.isNavigating = !0) : this.multiple && this.focusedValue !==
|
||
void 0 && (e.name === "tab" || this.isNavigating && e.name === "space") ? this.toggleSelected(this.focusedValue) : this.isNavigating = !1;
|
||
}, "nu"), kp = /* @__PURE__ */ new WeakSet(), Pp = /* @__PURE__ */ s(function(t) {
|
||
t !== wt(this, Hu) && (Yu(this, Hu, t), t ? this.filteredOptions = this.options.filter((e) => wt(this, oD).call(this, t, e)) : this.filteredOptions =
|
||
[...this.options], Yu(this, it, Mp(this.focusedValue, this.filteredOptions)), this.focusedValue = this.filteredOptions[wt(this, it)]?.value);
|
||
}, "ou");
|
||
|
||
// ../node_modules/@clack/prompts/dist/index.mjs
|
||
var nt = P(ut(), 1), f = P(ut(), 1), St = P(A(), 1);
|
||
import Q from "node:process";
|
||
import { WriteStream as Rp } from "node:tty";
|
||
import { stripVTControlCharacters as I8 } from "node:util";
|
||
function qp() {
|
||
return Q.platform !== "win32" ? Q.env.TERM !== "linux" : !!Q.env.CI || !!Q.env.WT_SESSION || !!Q.env.TERMINUS_SUBLIME || Q.env.ConEmuTask ===
|
||
"{cmd::Cmder}" || Q.env.TERM_PROGRAM === "Terminus-Sublime" || Q.env.TERM_PROGRAM === "vscode" || Q.env.TERM === "xterm-256color" || Q.env.
|
||
TERM === "alacritty" || Q.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
||
}
|
||
s(qp, "Me");
|
||
var Xu = qp(), vD = /* @__PURE__ */ s(() => process.env.CI === "true", "W"), T = /* @__PURE__ */ s((t, e) => Xu ? t : e, "h"), Np = T("\u25C6",
|
||
"*"), yD = T("\u25A0", "x"), BD = T("\u25B2", "x"), xr = T("\u25C7", "o"), jp = T("\u250C", "T"), v = T("\u2502", "|"), we = T("\u2514", "\u2014"),
|
||
Qu = T("\u25CF", ">"), ei = T("\u25CB", " "), Gp = T("\u25FB", "[\u2022]"), xD = T("\u25FC", "[+]"), Wp = T("\u25FB", "[ ]"), L8 = T("\u25AA",
|
||
"\u2022"), k8 = T("\u2500", "-"), P8 = T("\u256E", "+"), M8 = T("\u251C", "+"), R8 = T("\u256F", "+"), Vp = T("\u25CF", "\u2022"), Up = T("\u25C6",
|
||
"*"), Yp = T("\u25B2", "!"), Hp = T("\u25A0", "x"), vr = /* @__PURE__ */ s((t) => {
|
||
switch (t) {
|
||
case "initial":
|
||
case "active":
|
||
return f.default.cyan(Np);
|
||
case "cancel":
|
||
return f.default.red(yD);
|
||
case "error":
|
||
return f.default.yellow(BD);
|
||
case "submit":
|
||
return f.default.green(xr);
|
||
}
|
||
}, "T"), ti = /* @__PURE__ */ s((t) => {
|
||
let { cursor: e, options: r, style: u } = t, n = t.output ?? process.stdout, o = n instanceof Rp && n.rows !== void 0 ? n.rows : 10, i = f.default.
|
||
dim("..."), D = t.maxItems ?? Number.POSITIVE_INFINITY, a = Math.max(o - 4, 0), l = Math.min(a, Math.max(D, 5)), h = 0;
|
||
e >= h + l - 3 ? h = Math.max(Math.min(e - l + 3, r.length - l), 0) : e < h + 2 && (h = Math.max(e - 2, 0));
|
||
let p = l < r.length && h > 0, d = l < r.length && h + l < r.length;
|
||
return r.slice(h, h + l).map((m, g, F) => {
|
||
let E = g === 0 && p, b = g === F.length - 1 && d;
|
||
return E || b ? i : u(m, g + h === e);
|
||
});
|
||
}, "A");
|
||
var wD = /* @__PURE__ */ s((t) => {
|
||
let e = t.active ?? "Yes", r = t.inactive ?? "No";
|
||
return new Cr({ active: e, inactive: r, input: t.input, output: t.output, initialValue: t.initialValue ?? !0, render() {
|
||
let u = `${f.default.gray(v)}
|
||
${vr(this.state)} ${t.message}
|
||
`, n = this.value ? e : r;
|
||
switch (this.state) {
|
||
case "submit":
|
||
return `${u}${f.default.gray(v)} ${f.default.dim(n)}`;
|
||
case "cancel":
|
||
return `${u}${f.default.gray(v)} ${f.default.strikethrough(f.default.dim(n))}
|
||
${f.default.gray(v)}`;
|
||
default:
|
||
return `${u}${f.default.cyan(v)} ${this.value ? `${f.default.green(Qu)} ${e}` : `${f.default.dim(ei)} ${f.default.dim(e)}`} ${f.default.
|
||
dim("/")} ${this.value ? `${f.default.dim(ei)} ${f.default.dim(r)}` : `${f.default.green(Qu)} ${r}`}
|
||
${f.default.cyan(we)}
|
||
`;
|
||
}
|
||
} }).prompt();
|
||
}, "Ve");
|
||
var G = { message: /* @__PURE__ */ s((t = [], { symbol: e = f.default.gray(v), secondarySymbol: r = f.default.gray(v), output: u = process.stdout,
|
||
spacing: n = 1 } = {}) => {
|
||
let o = [];
|
||
for (let D = 0; D < n; D++) o.push(`${r}`);
|
||
let i = Array.isArray(t) ? t : t.split(`
|
||
`);
|
||
if (i.length > 0) {
|
||
let [D, ...a] = i;
|
||
D.length > 0 ? o.push(`${e} ${D}`) : o.push(e);
|
||
for (let l of a) l.length > 0 ? o.push(`${r} ${l}`) : o.push(r);
|
||
}
|
||
u.write(`${o.join(`
|
||
`)}
|
||
`);
|
||
}, "message"), info: /* @__PURE__ */ s((t, e) => {
|
||
G.message(t, { ...e, symbol: f.default.blue(Vp) });
|
||
}, "info"), success: /* @__PURE__ */ s((t, e) => {
|
||
G.message(t, { ...e, symbol: f.default.green(Up) });
|
||
}, "success"), step: /* @__PURE__ */ s((t, e) => {
|
||
G.message(t, { ...e, symbol: f.default.green(xr) });
|
||
}, "step"), warn: /* @__PURE__ */ s((t, e) => {
|
||
G.message(t, { ...e, symbol: f.default.yellow(Yp) });
|
||
}, "warn"), warning: /* @__PURE__ */ s((t, e) => {
|
||
G.warn(t, e);
|
||
}, "warning"), error: /* @__PURE__ */ s((t, e) => {
|
||
G.message(t, { ...e, symbol: f.default.red(Hp) });
|
||
}, "error") }, AD = /* @__PURE__ */ s((t = "", e) => {
|
||
(e?.output ?? process.stdout).write(`${f.default.gray(we)} ${f.default.red(t)}
|
||
|
||
`);
|
||
}, "Ne"), SD = /* @__PURE__ */ s((t = "", e) => {
|
||
(e?.output ?? process.stdout).write(`${f.default.gray(jp)} ${t}
|
||
`);
|
||
}, "Pe"), TD = /* @__PURE__ */ s((t = "", e) => {
|
||
(e?.output ?? process.stdout).write(`${f.default.gray(v)}
|
||
${f.default.gray(we)} ${t}
|
||
|
||
`);
|
||
}, "Le"), $D = /* @__PURE__ */ s((t) => {
|
||
let e = /* @__PURE__ */ s((r, u) => {
|
||
let n = r.label ?? String(r.value);
|
||
return u === "active" ? `${f.default.cyan(Gp)} ${n} ${r.hint ? f.default.dim(`(${r.hint})`) : ""}` : u === "selected" ? `${f.default.green(
|
||
xD)} ${f.default.dim(n)} ${r.hint ? f.default.dim(`(${r.hint})`) : ""}` : u === "cancelled" ? `${f.default.strikethrough(f.default.dim(n))}` :
|
||
u === "active-selected" ? `${f.default.green(xD)} ${n} ${r.hint ? f.default.dim(`(${r.hint})`) : ""}` : u === "submitted" ? `${f.default.
|
||
dim(n)}` : `${f.default.dim(Wp)} ${f.default.dim(n)}`;
|
||
}, "r");
|
||
return new FD({ options: t.options, input: t.input, output: t.output, initialValues: t.initialValues, required: t.required ?? !0, cursorAt: t.
|
||
cursorAt, validate(r) {
|
||
if (this.required && r.length === 0) return `Please select at least one option.
|
||
${f.default.reset(f.default.dim(`Press ${f.default.gray(f.default.bgWhite(f.default.inverse(" space ")))} to select, ${f.default.gray(f.default.
|
||
bgWhite(f.default.inverse(" enter ")))} to submit`))}`;
|
||
}, render() {
|
||
let r = `${f.default.gray(v)}
|
||
${vr(this.state)} ${t.message}
|
||
`, u = /* @__PURE__ */ s((n, o) => {
|
||
let i = this.value.includes(n.value);
|
||
return o && i ? e(n, "active-selected") : i ? e(n, "selected") : e(n, o ? "active" : "inactive");
|
||
}, "i");
|
||
switch (this.state) {
|
||
case "submit":
|
||
return `${r}${f.default.gray(v)} ${this.options.filter(({ value: n }) => this.value.includes(n)).map((n) => e(n, "submitted")).join(
|
||
f.default.dim(", ")) || f.default.dim("none")}`;
|
||
case "cancel": {
|
||
let n = this.options.filter(({ value: o }) => this.value.includes(o)).map((o) => e(o, "cancelled")).join(f.default.dim(", "));
|
||
return `${r}${f.default.gray(v)} ${n.trim() ? `${n}
|
||
${f.default.gray(v)}` : ""}`;
|
||
}
|
||
case "error": {
|
||
let n = this.error.split(`
|
||
`).map((o, i) => i === 0 ? `${f.default.yellow(we)} ${f.default.yellow(o)}` : ` ${o}`).join(`
|
||
`);
|
||
return `${r + f.default.yellow(v)} ${ti({ output: t.output, options: this.options, cursor: this.cursor, maxItems: t.maxItems, style: u }).
|
||
join(`
|
||
${f.default.yellow(v)} `)}
|
||
${n}
|
||
`;
|
||
}
|
||
default:
|
||
return `${r}${f.default.cyan(v)} ${ti({ output: t.output, options: this.options, cursor: this.cursor, maxItems: t.maxItems, style: u }).
|
||
join(`
|
||
${f.default.cyan(v)} `)}
|
||
${f.default.cyan(we)}
|
||
`;
|
||
}
|
||
} }).prompt();
|
||
}, "ke");
|
||
var OD = /* @__PURE__ */ s(({ indicator: t = "dots", onCancel: e, output: r = process.stdout, cancelMessage: u, errorMessage: n, frames: o = Xu ?
|
||
["\u25D2", "\u25D0", "\u25D3", "\u25D1"] : ["\u2022", "o", "O", "0"], delay: i = Xu ? 80 : 120 } = {}) => {
|
||
let D = vD(), a, l, h = !1, p = !1, d = "", m, g = performance.now(), F = /* @__PURE__ */ s((q) => {
|
||
let K = q > 1 ? n ?? ye.messages.error : u ?? ye.messages.cancel;
|
||
p = q === 1, h && (Bn(K, q), p && typeof e == "function" && e());
|
||
}, "v"), E = /* @__PURE__ */ s(() => F(2), "S"), b = /* @__PURE__ */ s(() => F(1), "b"), y = /* @__PURE__ */ s(() => {
|
||
process.on("uncaughtExceptionMonitor", E), process.on("unhandledRejection", E), process.on("SIGINT", b), process.on("SIGTERM", b), process.
|
||
on("exit", F);
|
||
}, "B"), R = /* @__PURE__ */ s(() => {
|
||
process.removeListener("uncaughtExceptionMonitor", E), process.removeListener("unhandledRejection", E), process.removeListener("SIGINT",
|
||
b), process.removeListener("SIGTERM", b), process.removeListener("exit", F);
|
||
}, "me"), Et = /* @__PURE__ */ s(() => {
|
||
if (m === void 0) return;
|
||
D && r.write(`
|
||
`);
|
||
let q = m.split(`
|
||
`);
|
||
r.write(St.cursor.move(-999, q.length - 1)), r.write(St.erase.down(q.length));
|
||
}, "Y"), bt = /* @__PURE__ */ s((q) => q.replace(/\.+$/, ""), "z"), xt = /* @__PURE__ */ s((q) => {
|
||
let K = (performance.now() - q) / 1e3, ue = Math.floor(K / 60), Ke = Math.floor(K % 60);
|
||
return ue > 0 ? `[${ue}m ${Ke}s]` : `[${Ke}s]`;
|
||
}, "Q"), er = /* @__PURE__ */ s((q = "") => {
|
||
h = !0, a = mD({ output: r }), d = bt(q), g = performance.now(), r.write(`${f.default.gray(v)}
|
||
`);
|
||
let K = 0, ue = 0;
|
||
y(), l = setInterval(() => {
|
||
if (D && d === m) return;
|
||
Et(), m = d;
|
||
let Ke = f.default.magenta(o[K]);
|
||
if (D) r.write(`${Ke} ${d}...`);
|
||
else if (t === "timer") r.write(`${Ke} ${d} ${xt(g)}`);
|
||
else {
|
||
let Rf = ".".repeat(Math.floor(ue)).slice(0, 3);
|
||
r.write(`${Ke} ${d}${Rf}`);
|
||
}
|
||
K = K + 1 < o.length ? K + 1 : 0, ue = ue < 4 ? ue + 0.125 : 0;
|
||
}, i);
|
||
}, "de"), Bn = /* @__PURE__ */ s((q = "", K = 0) => {
|
||
h = !1, clearInterval(l), Et();
|
||
let ue = K === 0 ? f.default.green(xr) : K === 1 ? f.default.red(yD) : f.default.red(BD);
|
||
d = q ?? d, t === "timer" ? r.write(`${ue} ${d} ${xt(g)}
|
||
`) : r.write(`${ue} ${d}
|
||
`), R(), a();
|
||
}, "Z");
|
||
return { start: er, stop: Bn, message: /* @__PURE__ */ s((q = "") => {
|
||
d = bt(q ?? d);
|
||
}, "message"), get isCancelled() {
|
||
return p;
|
||
} };
|
||
}, "J"), q8 = { light: T("\u2500", "-"), heavy: T("\u2501", "="), block: T("\u2588", "#") };
|
||
var _D = /* @__PURE__ */ s((t) => {
|
||
let e = /* @__PURE__ */ s((r, u) => {
|
||
let n = r.label ?? String(r.value);
|
||
switch (u) {
|
||
case "selected":
|
||
return `${f.default.dim(n)}`;
|
||
case "active":
|
||
return `${f.default.green(Qu)} ${n} ${r.hint ? f.default.dim(`(${r.hint})`) : ""}`;
|
||
case "cancelled":
|
||
return `${f.default.strikethrough(f.default.dim(n))}`;
|
||
default:
|
||
return `${f.default.dim(ei)} ${f.default.dim(n)}`;
|
||
}
|
||
}, "r");
|
||
return new CD({ options: t.options, input: t.input, output: t.output, initialValue: t.initialValue, render() {
|
||
let r = `${f.default.gray(v)}
|
||
${vr(this.state)} ${t.message}
|
||
`;
|
||
switch (this.state) {
|
||
case "submit":
|
||
return `${r}${f.default.gray(v)} ${e(this.options[this.cursor], "selected")}`;
|
||
case "cancel":
|
||
return `${r}${f.default.gray(v)} ${e(this.options[this.cursor], "cancelled")}
|
||
${f.default.gray(v)}`;
|
||
default:
|
||
return `${r}${f.default.cyan(v)} ${ti({ output: t.output, cursor: this.cursor, options: this.options, maxItems: t.maxItems, style: /* @__PURE__ */ s(
|
||
(u, n) => e(u, n ? "active" : "inactive"), "style") }).join(`
|
||
${f.default.cyan(v)} `)}
|
||
${f.default.cyan(we)}
|
||
`;
|
||
}
|
||
} }).prompt();
|
||
}, "qe"), N8 = `${f.default.gray(v)} `;
|
||
var ID = /* @__PURE__ */ s((t) => {
|
||
let e = t.output ?? process.stdout, r = gD(e), u = nt.gray(v), n = t.spacing ?? 1, o = 3, i = t.retainLog === !0, D = vD();
|
||
e.write(`${u}
|
||
`), e.write(`${nt.green(xr)} ${t.title}
|
||
`);
|
||
for (let g = 0; g < n; g++) e.write(`${u}
|
||
`);
|
||
let a = "", l = "", h = !1, p = /* @__PURE__ */ s((g) => {
|
||
if (a.length === 0) return;
|
||
let F = a.split(`
|
||
`).reduce((E, b) => b === "" ? E + 1 : E + Math.ceil((b.length + o) / r), 0) + 1 + (g ? n + 2 : 0);
|
||
e.write(St.erase.lines(F));
|
||
}, "g"), d = /* @__PURE__ */ s((g, F) => {
|
||
G.message(g.split(`
|
||
`).map(nt.dim), { output: e, secondarySymbol: u, symbol: u, spacing: F ?? n });
|
||
}, "m"), m = /* @__PURE__ */ s(() => {
|
||
i === !0 && l.length > 0 ? d(`${l}
|
||
${a}`) : d(a);
|
||
}, "y");
|
||
return { message(g, F) {
|
||
if (p(!1), (F?.raw !== !0 || !h) && a !== "" && (a += `
|
||
`), a += g, h = F?.raw === !0, t.limit !== void 0) {
|
||
let E = a.split(`
|
||
`), b = E.length - t.limit;
|
||
if (b > 0) {
|
||
let y = E.splice(0, b);
|
||
i && (l += (l === "" ? "" : `
|
||
`) + y.join(`
|
||
`));
|
||
}
|
||
a = E.join(`
|
||
`);
|
||
}
|
||
D || d(a, 0);
|
||
}, error(g, F) {
|
||
p(!0), G.error(g, { output: e, secondarySymbol: u, spacing: 1 }), F?.showLog !== !1 && m(), a = l = "";
|
||
}, success(g, F) {
|
||
p(!0), G.success(g, { output: e, secondarySymbol: u, spacing: 1 }), F?.showLog === !0 && m(), a = l = "";
|
||
} };
|
||
}, "Ke"), LD = /* @__PURE__ */ s((t) => new ED({ validate: t.validate, placeholder: t.placeholder, defaultValue: t.defaultValue, initialValue: t.
|
||
initialValue, output: t.output, input: t.input, render() {
|
||
let e = `${f.default.gray(v)}
|
||
${vr(this.state)} ${t.message}
|
||
`, r = t.placeholder ? f.default.inverse(t.placeholder[0]) + f.default.dim(t.placeholder.slice(1)) : f.default.inverse(f.default.hidden("_")),
|
||
u = this.value ? this.valueWithCursor : r;
|
||
switch (this.state) {
|
||
case "error":
|
||
return `${e.trim()}
|
||
${f.default.yellow(v)} ${u}
|
||
${f.default.yellow(we)} ${f.default.yellow(this.error)}
|
||
`;
|
||
case "submit":
|
||
return `${e}${f.default.gray(v)} ${f.default.dim(this.value || t.placeholder)}`;
|
||
case "cancel":
|
||
return `${e}${f.default.gray(v)} ${f.default.strikethrough(f.default.dim(this.value ?? ""))}${this.value?.trim() ? `
|
||
${f.default.gray(v)}` : ""}`;
|
||
default:
|
||
return `${e}${f.default.cyan(v)} ${u}
|
||
${f.default.cyan(we)}
|
||
`;
|
||
}
|
||
} }).prompt(), "Ue");
|
||
|
||
// ../node_modules/boxen/index.js
|
||
import Sr from "node:process";
|
||
|
||
// ../node_modules/ansi-regex/index.js
|
||
function ri({ onlyFirst: t = !1 } = {}) {
|
||
let r = [
|
||
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u00\
|
||
9C))",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
|
||
].join("|");
|
||
return new RegExp(r, t ? void 0 : "g");
|
||
}
|
||
s(ri, "ansiRegex");
|
||
|
||
// ../node_modules/strip-ansi/index.js
|
||
var zp = ri();
|
||
function Re(t) {
|
||
if (typeof t != "string")
|
||
throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);
|
||
return t.replace(zp, "");
|
||
}
|
||
s(Re, "stripAnsi");
|
||
|
||
// ../node_modules/boxen/node_modules/string-width/index.js
|
||
var RD = P(ii(), 1), qD = P(si(), 1);
|
||
function J(t, e = {}) {
|
||
if (typeof t != "string" || t.length === 0 || (e = {
|
||
ambiguousIsNarrow: !0,
|
||
...e
|
||
}, t = Re(t), t.length === 0))
|
||
return 0;
|
||
t = t.replace((0, qD.default)(), " ");
|
||
let r = e.ambiguousIsNarrow ? 1 : 2, u = 0;
|
||
for (let n of t) {
|
||
let o = n.codePointAt(0);
|
||
if (o <= 31 || o >= 127 && o <= 159 || o >= 768 && o <= 879)
|
||
continue;
|
||
switch (RD.default.eastAsianWidth(n)) {
|
||
case "F":
|
||
case "W":
|
||
u += 2;
|
||
break;
|
||
case "A":
|
||
u += r;
|
||
break;
|
||
default:
|
||
u += 1;
|
||
}
|
||
}
|
||
return u;
|
||
}
|
||
s(J, "stringWidth");
|
||
|
||
// ../node_modules/boxen/node_modules/chalk/source/vendor/ansi-styles/index.js
|
||
var ND = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${e + t}m`, "wrapAnsi16"), jD = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${38 + t};5;${e}\
|
||
m`, "wrapAnsi256"), GD = /* @__PURE__ */ s((t = 0) => (e, r, u) => `\x1B[${38 + t};2;${e};${r};${u}m`, "wrapAnsi16m"), $ = {
|
||
modifier: {
|
||
reset: [0, 0],
|
||
// 21 isn't widely supported and 22 does the same thing
|
||
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],
|
||
// Bright color
|
||
blackBright: [90, 39],
|
||
gray: [90, 39],
|
||
// Alias of `blackBright`
|
||
grey: [90, 39],
|
||
// Alias of `blackBright`
|
||
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],
|
||
// Bright color
|
||
bgBlackBright: [100, 49],
|
||
bgGray: [100, 49],
|
||
// Alias of `bgBlackBright`
|
||
bgGrey: [100, 49],
|
||
// Alias of `bgBlackBright`
|
||
bgRedBright: [101, 49],
|
||
bgGreenBright: [102, 49],
|
||
bgYellowBright: [103, 49],
|
||
bgBlueBright: [104, 49],
|
||
bgMagentaBright: [105, 49],
|
||
bgCyanBright: [106, 49],
|
||
bgWhiteBright: [107, 49]
|
||
}
|
||
}, e1 = Object.keys($.modifier), Kp = Object.keys($.color), Zp = Object.keys($.bgColor), t1 = [...Kp, ...Zp];
|
||
function Jp() {
|
||
let t = /* @__PURE__ */ new Map();
|
||
for (let [e, r] of Object.entries($)) {
|
||
for (let [u, n] of Object.entries(r))
|
||
$[u] = {
|
||
open: `\x1B[${n[0]}m`,
|
||
close: `\x1B[${n[1]}m`
|
||
}, r[u] = $[u], t.set(n[0], n[1]);
|
||
Object.defineProperty($, e, {
|
||
value: r,
|
||
enumerable: !1
|
||
});
|
||
}
|
||
return Object.defineProperty($, "codes", {
|
||
value: t,
|
||
enumerable: !1
|
||
}), $.color.close = "\x1B[39m", $.bgColor.close = "\x1B[49m", $.color.ansi = ND(), $.color.ansi256 = jD(), $.color.ansi16m = GD(), $.bgColor.
|
||
ansi = ND(10), $.bgColor.ansi256 = jD(10), $.bgColor.ansi16m = GD(10), Object.defineProperties($, {
|
||
rgbToAnsi256: {
|
||
value(e, r, u) {
|
||
return e === r && r === u ? e < 8 ? 16 : e > 248 ? 231 : Math.round((e - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(e / 255 * 5) + 6 *
|
||
Math.round(r / 255 * 5) + Math.round(u / 255 * 5);
|
||
},
|
||
enumerable: !1
|
||
},
|
||
hexToRgb: {
|
||
value(e) {
|
||
let r = /[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));
|
||
if (!r)
|
||
return [0, 0, 0];
|
||
let [u] = r;
|
||
u.length === 3 && (u = [...u].map((o) => o + o).join(""));
|
||
let n = Number.parseInt(u, 16);
|
||
return [
|
||
/* eslint-disable no-bitwise */
|
||
n >> 16 & 255,
|
||
n >> 8 & 255,
|
||
n & 255
|
||
/* eslint-enable no-bitwise */
|
||
];
|
||
},
|
||
enumerable: !1
|
||
},
|
||
hexToAnsi256: {
|
||
value: /* @__PURE__ */ s((e) => $.rgbToAnsi256(...$.hexToRgb(e)), "value"),
|
||
enumerable: !1
|
||
},
|
||
ansi256ToAnsi: {
|
||
value(e) {
|
||
if (e < 8)
|
||
return 30 + e;
|
||
if (e < 16)
|
||
return 90 + (e - 8);
|
||
let r, u, n;
|
||
if (e >= 232)
|
||
r = ((e - 232) * 10 + 8) / 255, u = r, n = r;
|
||
else {
|
||
e -= 16;
|
||
let D = e % 36;
|
||
r = Math.floor(e / 36) / 5, u = Math.floor(D / 6) / 5, n = D % 6 / 5;
|
||
}
|
||
let o = Math.max(r, u, n) * 2;
|
||
if (o === 0)
|
||
return 30;
|
||
let i = 30 + (Math.round(n) << 2 | Math.round(u) << 1 | Math.round(r));
|
||
return o === 2 && (i += 60), i;
|
||
},
|
||
enumerable: !1
|
||
},
|
||
rgbToAnsi: {
|
||
value: /* @__PURE__ */ s((e, r, u) => $.ansi256ToAnsi($.rgbToAnsi256(e, r, u)), "value"),
|
||
enumerable: !1
|
||
},
|
||
hexToAnsi: {
|
||
value: /* @__PURE__ */ s((e) => $.ansi256ToAnsi($.hexToAnsi256(e)), "value"),
|
||
enumerable: !1
|
||
}
|
||
}), $;
|
||
}
|
||
s(Jp, "assembleStyles");
|
||
var Xp = Jp(), ee = Xp;
|
||
|
||
// ../node_modules/boxen/node_modules/chalk/source/vendor/supports-color/index.js
|
||
import ni from "node:process";
|
||
import Qp from "node:os";
|
||
import WD from "node:tty";
|
||
function X(t, e = globalThis.Deno ? globalThis.Deno.args : ni.argv) {
|
||
let r = t.startsWith("-") ? "" : t.length === 1 ? "-" : "--", u = e.indexOf(r + t), n = e.indexOf("--");
|
||
return u !== -1 && (n === -1 || u < n);
|
||
}
|
||
s(X, "hasFlag");
|
||
var { env: L } = ni, yr;
|
||
X("no-color") || X("no-colors") || X("color=false") || X("color=never") ? yr = 0 : (X("color") || X("colors") || X("color=true") || X("color\
|
||
=always")) && (yr = 1);
|
||
function em() {
|
||
if ("FORCE_COLOR" in L)
|
||
return L.FORCE_COLOR === "true" ? 1 : L.FORCE_COLOR === "false" ? 0 : L.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(L.FORCE_COLOR,
|
||
10), 3);
|
||
}
|
||
s(em, "envForceColor");
|
||
function tm(t) {
|
||
return t === 0 ? !1 : {
|
||
level: t,
|
||
hasBasic: !0,
|
||
has256: t >= 2,
|
||
has16m: t >= 3
|
||
};
|
||
}
|
||
s(tm, "translateLevel");
|
||
function rm(t, { streamIsTTY: e, sniffFlags: r = !0 } = {}) {
|
||
let u = em();
|
||
u !== void 0 && (yr = u);
|
||
let n = r ? yr : u;
|
||
if (n === 0)
|
||
return 0;
|
||
if (r) {
|
||
if (X("color=16m") || X("color=full") || X("color=truecolor"))
|
||
return 3;
|
||
if (X("color=256"))
|
||
return 2;
|
||
}
|
||
if ("TF_BUILD" in L && "AGENT_NAME" in L)
|
||
return 1;
|
||
if (t && !e && n === void 0)
|
||
return 0;
|
||
let o = n || 0;
|
||
if (L.TERM === "dumb")
|
||
return o;
|
||
if (ni.platform === "win32") {
|
||
let i = Qp.release().split(".");
|
||
return Number(i[0]) >= 10 && Number(i[2]) >= 10586 ? Number(i[2]) >= 14931 ? 3 : 2 : 1;
|
||
}
|
||
if ("CI" in L)
|
||
return ["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((i) => i in L) ? 3 : ["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].
|
||
some((i) => i in L) || L.CI_NAME === "codeship" ? 1 : o;
|
||
if ("TEAMCITY_VERSION" in L)
|
||
return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(L.TEAMCITY_VERSION) ? 1 : 0;
|
||
if (L.COLORTERM === "truecolor" || L.TERM === "xterm-kitty")
|
||
return 3;
|
||
if ("TERM_PROGRAM" in L) {
|
||
let i = Number.parseInt((L.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
||
switch (L.TERM_PROGRAM) {
|
||
case "iTerm.app":
|
||
return i >= 3 ? 3 : 2;
|
||
case "Apple_Terminal":
|
||
return 2;
|
||
}
|
||
}
|
||
return /-256(color)?$/i.test(L.TERM) ? 2 : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(L.TERM) || "COLORTERM" in L ?
|
||
1 : o;
|
||
}
|
||
s(rm, "_supportsColor");
|
||
function VD(t, e = {}) {
|
||
let r = rm(t, {
|
||
streamIsTTY: t && t.isTTY,
|
||
...e
|
||
});
|
||
return tm(r);
|
||
}
|
||
s(VD, "createSupportsColor");
|
||
var um = {
|
||
stdout: VD({ isTTY: WD.isatty(1) }),
|
||
stderr: VD({ isTTY: WD.isatty(2) })
|
||
}, UD = um;
|
||
|
||
// ../node_modules/boxen/node_modules/chalk/source/utilities.js
|
||
function YD(t, e, r) {
|
||
let u = t.indexOf(e);
|
||
if (u === -1)
|
||
return t;
|
||
let n = e.length, o = 0, i = "";
|
||
do
|
||
i += t.slice(o, u) + e + r, o = u + n, u = t.indexOf(e, o);
|
||
while (u !== -1);
|
||
return i += t.slice(o), i;
|
||
}
|
||
s(YD, "stringReplaceAll");
|
||
function HD(t, e, r, u) {
|
||
let n = 0, o = "";
|
||
do {
|
||
let i = t[u - 1] === "\r";
|
||
o += t.slice(n, i ? u - 1 : u) + e + (i ? `\r
|
||
` : `
|
||
`) + r, n = u + 1, u = t.indexOf(`
|
||
`, n);
|
||
} while (u !== -1);
|
||
return o += t.slice(n), o;
|
||
}
|
||
s(HD, "stringEncaseCRLFWithFirstIndex");
|
||
|
||
// ../node_modules/boxen/node_modules/chalk/source/index.js
|
||
var { stdout: zD, stderr: KD } = UD, oi = Symbol("GENERATOR"), ot = Symbol("STYLER"), Tt = Symbol("IS_EMPTY"), ZD = [
|
||
"ansi",
|
||
"ansi",
|
||
"ansi256",
|
||
"ansi16m"
|
||
], Dt = /* @__PURE__ */ Object.create(null), im = /* @__PURE__ */ s((t, e = {}) => {
|
||
if (e.level && !(Number.isInteger(e.level) && e.level >= 0 && e.level <= 3))
|
||
throw new Error("The `level` option should be an integer from 0 to 3");
|
||
let r = zD ? zD.level : 0;
|
||
t.level = e.level === void 0 ? r : e.level;
|
||
}, "applyOptions");
|
||
var sm = /* @__PURE__ */ s((t) => {
|
||
let e = /* @__PURE__ */ s((...r) => r.join(" "), "chalk");
|
||
return im(e, t), Object.setPrototypeOf(e, $t.prototype), e;
|
||
}, "chalkFactory");
|
||
function $t(t) {
|
||
return sm(t);
|
||
}
|
||
s($t, "createChalk");
|
||
Object.setPrototypeOf($t.prototype, Function.prototype);
|
||
for (let [t, e] of Object.entries(ee))
|
||
Dt[t] = {
|
||
get() {
|
||
let r = Br(this, ai(e.open, e.close, this[ot]), this[Tt]);
|
||
return Object.defineProperty(this, t, { value: r }), r;
|
||
}
|
||
};
|
||
Dt.visible = {
|
||
get() {
|
||
let t = Br(this, this[ot], !0);
|
||
return Object.defineProperty(this, "visible", { value: t }), t;
|
||
}
|
||
};
|
||
var Di = /* @__PURE__ */ s((t, e, r, ...u) => t === "rgb" ? e === "ansi16m" ? ee[r].ansi16m(...u) : e === "ansi256" ? ee[r].ansi256(ee.rgbToAnsi256(
|
||
...u)) : ee[r].ansi(ee.rgbToAnsi(...u)) : t === "hex" ? Di("rgb", e, r, ...ee.hexToRgb(...u)) : ee[r][t](...u), "getModelAnsi"), nm = ["rgb",
|
||
"hex", "ansi256"];
|
||
for (let t of nm) {
|
||
Dt[t] = {
|
||
get() {
|
||
let { level: r } = this;
|
||
return function(...u) {
|
||
let n = ai(Di(t, ZD[r], "color", ...u), ee.color.close, this[ot]);
|
||
return Br(this, n, this[Tt]);
|
||
};
|
||
}
|
||
};
|
||
let e = "bg" + t[0].toUpperCase() + t.slice(1);
|
||
Dt[e] = {
|
||
get() {
|
||
let { level: r } = this;
|
||
return function(...u) {
|
||
let n = ai(Di(t, ZD[r], "bgColor", ...u), ee.bgColor.close, this[ot]);
|
||
return Br(this, n, this[Tt]);
|
||
};
|
||
}
|
||
};
|
||
}
|
||
var om = Object.defineProperties(() => {
|
||
}, {
|
||
...Dt,
|
||
level: {
|
||
enumerable: !0,
|
||
get() {
|
||
return this[oi].level;
|
||
},
|
||
set(t) {
|
||
this[oi].level = t;
|
||
}
|
||
}
|
||
}), ai = /* @__PURE__ */ s((t, e, r) => {
|
||
let u, n;
|
||
return r === void 0 ? (u = t, n = e) : (u = r.openAll + t, n = e + r.closeAll), {
|
||
open: t,
|
||
close: e,
|
||
openAll: u,
|
||
closeAll: n,
|
||
parent: r
|
||
};
|
||
}, "createStyler"), Br = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = /* @__PURE__ */ s((...n) => Dm(u, n.length === 1 ? "" + n[0] : n.join(" ")), "builder");
|
||
return Object.setPrototypeOf(u, om), u[oi] = t, u[ot] = e, u[Tt] = r, u;
|
||
}, "createBuilder"), Dm = /* @__PURE__ */ s((t, e) => {
|
||
if (t.level <= 0 || !e)
|
||
return t[Tt] ? "" : e;
|
||
let r = t[ot];
|
||
if (r === void 0)
|
||
return e;
|
||
let { openAll: u, closeAll: n } = r;
|
||
if (e.includes("\x1B"))
|
||
for (; r !== void 0; )
|
||
e = YD(e, r.close, r.open), r = r.parent;
|
||
let o = e.indexOf(`
|
||
`);
|
||
return o !== -1 && (e = HD(e, n, u, o)), u + e + n;
|
||
}, "applyStyle");
|
||
Object.defineProperties($t.prototype, Dt);
|
||
var am = $t(), f1 = $t({ level: KD ? KD.level : 0 });
|
||
var qe = am;
|
||
|
||
// ../node_modules/boxen/node_modules/widest-line/index.js
|
||
function wr(t) {
|
||
let e = 0;
|
||
for (let r of t.split(`
|
||
`))
|
||
e = Math.max(e, J(r));
|
||
return e;
|
||
}
|
||
s(wr, "widestLine");
|
||
|
||
// ../node_modules/boxen/index.js
|
||
var Fa = P(hi(), 1);
|
||
|
||
// ../node_modules/boxen/node_modules/camelcase/index.js
|
||
var hm = /[\p{Lu}]/u, cm = /[\p{Ll}]/u, QD = /^[\p{Lu}](?![\p{Lu}])/gu, ra = /([\p{Alpha}\p{N}_]|$)/u, ci = /[_.\- ]+/, dm = new RegExp("^" +
|
||
ci.source), ea = new RegExp(ci.source + ra.source, "gu"), ta = new RegExp("\\d+" + ra.source, "gu"), fm = /* @__PURE__ */ s((t, e, r, u) => {
|
||
let n = !1, o = !1, i = !1, D = !1;
|
||
for (let a = 0; a < t.length; a++) {
|
||
let l = t[a];
|
||
D = a > 2 ? t[a - 3] === "-" : !0, n && hm.test(l) ? (t = t.slice(0, a) + "-" + t.slice(a), n = !1, i = o, o = !0, a++) : o && i && cm.test(
|
||
l) && (!D || u) ? (t = t.slice(0, a - 1) + "-" + t.slice(a - 1), i = o, o = !1, n = !0) : (n = e(l) === l && r(l) !== l, i = o, o = r(l) ===
|
||
l && e(l) !== l);
|
||
}
|
||
return t;
|
||
}, "preserveCamelCase"), pm = /* @__PURE__ */ s((t, e) => (QD.lastIndex = 0, t.replace(QD, (r) => e(r))), "preserveConsecutiveUppercase"), mm = /* @__PURE__ */ s(
|
||
(t, e) => (ea.lastIndex = 0, ta.lastIndex = 0, t.replace(ea, (r, u) => e(u)).replace(ta, (r) => e(r))), "postProcess");
|
||
function di(t, e) {
|
||
if (!(typeof t == "string" || Array.isArray(t)))
|
||
throw new TypeError("Expected the input to be `string | string[]`");
|
||
if (e = {
|
||
pascalCase: !1,
|
||
preserveConsecutiveUppercase: !1,
|
||
...e
|
||
}, Array.isArray(t) ? t = t.map((o) => o.trim()).filter((o) => o.length).join("-") : t = t.trim(), t.length === 0)
|
||
return "";
|
||
let r = e.locale === !1 ? (o) => o.toLowerCase() : (o) => o.toLocaleLowerCase(e.locale), u = e.locale === !1 ? (o) => o.toUpperCase() : (o) => o.
|
||
toLocaleUpperCase(e.locale);
|
||
return t.length === 1 ? ci.test(t) ? "" : e.pascalCase ? u(t) : r(t) : (t !== r(t) && (t = fm(t, r, u, e.preserveConsecutiveUppercase)), t =
|
||
t.replace(dm, ""), t = e.preserveConsecutiveUppercase ? pm(t, r) : r(t), e.pascalCase && (t = u(t.charAt(0)) + t.slice(1)), mm(t, u));
|
||
}
|
||
s(di, "camelCase");
|
||
|
||
// ../node_modules/boxen/index.js
|
||
var gi = P(ia(), 1);
|
||
|
||
// ../node_modules/wrap-ansi/node_modules/string-width/index.js
|
||
var sa = P(ii(), 1), na = P(si(), 1);
|
||
function je(t, e = {}) {
|
||
if (typeof t != "string" || t.length === 0 || (e = {
|
||
ambiguousIsNarrow: !0,
|
||
...e
|
||
}, t = Re(t), t.length === 0))
|
||
return 0;
|
||
t = t.replace((0, na.default)(), " ");
|
||
let r = e.ambiguousIsNarrow ? 1 : 2, u = 0;
|
||
for (let n of t) {
|
||
let o = n.codePointAt(0);
|
||
if (o <= 31 || o >= 127 && o <= 159 || o >= 768 && o <= 879)
|
||
continue;
|
||
switch (sa.default.eastAsianWidth(n)) {
|
||
case "F":
|
||
case "W":
|
||
u += 2;
|
||
break;
|
||
case "A":
|
||
u += r;
|
||
break;
|
||
default:
|
||
u += 1;
|
||
}
|
||
}
|
||
return u;
|
||
}
|
||
s(je, "stringWidth");
|
||
|
||
// ../node_modules/wrap-ansi/node_modules/ansi-styles/index.js
|
||
var oa = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${e + t}m`, "wrapAnsi16"), Da = /* @__PURE__ */ s((t = 0) => (e) => `\x1B[${38 + t};5;${e}\
|
||
m`, "wrapAnsi256"), aa = /* @__PURE__ */ s((t = 0) => (e, r, u) => `\x1B[${38 + t};2;${e};${r};${u}m`, "wrapAnsi16m"), O = {
|
||
modifier: {
|
||
reset: [0, 0],
|
||
// 21 isn't widely supported and 22 does the same thing
|
||
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],
|
||
// Bright color
|
||
blackBright: [90, 39],
|
||
gray: [90, 39],
|
||
// Alias of `blackBright`
|
||
grey: [90, 39],
|
||
// Alias of `blackBright`
|
||
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],
|
||
// Bright color
|
||
bgBlackBright: [100, 49],
|
||
bgGray: [100, 49],
|
||
// Alias of `bgBlackBright`
|
||
bgGrey: [100, 49],
|
||
// Alias of `bgBlackBright`
|
||
bgRedBright: [101, 49],
|
||
bgGreenBright: [102, 49],
|
||
bgYellowBright: [103, 49],
|
||
bgBlueBright: [104, 49],
|
||
bgMagentaBright: [105, 49],
|
||
bgCyanBright: [106, 49],
|
||
bgWhiteBright: [107, 49]
|
||
}
|
||
}, T1 = Object.keys(O.modifier), Em = Object.keys(O.color), bm = Object.keys(O.bgColor), $1 = [...Em, ...bm];
|
||
function xm() {
|
||
let t = /* @__PURE__ */ new Map();
|
||
for (let [e, r] of Object.entries(O)) {
|
||
for (let [u, n] of Object.entries(r))
|
||
O[u] = {
|
||
open: `\x1B[${n[0]}m`,
|
||
close: `\x1B[${n[1]}m`
|
||
}, r[u] = O[u], t.set(n[0], n[1]);
|
||
Object.defineProperty(O, e, {
|
||
value: r,
|
||
enumerable: !1
|
||
});
|
||
}
|
||
return Object.defineProperty(O, "codes", {
|
||
value: t,
|
||
enumerable: !1
|
||
}), O.color.close = "\x1B[39m", O.bgColor.close = "\x1B[49m", O.color.ansi = oa(), O.color.ansi256 = Da(), O.color.ansi16m = aa(), O.bgColor.
|
||
ansi = oa(10), O.bgColor.ansi256 = Da(10), O.bgColor.ansi16m = aa(10), Object.defineProperties(O, {
|
||
rgbToAnsi256: {
|
||
value: /* @__PURE__ */ s((e, r, u) => e === r && r === u ? e < 8 ? 16 : e > 248 ? 231 : Math.round((e - 8) / 247 * 24) + 232 : 16 + 36 *
|
||
Math.round(e / 255 * 5) + 6 * Math.round(r / 255 * 5) + Math.round(u / 255 * 5), "value"),
|
||
enumerable: !1
|
||
},
|
||
hexToRgb: {
|
||
value: /* @__PURE__ */ s((e) => {
|
||
let r = /[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));
|
||
if (!r)
|
||
return [0, 0, 0];
|
||
let [u] = r;
|
||
u.length === 3 && (u = [...u].map((o) => o + o).join(""));
|
||
let n = Number.parseInt(u, 16);
|
||
return [
|
||
/* eslint-disable no-bitwise */
|
||
n >> 16 & 255,
|
||
n >> 8 & 255,
|
||
n & 255
|
||
/* eslint-enable no-bitwise */
|
||
];
|
||
}, "value"),
|
||
enumerable: !1
|
||
},
|
||
hexToAnsi256: {
|
||
value: /* @__PURE__ */ s((e) => O.rgbToAnsi256(...O.hexToRgb(e)), "value"),
|
||
enumerable: !1
|
||
},
|
||
ansi256ToAnsi: {
|
||
value: /* @__PURE__ */ s((e) => {
|
||
if (e < 8)
|
||
return 30 + e;
|
||
if (e < 16)
|
||
return 90 + (e - 8);
|
||
let r, u, n;
|
||
if (e >= 232)
|
||
r = ((e - 232) * 10 + 8) / 255, u = r, n = r;
|
||
else {
|
||
e -= 16;
|
||
let D = e % 36;
|
||
r = Math.floor(e / 36) / 5, u = Math.floor(D / 6) / 5, n = D % 6 / 5;
|
||
}
|
||
let o = Math.max(r, u, n) * 2;
|
||
if (o === 0)
|
||
return 30;
|
||
let i = 30 + (Math.round(n) << 2 | Math.round(u) << 1 | Math.round(r));
|
||
return o === 2 && (i += 60), i;
|
||
}, "value"),
|
||
enumerable: !1
|
||
},
|
||
rgbToAnsi: {
|
||
value: /* @__PURE__ */ s((e, r, u) => O.ansi256ToAnsi(O.rgbToAnsi256(e, r, u)), "value"),
|
||
enumerable: !1
|
||
},
|
||
hexToAnsi: {
|
||
value: /* @__PURE__ */ s((e) => O.ansi256ToAnsi(O.hexToAnsi256(e)), "value"),
|
||
enumerable: !1
|
||
}
|
||
}), O;
|
||
}
|
||
s(xm, "assembleStyles");
|
||
var vm = xm(), la = vm;
|
||
|
||
// ../node_modules/wrap-ansi/index.js
|
||
var Ar = /* @__PURE__ */ new Set([
|
||
"\x1B",
|
||
"\x9B"
|
||
]), ym = 39, pi = "\x07", da = "[", Bm = "]", fa = "m", mi = `${Bm}8;;`, ha = /* @__PURE__ */ s((t) => `${Ar.values().next().value}${da}${t}${fa}`,
|
||
"wrapAnsiCode"), ca = /* @__PURE__ */ s((t) => `${Ar.values().next().value}${mi}${t}${pi}`, "wrapAnsiHyperlink"), wm = /* @__PURE__ */ s((t) => t.
|
||
split(" ").map((e) => je(e)), "wordLengths"), fi = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = [...e], n = !1, o = !1, i = je(Re(t[t.length - 1]));
|
||
for (let [D, a] of u.entries()) {
|
||
let l = je(a);
|
||
if (i + l <= r ? t[t.length - 1] += a : (t.push(a), i = 0), Ar.has(a) && (n = !0, o = u.slice(D + 1).join("").startsWith(mi)), n) {
|
||
o ? a === pi && (n = !1, o = !1) : a === fa && (n = !1);
|
||
continue;
|
||
}
|
||
i += l, i === r && D < u.length - 1 && (t.push(""), i = 0);
|
||
}
|
||
!i && t[t.length - 1].length > 0 && t.length > 1 && (t[t.length - 2] += t.pop());
|
||
}, "wrapWord"), Am = /* @__PURE__ */ s((t) => {
|
||
let e = t.split(" "), r = e.length;
|
||
for (; r > 0 && !(je(e[r - 1]) > 0); )
|
||
r--;
|
||
return r === e.length ? t : e.slice(0, r).join(" ") + e.slice(r).join("");
|
||
}, "stringVisibleTrimSpacesRight"), Sm = /* @__PURE__ */ s((t, e, r = {}) => {
|
||
if (r.trim !== !1 && t.trim() === "")
|
||
return "";
|
||
let u = "", n, o, i = wm(t), D = [""];
|
||
for (let [l, h] of t.split(" ").entries()) {
|
||
r.trim !== !1 && (D[D.length - 1] = D[D.length - 1].trimStart());
|
||
let p = je(D[D.length - 1]);
|
||
if (l !== 0 && (p >= e && (r.wordWrap === !1 || r.trim === !1) && (D.push(""), p = 0), (p > 0 || r.trim === !1) && (D[D.length - 1] += "\
|
||
", p++)), r.hard && i[l] > e) {
|
||
let d = e - p, m = 1 + Math.floor((i[l] - d - 1) / e);
|
||
Math.floor((i[l] - 1) / e) < m && D.push(""), fi(D, h, e);
|
||
continue;
|
||
}
|
||
if (p + i[l] > e && p > 0 && i[l] > 0) {
|
||
if (r.wordWrap === !1 && p < e) {
|
||
fi(D, h, e);
|
||
continue;
|
||
}
|
||
D.push("");
|
||
}
|
||
if (p + i[l] > e && r.wordWrap === !1) {
|
||
fi(D, h, e);
|
||
continue;
|
||
}
|
||
D[D.length - 1] += h;
|
||
}
|
||
r.trim !== !1 && (D = D.map((l) => Am(l)));
|
||
let a = [...D.join(`
|
||
`)];
|
||
for (let [l, h] of a.entries()) {
|
||
if (u += h, Ar.has(h)) {
|
||
let { groups: d } = new RegExp(`(?:\\${da}(?<code>\\d+)m|\\${mi}(?<uri>.*)${pi})`).exec(a.slice(l).join("")) || { groups: {} };
|
||
if (d.code !== void 0) {
|
||
let m = Number.parseFloat(d.code);
|
||
n = m === ym ? void 0 : m;
|
||
} else d.uri !== void 0 && (o = d.uri.length === 0 ? void 0 : d.uri);
|
||
}
|
||
let p = la.codes.get(Number(n));
|
||
a[l + 1] === `
|
||
` ? (o && (u += ca("")), n && p && (u += ha(p))) : h === `
|
||
` && (n && p && (u += ha(n)), o && (u += ca(o)));
|
||
}
|
||
return u;
|
||
}, "exec");
|
||
function Se(t, e, r) {
|
||
return String(t).normalize().replace(/\r\n/g, `
|
||
`).split(`
|
||
`).map((u) => Sm(u, e, r)).join(`
|
||
`);
|
||
}
|
||
s(Se, "wrapAnsi");
|
||
|
||
// ../node_modules/boxen/index.js
|
||
var Mm = P(hi(), 1);
|
||
var Te = `
|
||
`, W = " ", Ot = "none", Ca = /* @__PURE__ */ s(() => {
|
||
let { env: t, stdout: e, stderr: r } = Sr;
|
||
return e?.columns ? e.columns : r?.columns ? r.columns : t.COLUMNS ? Number.parseInt(t.COLUMNS, 10) : 80;
|
||
}, "terminalColumns"), pa = /* @__PURE__ */ s((t) => typeof t == "number" ? {
|
||
top: t,
|
||
right: t * 3,
|
||
bottom: t,
|
||
left: t * 3
|
||
} : {
|
||
top: 0,
|
||
right: 0,
|
||
bottom: 0,
|
||
left: 0,
|
||
...t
|
||
}, "getObject"), _t = /* @__PURE__ */ s((t) => t === Ot ? 0 : 2, "getBorderWidth"), Tm = /* @__PURE__ */ s((t) => {
|
||
let e = [
|
||
"topLeft",
|
||
"topRight",
|
||
"bottomRight",
|
||
"bottomLeft",
|
||
"left",
|
||
"right",
|
||
"top",
|
||
"bottom"
|
||
], r;
|
||
if (t === Ot) {
|
||
t = {};
|
||
for (let u of e)
|
||
t[u] = "";
|
||
}
|
||
if (typeof t == "string") {
|
||
if (r = Fa.default[t], !r)
|
||
throw new TypeError(`Invalid border style: ${t}`);
|
||
} else {
|
||
typeof t?.vertical == "string" && (t.left = t.vertical, t.right = t.vertical), typeof t?.horizontal == "string" && (t.top = t.horizontal,
|
||
t.bottom = t.horizontal);
|
||
for (let u of e)
|
||
if (t[u] === null || typeof t[u] != "string")
|
||
throw new TypeError(`Invalid border style: ${u}`);
|
||
r = t;
|
||
}
|
||
return r;
|
||
}, "getBorderChars"), $m = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = "", n = J(t);
|
||
switch (r) {
|
||
case "left": {
|
||
u = t + e.slice(n);
|
||
break;
|
||
}
|
||
case "right": {
|
||
u = e.slice(n) + t;
|
||
break;
|
||
}
|
||
default: {
|
||
e = e.slice(n), e.length % 2 === 1 ? (e = e.slice(Math.floor(e.length / 2)), u = e.slice(1) + t + e) : (e = e.slice(e.length / 2), u =
|
||
e + t + e);
|
||
break;
|
||
}
|
||
}
|
||
return u;
|
||
}, "makeTitle"), Om = /* @__PURE__ */ s((t, { padding: e, width: r, textAlignment: u, height: n }) => {
|
||
t = (0, gi.default)(t, { align: u });
|
||
let o = t.split(Te), i = wr(t), D = r - e.left - e.right;
|
||
if (i > D) {
|
||
let h = [];
|
||
for (let p of o) {
|
||
let d = Se(p, D, { hard: !0 }), g = (0, gi.default)(d, { align: u }).split(`
|
||
`), F = Math.max(...g.map((E) => J(E)));
|
||
for (let E of g) {
|
||
let b;
|
||
switch (u) {
|
||
case "center": {
|
||
b = W.repeat((D - F) / 2) + E;
|
||
break;
|
||
}
|
||
case "right": {
|
||
b = W.repeat(D - F) + E;
|
||
break;
|
||
}
|
||
default: {
|
||
b = E;
|
||
break;
|
||
}
|
||
}
|
||
h.push(b);
|
||
}
|
||
}
|
||
o = h;
|
||
}
|
||
u === "center" && i < D ? o = o.map((h) => W.repeat((D - i) / 2) + h) : u === "right" && i < D && (o = o.map((h) => W.repeat(D - i) + h));
|
||
let a = W.repeat(e.left), l = W.repeat(e.right);
|
||
return o = o.map((h) => a + h + l), o = o.map((h) => {
|
||
if (r - J(h) > 0)
|
||
switch (u) {
|
||
case "center":
|
||
return h + W.repeat(r - J(h));
|
||
case "right":
|
||
return h + W.repeat(r - J(h));
|
||
default:
|
||
return h + W.repeat(r - J(h));
|
||
}
|
||
return h;
|
||
}), e.top > 0 && (o = [...Array.from({ length: e.top }).fill(W.repeat(r)), ...o]), e.bottom > 0 && (o = [...o, ...Array.from({ length: e.bottom }).
|
||
fill(W.repeat(r))]), n && o.length > n ? o = o.slice(0, n) : n && o.length < n && (o = [...o, ...Array.from({ length: n - o.length }).fill(
|
||
W.repeat(r))]), o.join(Te);
|
||
}, "makeContentText"), _m = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = /* @__PURE__ */ s((h) => {
|
||
let p = r.borderColor ? km(r.borderColor)(h) : h;
|
||
return r.dimBorder ? qe.dim(p) : p;
|
||
}, "colorizeBorder"), n = /* @__PURE__ */ s((h) => r.backgroundColor ? Pm(r.backgroundColor)(h) : h, "colorizeContent"), o = Tm(r.borderStyle),
|
||
i = Ca(), D = W.repeat(r.margin.left);
|
||
if (r.float === "center") {
|
||
let h = Math.max((i - e - _t(r.borderStyle)) / 2, 0);
|
||
D = W.repeat(h);
|
||
} else if (r.float === "right") {
|
||
let h = Math.max(i - e - r.margin.right - _t(r.borderStyle), 0);
|
||
D = W.repeat(h);
|
||
}
|
||
let a = "";
|
||
r.margin.top && (a += Te.repeat(r.margin.top)), (r.borderStyle !== Ot || r.title) && (a += u(D + o.topLeft + (r.title ? $m(r.title, o.top.
|
||
repeat(e), r.titleAlignment) : o.top.repeat(e)) + o.topRight) + Te);
|
||
let l = t.split(Te);
|
||
return a += l.map((h) => D + u(o.left) + n(h) + u(o.right)).join(Te), r.borderStyle !== Ot && (a += Te + u(D + o.bottomLeft + o.bottom.repeat(
|
||
e) + o.bottomRight)), r.margin.bottom && (a += Te.repeat(r.margin.bottom)), a;
|
||
}, "boxContent"), Im = /* @__PURE__ */ s((t) => {
|
||
if (t.fullscreen && Sr?.stdout) {
|
||
let e = [Sr.stdout.columns, Sr.stdout.rows];
|
||
typeof t.fullscreen == "function" && (e = t.fullscreen(...e)), t.width || (t.width = e[0]), t.height || (t.height = e[1]);
|
||
}
|
||
return t.width && (t.width = Math.max(1, t.width - _t(t.borderStyle))), t.height && (t.height = Math.max(1, t.height - _t(t.borderStyle))),
|
||
t;
|
||
}, "sanitizeOptions"), ma = /* @__PURE__ */ s((t, e) => e === Ot ? t : ` ${t} `, "formatTitle"), Lm = /* @__PURE__ */ s((t, e) => {
|
||
e = Im(e);
|
||
let r = e.width !== void 0, u = Ca(), n = _t(e.borderStyle), o = u - e.margin.left - e.margin.right - n, i = wr(Se(t, u - n, { hard: !0, trim: !1 })) +
|
||
e.padding.left + e.padding.right;
|
||
if (e.title && r ? (e.title = e.title.slice(0, Math.max(0, e.width - 2)), e.title && (e.title = ma(e.title, e.borderStyle))) : e.title && (e.
|
||
title = e.title.slice(0, Math.max(0, o - 2)), e.title && (e.title = ma(e.title, e.borderStyle), J(e.title) > i && (e.width = J(e.title)))),
|
||
e.width = e.width ? e.width : i, !r) {
|
||
if (e.margin.left && e.margin.right && e.width > o) {
|
||
let a = (u - e.width - n) / (e.margin.left + e.margin.right);
|
||
e.margin.left = Math.max(0, Math.floor(e.margin.left * a)), e.margin.right = Math.max(0, Math.floor(e.margin.right * a));
|
||
}
|
||
e.width = Math.min(e.width, u - n - e.margin.left - e.margin.right);
|
||
}
|
||
return e.width - (e.padding.left + e.padding.right) <= 0 && (e.padding.left = 0, e.padding.right = 0), e.height && e.height - (e.padding.top +
|
||
e.padding.bottom) <= 0 && (e.padding.top = 0, e.padding.bottom = 0), e;
|
||
}, "determineDimensions"), Fi = /* @__PURE__ */ s((t) => t.match(/^#(?:[0-f]{3}){1,2}$/i), "isHex"), ga = /* @__PURE__ */ s((t) => typeof t ==
|
||
"string" && (qe[t] ?? Fi(t)), "isColorValid"), km = /* @__PURE__ */ s((t) => Fi(t) ? qe.hex(t) : qe[t], "getColorFn"), Pm = /* @__PURE__ */ s(
|
||
(t) => Fi(t) ? qe.bgHex(t) : qe[di(["bg", t])], "getBGColorFn");
|
||
function Ci(t, e) {
|
||
if (e = {
|
||
padding: 0,
|
||
borderStyle: "single",
|
||
dimBorder: !1,
|
||
textAlignment: "left",
|
||
float: "left",
|
||
titleAlignment: "left",
|
||
...e
|
||
}, e.align && (e.textAlignment = e.align), e.borderColor && !ga(e.borderColor))
|
||
throw new Error(`${e.borderColor} is not a valid borderColor`);
|
||
if (e.backgroundColor && !ga(e.backgroundColor))
|
||
throw new Error(`${e.backgroundColor} is not a valid backgroundColor`);
|
||
return e.padding = pa(e.padding), e.margin = pa(e.margin), e = Lm(t, e), t = Om(t, e), _m(t, e.width, e);
|
||
}
|
||
s(Ci, "boxen");
|
||
|
||
// src/node-logger/prompts/prompt-config.ts
|
||
var $s = {};
|
||
tr($s, {
|
||
getPreferredStdio: () => K2,
|
||
getPromptLibrary: () => H2,
|
||
getPromptProvider: () => Le,
|
||
isClackEnabled: () => Ve,
|
||
isPromptsEnabled: () => z2,
|
||
setPromptLibrary: () => Y2
|
||
});
|
||
|
||
// src/node-logger/logger/log-tracker.ts
|
||
import { promises as Nm } from "node:fs";
|
||
import jm, { join as Gm } from "node:path";
|
||
|
||
// ../lib/cli-storybook/src/automigrate/helpers/cleanLog.ts
|
||
import { EOL as Rm } from "node:os";
|
||
var qm = /* @__PURE__ */ s(({ onlyFirst: t = !1 } = {}) => {
|
||
let e = [
|
||
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
||
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
|
||
].join("|");
|
||
return new RegExp(e, t ? void 0 : "g");
|
||
}, "ansiRegex"), Ea = /* @__PURE__ */ s((t) => t.replace(qm(), "").replace(/╮│/g, `\u256E
|
||
\u2502`).replace(/││/g, `\u2502
|
||
\u2502`).replace(/│╰/g, `\u2502
|
||
\u2570`).replace(/⚠️ {2}failed to check/g, `${Rm}\u26A0\uFE0F failed to check`), "cleanLog");
|
||
|
||
// src/node-logger/logger/log-tracker.ts
|
||
var Wm = "debug-storybook.log", Ei = class {
|
||
static {
|
||
s(this, "LogTracker");
|
||
}
|
||
/** Array to store log entries */
|
||
#u = [];
|
||
/** Path where log file will be written */
|
||
#t = "";
|
||
/**
|
||
* Flag indicating if logs should be written to file it is enabled either by users providing the
|
||
* `--write-logs` flag to a CLI command or when we explicitly enable it by calling
|
||
* `logTracker.enableLogWriting()` e.g. in automigrate or doctor command when there are issues
|
||
*/
|
||
#e = !1;
|
||
constructor() {
|
||
this.#t = Gm(process.cwd(), Wm);
|
||
}
|
||
/** Enables writing logs to file. */
|
||
enableLogWriting() {
|
||
this.#e = !0;
|
||
}
|
||
/** Returns whether logs should be written to file. */
|
||
get shouldWriteLogsToFile() {
|
||
return this.#e;
|
||
}
|
||
/** Returns the configured log file path. */
|
||
get logFilePath() {
|
||
return this.#t;
|
||
}
|
||
/** Returns a copy of all stored logs. */
|
||
get logs() {
|
||
return [...this.#u];
|
||
}
|
||
/**
|
||
* Adds a new log entry.
|
||
*
|
||
* @param level - The log level
|
||
* @param message - The log message
|
||
* @param metadata - Optional metadata to attach to the log, can be any JSON serializable value
|
||
*/
|
||
addLog(e, r, u) {
|
||
this.#u.push({
|
||
timestamp: /* @__PURE__ */ new Date(),
|
||
level: e,
|
||
message: Ea(r),
|
||
metadata: u
|
||
});
|
||
}
|
||
/** Clears all stored logs. */
|
||
clear() {
|
||
this.#u = [];
|
||
}
|
||
/**
|
||
* Writes all stored logs to a file and clears the log store.
|
||
*
|
||
* @param filePath - Optional custom file path to write logs to
|
||
* @returns The path where logs were written, by default is debug-storybook.log in current working
|
||
* directory
|
||
*/
|
||
async writeToFile(e = this.#t) {
|
||
let r = this.#u.map((u) => {
|
||
let n = u.timestamp.toLocaleTimeString("en-US", { hour12: !1 }) + `.${u.timestamp.getMilliseconds().toString().padStart(3, "0")}`, o = u.
|
||
metadata ? ` ${JSON.stringify(u.metadata)}` : "";
|
||
return `[${n}] [${u.level.toUpperCase()}] ${u.message}${o}`;
|
||
}).join(`
|
||
`);
|
||
return await Nm.writeFile(e, r, "utf-8"), this.#u = [], process.env.CI ? e : jm.relative(process.cwd(), e);
|
||
}
|
||
}, x = new Ei();
|
||
|
||
// src/node-logger/prompts/prompt-provider-base.ts
|
||
var at = class {
|
||
static {
|
||
s(this, "PromptProvider");
|
||
}
|
||
};
|
||
|
||
// src/node-logger/prompts/prompt-provider-clack.ts
|
||
var lt = null, Tr = class extends at {
|
||
static {
|
||
s(this, "ClackPromptProvider");
|
||
}
|
||
handleCancel(e, r) {
|
||
br(e) && (r?.onCancel ? r.onCancel() : (AD("Operation canceled."), process.exit(0)));
|
||
}
|
||
async text(e, r) {
|
||
let u = await LD(e);
|
||
return this.handleCancel(u, r), x.addLog("prompt", e.message, { choice: u }), u.toString();
|
||
}
|
||
async confirm(e, r) {
|
||
let u = await wD(e);
|
||
return this.handleCancel(u, r), x.addLog("prompt", e.message, { choice: u }), !!u;
|
||
}
|
||
async select(e, r) {
|
||
let u = await _D(e);
|
||
return this.handleCancel(u, r), x.addLog("prompt", e.message, { choice: u }), u;
|
||
}
|
||
async multiselect(e, r) {
|
||
let u = await $D(e);
|
||
return this.handleCancel(u, r), x.addLog("prompt", e.message, { choice: u }), u;
|
||
}
|
||
spinner(e) {
|
||
let r = OD(), u = `${e.id}-spinner`;
|
||
return {
|
||
start: /* @__PURE__ */ s((n) => {
|
||
x.addLog("info", `${u}-start: ${n}`), r.start(n);
|
||
}, "start"),
|
||
message: /* @__PURE__ */ s((n) => {
|
||
x.addLog("info", `${u}: ${n}`), r.message(n);
|
||
}, "message"),
|
||
stop: /* @__PURE__ */ s((n) => {
|
||
x.addLog("info", `${u}-stop: ${n}`), r.stop(n);
|
||
}, "stop")
|
||
};
|
||
}
|
||
taskLog(e) {
|
||
let r = ID(e), u = `${e.id}-task`;
|
||
return x.addLog("info", `${u}-start: ${e.title}`), lt = r, {
|
||
message: /* @__PURE__ */ s((n) => {
|
||
x.addLog("info", `${u}: ${n}`), r.message(n);
|
||
}, "message"),
|
||
error: /* @__PURE__ */ s((n) => {
|
||
x.addLog("error", `${u}-error: ${n}`), r.error(n, { showLog: !0 }), lt = null;
|
||
}, "error"),
|
||
success: /* @__PURE__ */ s((n, o) => {
|
||
x.addLog("info", `${u}-success: ${n}`), r.success(n, o), lt = null;
|
||
}, "success")
|
||
};
|
||
}
|
||
};
|
||
|
||
// src/node-logger/prompts/prompt-provider-prompts.ts
|
||
var Ut = P(Kc(), 1);
|
||
import { logger as Vt } from "storybook/internal/node-logger";
|
||
var Yr = class extends at {
|
||
static {
|
||
s(this, "PromptsPromptProvider");
|
||
}
|
||
getBaseOptions(e) {
|
||
return {
|
||
onCancel: /* @__PURE__ */ s(() => {
|
||
e?.onCancel ? e.onCancel() : (Vt.info("Operation canceled."), process.exit(0));
|
||
}, "onCancel")
|
||
};
|
||
}
|
||
async text(e, r) {
|
||
let u = e.validate ? (o) => {
|
||
let i = e.validate(o);
|
||
return i instanceof Error ? i.message : typeof i == "string" ? i : !0;
|
||
} : void 0, n = await (0, Ut.default)(
|
||
{
|
||
type: "text",
|
||
name: "value",
|
||
message: e.message,
|
||
initial: e.initialValue,
|
||
validate: u
|
||
},
|
||
{ ...this.getBaseOptions(r) }
|
||
);
|
||
return x.addLog("prompt", e.message, { choice: n.value }), n.value;
|
||
}
|
||
async confirm(e, r) {
|
||
let u = await (0, Ut.default)(
|
||
{
|
||
type: "confirm",
|
||
name: "value",
|
||
message: e.message,
|
||
initial: e.initialValue,
|
||
active: e.active,
|
||
inactive: e.inactive
|
||
},
|
||
{ ...this.getBaseOptions(r) }
|
||
);
|
||
return x.addLog("prompt", e.message, { choice: u.value }), u.value;
|
||
}
|
||
async select(e, r) {
|
||
let u = await (0, Ut.default)(
|
||
{
|
||
type: "select",
|
||
name: "value",
|
||
message: e.message,
|
||
choices: e.options.map((n) => ({
|
||
title: n.label || String(n.value),
|
||
value: n.value,
|
||
description: n.hint,
|
||
selected: n.value === e.initialValue
|
||
}))
|
||
},
|
||
{ ...this.getBaseOptions(r) }
|
||
);
|
||
return x.addLog("prompt", e.message, { choice: u.value }), u.value;
|
||
}
|
||
async multiselect(e, r) {
|
||
let u = await (0, Ut.default)(
|
||
{
|
||
type: "multiselect",
|
||
name: "value",
|
||
message: e.message,
|
||
choices: e.options.map((n) => ({
|
||
title: n.label || String(n.value),
|
||
value: n.value,
|
||
description: n.hint,
|
||
selected: e.initialValues?.includes(n.value)
|
||
})),
|
||
min: e.required ? 1 : 0
|
||
},
|
||
{ ...this.getBaseOptions(r) }
|
||
);
|
||
return x.addLog("prompt", e.message, { choice: u.value }), u.value;
|
||
}
|
||
spinner(e) {
|
||
let r, u = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"], n = 0, o = `${e.id}-spi\
|
||
nner`;
|
||
return {
|
||
start: /* @__PURE__ */ s((i) => {
|
||
x.addLog("info", `${o}-start: ${i}`), process.stdout.write("\x1B[?25l"), r = setInterval(() => {
|
||
process.stdout.write(`\r${u[n]} ${i || "Loading..."}`), n = (n + 1) % u.length;
|
||
}, 100);
|
||
}, "start"),
|
||
stop: /* @__PURE__ */ s((i) => {
|
||
x.addLog("info", `${o}-stop: ${i}`), clearInterval(r), process.stdout.write("\x1B[?25h"), i ? process.stdout.write(`\r\u2713 ${i}
|
||
`) : process.stdout.write("\r\x1B[K");
|
||
}, "stop"),
|
||
message: /* @__PURE__ */ s((i) => {
|
||
x.addLog("info", `${o}: ${i}`), process.stdout.write(`\r${i}`);
|
||
}, "message")
|
||
};
|
||
}
|
||
taskLog(e) {
|
||
Vt.info(`${e.title}
|
||
`);
|
||
let r = `${e.id}-task`;
|
||
return x.addLog("info", `${r}-start: ${e.title}`), {
|
||
message: /* @__PURE__ */ s((u) => {
|
||
Vt.info(u), x.addLog("info", `${r}: ${u}`);
|
||
}, "message"),
|
||
success: /* @__PURE__ */ s((u) => {
|
||
Vt.info(u), x.addLog("info", `${r}-success: ${u}`);
|
||
}, "success"),
|
||
error: /* @__PURE__ */ s((u) => {
|
||
Vt.error(u), x.addLog("error", `${r}-error: ${u}`);
|
||
}, "error")
|
||
};
|
||
}
|
||
};
|
||
|
||
// src/node-logger/prompts/prompt-config.ts
|
||
var U2 = {
|
||
clack: new Tr(),
|
||
prompts: new Yr()
|
||
}, Yt = process.env.USE_CLACK === "true" ? "clack" : "prompts", Y2 = /* @__PURE__ */ s((t) => {
|
||
Yt = t;
|
||
}, "setPromptLibrary"), H2 = /* @__PURE__ */ s(() => Yt, "getPromptLibrary"), Le = /* @__PURE__ */ s(() => U2[Yt], "getPromptProvider"), Ve = /* @__PURE__ */ s(
|
||
() => Yt === "clack", "isClackEnabled"), z2 = /* @__PURE__ */ s(() => Yt === "prompts", "isPromptsEnabled"), K2 = /* @__PURE__ */ s(() => Ve() ?
|
||
"pipe" : "inherit", "getPreferredStdio");
|
||
|
||
// node_modules/execa/index.js
|
||
var yf = P(Md(), 1);
|
||
import { Buffer as M3 } from "node:buffer";
|
||
import R3 from "node:path";
|
||
import hn from "node:child_process";
|
||
import ou from "node:process";
|
||
|
||
// ../node_modules/strip-final-newline/index.js
|
||
function Ns(t) {
|
||
let e = typeof t == "string" ? `
|
||
` : 10, r = typeof t == "string" ? "\r" : 13;
|
||
return t[t.length - 1] === e && (t = t.slice(0, -1)), t[t.length - 1] === r && (t = t.slice(0, -1)), t;
|
||
}
|
||
s(Ns, "stripFinalNewline");
|
||
|
||
// node_modules/npm-run-path/index.js
|
||
import Kr from "node:process";
|
||
import Ht from "node:path";
|
||
import { fileURLToPath as Rd } from "node:url";
|
||
|
||
// node_modules/path-key/index.js
|
||
function zr(t = {}) {
|
||
let {
|
||
env: e = process.env,
|
||
platform: r = process.platform
|
||
} = t;
|
||
return r !== "win32" ? "PATH" : Object.keys(e).reverse().find((u) => u.toUpperCase() === "PATH") || "Path";
|
||
}
|
||
s(zr, "pathKey");
|
||
|
||
// node_modules/npm-run-path/index.js
|
||
var xC = /* @__PURE__ */ s(({
|
||
cwd: t = Kr.cwd(),
|
||
path: e = Kr.env[zr()],
|
||
preferLocal: r = !0,
|
||
execPath: u = Kr.execPath,
|
||
addExecPath: n = !0
|
||
} = {}) => {
|
||
let o = t instanceof URL ? Rd(t) : t, i = Ht.resolve(o), D = [];
|
||
return r && vC(D, i), n && yC(D, u, i), [...D, e].join(Ht.delimiter);
|
||
}, "npmRunPath"), vC = /* @__PURE__ */ s((t, e) => {
|
||
let r;
|
||
for (; r !== e; )
|
||
t.push(Ht.join(e, "node_modules/.bin")), r = e, e = Ht.resolve(e, "..");
|
||
}, "applyPreferLocal"), yC = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = e instanceof URL ? Rd(e) : e;
|
||
t.push(Ht.resolve(r, u, ".."));
|
||
}, "applyExecPath"), qd = /* @__PURE__ */ s(({ env: t = Kr.env, ...e } = {}) => {
|
||
t = { ...t };
|
||
let r = zr({ env: t });
|
||
return e.path = t[r], t[r] = xC(e), t;
|
||
}, "npmRunPathEnv");
|
||
|
||
// node_modules/mimic-fn/index.js
|
||
var BC = /* @__PURE__ */ s((t, e, r, u) => {
|
||
if (r === "length" || r === "prototype" || r === "arguments" || r === "caller")
|
||
return;
|
||
let n = Object.getOwnPropertyDescriptor(t, r), o = Object.getOwnPropertyDescriptor(e, r);
|
||
!wC(n, o) && u || Object.defineProperty(t, r, o);
|
||
}, "copyProperty"), wC = /* @__PURE__ */ s(function(t, e) {
|
||
return t === void 0 || t.configurable || t.writable === e.writable && t.enumerable === e.enumerable && t.configurable === e.configurable &&
|
||
(t.writable || t.value === e.value);
|
||
}, "canCopyProperty"), AC = /* @__PURE__ */ s((t, e) => {
|
||
let r = Object.getPrototypeOf(e);
|
||
r !== Object.getPrototypeOf(t) && Object.setPrototypeOf(t, r);
|
||
}, "changePrototype"), SC = /* @__PURE__ */ s((t, e) => `/* Wrapped ${t}*/
|
||
${e}`, "wrappedToString"), TC = Object.getOwnPropertyDescriptor(Function.prototype, "toString"), $C = Object.getOwnPropertyDescriptor(Function.
|
||
prototype.toString, "name"), OC = /* @__PURE__ */ s((t, e, r) => {
|
||
let u = r === "" ? "" : `with ${r.trim()}() `, n = SC.bind(null, u, e.toString());
|
||
Object.defineProperty(n, "name", $C), Object.defineProperty(t, "toString", { ...TC, value: n });
|
||
}, "changeToString");
|
||
function js(t, e, { ignoreNonConfigurable: r = !1 } = {}) {
|
||
let { name: u } = t;
|
||
for (let n of Reflect.ownKeys(e))
|
||
BC(t, e, n, r);
|
||
return AC(t, e), OC(t, e, u), t;
|
||
}
|
||
s(js, "mimicFunction");
|
||
|
||
// node_modules/onetime/index.js
|
||
var Zr = /* @__PURE__ */ new WeakMap(), Nd = /* @__PURE__ */ s((t, e = {}) => {
|
||
if (typeof t != "function")
|
||
throw new TypeError("Expected a function");
|
||
let r, u = 0, n = t.displayName || t.name || "<anonymous>", o = /* @__PURE__ */ s(function(...i) {
|
||
if (Zr.set(o, ++u), u === 1)
|
||
r = t.apply(this, i), t = null;
|
||
else if (e.throw === !0)
|
||
throw new Error(`Function \`${n}\` can only be called once`);
|
||
return r;
|
||
}, "onetime");
|
||
return js(o, t), Zr.set(o, u), o;
|
||
}, "onetime");
|
||
Nd.callCount = (t) => {
|
||
if (!Zr.has(t))
|
||
throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);
|
||
return Zr.get(t);
|
||
};
|
||
var jd = Nd;
|
||
|
||
// node_modules/execa/lib/error.js
|
||
import jC from "node:process";
|
||
|
||
// node_modules/human-signals/build/src/main.js
|
||
import { constants as kC } from "node:os";
|
||
|
||
// node_modules/human-signals/build/src/realtime.js
|
||
var Gd = /* @__PURE__ */ s(() => {
|
||
let t = Gs - Wd + 1;
|
||
return Array.from({ length: t }, _C);
|
||
}, "getRealtimeSignals"), _C = /* @__PURE__ */ s((t, e) => ({
|
||
name: `SIGRT${e + 1}`,
|
||
number: Wd + e,
|
||
action: "terminate",
|
||
description: "Application-specific signal (realtime)",
|
||
standard: "posix"
|
||
}), "getRealtimeSignal"), Wd = 34, Gs = 64;
|
||
|
||
// node_modules/human-signals/build/src/signals.js
|
||
import { constants as IC } from "node:os";
|
||
|
||
// node_modules/human-signals/build/src/core.js
|
||
var Vd = [
|
||
{
|
||
name: "SIGHUP",
|
||
number: 1,
|
||
action: "terminate",
|
||
description: "Terminal closed",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGINT",
|
||
number: 2,
|
||
action: "terminate",
|
||
description: "User interruption with CTRL-C",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGQUIT",
|
||
number: 3,
|
||
action: "core",
|
||
description: "User interruption with CTRL-\\",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGILL",
|
||
number: 4,
|
||
action: "core",
|
||
description: "Invalid machine instruction",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGTRAP",
|
||
number: 5,
|
||
action: "core",
|
||
description: "Debugger breakpoint",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGABRT",
|
||
number: 6,
|
||
action: "core",
|
||
description: "Aborted",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGIOT",
|
||
number: 6,
|
||
action: "core",
|
||
description: "Aborted",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGBUS",
|
||
number: 7,
|
||
action: "core",
|
||
description: "Bus error due to misaligned, non-existing address or paging error",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGEMT",
|
||
number: 7,
|
||
action: "terminate",
|
||
description: "Command should be emulated but is not implemented",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGFPE",
|
||
number: 8,
|
||
action: "core",
|
||
description: "Floating point arithmetic error",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGKILL",
|
||
number: 9,
|
||
action: "terminate",
|
||
description: "Forced termination",
|
||
standard: "posix",
|
||
forced: !0
|
||
},
|
||
{
|
||
name: "SIGUSR1",
|
||
number: 10,
|
||
action: "terminate",
|
||
description: "Application-specific signal",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGSEGV",
|
||
number: 11,
|
||
action: "core",
|
||
description: "Segmentation fault",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGUSR2",
|
||
number: 12,
|
||
action: "terminate",
|
||
description: "Application-specific signal",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGPIPE",
|
||
number: 13,
|
||
action: "terminate",
|
||
description: "Broken pipe or socket",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGALRM",
|
||
number: 14,
|
||
action: "terminate",
|
||
description: "Timeout or timer",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGTERM",
|
||
number: 15,
|
||
action: "terminate",
|
||
description: "Termination",
|
||
standard: "ansi"
|
||
},
|
||
{
|
||
name: "SIGSTKFLT",
|
||
number: 16,
|
||
action: "terminate",
|
||
description: "Stack is empty or overflowed",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGCHLD",
|
||
number: 17,
|
||
action: "ignore",
|
||
description: "Child process terminated, paused or unpaused",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGCLD",
|
||
number: 17,
|
||
action: "ignore",
|
||
description: "Child process terminated, paused or unpaused",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGCONT",
|
||
number: 18,
|
||
action: "unpause",
|
||
description: "Unpaused",
|
||
standard: "posix",
|
||
forced: !0
|
||
},
|
||
{
|
||
name: "SIGSTOP",
|
||
number: 19,
|
||
action: "pause",
|
||
description: "Paused",
|
||
standard: "posix",
|
||
forced: !0
|
||
},
|
||
{
|
||
name: "SIGTSTP",
|
||
number: 20,
|
||
action: "pause",
|
||
description: 'Paused using CTRL-Z or "suspend"',
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGTTIN",
|
||
number: 21,
|
||
action: "pause",
|
||
description: "Background process cannot read terminal input",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGBREAK",
|
||
number: 21,
|
||
action: "terminate",
|
||
description: "User interruption with CTRL-BREAK",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGTTOU",
|
||
number: 22,
|
||
action: "pause",
|
||
description: "Background process cannot write to terminal output",
|
||
standard: "posix"
|
||
},
|
||
{
|
||
name: "SIGURG",
|
||
number: 23,
|
||
action: "ignore",
|
||
description: "Socket received out-of-band data",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGXCPU",
|
||
number: 24,
|
||
action: "core",
|
||
description: "Process timed out",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGXFSZ",
|
||
number: 25,
|
||
action: "core",
|
||
description: "File too big",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGVTALRM",
|
||
number: 26,
|
||
action: "terminate",
|
||
description: "Timeout or timer",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGPROF",
|
||
number: 27,
|
||
action: "terminate",
|
||
description: "Timeout or timer",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGWINCH",
|
||
number: 28,
|
||
action: "ignore",
|
||
description: "Terminal window size changed",
|
||
standard: "bsd"
|
||
},
|
||
{
|
||
name: "SIGIO",
|
||
number: 29,
|
||
action: "terminate",
|
||
description: "I/O is available",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGPOLL",
|
||
number: 29,
|
||
action: "terminate",
|
||
description: "Watched event",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGINFO",
|
||
number: 29,
|
||
action: "ignore",
|
||
description: "Request for process information",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGPWR",
|
||
number: 30,
|
||
action: "terminate",
|
||
description: "Device running out of power",
|
||
standard: "systemv"
|
||
},
|
||
{
|
||
name: "SIGSYS",
|
||
number: 31,
|
||
action: "core",
|
||
description: "Invalid system call",
|
||
standard: "other"
|
||
},
|
||
{
|
||
name: "SIGUNUSED",
|
||
number: 31,
|
||
action: "terminate",
|
||
description: "Invalid system call",
|
||
standard: "other"
|
||
}
|
||
];
|
||
|
||
// node_modules/human-signals/build/src/signals.js
|
||
var Ws = /* @__PURE__ */ s(() => {
|
||
let t = Gd();
|
||
return [...Vd, ...t].map(LC);
|
||
}, "getSignals"), LC = /* @__PURE__ */ s(({
|
||
name: t,
|
||
number: e,
|
||
description: r,
|
||
action: u,
|
||
forced: n = !1,
|
||
standard: o
|
||
}) => {
|
||
let {
|
||
signals: { [t]: i }
|
||
} = IC, D = i !== void 0;
|
||
return { name: t, number: D ? i : e, description: r, supported: D, action: u, forced: n, standard: o };
|
||
}, "normalizeSignal");
|
||
|
||
// node_modules/human-signals/build/src/main.js
|
||
var PC = /* @__PURE__ */ s(() => {
|
||
let t = Ws();
|
||
return Object.fromEntries(t.map(MC));
|
||
}, "getSignalsByName"), MC = /* @__PURE__ */ s(({
|
||
name: t,
|
||
number: e,
|
||
description: r,
|
||
supported: u,
|
||
action: n,
|
||
forced: o,
|
||
standard: i
|
||
}) => [t, { name: t, number: e, description: r, supported: u, action: n, forced: o, standard: i }], "getSignalByName"), Ud = PC(), RC = /* @__PURE__ */ s(
|
||
() => {
|
||
let t = Ws(), e = Gs + 1, r = Array.from(
|
||
{ length: e },
|
||
(u, n) => qC(n, t)
|
||
);
|
||
return Object.assign({}, ...r);
|
||
}, "getSignalsByNumber"), qC = /* @__PURE__ */ s((t, e) => {
|
||
let r = NC(t, e);
|
||
if (r === void 0)
|
||
return {};
|
||
let { name: u, description: n, supported: o, action: i, forced: D, standard: a } = r;
|
||
return {
|
||
[t]: {
|
||
name: u,
|
||
number: t,
|
||
description: n,
|
||
supported: o,
|
||
action: i,
|
||
forced: D,
|
||
standard: a
|
||
}
|
||
};
|
||
}, "getSignalByNumber"), NC = /* @__PURE__ */ s((t, e) => {
|
||
let r = e.find(({ name: u }) => kC.signals[u] === t);
|
||
return r !== void 0 ? r : e.find((u) => u.number === t);
|
||
}, "findSignalByNumber"), gv = RC();
|
||
|
||
// node_modules/execa/lib/error.js
|
||
var GC = /* @__PURE__ */ s(({ timedOut: t, timeout: e, errorCode: r, signal: u, signalDescription: n, exitCode: o, isCanceled: i }) => t ? `\
|
||
timed out after ${e} milliseconds` : i ? "was canceled" : r !== void 0 ? `failed with ${r}` : u !== void 0 ? `was killed with ${u} (${n})` :
|
||
o !== void 0 ? `failed with exit code ${o}` : "failed", "getErrorPrefix"), zt = /* @__PURE__ */ s(({
|
||
stdout: t,
|
||
stderr: e,
|
||
all: r,
|
||
error: u,
|
||
signal: n,
|
||
exitCode: o,
|
||
command: i,
|
||
escapedCommand: D,
|
||
timedOut: a,
|
||
isCanceled: l,
|
||
killed: h,
|
||
parsed: { options: { timeout: p, cwd: d = jC.cwd() } }
|
||
}) => {
|
||
o = o === null ? void 0 : o, n = n === null ? void 0 : n;
|
||
let m = n === void 0 ? void 0 : Ud[n].description, g = u && u.code, E = `Command ${GC({ timedOut: a, timeout: p, errorCode: g, signal: n, signalDescription: m,
|
||
exitCode: o, isCanceled: l })}: ${i}`, b = Object.prototype.toString.call(u) === "[object Error]", y = b ? `${E}
|
||
${u.message}` : E, R = [y, e, t].filter(Boolean).join(`
|
||
`);
|
||
return b ? (u.originalMessage = u.message, u.message = R) : u = new Error(R), u.shortMessage = y, u.command = i, u.escapedCommand = D, u.exitCode =
|
||
o, u.signal = n, u.signalDescription = m, u.stdout = t, u.stderr = e, u.cwd = d, r !== void 0 && (u.all = r), "bufferedData" in u && delete u.
|
||
bufferedData, u.failed = !0, u.timedOut = !!a, u.isCanceled = l, u.killed = h && !a, u;
|
||
}, "makeError");
|
||
|
||
// node_modules/execa/lib/stdio.js
|
||
var Jr = ["stdin", "stdout", "stderr"], WC = /* @__PURE__ */ s((t) => Jr.some((e) => t[e] !== void 0), "hasAlias"), Yd = /* @__PURE__ */ s((t) => {
|
||
if (!t)
|
||
return;
|
||
let { stdio: e } = t;
|
||
if (e === void 0)
|
||
return Jr.map((u) => t[u]);
|
||
if (WC(t))
|
||
throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${Jr.map((u) => `\`${u}\``).join(", ")}`);
|
||
if (typeof e == "string")
|
||
return e;
|
||
if (!Array.isArray(e))
|
||
throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof e}\``);
|
||
let r = Math.max(e.length, Jr.length);
|
||
return Array.from({ length: r }, (u, n) => e[n]);
|
||
}, "normalizeStdio");
|
||
|
||
// node_modules/execa/lib/kill.js
|
||
import YC from "node:os";
|
||
|
||
// node_modules/signal-exit/dist/mjs/signals.js
|
||
var Ue = [];
|
||
Ue.push("SIGHUP", "SIGINT", "SIGTERM");
|
||
process.platform !== "win32" && Ue.push(
|
||
"SIGALRM",
|
||
"SIGABRT",
|
||
"SIGVTALRM",
|
||
"SIGXCPU",
|
||
"SIGXFSZ",
|
||
"SIGUSR2",
|
||
"SIGTRAP",
|
||
"SIGSYS",
|
||
"SIGQUIT",
|
||
"SIGIOT"
|
||
// should detect profiler and enable/disable accordingly.
|
||
// see #21
|
||
// 'SIGPROF'
|
||
);
|
||
process.platform === "linux" && Ue.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
|
||
|
||
// node_modules/signal-exit/dist/mjs/index.js
|
||
var Xr = /* @__PURE__ */ s((t) => !!t && typeof t == "object" && typeof t.removeListener == "function" && typeof t.emit == "function" && typeof t.
|
||
reallyExit == "function" && typeof t.listeners == "function" && typeof t.kill == "function" && typeof t.pid == "number" && typeof t.on == "f\
|
||
unction", "processOk"), Vs = Symbol.for("signal-exit emitter"), Us = globalThis, VC = Object.defineProperty.bind(Object), Ys = class {
|
||
static {
|
||
s(this, "Emitter");
|
||
}
|
||
emitted = {
|
||
afterExit: !1,
|
||
exit: !1
|
||
};
|
||
listeners = {
|
||
afterExit: [],
|
||
exit: []
|
||
};
|
||
count = 0;
|
||
id = Math.random();
|
||
constructor() {
|
||
if (Us[Vs])
|
||
return Us[Vs];
|
||
VC(Us, Vs, {
|
||
value: this,
|
||
writable: !1,
|
||
enumerable: !1,
|
||
configurable: !1
|
||
});
|
||
}
|
||
on(e, r) {
|
||
this.listeners[e].push(r);
|
||
}
|
||
removeListener(e, r) {
|
||
let u = this.listeners[e], n = u.indexOf(r);
|
||
n !== -1 && (n === 0 && u.length === 1 ? u.length = 0 : u.splice(n, 1));
|
||
}
|
||
emit(e, r, u) {
|
||
if (this.emitted[e])
|
||
return !1;
|
||
this.emitted[e] = !0;
|
||
let n = !1;
|
||
for (let o of this.listeners[e])
|
||
n = o(r, u) === !0 || n;
|
||
return e === "exit" && (n = this.emit("afterExit", r, u) || n), n;
|
||
}
|
||
}, Qr = class {
|
||
static {
|
||
s(this, "SignalExitBase");
|
||
}
|
||
}, UC = /* @__PURE__ */ s((t) => ({
|
||
onExit(e, r) {
|
||
return t.onExit(e, r);
|
||
},
|
||
load() {
|
||
return t.load();
|
||
},
|
||
unload() {
|
||
return t.unload();
|
||
}
|
||
}), "signalExitWrap"), Hs = class extends Qr {
|
||
static {
|
||
s(this, "SignalExitFallback");
|
||
}
|
||
onExit() {
|
||
return () => {
|
||
};
|
||
}
|
||
load() {
|
||
}
|
||
unload() {
|
||
}
|
||
}, zs = class extends Qr {
|
||
static {
|
||
s(this, "SignalExit");
|
||
}
|
||
// "SIGHUP" throws an `ENOSYS` error on Windows,
|
||
// so use a supported signal instead
|
||
/* c8 ignore start */
|
||
#u = Ks.platform === "win32" ? "SIGINT" : "SIGHUP";
|
||
/* c8 ignore stop */
|
||
#t = new Ys();
|
||
#e;
|
||
#s;
|
||
#n;
|
||
#i = {};
|
||
#r = !1;
|
||
constructor(e) {
|
||
super(), this.#e = e, this.#i = {};
|
||
for (let r of Ue)
|
||
this.#i[r] = () => {
|
||
let u = this.#e.listeners(r), { count: n } = this.#t, o = e;
|
||
if (typeof o.__signal_exit_emitter__ == "object" && typeof o.__signal_exit_emitter__.count == "number" && (n += o.__signal_exit_emitter__.
|
||
count), u.length === n) {
|
||
this.unload();
|
||
let i = this.#t.emit("exit", null, r), D = r === "SIGHUP" ? this.#u : r;
|
||
i || e.kill(e.pid, D);
|
||
}
|
||
};
|
||
this.#n = e.reallyExit, this.#s = e.emit;
|
||
}
|
||
onExit(e, r) {
|
||
if (!Xr(this.#e))
|
||
return () => {
|
||
};
|
||
this.#r === !1 && this.load();
|
||
let u = r?.alwaysLast ? "afterExit" : "exit";
|
||
return this.#t.on(u, e), () => {
|
||
this.#t.removeListener(u, e), this.#t.listeners.exit.length === 0 && this.#t.listeners.afterExit.length === 0 && this.unload();
|
||
};
|
||
}
|
||
load() {
|
||
if (!this.#r) {
|
||
this.#r = !0, this.#t.count += 1;
|
||
for (let e of Ue)
|
||
try {
|
||
let r = this.#i[e];
|
||
r && this.#e.on(e, r);
|
||
} catch {
|
||
}
|
||
this.#e.emit = (e, ...r) => this.#D(e, ...r), this.#e.reallyExit = (e) => this.#o(e);
|
||
}
|
||
}
|
||
unload() {
|
||
this.#r && (this.#r = !1, Ue.forEach((e) => {
|
||
let r = this.#i[e];
|
||
if (!r)
|
||
throw new Error("Listener not defined for signal: " + e);
|
||
try {
|
||
this.#e.removeListener(e, r);
|
||
} catch {
|
||
}
|
||
}), this.#e.emit = this.#s, this.#e.reallyExit = this.#n, this.#t.count -= 1);
|
||
}
|
||
#o(e) {
|
||
return Xr(this.#e) ? (this.#e.exitCode = e || 0, this.#t.emit("exit", this.#e.exitCode, null), this.#n.call(this.#e, this.#e.exitCode)) :
|
||
0;
|
||
}
|
||
#D(e, ...r) {
|
||
let u = this.#s;
|
||
if (e === "exit" && Xr(this.#e)) {
|
||
typeof r[0] == "number" && (this.#e.exitCode = r[0]);
|
||
let n = u.call(this.#e, e, ...r);
|
||
return this.#t.emit("exit", this.#e.exitCode, null), n;
|
||
} else
|
||
return u.call(this.#e, e, ...r);
|
||
}
|
||
}, Ks = globalThis.process, {
|
||
/**
|
||
* Called when the process is exiting, whether via signal, explicit
|
||
* exit, or running out of stuff to do.
|
||
*
|
||
* If the global process object is not suitable for instrumentation,
|
||
* then this will be a no-op.
|
||
*
|
||
* Returns a function that may be used to unload signal-exit.
|
||
*/
|
||
onExit: Hd,
|
||
/**
|
||
* Load the listeners. Likely you never need to call this, unless
|
||
* doing a rather deep integration with signal-exit functionality.
|
||
* Mostly exposed for the benefit of testing.
|
||
*
|
||
* @internal
|
||
*/
|
||
load: Sv,
|
||
/**
|
||
* Unload the listeners. Likely you never need to call this, unless
|
||
* doing a rather deep integration with signal-exit functionality.
|
||
* Mostly exposed for the benefit of testing.
|
||
*
|
||
* @internal
|
||
*/
|
||
unload: Tv
|
||
} = UC(Xr(Ks) ? new zs(Ks) : new Hs());
|
||
|
||
// node_modules/execa/lib/kill.js
|
||
var HC = 1e3 * 5, zd = /* @__PURE__ */ s((t, e = "SIGTERM", r = {}) => {
|
||
let u = t(e);
|
||
return zC(t, e, r, u), u;
|
||
}, "spawnedKill"), zC = /* @__PURE__ */ s((t, e, r, u) => {
|
||
if (!KC(e, r, u))
|
||
return;
|
||
let n = JC(r), o = setTimeout(() => {
|
||
t("SIGKILL");
|
||
}, n);
|
||
o.unref && o.unref();
|
||
}, "setKillTimeout"), KC = /* @__PURE__ */ s((t, { forceKillAfterTimeout: e }, r) => ZC(t) && e !== !1 && r, "shouldForceKill"), ZC = /* @__PURE__ */ s(
|
||
(t) => t === YC.constants.signals.SIGTERM || typeof t == "string" && t.toUpperCase() === "SIGTERM", "isSigterm"), JC = /* @__PURE__ */ s(({ forceKillAfterTimeout: t = !0 }) => {
|
||
if (t === !0)
|
||
return HC;
|
||
if (!Number.isFinite(t) || t < 0)
|
||
throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${t}\` (${typeof t})`);
|
||
return t;
|
||
}, "getForceKillAfterTimeout"), Kd = /* @__PURE__ */ s((t, e) => {
|
||
t.kill() && (e.isCanceled = !0);
|
||
}, "spawnedCancel"), XC = /* @__PURE__ */ s((t, e, r) => {
|
||
t.kill(e), r(Object.assign(new Error("Timed out"), { timedOut: !0, signal: e }));
|
||
}, "timeoutKill"), Zd = /* @__PURE__ */ s((t, { timeout: e, killSignal: r = "SIGTERM" }, u) => {
|
||
if (e === 0 || e === void 0)
|
||
return u;
|
||
let n, o = new Promise((D, a) => {
|
||
n = setTimeout(() => {
|
||
XC(t, r, a);
|
||
}, e);
|
||
}), i = u.finally(() => {
|
||
clearTimeout(n);
|
||
});
|
||
return Promise.race([o, i]);
|
||
}, "setupTimeout"), Jd = /* @__PURE__ */ s(({ timeout: t }) => {
|
||
if (t !== void 0 && (!Number.isFinite(t) || t < 0))
|
||
throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${t}\` (${typeof t})`);
|
||
}, "validateTimeout"), Xd = /* @__PURE__ */ s(async (t, { cleanup: e, detached: r }, u) => {
|
||
if (!e || r)
|
||
return u;
|
||
let n = Hd(() => {
|
||
t.kill();
|
||
});
|
||
return u.finally(() => {
|
||
n();
|
||
});
|
||
}, "setExitHandler");
|
||
|
||
// node_modules/execa/lib/pipe.js
|
||
import { createWriteStream as QC } from "node:fs";
|
||
import { ChildProcess as e3 } from "node:child_process";
|
||
|
||
// node_modules/is-stream/index.js
|
||
function eu(t) {
|
||
return t !== null && typeof t == "object" && typeof t.pipe == "function";
|
||
}
|
||
s(eu, "isStream");
|
||
function Zs(t) {
|
||
return eu(t) && t.writable !== !1 && typeof t._write == "function" && typeof t._writableState == "object";
|
||
}
|
||
s(Zs, "isWritableStream");
|
||
|
||
// node_modules/execa/lib/pipe.js
|
||
var t3 = /* @__PURE__ */ s((t) => t instanceof e3 && typeof t.then == "function", "isExecaChildProcess"), Js = /* @__PURE__ */ s((t, e, r) => {
|
||
if (typeof r == "string")
|
||
return t[e].pipe(QC(r)), t;
|
||
if (Zs(r))
|
||
return t[e].pipe(r), t;
|
||
if (!t3(r))
|
||
throw new TypeError("The second argument must be a string, a stream or an Execa child process.");
|
||
if (!Zs(r.stdin))
|
||
throw new TypeError("The target child process's stdin must be available.");
|
||
return t[e].pipe(r.stdin), r;
|
||
}, "pipeToTarget"), Qd = /* @__PURE__ */ s((t) => {
|
||
t.stdout !== null && (t.pipeStdout = Js.bind(void 0, t, "stdout")), t.stderr !== null && (t.pipeStderr = Js.bind(void 0, t, "stderr")), t.
|
||
all !== void 0 && (t.pipeAll = Js.bind(void 0, t, "all"));
|
||
}, "addPipeMethods");
|
||
|
||
// node_modules/execa/lib/stream.js
|
||
import { createReadStream as E3, readFileSync as b3 } from "node:fs";
|
||
import { setTimeout as x3 } from "node:timers/promises";
|
||
|
||
// node_modules/get-stream/source/contents.js
|
||
var Kt = /* @__PURE__ */ s(async (t, { init: e, convertChunk: r, getSize: u, truncateChunk: n, addChunk: o, getFinalChunk: i, finalize: D }, {
|
||
maxBuffer: a = Number.POSITIVE_INFINITY } = {}) => {
|
||
if (!u3(t))
|
||
throw new Error("The first argument must be a Readable, a ReadableStream, or an async iterable.");
|
||
let l = e();
|
||
l.length = 0;
|
||
try {
|
||
for await (let h of t) {
|
||
let p = i3(h), d = r[p](h, l);
|
||
rf({ convertedChunk: d, state: l, getSize: u, truncateChunk: n, addChunk: o, maxBuffer: a });
|
||
}
|
||
return r3({ state: l, convertChunk: r, getSize: u, truncateChunk: n, addChunk: o, getFinalChunk: i, maxBuffer: a }), D(l);
|
||
} catch (h) {
|
||
throw h.bufferedData = D(l), h;
|
||
}
|
||
}, "getStreamContents"), r3 = /* @__PURE__ */ s(({ state: t, getSize: e, truncateChunk: r, addChunk: u, getFinalChunk: n, maxBuffer: o }) => {
|
||
let i = n(t);
|
||
i !== void 0 && rf({ convertedChunk: i, state: t, getSize: e, truncateChunk: r, addChunk: u, maxBuffer: o });
|
||
}, "appendFinalChunk"), rf = /* @__PURE__ */ s(({ convertedChunk: t, state: e, getSize: r, truncateChunk: u, addChunk: n, maxBuffer: o }) => {
|
||
let i = r(t), D = e.length + i;
|
||
if (D <= o) {
|
||
ef(t, e, n, D);
|
||
return;
|
||
}
|
||
let a = u(t, o - e.length);
|
||
throw a !== void 0 && ef(a, e, n, o), new tu();
|
||
}, "appendChunk"), ef = /* @__PURE__ */ s((t, e, r, u) => {
|
||
e.contents = r(t, e, u), e.length = u;
|
||
}, "addNewChunk"), u3 = /* @__PURE__ */ s((t) => typeof t == "object" && t !== null && typeof t[Symbol.asyncIterator] == "function", "isAsyn\
|
||
cIterable"), i3 = /* @__PURE__ */ s((t) => {
|
||
let e = typeof t;
|
||
if (e === "string")
|
||
return "string";
|
||
if (e !== "object" || t === null)
|
||
return "others";
|
||
if (globalThis.Buffer?.isBuffer(t))
|
||
return "buffer";
|
||
let r = tf.call(t);
|
||
return r === "[object ArrayBuffer]" ? "arrayBuffer" : r === "[object DataView]" ? "dataView" : Number.isInteger(t.byteLength) && Number.isInteger(
|
||
t.byteOffset) && tf.call(t.buffer) === "[object ArrayBuffer]" ? "typedArray" : "others";
|
||
}, "getChunkType"), { toString: tf } = Object.prototype, tu = class extends Error {
|
||
static {
|
||
s(this, "MaxBufferError");
|
||
}
|
||
name = "MaxBufferError";
|
||
constructor() {
|
||
super("maxBuffer exceeded");
|
||
}
|
||
};
|
||
|
||
// node_modules/get-stream/source/utils.js
|
||
var Xs = /* @__PURE__ */ s((t) => t, "identity"), Qs = /* @__PURE__ */ s(() => {
|
||
}, "noop"), en = /* @__PURE__ */ s(({ contents: t }) => t, "getContentsProp"), ru = /* @__PURE__ */ s((t) => {
|
||
throw new Error(`Streams in object mode are not supported: ${String(t)}`);
|
||
}, "throwObjectStream"), uu = /* @__PURE__ */ s((t) => t.length, "getLengthProp");
|
||
|
||
// node_modules/get-stream/source/array-buffer.js
|
||
async function tn(t, e) {
|
||
return Kt(t, d3, e);
|
||
}
|
||
s(tn, "getStreamAsArrayBuffer");
|
||
var s3 = /* @__PURE__ */ s(() => ({ contents: new ArrayBuffer(0) }), "initArrayBuffer"), n3 = /* @__PURE__ */ s((t) => o3.encode(t), "useTex\
|
||
tEncoder"), o3 = new TextEncoder(), uf = /* @__PURE__ */ s((t) => new Uint8Array(t), "useUint8Array"), sf = /* @__PURE__ */ s((t) => new Uint8Array(
|
||
t.buffer, t.byteOffset, t.byteLength), "useUint8ArrayWithOffset"), D3 = /* @__PURE__ */ s((t, e) => t.slice(0, e), "truncateArrayBufferChunk"),
|
||
a3 = /* @__PURE__ */ s((t, { contents: e, length: r }, u) => {
|
||
let n = Df() ? h3(e, u) : l3(e, u);
|
||
return new Uint8Array(n).set(t, r), n;
|
||
}, "addArrayBufferChunk"), l3 = /* @__PURE__ */ s((t, e) => {
|
||
if (e <= t.byteLength)
|
||
return t;
|
||
let r = new ArrayBuffer(of(e));
|
||
return new Uint8Array(r).set(new Uint8Array(t), 0), r;
|
||
}, "resizeArrayBufferSlow"), h3 = /* @__PURE__ */ s((t, e) => {
|
||
if (e <= t.maxByteLength)
|
||
return t.resize(e), t;
|
||
let r = new ArrayBuffer(e, { maxByteLength: of(e) });
|
||
return new Uint8Array(r).set(new Uint8Array(t), 0), r;
|
||
}, "resizeArrayBuffer"), of = /* @__PURE__ */ s((t) => nf ** Math.ceil(Math.log(t) / Math.log(nf)), "getNewContentsLength"), nf = 2, c3 = /* @__PURE__ */ s(
|
||
({ contents: t, length: e }) => Df() ? t : t.slice(0, e), "finalizeArrayBuffer"), Df = /* @__PURE__ */ s(() => "resize" in ArrayBuffer.prototype,
|
||
"hasArrayBufferResize"), d3 = {
|
||
init: s3,
|
||
convertChunk: {
|
||
string: n3,
|
||
buffer: uf,
|
||
arrayBuffer: uf,
|
||
dataView: sf,
|
||
typedArray: sf,
|
||
others: ru
|
||
},
|
||
getSize: uu,
|
||
truncateChunk: D3,
|
||
addChunk: a3,
|
||
getFinalChunk: Qs,
|
||
finalize: c3
|
||
};
|
||
|
||
// node_modules/get-stream/source/buffer.js
|
||
async function iu(t, e) {
|
||
if (!("Buffer" in globalThis))
|
||
throw new Error("getStreamAsBuffer() is only supported in Node.js");
|
||
try {
|
||
return af(await tn(t, e));
|
||
} catch (r) {
|
||
throw r.bufferedData !== void 0 && (r.bufferedData = af(r.bufferedData)), r;
|
||
}
|
||
}
|
||
s(iu, "getStreamAsBuffer");
|
||
var af = /* @__PURE__ */ s((t) => globalThis.Buffer.from(t), "arrayBufferToNodeBuffer");
|
||
|
||
// node_modules/get-stream/source/string.js
|
||
async function rn(t, e) {
|
||
return Kt(t, F3, e);
|
||
}
|
||
s(rn, "getStreamAsString");
|
||
var f3 = /* @__PURE__ */ s(() => ({ contents: "", textDecoder: new TextDecoder() }), "initString"), su = /* @__PURE__ */ s((t, { textDecoder: e }) => e.
|
||
decode(t, { stream: !0 }), "useTextDecoder"), p3 = /* @__PURE__ */ s((t, { contents: e }) => e + t, "addStringChunk"), m3 = /* @__PURE__ */ s(
|
||
(t, e) => t.slice(0, e), "truncateStringChunk"), g3 = /* @__PURE__ */ s(({ textDecoder: t }) => {
|
||
let e = t.decode();
|
||
return e === "" ? void 0 : e;
|
||
}, "getFinalStringChunk"), F3 = {
|
||
init: f3,
|
||
convertChunk: {
|
||
string: Xs,
|
||
buffer: su,
|
||
arrayBuffer: su,
|
||
dataView: su,
|
||
typedArray: su,
|
||
others: ru
|
||
},
|
||
getSize: uu,
|
||
truncateChunk: m3,
|
||
addChunk: p3,
|
||
getFinalChunk: g3,
|
||
finalize: en
|
||
};
|
||
|
||
// node_modules/execa/lib/stream.js
|
||
var cf = P(hf(), 1);
|
||
var df = /* @__PURE__ */ s((t) => {
|
||
if (t !== void 0)
|
||
throw new TypeError("The `input` and `inputFile` options cannot be both set.");
|
||
}, "validateInputOptions"), v3 = /* @__PURE__ */ s(({ input: t, inputFile: e }) => typeof e != "string" ? t : (df(t), b3(e)), "getInputSync"),
|
||
ff = /* @__PURE__ */ s((t) => {
|
||
let e = v3(t);
|
||
if (eu(e))
|
||
throw new TypeError("The `input` option cannot be a stream in sync mode");
|
||
return e;
|
||
}, "handleInputSync"), y3 = /* @__PURE__ */ s(({ input: t, inputFile: e }) => typeof e != "string" ? t : (df(t), E3(e)), "getInput"), pf = /* @__PURE__ */ s(
|
||
(t, e) => {
|
||
let r = y3(e);
|
||
r !== void 0 && (eu(r) ? r.pipe(t.stdin) : t.stdin.end(r));
|
||
}, "handleInput"), mf = /* @__PURE__ */ s((t, { all: e }) => {
|
||
if (!e || !t.stdout && !t.stderr)
|
||
return;
|
||
let r = (0, cf.default)();
|
||
return t.stdout && r.add(t.stdout), t.stderr && r.add(t.stderr), r;
|
||
}, "makeAllStream"), un = /* @__PURE__ */ s(async (t, e) => {
|
||
if (!(!t || e === void 0)) {
|
||
await x3(0), t.destroy();
|
||
try {
|
||
return await e;
|
||
} catch (r) {
|
||
return r.bufferedData;
|
||
}
|
||
}
|
||
}, "getBufferedData"), sn = /* @__PURE__ */ s((t, { encoding: e, buffer: r, maxBuffer: u }) => {
|
||
if (!(!t || !r))
|
||
return e === "utf8" || e === "utf-8" ? rn(t, { maxBuffer: u }) : e === null || e === "buffer" ? iu(t, { maxBuffer: u }) : B3(t, u, e);
|
||
}, "getStreamPromise"), B3 = /* @__PURE__ */ s(async (t, e, r) => (await iu(t, { maxBuffer: e })).toString(r), "applyEncoding"), gf = /* @__PURE__ */ s(
|
||
async ({ stdout: t, stderr: e, all: r }, { encoding: u, buffer: n, maxBuffer: o }, i) => {
|
||
let D = sn(t, { encoding: u, buffer: n, maxBuffer: o }), a = sn(e, { encoding: u, buffer: n, maxBuffer: o }), l = sn(r, { encoding: u, buffer: n,
|
||
maxBuffer: o * 2 });
|
||
try {
|
||
return await Promise.all([i, D, a, l]);
|
||
} catch (h) {
|
||
return Promise.all([
|
||
{ error: h, signal: h.signal, timedOut: h.timedOut },
|
||
un(t, D),
|
||
un(e, a),
|
||
un(r, l)
|
||
]);
|
||
}
|
||
}, "getSpawnedResult");
|
||
|
||
// node_modules/execa/lib/promise.js
|
||
var w3 = (async () => {
|
||
})().constructor.prototype, A3 = ["then", "catch", "finally"].map((t) => [
|
||
t,
|
||
Reflect.getOwnPropertyDescriptor(w3, t)
|
||
]), nn = /* @__PURE__ */ s((t, e) => {
|
||
for (let [r, u] of A3) {
|
||
let n = typeof e == "function" ? (...o) => Reflect.apply(u.value, e(), o) : u.value.bind(e);
|
||
Reflect.defineProperty(t, r, { ...u, value: n });
|
||
}
|
||
}, "mergePromise"), Ff = /* @__PURE__ */ s((t) => new Promise((e, r) => {
|
||
t.on("exit", (u, n) => {
|
||
e({ exitCode: u, signal: n });
|
||
}), t.on("error", (u) => {
|
||
r(u);
|
||
}), t.stdin && t.stdin.on("error", (u) => {
|
||
r(u);
|
||
});
|
||
}), "getSpawnedPromise");
|
||
|
||
// node_modules/execa/lib/command.js
|
||
import { Buffer as S3 } from "node:buffer";
|
||
import { ChildProcess as T3 } from "node:child_process";
|
||
var bf = /* @__PURE__ */ s((t, e = []) => Array.isArray(e) ? [t, ...e] : [t], "normalizeArgs"), $3 = /^[\w.-]+$/, O3 = /* @__PURE__ */ s((t) => typeof t !=
|
||
"string" || $3.test(t) ? t : `"${t.replaceAll('"', '\\"')}"`, "escapeArg"), on = /* @__PURE__ */ s((t, e) => bf(t, e).join(" "), "joinComman\
|
||
d"), Dn = /* @__PURE__ */ s((t, e) => bf(t, e).map((r) => O3(r)).join(" "), "getEscapedCommand"), _3 = / +/g;
|
||
var Cf = /* @__PURE__ */ s((t) => {
|
||
let e = typeof t;
|
||
if (e === "string")
|
||
return t;
|
||
if (e === "number")
|
||
return String(t);
|
||
if (e === "object" && t !== null && !(t instanceof T3) && "stdout" in t) {
|
||
let r = typeof t.stdout;
|
||
if (r === "string")
|
||
return t.stdout;
|
||
if (S3.isBuffer(t.stdout))
|
||
return t.stdout.toString();
|
||
throw new TypeError(`Unexpected "${r}" stdout in template expression`);
|
||
}
|
||
throw new TypeError(`Unexpected "${e}" in template expression`);
|
||
}, "parseExpression"), Ef = /* @__PURE__ */ s((t, e, r) => r || t.length === 0 || e.length === 0 ? [...t, ...e] : [
|
||
...t.slice(0, -1),
|
||
`${t.at(-1)}${e[0]}`,
|
||
...e.slice(1)
|
||
], "concatTokens"), I3 = /* @__PURE__ */ s(({ templates: t, expressions: e, tokens: r, index: u, template: n }) => {
|
||
let o = n ?? t.raw[u], i = o.split(_3).filter(Boolean), D = Ef(
|
||
r,
|
||
i,
|
||
o.startsWith(" ")
|
||
);
|
||
if (u === e.length)
|
||
return D;
|
||
let a = e[u], l = Array.isArray(a) ? a.map((h) => Cf(h)) : [Cf(a)];
|
||
return Ef(
|
||
D,
|
||
l,
|
||
o.endsWith(" ")
|
||
);
|
||
}, "parseTemplate"), an = /* @__PURE__ */ s((t, e) => {
|
||
let r = [];
|
||
for (let [u, n] of t.entries())
|
||
r = I3({ templates: t, expressions: e, tokens: r, index: u, template: n });
|
||
return r;
|
||
}, "parseTemplates");
|
||
|
||
// node_modules/execa/lib/verbose.js
|
||
import { debuglog as L3 } from "node:util";
|
||
import k3 from "node:process";
|
||
var xf = L3("execa").enabled, nu = /* @__PURE__ */ s((t, e) => String(t).padStart(e, "0"), "padField"), P3 = /* @__PURE__ */ s(() => {
|
||
let t = /* @__PURE__ */ new Date();
|
||
return `${nu(t.getHours(), 2)}:${nu(t.getMinutes(), 2)}:${nu(t.getSeconds(), 2)}.${nu(t.getMilliseconds(), 3)}`;
|
||
}, "getTimestamp"), ln = /* @__PURE__ */ s((t, { verbose: e }) => {
|
||
e && k3.stderr.write(`[${P3()}] ${t}
|
||
`);
|
||
}, "logCommand");
|
||
|
||
// node_modules/execa/index.js
|
||
var q3 = 1e3 * 1e3 * 100, N3 = /* @__PURE__ */ s(({ env: t, extendEnv: e, preferLocal: r, localDir: u, execPath: n }) => {
|
||
let o = e ? { ...ou.env, ...t } : t;
|
||
return r ? qd({ env: o, cwd: u, execPath: n }) : o;
|
||
}, "getEnv"), Bf = /* @__PURE__ */ s((t, e, r = {}) => {
|
||
let u = yf.default._parse(t, e, r);
|
||
return t = u.command, e = u.args, r = u.options, r = {
|
||
maxBuffer: q3,
|
||
buffer: !0,
|
||
stripFinalNewline: !0,
|
||
extendEnv: !0,
|
||
preferLocal: !1,
|
||
localDir: r.cwd || ou.cwd(),
|
||
execPath: ou.execPath,
|
||
encoding: "utf8",
|
||
reject: !0,
|
||
cleanup: !0,
|
||
all: !1,
|
||
windowsHide: !0,
|
||
verbose: xf,
|
||
...r
|
||
}, r.env = N3(r), r.stdio = Yd(r), ou.platform === "win32" && R3.basename(t, ".exe") === "cmd" && e.unshift("/q"), { file: t, args: e, options: r,
|
||
parsed: u };
|
||
}, "handleArguments"), Zt = /* @__PURE__ */ s((t, e, r) => typeof e != "string" && !M3.isBuffer(e) ? r === void 0 ? void 0 : "" : t.stripFinalNewline ?
|
||
Ns(e) : e, "handleOutput");
|
||
function j3(t, e, r) {
|
||
let u = Bf(t, e, r), n = on(t, e), o = Dn(t, e);
|
||
ln(o, u.options), Jd(u.options);
|
||
let i;
|
||
try {
|
||
i = hn.spawn(u.file, u.args, u.options);
|
||
} catch (m) {
|
||
let g = new hn.ChildProcess(), F = Promise.reject(zt({
|
||
error: m,
|
||
stdout: "",
|
||
stderr: "",
|
||
all: "",
|
||
command: n,
|
||
escapedCommand: o,
|
||
parsed: u,
|
||
timedOut: !1,
|
||
isCanceled: !1,
|
||
killed: !1
|
||
}));
|
||
return nn(g, F), g;
|
||
}
|
||
let D = Ff(i), a = Zd(i, u.options, D), l = Xd(i, u.options, a), h = { isCanceled: !1 };
|
||
i.kill = zd.bind(null, i.kill.bind(i)), i.cancel = Kd.bind(null, i, h);
|
||
let d = jd(/* @__PURE__ */ s(async () => {
|
||
let [{ error: m, exitCode: g, signal: F, timedOut: E }, b, y, R] = await gf(i, u.options, l), Et = Zt(u.options, b), bt = Zt(u.options, y),
|
||
xt = Zt(u.options, R);
|
||
if (m || g !== 0 || F !== null) {
|
||
let er = zt({
|
||
error: m,
|
||
exitCode: g,
|
||
signal: F,
|
||
stdout: Et,
|
||
stderr: bt,
|
||
all: xt,
|
||
command: n,
|
||
escapedCommand: o,
|
||
parsed: u,
|
||
timedOut: E,
|
||
isCanceled: h.isCanceled || (u.options.signal ? u.options.signal.aborted : !1),
|
||
killed: i.killed
|
||
});
|
||
if (!u.options.reject)
|
||
return er;
|
||
throw er;
|
||
}
|
||
return {
|
||
command: n,
|
||
escapedCommand: o,
|
||
exitCode: 0,
|
||
stdout: Et,
|
||
stderr: bt,
|
||
all: xt,
|
||
failed: !1,
|
||
timedOut: !1,
|
||
isCanceled: !1,
|
||
killed: !1
|
||
};
|
||
}, "handlePromise"));
|
||
return pf(i, u.options), i.all = mf(i, u.options), Qd(i), nn(i, d), i;
|
||
}
|
||
s(j3, "execa");
|
||
function cn(t, e, r) {
|
||
let u = Bf(t, e, r), n = on(t, e), o = Dn(t, e);
|
||
ln(o, u.options);
|
||
let i = ff(u.options), D;
|
||
try {
|
||
D = hn.spawnSync(u.file, u.args, { ...u.options, input: i });
|
||
} catch (h) {
|
||
throw zt({
|
||
error: h,
|
||
stdout: "",
|
||
stderr: "",
|
||
all: "",
|
||
command: n,
|
||
escapedCommand: o,
|
||
parsed: u,
|
||
timedOut: !1,
|
||
isCanceled: !1,
|
||
killed: !1
|
||
});
|
||
}
|
||
let a = Zt(u.options, D.stdout, D.error), l = Zt(u.options, D.stderr, D.error);
|
||
if (D.error || D.status !== 0 || D.signal !== null) {
|
||
let h = zt({
|
||
stdout: a,
|
||
stderr: l,
|
||
error: D.error,
|
||
signal: D.signal,
|
||
exitCode: D.status,
|
||
command: n,
|
||
escapedCommand: o,
|
||
parsed: u,
|
||
timedOut: D.error && D.error.code === "ETIMEDOUT",
|
||
isCanceled: !1,
|
||
killed: D.signal !== null
|
||
});
|
||
if (!u.options.reject)
|
||
return h;
|
||
throw h;
|
||
}
|
||
return {
|
||
command: n,
|
||
escapedCommand: o,
|
||
exitCode: 0,
|
||
stdout: a,
|
||
stderr: l,
|
||
failed: !1,
|
||
timedOut: !1,
|
||
isCanceled: !1,
|
||
killed: !1
|
||
};
|
||
}
|
||
s(cn, "execaSync");
|
||
var G3 = /* @__PURE__ */ s(({ input: t, inputFile: e, stdio: r }) => t === void 0 && e === void 0 && r === void 0 ? { stdin: "inherit" } : {},
|
||
"normalizeScriptStdin"), vf = /* @__PURE__ */ s((t = {}) => ({
|
||
preferLocal: !0,
|
||
...G3(t),
|
||
...t
|
||
}), "normalizeScriptOptions");
|
||
function wf(t) {
|
||
function e(r, ...u) {
|
||
if (!Array.isArray(r))
|
||
return wf({ ...t, ...r });
|
||
let [n, ...o] = an(r, u);
|
||
return j3(n, o, vf(t));
|
||
}
|
||
return s(e, "$"), e.sync = (r, ...u) => {
|
||
if (!Array.isArray(r))
|
||
throw new TypeError("Please use $(options).sync`command` instead of $.sync(options)`command`.");
|
||
let [n, ...o] = an(r, u);
|
||
return cn(n, o, vf(t));
|
||
}, e;
|
||
}
|
||
s(wf, "create$");
|
||
var Zy = wf();
|
||
|
||
// src/node-logger/wrap-utils.ts
|
||
var Ee = P(ut(), 1);
|
||
function au() {
|
||
try {
|
||
return process.stdout.columns || 80;
|
||
} catch {
|
||
return 80;
|
||
}
|
||
}
|
||
s(au, "getTerminalWidth");
|
||
var W3 = /\u001b\[[0-9;]*m|\u001b\]8;;[^\u0007]*\u0007|\u001b\]8;;\u0007/g, dn = /(https?:\/\/[^\s\u0000-\u001F\u007F]+)/g;
|
||
function V3(t) {
|
||
return t.replace(W3, "");
|
||
}
|
||
s(V3, "stripAnsi");
|
||
function Du(t) {
|
||
return V3(t).length;
|
||
}
|
||
s(Du, "getVisibleLength");
|
||
function Af(t) {
|
||
return cn("echo", [`$${t}`], { shell: !0 }).stdout.trim();
|
||
}
|
||
s(Af, "getEnvFromTerminal");
|
||
function Sf() {
|
||
try {
|
||
let t = Af("TERM_PROGRAM"), e = Af("TERM_PROGRAM_VERSION");
|
||
switch (t) {
|
||
case "iTerm.app":
|
||
if (e.trim()) {
|
||
let r = e.trim().split(".").map(Number);
|
||
return r[0] > 3 || r[0] === 3 && r[1] >= 1;
|
||
}
|
||
return !0;
|
||
// Assume recent version
|
||
case "Apple_Terminal":
|
||
return !1;
|
||
default:
|
||
return !0;
|
||
}
|
||
} catch {
|
||
return !1;
|
||
}
|
||
}
|
||
s(Sf, "supportsHyperlinks");
|
||
function lu(t, e) {
|
||
let r = Math.floor(au() * 0.8), u = e?.maxLineWidth ?? au(), n = Sf();
|
||
return t.replace(dn, (o, i, D) => {
|
||
if (!n)
|
||
return o;
|
||
let a = 0;
|
||
for (; ; ) {
|
||
let b = t.indexOf("\x1B]8;;", a);
|
||
if (b === -1)
|
||
break;
|
||
let y = t.indexOf("\x1B]8;;\x07", b);
|
||
if (y === -1) {
|
||
a = b + 1;
|
||
continue;
|
||
}
|
||
if (D >= b && D < y + 7)
|
||
return o;
|
||
a = y + 1;
|
||
}
|
||
let l = t.substring(0, D), h = l.lastIndexOf(`
|
||
`), p = h === -1 ? l : l.substring(h + 1), d = Du(p), m = u - d, g = 20, F = e?.maxUrlLength ?? r, E = Math.min(F, r, m);
|
||
if ((i.length <= g || E < g) && (E = i.length), i.length > E) {
|
||
let b = i.substring(0, E - 3) + "...";
|
||
return `\x1B]8;;${i}\x07${b}\x1B]8;;\x07`;
|
||
}
|
||
return `\x1B]8;;${i}\x07${i}\x1B]8;;\x07`;
|
||
});
|
||
}
|
||
s(lu, "protectUrls");
|
||
function U3(t, e) {
|
||
return Sf() ? `\x1B]8;;${e}\x07${t}\x1B]8;;\x07` : `${t}: ${e}`;
|
||
}
|
||
s(U3, "createHyperlink");
|
||
function Y3(t) {
|
||
let e = [], r = 0, u;
|
||
for (dn.lastIndex = 0; (u = dn.exec(t)) !== null; ) {
|
||
if (u.index > r) {
|
||
let n = t.slice(r, u.index);
|
||
e.push(...n.split(" ").filter((o) => o.length > 0));
|
||
}
|
||
e.push(u[0]), r = u.index + u[0].length;
|
||
}
|
||
if (r < t.length) {
|
||
let n = t.slice(r);
|
||
e.push(...n.split(" ").filter((o) => o.length > 0));
|
||
}
|
||
return e;
|
||
}
|
||
s(Y3, "splitTextPreservingUrls");
|
||
var Tf = 80;
|
||
function $f(t) {
|
||
return Math.min(t, Tf);
|
||
}
|
||
s($f, "getOptimalWidth");
|
||
function Jt(t, e) {
|
||
let r = e || au(), u = Math.max(r - 10, 40), n = $f(u), o = lu(t, { maxLineWidth: n });
|
||
return Se(o, n);
|
||
}
|
||
s(Jt, "wrapTextForClack");
|
||
function Of(t, e, r) {
|
||
let u = e || au(), o = 8 + (r ? Du(r) : 0), i = Math.min(
|
||
Tf - o,
|
||
Math.max(u - o, 30)
|
||
), D = 4, a = $f(Math.max(u - D, 30)), l = lu(t, { maxLineWidth: a }), h = Se(l, a), p = h.split(`
|
||
`);
|
||
if (p.length > 0 && Du(p[0]) > i) {
|
||
let m = Y3(t), g = "", F = "";
|
||
for (let y = 0; y < m.length; y++) {
|
||
let R = y === 0 ? m[y] : g + " " + m[y];
|
||
if (Du(R) <= i)
|
||
g = R;
|
||
else {
|
||
F = m.slice(y).join(" ");
|
||
break;
|
||
}
|
||
}
|
||
!g && m.length > 0 && (g = m[0], F = m.slice(1).join(" "));
|
||
let E = [g];
|
||
if (F.trim()) {
|
||
let y = lu(F.trim(), {
|
||
maxLineWidth: a
|
||
}), R = Se(y, a);
|
||
E = E.concat(R.split(`
|
||
`));
|
||
}
|
||
if (E.length <= 1)
|
||
return E[0] || "";
|
||
let b = (0, Ee.reset)((0, Ee.cyan)(v)) + " ".repeat(D);
|
||
return E.map((y, R) => R === 0 ? y : `${b}${(0, Ee.dim)(y)}`).join(`
|
||
`);
|
||
}
|
||
if (p.length <= 1)
|
||
return h;
|
||
let d = (0, Ee.reset)((0, Ee.cyan)(v)) + " ".repeat(D);
|
||
return p.map((m, g) => g === 0 ? m : `${d}${(0, Ee.dim)(m)}`).join(`
|
||
`);
|
||
}
|
||
s(Of, "wrapTextForClackHint");
|
||
|
||
// src/node-logger/logger/colors.ts
|
||
var Ye = P(ut(), 1), hu = {
|
||
success: Ye.default.green,
|
||
error: Ye.default.red,
|
||
warning: Ye.default.yellow,
|
||
info: Ye.default.blue,
|
||
debug: Ye.default.gray,
|
||
// Only color a link if it is the primary call to action, otherwise links shouldn't be colored
|
||
cta: Ye.default.cyan
|
||
};
|
||
|
||
// src/node-logger/logger/logger.ts
|
||
var He = /* @__PURE__ */ s((t, e) => () => Ve() ? (r) => {
|
||
lt ? lt.message(r) : t(Jt(r));
|
||
} : e, "createLogFunction"), ke = {
|
||
log: He(G.message, console.log),
|
||
info: He(G.info, console.log),
|
||
warn: He(G.warn, console.warn),
|
||
error: He(G.error, console.error),
|
||
intro: He(SD, console.log),
|
||
outro: He(TD, console.log),
|
||
step: He(G.step, console.log)
|
||
}, _f = {
|
||
trace: 1,
|
||
debug: 2,
|
||
info: 3,
|
||
warn: 4,
|
||
error: 5,
|
||
silent: 10
|
||
}, fn = "info", pn = /* @__PURE__ */ s((t) => {
|
||
fn = t;
|
||
}, "setLogLevel"), H3 = /* @__PURE__ */ s(() => fn, "getLogLevel"), cu = /* @__PURE__ */ s((t) => _f[fn] <= _f[t], "shouldLog");
|
||
function z3() {
|
||
let t = new Error().stack;
|
||
if (!t)
|
||
return;
|
||
let r = t.split(`
|
||
`).slice(1).filter(
|
||
(n) => !["getMinimalTrace", "createLogger", "logFunction"].some((o) => n.includes(o))
|
||
);
|
||
return r.length === 0 ? void 0 : `
|
||
` + r.slice(0, 2).join(`
|
||
`);
|
||
}
|
||
s(z3, "getMinimalTrace");
|
||
var K3 = /* @__PURE__ */ s((t) => t.map((e) => typeof e == "string" ? e : typeof e == "object" ? JSON.stringify(e, null, 2) : String(e)).join(
|
||
" "), "formatLogMessage");
|
||
function Xt(t, e, r) {
|
||
return /* @__PURE__ */ s(function(...n) {
|
||
let o = K3(n);
|
||
if (x.addLog(t, o), t === "prompt" && (t = "info"), cu(t)) {
|
||
let i = r ? `${r} ${o}` : o;
|
||
e(i);
|
||
}
|
||
}, "logFunction");
|
||
}
|
||
s(Xt, "createLogger");
|
||
var du = Xt(
|
||
"debug",
|
||
/* @__PURE__ */ s(function(e) {
|
||
cu("trace") && (e += z3()), ke.log()(e);
|
||
}, "logFunction"),
|
||
"[DEBUG]"
|
||
), gt = Xt("info", (...t) => ke.log()(...t)), mn = Xt("info", (...t) => ke.info()(...t)), gn = Xt("warn", (...t) => ke.warn()(...t)), Fn = Xt(
|
||
"error", (...t) => ke.error()(...t)), Z3 = /* @__PURE__ */ s((t, e) => {
|
||
cu("info") && (x.addLog("info", t), Ve() ? (e?.title && gt(e.title), gt(t)) : console.log(
|
||
Ci(t, {
|
||
borderStyle: "round",
|
||
padding: 1,
|
||
borderColor: "#F1618C",
|
||
// pink
|
||
...e
|
||
})
|
||
));
|
||
}, "logBox"), J3 = /* @__PURE__ */ s((t) => {
|
||
x.addLog("info", t), console.log(`
|
||
`), ke.intro()(t);
|
||
}, "intro"), X3 = /* @__PURE__ */ s((t) => {
|
||
x.addLog("info", t), ke.outro()(t), console.log(`
|
||
`);
|
||
}, "outro"), Q3 = /* @__PURE__ */ s((t) => {
|
||
x.addLog("info", t), ke.step()(t);
|
||
}, "step"), eE = {
|
||
success: hu.success("\u2714"),
|
||
error: hu.error("\u2715")
|
||
};
|
||
|
||
// src/node-logger/prompts/prompt-functions.ts
|
||
var vn = {};
|
||
tr(vn, {
|
||
confirm: () => rE,
|
||
multiselect: () => iE,
|
||
select: () => uE,
|
||
spinner: () => bn,
|
||
taskLog: () => xn,
|
||
text: () => tE
|
||
});
|
||
var Qt = null, Ft = null, Ct = null, If = /* @__PURE__ */ s(() => {
|
||
Ct || (Ct = console.log, console.log = (...t) => {
|
||
let e = t.map((r) => typeof r == "string" ? r : JSON.stringify(r)).join(" ");
|
||
Ft ? Ft.message(e) : Qt ? Qt.message(e) : Ct(...t);
|
||
});
|
||
}, "patchConsoleLog"), En = /* @__PURE__ */ s(() => {
|
||
Ct && !Qt && !Ft && (console.log = Ct, Ct = null);
|
||
}, "restoreConsoleLog"), tE = /* @__PURE__ */ s(async (t, e) => Le().text(t, e), "text"), rE = /* @__PURE__ */ s(async (t, e) => Le().confirm(
|
||
t, e), "confirm"), uE = /* @__PURE__ */ s(async (t, e) => Le().select(t, e), "select"), iE = /* @__PURE__ */ s(async (t, e) => Le().multiselect(
|
||
{
|
||
...t,
|
||
options: t.options.map((r) => ({
|
||
...r,
|
||
hint: r.hint ? Of(r.hint, void 0, r.label || String(r.value)) : void 0
|
||
}))
|
||
},
|
||
e
|
||
), "multiselect"), bn = /* @__PURE__ */ s((t) => {
|
||
let e = Le().spinner(t), r = {
|
||
start: /* @__PURE__ */ s((u) => {
|
||
Qt = r, If(), e.start(u);
|
||
}, "start"),
|
||
stop: /* @__PURE__ */ s((u) => {
|
||
Qt = null, En(), e.stop(u);
|
||
}, "stop"),
|
||
message: /* @__PURE__ */ s((u) => {
|
||
e.message(u);
|
||
}, "message")
|
||
};
|
||
return r;
|
||
}, "spinner"), xn = /* @__PURE__ */ s((t) => {
|
||
let e = Le().taskLog(t), r = {
|
||
message: /* @__PURE__ */ s((u) => {
|
||
e.message(Jt(u));
|
||
}, "message"),
|
||
success: /* @__PURE__ */ s((u, n) => {
|
||
Ft = null, En(), e.success(u, n);
|
||
}, "success"),
|
||
error: /* @__PURE__ */ s((u) => {
|
||
Ft = null, En(), e.error(u);
|
||
}, "error")
|
||
};
|
||
return Ft = r, If(), r;
|
||
}, "taskLog");
|
||
|
||
// src/node-logger/tasks.ts
|
||
var Lf = /* @__PURE__ */ s(async (t, {
|
||
id: e,
|
||
intro: r,
|
||
error: u,
|
||
success: n,
|
||
limitLines: o = 4
|
||
}) => {
|
||
x.addLog("info", r);
|
||
let i = xn({
|
||
id: e,
|
||
title: r,
|
||
retainLog: !1,
|
||
limit: o
|
||
}), D = Array.isArray(t) ? t : [t];
|
||
try {
|
||
for (let a of D) {
|
||
let l = a();
|
||
l.stdout?.on("data", (h) => {
|
||
let p = h.toString().trim();
|
||
x.addLog("info", p), i.message(p);
|
||
}), await l;
|
||
}
|
||
x.addLog("info", n), i.success(n);
|
||
} catch (a) {
|
||
let l = a instanceof Error ? a.stack ?? a.message : String(a);
|
||
throw x.addLog("error", u, { error: l }), i.error(u), a;
|
||
}
|
||
}, "executeTask"), kf = /* @__PURE__ */ s(async (t, { id: e, intro: r, error: u, success: n }) => {
|
||
x.addLog("info", r);
|
||
let o = bn({ id: e });
|
||
o.start(r);
|
||
let i = Array.isArray(t) ? t : [t];
|
||
try {
|
||
for (let D of i) {
|
||
let a = D();
|
||
a.stdout?.on("data", (l) => {
|
||
let h = l.toString().trim().slice(0, 25);
|
||
x.addLog("info", `${r}: ${l.toString()}`), o.message(`${r}: ${h}`);
|
||
}), await a;
|
||
}
|
||
x.addLog("info", n), o.stop(n);
|
||
} catch (D) {
|
||
throw x.addLog("error", u, { error: D }), o.stop(u), D;
|
||
}
|
||
}, "executeTaskWithSpinner");
|
||
|
||
// src/node-logger/prompts/index.ts
|
||
var sE = {
|
||
...vn,
|
||
...$s,
|
||
executeTask: Lf,
|
||
executeTaskWithSpinner: kf
|
||
};
|
||
|
||
// src/node-logger/index.ts
|
||
fu.default.stream = process.stdout;
|
||
function ze(t) {
|
||
if (!/^#?[0-9A-Fa-f]{6}$/.test(t))
|
||
throw new Error("Invalid hex color. It must be a 6-character hex code.");
|
||
t.startsWith("#") && (t = t.slice(1));
|
||
let e = parseInt(t.slice(0, 2), 16), r = parseInt(t.slice(2, 4), 16), u = parseInt(t.slice(4, 6), 16);
|
||
return (n) => `\x1B[38;2;${e};${r};${u}m${n}\x1B[39m`;
|
||
}
|
||
s(ze, "hex");
|
||
var Pf = {
|
||
pink: ze("#F1618C"),
|
||
purple: ze("#B57EE5"),
|
||
orange: ze("#F3AD38"),
|
||
green: ze("#A2E05E"),
|
||
blue: ze("#6DABF5"),
|
||
red: ze("#F16161"),
|
||
gray: ze("#B8C2CC")
|
||
}, nE = {
|
||
...Cn,
|
||
verbose: /* @__PURE__ */ s((t) => du(t), "verbose"),
|
||
info: /* @__PURE__ */ s((t) => Ve() ? mn(t) : fu.default.info("", t), "info"),
|
||
plain: /* @__PURE__ */ s((t) => gt(t), "plain"),
|
||
line: /* @__PURE__ */ s((t = 1) => gt(`${Array(t - 1).fill(`
|
||
`)}`), "line"),
|
||
warn: /* @__PURE__ */ s((t) => gn(t), "warn"),
|
||
trace: /* @__PURE__ */ s(({ message: t, time: e }) => du(`${t} (${Pf.purple((0, Mf.default)(e))})`), "trace"),
|
||
setLevel: /* @__PURE__ */ s((t = "info") => {
|
||
fu.default.level = t, pn(t);
|
||
}, "setLevel"),
|
||
error: /* @__PURE__ */ s((t) => {
|
||
let e;
|
||
t instanceof Error && t.stack ? e = t.stack.toString() : e = t.toString(), Fn(
|
||
e.replace(t.toString(), Pf.red(t.toString())).replaceAll(process.cwd(), ".")
|
||
);
|
||
}, "error")
|
||
};
|
||
var yn = /* @__PURE__ */ new Set(), he = /* @__PURE__ */ s((t) => (e) => {
|
||
if (!yn.has(e))
|
||
return yn.add(e), nE[t](e);
|
||
}, "once");
|
||
he.clear = () => yn.clear();
|
||
he.verbose = he("verbose");
|
||
he.info = he("info");
|
||
he.warn = he("warn");
|
||
he.error = he("error");
|
||
var xB = he("warn");
|
||
var export_instance = fu.default;
|
||
export {
|
||
hu as CLI_COLORS,
|
||
Pf as colors,
|
||
U3 as createHyperlink,
|
||
xB as deprecate,
|
||
export_instance as instance,
|
||
x as logTracker,
|
||
nE as logger,
|
||
he as once,
|
||
sE as prompt,
|
||
lu as protectUrls
|
||
};
|