nococli 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3347 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ function __accessProp(key) {
8
+ return this[key];
9
+ }
10
+ var __toESMCache_node;
11
+ var __toESMCache_esm;
12
+ var __toESM = (mod, isNodeMode, target) => {
13
+ var canCache = mod != null && typeof mod === "object";
14
+ if (canCache) {
15
+ var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
16
+ var cached = cache.get(mod);
17
+ if (cached)
18
+ return cached;
19
+ }
20
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
21
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
22
+ for (let key of __getOwnPropNames(mod))
23
+ if (!__hasOwnProp.call(to, key))
24
+ __defProp(to, key, {
25
+ get: __accessProp.bind(mod, key),
26
+ enumerable: true
27
+ });
28
+ if (canCache)
29
+ cache.set(mod, to);
30
+ return to;
31
+ };
32
+ var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
33
+ var __returnValue = (v) => v;
34
+ function __exportSetter(name, newValue) {
35
+ this[name] = __returnValue.bind(null, newValue);
36
+ }
37
+ var __export = (target, all) => {
38
+ for (var name in all)
39
+ __defProp(target, name, {
40
+ get: all[name],
41
+ enumerable: true,
42
+ configurable: true,
43
+ set: __exportSetter.bind(all, name)
44
+ });
45
+ };
46
+ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
47
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
48
+
49
+ // node_modules/chalk/source/vendor/ansi-styles/index.js
50
+ function assembleStyles() {
51
+ const codes = new Map;
52
+ for (const [groupName, group] of Object.entries(styles)) {
53
+ for (const [styleName, style] of Object.entries(group)) {
54
+ styles[styleName] = {
55
+ open: `\x1B[${style[0]}m`,
56
+ close: `\x1B[${style[1]}m`
57
+ };
58
+ group[styleName] = styles[styleName];
59
+ codes.set(style[0], style[1]);
60
+ }
61
+ Object.defineProperty(styles, groupName, {
62
+ value: group,
63
+ enumerable: false
64
+ });
65
+ }
66
+ Object.defineProperty(styles, "codes", {
67
+ value: codes,
68
+ enumerable: false
69
+ });
70
+ styles.color.close = "\x1B[39m";
71
+ styles.bgColor.close = "\x1B[49m";
72
+ styles.color.ansi = wrapAnsi16();
73
+ styles.color.ansi256 = wrapAnsi256();
74
+ styles.color.ansi16m = wrapAnsi16m();
75
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
76
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
77
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
78
+ Object.defineProperties(styles, {
79
+ rgbToAnsi256: {
80
+ value(red, green, blue) {
81
+ if (red === green && green === blue) {
82
+ if (red < 8) {
83
+ return 16;
84
+ }
85
+ if (red > 248) {
86
+ return 231;
87
+ }
88
+ return Math.round((red - 8) / 247 * 24) + 232;
89
+ }
90
+ return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
91
+ },
92
+ enumerable: false
93
+ },
94
+ hexToRgb: {
95
+ value(hex) {
96
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
97
+ if (!matches) {
98
+ return [0, 0, 0];
99
+ }
100
+ let [colorString] = matches;
101
+ if (colorString.length === 3) {
102
+ colorString = [...colorString].map((character) => character + character).join("");
103
+ }
104
+ const integer = Number.parseInt(colorString, 16);
105
+ return [
106
+ integer >> 16 & 255,
107
+ integer >> 8 & 255,
108
+ integer & 255
109
+ ];
110
+ },
111
+ enumerable: false
112
+ },
113
+ hexToAnsi256: {
114
+ value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
115
+ enumerable: false
116
+ },
117
+ ansi256ToAnsi: {
118
+ value(code) {
119
+ if (code < 8) {
120
+ return 30 + code;
121
+ }
122
+ if (code < 16) {
123
+ return 90 + (code - 8);
124
+ }
125
+ let red;
126
+ let green;
127
+ let blue;
128
+ if (code >= 232) {
129
+ red = ((code - 232) * 10 + 8) / 255;
130
+ green = red;
131
+ blue = red;
132
+ } else {
133
+ code -= 16;
134
+ const remainder = code % 36;
135
+ red = Math.floor(code / 36) / 5;
136
+ green = Math.floor(remainder / 6) / 5;
137
+ blue = remainder % 6 / 5;
138
+ }
139
+ const value = Math.max(red, green, blue) * 2;
140
+ if (value === 0) {
141
+ return 30;
142
+ }
143
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
144
+ if (value === 2) {
145
+ result += 60;
146
+ }
147
+ return result;
148
+ },
149
+ enumerable: false
150
+ },
151
+ rgbToAnsi: {
152
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
153
+ enumerable: false
154
+ },
155
+ hexToAnsi: {
156
+ value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
157
+ enumerable: false
158
+ }
159
+ });
160
+ return styles;
161
+ }
162
+ var ANSI_BACKGROUND_OFFSET = 10, wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`, wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`, wrapAnsi16m = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`, styles, modifierNames, foregroundColorNames, backgroundColorNames, colorNames, ansiStyles, ansi_styles_default;
163
+ var init_ansi_styles = __esm(() => {
164
+ styles = {
165
+ modifier: {
166
+ reset: [0, 0],
167
+ bold: [1, 22],
168
+ dim: [2, 22],
169
+ italic: [3, 23],
170
+ underline: [4, 24],
171
+ overline: [53, 55],
172
+ inverse: [7, 27],
173
+ hidden: [8, 28],
174
+ strikethrough: [9, 29]
175
+ },
176
+ color: {
177
+ black: [30, 39],
178
+ red: [31, 39],
179
+ green: [32, 39],
180
+ yellow: [33, 39],
181
+ blue: [34, 39],
182
+ magenta: [35, 39],
183
+ cyan: [36, 39],
184
+ white: [37, 39],
185
+ blackBright: [90, 39],
186
+ gray: [90, 39],
187
+ grey: [90, 39],
188
+ redBright: [91, 39],
189
+ greenBright: [92, 39],
190
+ yellowBright: [93, 39],
191
+ blueBright: [94, 39],
192
+ magentaBright: [95, 39],
193
+ cyanBright: [96, 39],
194
+ whiteBright: [97, 39]
195
+ },
196
+ bgColor: {
197
+ bgBlack: [40, 49],
198
+ bgRed: [41, 49],
199
+ bgGreen: [42, 49],
200
+ bgYellow: [43, 49],
201
+ bgBlue: [44, 49],
202
+ bgMagenta: [45, 49],
203
+ bgCyan: [46, 49],
204
+ bgWhite: [47, 49],
205
+ bgBlackBright: [100, 49],
206
+ bgGray: [100, 49],
207
+ bgGrey: [100, 49],
208
+ bgRedBright: [101, 49],
209
+ bgGreenBright: [102, 49],
210
+ bgYellowBright: [103, 49],
211
+ bgBlueBright: [104, 49],
212
+ bgMagentaBright: [105, 49],
213
+ bgCyanBright: [106, 49],
214
+ bgWhiteBright: [107, 49]
215
+ }
216
+ };
217
+ modifierNames = Object.keys(styles.modifier);
218
+ foregroundColorNames = Object.keys(styles.color);
219
+ backgroundColorNames = Object.keys(styles.bgColor);
220
+ colorNames = [...foregroundColorNames, ...backgroundColorNames];
221
+ ansiStyles = assembleStyles();
222
+ ansi_styles_default = ansiStyles;
223
+ });
224
+
225
+ // node_modules/chalk/source/vendor/supports-color/index.js
226
+ import process2 from "node:process";
227
+ import os from "node:os";
228
+ import tty from "node:tty";
229
+ function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process2.argv) {
230
+ const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
231
+ const position = argv.indexOf(prefix + flag);
232
+ const terminatorPosition = argv.indexOf("--");
233
+ return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
234
+ }
235
+ function envForceColor() {
236
+ if ("FORCE_COLOR" in env) {
237
+ if (env.FORCE_COLOR === "true") {
238
+ return 1;
239
+ }
240
+ if (env.FORCE_COLOR === "false") {
241
+ return 0;
242
+ }
243
+ return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
244
+ }
245
+ }
246
+ function translateLevel(level) {
247
+ if (level === 0) {
248
+ return false;
249
+ }
250
+ return {
251
+ level,
252
+ hasBasic: true,
253
+ has256: level >= 2,
254
+ has16m: level >= 3
255
+ };
256
+ }
257
+ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
258
+ const noFlagForceColor = envForceColor();
259
+ if (noFlagForceColor !== undefined) {
260
+ flagForceColor = noFlagForceColor;
261
+ }
262
+ const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
263
+ if (forceColor === 0) {
264
+ return 0;
265
+ }
266
+ if (sniffFlags) {
267
+ if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
268
+ return 3;
269
+ }
270
+ if (hasFlag("color=256")) {
271
+ return 2;
272
+ }
273
+ }
274
+ if ("TF_BUILD" in env && "AGENT_NAME" in env) {
275
+ return 1;
276
+ }
277
+ if (haveStream && !streamIsTTY && forceColor === undefined) {
278
+ return 0;
279
+ }
280
+ const min = forceColor || 0;
281
+ if (env.TERM === "dumb") {
282
+ return min;
283
+ }
284
+ if (process2.platform === "win32") {
285
+ const osRelease = os.release().split(".");
286
+ if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
287
+ return Number(osRelease[2]) >= 14931 ? 3 : 2;
288
+ }
289
+ return 1;
290
+ }
291
+ if ("CI" in env) {
292
+ if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => (key in env))) {
293
+ return 3;
294
+ }
295
+ if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => (sign in env)) || env.CI_NAME === "codeship") {
296
+ return 1;
297
+ }
298
+ return min;
299
+ }
300
+ if ("TEAMCITY_VERSION" in env) {
301
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
302
+ }
303
+ if (env.COLORTERM === "truecolor") {
304
+ return 3;
305
+ }
306
+ if (env.TERM === "xterm-kitty") {
307
+ return 3;
308
+ }
309
+ if (env.TERM === "xterm-ghostty") {
310
+ return 3;
311
+ }
312
+ if (env.TERM === "wezterm") {
313
+ return 3;
314
+ }
315
+ if ("TERM_PROGRAM" in env) {
316
+ const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
317
+ switch (env.TERM_PROGRAM) {
318
+ case "iTerm.app": {
319
+ return version >= 3 ? 3 : 2;
320
+ }
321
+ case "Apple_Terminal": {
322
+ return 2;
323
+ }
324
+ }
325
+ }
326
+ if (/-256(color)?$/i.test(env.TERM)) {
327
+ return 2;
328
+ }
329
+ if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
330
+ return 1;
331
+ }
332
+ if ("COLORTERM" in env) {
333
+ return 1;
334
+ }
335
+ return min;
336
+ }
337
+ function createSupportsColor(stream, options = {}) {
338
+ const level = _supportsColor(stream, {
339
+ streamIsTTY: stream && stream.isTTY,
340
+ ...options
341
+ });
342
+ return translateLevel(level);
343
+ }
344
+ var env, flagForceColor, supportsColor, supports_color_default;
345
+ var init_supports_color = __esm(() => {
346
+ ({ env } = process2);
347
+ if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
348
+ flagForceColor = 0;
349
+ } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
350
+ flagForceColor = 1;
351
+ }
352
+ supportsColor = {
353
+ stdout: createSupportsColor({ isTTY: tty.isatty(1) }),
354
+ stderr: createSupportsColor({ isTTY: tty.isatty(2) })
355
+ };
356
+ supports_color_default = supportsColor;
357
+ });
358
+
359
+ // node_modules/chalk/source/utilities.js
360
+ function stringReplaceAll(string, substring, replacer) {
361
+ let index = string.indexOf(substring);
362
+ if (index === -1) {
363
+ return string;
364
+ }
365
+ const substringLength = substring.length;
366
+ let endIndex = 0;
367
+ let returnValue = "";
368
+ do {
369
+ returnValue += string.slice(endIndex, index) + substring + replacer;
370
+ endIndex = index + substringLength;
371
+ index = string.indexOf(substring, endIndex);
372
+ } while (index !== -1);
373
+ returnValue += string.slice(endIndex);
374
+ return returnValue;
375
+ }
376
+ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
377
+ let endIndex = 0;
378
+ let returnValue = "";
379
+ do {
380
+ const gotCR = string[index - 1] === "\r";
381
+ returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? `\r
382
+ ` : `
383
+ `) + postfix;
384
+ endIndex = index + 1;
385
+ index = string.indexOf(`
386
+ `, endIndex);
387
+ } while (index !== -1);
388
+ returnValue += string.slice(endIndex);
389
+ return returnValue;
390
+ }
391
+
392
+ // node_modules/chalk/source/index.js
393
+ function createChalk(options) {
394
+ return chalkFactory(options);
395
+ }
396
+ var stdoutColor, stderrColor, GENERATOR, STYLER, IS_EMPTY, levelMapping, styles2, applyOptions = (object, options = {}) => {
397
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
398
+ throw new Error("The `level` option should be an integer from 0 to 3");
399
+ }
400
+ const colorLevel = stdoutColor ? stdoutColor.level : 0;
401
+ object.level = options.level === undefined ? colorLevel : options.level;
402
+ }, chalkFactory = (options) => {
403
+ const chalk = (...strings) => strings.join(" ");
404
+ applyOptions(chalk, options);
405
+ Object.setPrototypeOf(chalk, createChalk.prototype);
406
+ return chalk;
407
+ }, getModelAnsi = (model, level, type, ...arguments_) => {
408
+ if (model === "rgb") {
409
+ if (level === "ansi16m") {
410
+ return ansi_styles_default[type].ansi16m(...arguments_);
411
+ }
412
+ if (level === "ansi256") {
413
+ return ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
414
+ }
415
+ return ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
416
+ }
417
+ if (model === "hex") {
418
+ return getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_));
419
+ }
420
+ return ansi_styles_default[type][model](...arguments_);
421
+ }, usedModels, proto, createStyler = (open, close, parent) => {
422
+ let openAll;
423
+ let closeAll;
424
+ if (parent === undefined) {
425
+ openAll = open;
426
+ closeAll = close;
427
+ } else {
428
+ openAll = parent.openAll + open;
429
+ closeAll = close + parent.closeAll;
430
+ }
431
+ return {
432
+ open,
433
+ close,
434
+ openAll,
435
+ closeAll,
436
+ parent
437
+ };
438
+ }, createBuilder = (self, _styler, _isEmpty) => {
439
+ const builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
440
+ Object.setPrototypeOf(builder, proto);
441
+ builder[GENERATOR] = self;
442
+ builder[STYLER] = _styler;
443
+ builder[IS_EMPTY] = _isEmpty;
444
+ return builder;
445
+ }, applyStyle = (self, string) => {
446
+ if (self.level <= 0 || !string) {
447
+ return self[IS_EMPTY] ? "" : string;
448
+ }
449
+ let styler = self[STYLER];
450
+ if (styler === undefined) {
451
+ return string;
452
+ }
453
+ const { openAll, closeAll } = styler;
454
+ if (string.includes("\x1B")) {
455
+ while (styler !== undefined) {
456
+ string = stringReplaceAll(string, styler.close, styler.open);
457
+ styler = styler.parent;
458
+ }
459
+ }
460
+ const lfIndex = string.indexOf(`
461
+ `);
462
+ if (lfIndex !== -1) {
463
+ string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
464
+ }
465
+ return openAll + string + closeAll;
466
+ }, chalk, chalkStderr, source_default;
467
+ var init_source = __esm(() => {
468
+ init_ansi_styles();
469
+ init_supports_color();
470
+ ({ stdout: stdoutColor, stderr: stderrColor } = supports_color_default);
471
+ GENERATOR = Symbol("GENERATOR");
472
+ STYLER = Symbol("STYLER");
473
+ IS_EMPTY = Symbol("IS_EMPTY");
474
+ levelMapping = [
475
+ "ansi",
476
+ "ansi",
477
+ "ansi256",
478
+ "ansi16m"
479
+ ];
480
+ styles2 = Object.create(null);
481
+ Object.setPrototypeOf(createChalk.prototype, Function.prototype);
482
+ for (const [styleName, style] of Object.entries(ansi_styles_default)) {
483
+ styles2[styleName] = {
484
+ get() {
485
+ const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
486
+ Object.defineProperty(this, styleName, { value: builder });
487
+ return builder;
488
+ }
489
+ };
490
+ }
491
+ styles2.visible = {
492
+ get() {
493
+ const builder = createBuilder(this, this[STYLER], true);
494
+ Object.defineProperty(this, "visible", { value: builder });
495
+ return builder;
496
+ }
497
+ };
498
+ usedModels = ["rgb", "hex", "ansi256"];
499
+ for (const model of usedModels) {
500
+ styles2[model] = {
501
+ get() {
502
+ const { level } = this;
503
+ return function(...arguments_) {
504
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
505
+ return createBuilder(this, styler, this[IS_EMPTY]);
506
+ };
507
+ }
508
+ };
509
+ const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
510
+ styles2[bgModel] = {
511
+ get() {
512
+ const { level } = this;
513
+ return function(...arguments_) {
514
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
515
+ return createBuilder(this, styler, this[IS_EMPTY]);
516
+ };
517
+ }
518
+ };
519
+ }
520
+ proto = Object.defineProperties(() => {}, {
521
+ ...styles2,
522
+ level: {
523
+ enumerable: true,
524
+ get() {
525
+ return this[GENERATOR].level;
526
+ },
527
+ set(level) {
528
+ this[GENERATOR].level = level;
529
+ }
530
+ }
531
+ });
532
+ Object.defineProperties(createChalk.prototype, styles2);
533
+ chalk = createChalk();
534
+ chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
535
+ source_default = chalk;
536
+ });
537
+
538
+ // node_modules/mimic-function/index.js
539
+ function mimicFunction(to, from, { ignoreNonConfigurable = false } = {}) {
540
+ const { name } = to;
541
+ for (const property of Reflect.ownKeys(from)) {
542
+ copyProperty(to, from, property, ignoreNonConfigurable);
543
+ }
544
+ changePrototype(to, from);
545
+ changeToString(to, from, name);
546
+ return to;
547
+ }
548
+ var copyProperty = (to, from, property, ignoreNonConfigurable) => {
549
+ if (property === "length" || property === "prototype") {
550
+ return;
551
+ }
552
+ if (property === "arguments" || property === "caller") {
553
+ return;
554
+ }
555
+ const toDescriptor = Object.getOwnPropertyDescriptor(to, property);
556
+ const fromDescriptor = Object.getOwnPropertyDescriptor(from, property);
557
+ if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) {
558
+ return;
559
+ }
560
+ Object.defineProperty(to, property, fromDescriptor);
561
+ }, canCopyProperty = function(toDescriptor, fromDescriptor) {
562
+ return toDescriptor === undefined || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value);
563
+ }, changePrototype = (to, from) => {
564
+ const fromPrototype = Object.getPrototypeOf(from);
565
+ if (fromPrototype === Object.getPrototypeOf(to)) {
566
+ return;
567
+ }
568
+ Object.setPrototypeOf(to, fromPrototype);
569
+ }, wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/
570
+ ${fromBody}`, toStringDescriptor, toStringName, changeToString = (to, from, name) => {
571
+ const withName = name === "" ? "" : `with ${name.trim()}() `;
572
+ const newToString = wrappedToString.bind(null, withName, from.toString());
573
+ Object.defineProperty(newToString, "name", toStringName);
574
+ const { writable, enumerable, configurable } = toStringDescriptor;
575
+ Object.defineProperty(to, "toString", { value: newToString, writable, enumerable, configurable });
576
+ };
577
+ var init_mimic_function = __esm(() => {
578
+ toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString");
579
+ toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name");
580
+ });
581
+
582
+ // node_modules/onetime/index.js
583
+ var calledFunctions, onetime = (function_, options = {}) => {
584
+ if (typeof function_ !== "function") {
585
+ throw new TypeError("Expected a function");
586
+ }
587
+ let returnValue;
588
+ let callCount = 0;
589
+ const functionName = function_.displayName || function_.name || "<anonymous>";
590
+ const onetime2 = function(...arguments_) {
591
+ calledFunctions.set(onetime2, ++callCount);
592
+ if (callCount === 1) {
593
+ returnValue = function_.apply(this, arguments_);
594
+ function_ = undefined;
595
+ } else if (options.throw === true) {
596
+ throw new Error(`Function \`${functionName}\` can only be called once`);
597
+ }
598
+ return returnValue;
599
+ };
600
+ mimicFunction(onetime2, function_);
601
+ calledFunctions.set(onetime2, callCount);
602
+ return onetime2;
603
+ }, onetime_default;
604
+ var init_onetime = __esm(() => {
605
+ init_mimic_function();
606
+ calledFunctions = new WeakMap;
607
+ onetime.callCount = (function_) => {
608
+ if (!calledFunctions.has(function_)) {
609
+ throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
610
+ }
611
+ return calledFunctions.get(function_);
612
+ };
613
+ onetime_default = onetime;
614
+ });
615
+
616
+ // node_modules/signal-exit/dist/mjs/signals.js
617
+ var signals;
618
+ var init_signals = __esm(() => {
619
+ signals = [];
620
+ signals.push("SIGHUP", "SIGINT", "SIGTERM");
621
+ if (process.platform !== "win32") {
622
+ signals.push("SIGALRM", "SIGABRT", "SIGVTALRM", "SIGXCPU", "SIGXFSZ", "SIGUSR2", "SIGTRAP", "SIGSYS", "SIGQUIT", "SIGIOT");
623
+ }
624
+ if (process.platform === "linux") {
625
+ signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
626
+ }
627
+ });
628
+
629
+ // node_modules/signal-exit/dist/mjs/index.js
630
+ class Emitter {
631
+ emitted = {
632
+ afterExit: false,
633
+ exit: false
634
+ };
635
+ listeners = {
636
+ afterExit: [],
637
+ exit: []
638
+ };
639
+ count = 0;
640
+ id = Math.random();
641
+ constructor() {
642
+ if (global[kExitEmitter]) {
643
+ return global[kExitEmitter];
644
+ }
645
+ ObjectDefineProperty(global, kExitEmitter, {
646
+ value: this,
647
+ writable: false,
648
+ enumerable: false,
649
+ configurable: false
650
+ });
651
+ }
652
+ on(ev, fn) {
653
+ this.listeners[ev].push(fn);
654
+ }
655
+ removeListener(ev, fn) {
656
+ const list = this.listeners[ev];
657
+ const i = list.indexOf(fn);
658
+ if (i === -1) {
659
+ return;
660
+ }
661
+ if (i === 0 && list.length === 1) {
662
+ list.length = 0;
663
+ } else {
664
+ list.splice(i, 1);
665
+ }
666
+ }
667
+ emit(ev, code, signal) {
668
+ if (this.emitted[ev]) {
669
+ return false;
670
+ }
671
+ this.emitted[ev] = true;
672
+ let ret = false;
673
+ for (const fn of this.listeners[ev]) {
674
+ ret = fn(code, signal) === true || ret;
675
+ }
676
+ if (ev === "exit") {
677
+ ret = this.emit("afterExit", code, signal) || ret;
678
+ }
679
+ return ret;
680
+ }
681
+ }
682
+
683
+ class SignalExitBase {
684
+ }
685
+ var processOk = (process3) => !!process3 && typeof process3 === "object" && typeof process3.removeListener === "function" && typeof process3.emit === "function" && typeof process3.reallyExit === "function" && typeof process3.listeners === "function" && typeof process3.kill === "function" && typeof process3.pid === "number" && typeof process3.on === "function", kExitEmitter, global, ObjectDefineProperty, signalExitWrap = (handler) => {
686
+ return {
687
+ onExit(cb, opts) {
688
+ return handler.onExit(cb, opts);
689
+ },
690
+ load() {
691
+ return handler.load();
692
+ },
693
+ unload() {
694
+ return handler.unload();
695
+ }
696
+ };
697
+ }, SignalExitFallback, SignalExit, process3, onExit, load, unload;
698
+ var init_mjs = __esm(() => {
699
+ init_signals();
700
+ kExitEmitter = Symbol.for("signal-exit emitter");
701
+ global = globalThis;
702
+ ObjectDefineProperty = Object.defineProperty.bind(Object);
703
+ SignalExitFallback = class SignalExitFallback extends SignalExitBase {
704
+ onExit() {
705
+ return () => {};
706
+ }
707
+ load() {}
708
+ unload() {}
709
+ };
710
+ SignalExit = class SignalExit extends SignalExitBase {
711
+ #hupSig = process3.platform === "win32" ? "SIGINT" : "SIGHUP";
712
+ #emitter = new Emitter;
713
+ #process;
714
+ #originalProcessEmit;
715
+ #originalProcessReallyExit;
716
+ #sigListeners = {};
717
+ #loaded = false;
718
+ constructor(process3) {
719
+ super();
720
+ this.#process = process3;
721
+ this.#sigListeners = {};
722
+ for (const sig of signals) {
723
+ this.#sigListeners[sig] = () => {
724
+ const listeners = this.#process.listeners(sig);
725
+ let { count } = this.#emitter;
726
+ const p = process3;
727
+ if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
728
+ count += p.__signal_exit_emitter__.count;
729
+ }
730
+ if (listeners.length === count) {
731
+ this.unload();
732
+ const ret = this.#emitter.emit("exit", null, sig);
733
+ const s = sig === "SIGHUP" ? this.#hupSig : sig;
734
+ if (!ret)
735
+ process3.kill(process3.pid, s);
736
+ }
737
+ };
738
+ }
739
+ this.#originalProcessReallyExit = process3.reallyExit;
740
+ this.#originalProcessEmit = process3.emit;
741
+ }
742
+ onExit(cb, opts) {
743
+ if (!processOk(this.#process)) {
744
+ return () => {};
745
+ }
746
+ if (this.#loaded === false) {
747
+ this.load();
748
+ }
749
+ const ev = opts?.alwaysLast ? "afterExit" : "exit";
750
+ this.#emitter.on(ev, cb);
751
+ return () => {
752
+ this.#emitter.removeListener(ev, cb);
753
+ if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) {
754
+ this.unload();
755
+ }
756
+ };
757
+ }
758
+ load() {
759
+ if (this.#loaded) {
760
+ return;
761
+ }
762
+ this.#loaded = true;
763
+ this.#emitter.count += 1;
764
+ for (const sig of signals) {
765
+ try {
766
+ const fn = this.#sigListeners[sig];
767
+ if (fn)
768
+ this.#process.on(sig, fn);
769
+ } catch (_) {}
770
+ }
771
+ this.#process.emit = (ev, ...a) => {
772
+ return this.#processEmit(ev, ...a);
773
+ };
774
+ this.#process.reallyExit = (code) => {
775
+ return this.#processReallyExit(code);
776
+ };
777
+ }
778
+ unload() {
779
+ if (!this.#loaded) {
780
+ return;
781
+ }
782
+ this.#loaded = false;
783
+ signals.forEach((sig) => {
784
+ const listener = this.#sigListeners[sig];
785
+ if (!listener) {
786
+ throw new Error("Listener not defined for signal: " + sig);
787
+ }
788
+ try {
789
+ this.#process.removeListener(sig, listener);
790
+ } catch (_) {}
791
+ });
792
+ this.#process.emit = this.#originalProcessEmit;
793
+ this.#process.reallyExit = this.#originalProcessReallyExit;
794
+ this.#emitter.count -= 1;
795
+ }
796
+ #processReallyExit(code) {
797
+ if (!processOk(this.#process)) {
798
+ return 0;
799
+ }
800
+ this.#process.exitCode = code || 0;
801
+ this.#emitter.emit("exit", this.#process.exitCode, null);
802
+ return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode);
803
+ }
804
+ #processEmit(ev, ...args) {
805
+ const og = this.#originalProcessEmit;
806
+ if (ev === "exit" && processOk(this.#process)) {
807
+ if (typeof args[0] === "number") {
808
+ this.#process.exitCode = args[0];
809
+ }
810
+ const ret = og.call(this.#process, ev, ...args);
811
+ this.#emitter.emit("exit", this.#process.exitCode, null);
812
+ return ret;
813
+ } else {
814
+ return og.call(this.#process, ev, ...args);
815
+ }
816
+ }
817
+ };
818
+ process3 = globalThis.process;
819
+ ({
820
+ onExit,
821
+ load,
822
+ unload
823
+ } = signalExitWrap(processOk(process3) ? new SignalExit(process3) : new SignalExitFallback));
824
+ });
825
+
826
+ // node_modules/restore-cursor/index.js
827
+ import process4 from "node:process";
828
+ var terminal, restoreCursor, restore_cursor_default;
829
+ var init_restore_cursor = __esm(() => {
830
+ init_onetime();
831
+ init_mjs();
832
+ terminal = process4.stderr.isTTY ? process4.stderr : process4.stdout.isTTY ? process4.stdout : undefined;
833
+ restoreCursor = terminal ? onetime_default(() => {
834
+ onExit(() => {
835
+ terminal.write("\x1B[?25h");
836
+ }, { alwaysLast: true });
837
+ }) : () => {};
838
+ restore_cursor_default = restoreCursor;
839
+ });
840
+
841
+ // node_modules/cli-cursor/index.js
842
+ import process5 from "node:process";
843
+ var isHidden = false, cliCursor, cli_cursor_default;
844
+ var init_cli_cursor = __esm(() => {
845
+ init_restore_cursor();
846
+ cliCursor = {};
847
+ cliCursor.show = (writableStream = process5.stderr) => {
848
+ if (!writableStream.isTTY) {
849
+ return;
850
+ }
851
+ isHidden = false;
852
+ writableStream.write("\x1B[?25h");
853
+ };
854
+ cliCursor.hide = (writableStream = process5.stderr) => {
855
+ if (!writableStream.isTTY) {
856
+ return;
857
+ }
858
+ restore_cursor_default();
859
+ isHidden = true;
860
+ writableStream.write("\x1B[?25l");
861
+ };
862
+ cliCursor.toggle = (force, writableStream) => {
863
+ if (force !== undefined) {
864
+ isHidden = force;
865
+ }
866
+ if (isHidden) {
867
+ cliCursor.show(writableStream);
868
+ } else {
869
+ cliCursor.hide(writableStream);
870
+ }
871
+ };
872
+ cli_cursor_default = cliCursor;
873
+ });
874
+
875
+ // node_modules/cli-spinners/spinners.json
876
+ var require_spinners = __commonJS((exports, module) => {
877
+ module.exports = {
878
+ dots: {
879
+ interval: 80,
880
+ frames: [
881
+ "⠋",
882
+ "⠙",
883
+ "⠹",
884
+ "⠸",
885
+ "⠼",
886
+ "⠴",
887
+ "⠦",
888
+ "⠧",
889
+ "⠇",
890
+ "⠏"
891
+ ]
892
+ },
893
+ dots2: {
894
+ interval: 80,
895
+ frames: [
896
+ "⣾",
897
+ "⣽",
898
+ "⣻",
899
+ "⢿",
900
+ "⡿",
901
+ "⣟",
902
+ "⣯",
903
+ "⣷"
904
+ ]
905
+ },
906
+ dots3: {
907
+ interval: 80,
908
+ frames: [
909
+ "⠋",
910
+ "⠙",
911
+ "⠚",
912
+ "⠞",
913
+ "⠖",
914
+ "⠦",
915
+ "⠴",
916
+ "⠲",
917
+ "⠳",
918
+ "⠓"
919
+ ]
920
+ },
921
+ dots4: {
922
+ interval: 80,
923
+ frames: [
924
+ "⠄",
925
+ "⠆",
926
+ "⠇",
927
+ "⠋",
928
+ "⠙",
929
+ "⠸",
930
+ "⠰",
931
+ "⠠",
932
+ "⠰",
933
+ "⠸",
934
+ "⠙",
935
+ "⠋",
936
+ "⠇",
937
+ "⠆"
938
+ ]
939
+ },
940
+ dots5: {
941
+ interval: 80,
942
+ frames: [
943
+ "⠋",
944
+ "⠙",
945
+ "⠚",
946
+ "⠒",
947
+ "⠂",
948
+ "⠂",
949
+ "⠒",
950
+ "⠲",
951
+ "⠴",
952
+ "⠦",
953
+ "⠖",
954
+ "⠒",
955
+ "⠐",
956
+ "⠐",
957
+ "⠒",
958
+ "⠓",
959
+ "⠋"
960
+ ]
961
+ },
962
+ dots6: {
963
+ interval: 80,
964
+ frames: [
965
+ "⠁",
966
+ "⠉",
967
+ "⠙",
968
+ "⠚",
969
+ "⠒",
970
+ "⠂",
971
+ "⠂",
972
+ "⠒",
973
+ "⠲",
974
+ "⠴",
975
+ "⠤",
976
+ "⠄",
977
+ "⠄",
978
+ "⠤",
979
+ "⠴",
980
+ "⠲",
981
+ "⠒",
982
+ "⠂",
983
+ "⠂",
984
+ "⠒",
985
+ "⠚",
986
+ "⠙",
987
+ "⠉",
988
+ "⠁"
989
+ ]
990
+ },
991
+ dots7: {
992
+ interval: 80,
993
+ frames: [
994
+ "⠈",
995
+ "⠉",
996
+ "⠋",
997
+ "⠓",
998
+ "⠒",
999
+ "⠐",
1000
+ "⠐",
1001
+ "⠒",
1002
+ "⠖",
1003
+ "⠦",
1004
+ "⠤",
1005
+ "⠠",
1006
+ "⠠",
1007
+ "⠤",
1008
+ "⠦",
1009
+ "⠖",
1010
+ "⠒",
1011
+ "⠐",
1012
+ "⠐",
1013
+ "⠒",
1014
+ "⠓",
1015
+ "⠋",
1016
+ "⠉",
1017
+ "⠈"
1018
+ ]
1019
+ },
1020
+ dots8: {
1021
+ interval: 80,
1022
+ frames: [
1023
+ "⠁",
1024
+ "⠁",
1025
+ "⠉",
1026
+ "⠙",
1027
+ "⠚",
1028
+ "⠒",
1029
+ "⠂",
1030
+ "⠂",
1031
+ "⠒",
1032
+ "⠲",
1033
+ "⠴",
1034
+ "⠤",
1035
+ "⠄",
1036
+ "⠄",
1037
+ "⠤",
1038
+ "⠠",
1039
+ "⠠",
1040
+ "⠤",
1041
+ "⠦",
1042
+ "⠖",
1043
+ "⠒",
1044
+ "⠐",
1045
+ "⠐",
1046
+ "⠒",
1047
+ "⠓",
1048
+ "⠋",
1049
+ "⠉",
1050
+ "⠈",
1051
+ "⠈"
1052
+ ]
1053
+ },
1054
+ dots9: {
1055
+ interval: 80,
1056
+ frames: [
1057
+ "⢹",
1058
+ "⢺",
1059
+ "⢼",
1060
+ "⣸",
1061
+ "⣇",
1062
+ "⡧",
1063
+ "⡗",
1064
+ "⡏"
1065
+ ]
1066
+ },
1067
+ dots10: {
1068
+ interval: 80,
1069
+ frames: [
1070
+ "⢄",
1071
+ "⢂",
1072
+ "⢁",
1073
+ "⡁",
1074
+ "⡈",
1075
+ "⡐",
1076
+ "⡠"
1077
+ ]
1078
+ },
1079
+ dots11: {
1080
+ interval: 100,
1081
+ frames: [
1082
+ "⠁",
1083
+ "⠂",
1084
+ "⠄",
1085
+ "⡀",
1086
+ "⢀",
1087
+ "⠠",
1088
+ "⠐",
1089
+ "⠈"
1090
+ ]
1091
+ },
1092
+ dots12: {
1093
+ interval: 80,
1094
+ frames: [
1095
+ "⢀⠀",
1096
+ "⡀⠀",
1097
+ "⠄⠀",
1098
+ "⢂⠀",
1099
+ "⡂⠀",
1100
+ "⠅⠀",
1101
+ "⢃⠀",
1102
+ "⡃⠀",
1103
+ "⠍⠀",
1104
+ "⢋⠀",
1105
+ "⡋⠀",
1106
+ "⠍⠁",
1107
+ "⢋⠁",
1108
+ "⡋⠁",
1109
+ "⠍⠉",
1110
+ "⠋⠉",
1111
+ "⠋⠉",
1112
+ "⠉⠙",
1113
+ "⠉⠙",
1114
+ "⠉⠩",
1115
+ "⠈⢙",
1116
+ "⠈⡙",
1117
+ "⢈⠩",
1118
+ "⡀⢙",
1119
+ "⠄⡙",
1120
+ "⢂⠩",
1121
+ "⡂⢘",
1122
+ "⠅⡘",
1123
+ "⢃⠨",
1124
+ "⡃⢐",
1125
+ "⠍⡐",
1126
+ "⢋⠠",
1127
+ "⡋⢀",
1128
+ "⠍⡁",
1129
+ "⢋⠁",
1130
+ "⡋⠁",
1131
+ "⠍⠉",
1132
+ "⠋⠉",
1133
+ "⠋⠉",
1134
+ "⠉⠙",
1135
+ "⠉⠙",
1136
+ "⠉⠩",
1137
+ "⠈⢙",
1138
+ "⠈⡙",
1139
+ "⠈⠩",
1140
+ "⠀⢙",
1141
+ "⠀⡙",
1142
+ "⠀⠩",
1143
+ "⠀⢘",
1144
+ "⠀⡘",
1145
+ "⠀⠨",
1146
+ "⠀⢐",
1147
+ "⠀⡐",
1148
+ "⠀⠠",
1149
+ "⠀⢀",
1150
+ "⠀⡀"
1151
+ ]
1152
+ },
1153
+ dots13: {
1154
+ interval: 80,
1155
+ frames: [
1156
+ "⣼",
1157
+ "⣹",
1158
+ "⢻",
1159
+ "⠿",
1160
+ "⡟",
1161
+ "⣏",
1162
+ "⣧",
1163
+ "⣶"
1164
+ ]
1165
+ },
1166
+ dots8Bit: {
1167
+ interval: 80,
1168
+ frames: [
1169
+ "⠀",
1170
+ "⠁",
1171
+ "⠂",
1172
+ "⠃",
1173
+ "⠄",
1174
+ "⠅",
1175
+ "⠆",
1176
+ "⠇",
1177
+ "⡀",
1178
+ "⡁",
1179
+ "⡂",
1180
+ "⡃",
1181
+ "⡄",
1182
+ "⡅",
1183
+ "⡆",
1184
+ "⡇",
1185
+ "⠈",
1186
+ "⠉",
1187
+ "⠊",
1188
+ "⠋",
1189
+ "⠌",
1190
+ "⠍",
1191
+ "⠎",
1192
+ "⠏",
1193
+ "⡈",
1194
+ "⡉",
1195
+ "⡊",
1196
+ "⡋",
1197
+ "⡌",
1198
+ "⡍",
1199
+ "⡎",
1200
+ "⡏",
1201
+ "⠐",
1202
+ "⠑",
1203
+ "⠒",
1204
+ "⠓",
1205
+ "⠔",
1206
+ "⠕",
1207
+ "⠖",
1208
+ "⠗",
1209
+ "⡐",
1210
+ "⡑",
1211
+ "⡒",
1212
+ "⡓",
1213
+ "⡔",
1214
+ "⡕",
1215
+ "⡖",
1216
+ "⡗",
1217
+ "⠘",
1218
+ "⠙",
1219
+ "⠚",
1220
+ "⠛",
1221
+ "⠜",
1222
+ "⠝",
1223
+ "⠞",
1224
+ "⠟",
1225
+ "⡘",
1226
+ "⡙",
1227
+ "⡚",
1228
+ "⡛",
1229
+ "⡜",
1230
+ "⡝",
1231
+ "⡞",
1232
+ "⡟",
1233
+ "⠠",
1234
+ "⠡",
1235
+ "⠢",
1236
+ "⠣",
1237
+ "⠤",
1238
+ "⠥",
1239
+ "⠦",
1240
+ "⠧",
1241
+ "⡠",
1242
+ "⡡",
1243
+ "⡢",
1244
+ "⡣",
1245
+ "⡤",
1246
+ "⡥",
1247
+ "⡦",
1248
+ "⡧",
1249
+ "⠨",
1250
+ "⠩",
1251
+ "⠪",
1252
+ "⠫",
1253
+ "⠬",
1254
+ "⠭",
1255
+ "⠮",
1256
+ "⠯",
1257
+ "⡨",
1258
+ "⡩",
1259
+ "⡪",
1260
+ "⡫",
1261
+ "⡬",
1262
+ "⡭",
1263
+ "⡮",
1264
+ "⡯",
1265
+ "⠰",
1266
+ "⠱",
1267
+ "⠲",
1268
+ "⠳",
1269
+ "⠴",
1270
+ "⠵",
1271
+ "⠶",
1272
+ "⠷",
1273
+ "⡰",
1274
+ "⡱",
1275
+ "⡲",
1276
+ "⡳",
1277
+ "⡴",
1278
+ "⡵",
1279
+ "⡶",
1280
+ "⡷",
1281
+ "⠸",
1282
+ "⠹",
1283
+ "⠺",
1284
+ "⠻",
1285
+ "⠼",
1286
+ "⠽",
1287
+ "⠾",
1288
+ "⠿",
1289
+ "⡸",
1290
+ "⡹",
1291
+ "⡺",
1292
+ "⡻",
1293
+ "⡼",
1294
+ "⡽",
1295
+ "⡾",
1296
+ "⡿",
1297
+ "⢀",
1298
+ "⢁",
1299
+ "⢂",
1300
+ "⢃",
1301
+ "⢄",
1302
+ "⢅",
1303
+ "⢆",
1304
+ "⢇",
1305
+ "⣀",
1306
+ "⣁",
1307
+ "⣂",
1308
+ "⣃",
1309
+ "⣄",
1310
+ "⣅",
1311
+ "⣆",
1312
+ "⣇",
1313
+ "⢈",
1314
+ "⢉",
1315
+ "⢊",
1316
+ "⢋",
1317
+ "⢌",
1318
+ "⢍",
1319
+ "⢎",
1320
+ "⢏",
1321
+ "⣈",
1322
+ "⣉",
1323
+ "⣊",
1324
+ "⣋",
1325
+ "⣌",
1326
+ "⣍",
1327
+ "⣎",
1328
+ "⣏",
1329
+ "⢐",
1330
+ "⢑",
1331
+ "⢒",
1332
+ "⢓",
1333
+ "⢔",
1334
+ "⢕",
1335
+ "⢖",
1336
+ "⢗",
1337
+ "⣐",
1338
+ "⣑",
1339
+ "⣒",
1340
+ "⣓",
1341
+ "⣔",
1342
+ "⣕",
1343
+ "⣖",
1344
+ "⣗",
1345
+ "⢘",
1346
+ "⢙",
1347
+ "⢚",
1348
+ "⢛",
1349
+ "⢜",
1350
+ "⢝",
1351
+ "⢞",
1352
+ "⢟",
1353
+ "⣘",
1354
+ "⣙",
1355
+ "⣚",
1356
+ "⣛",
1357
+ "⣜",
1358
+ "⣝",
1359
+ "⣞",
1360
+ "⣟",
1361
+ "⢠",
1362
+ "⢡",
1363
+ "⢢",
1364
+ "⢣",
1365
+ "⢤",
1366
+ "⢥",
1367
+ "⢦",
1368
+ "⢧",
1369
+ "⣠",
1370
+ "⣡",
1371
+ "⣢",
1372
+ "⣣",
1373
+ "⣤",
1374
+ "⣥",
1375
+ "⣦",
1376
+ "⣧",
1377
+ "⢨",
1378
+ "⢩",
1379
+ "⢪",
1380
+ "⢫",
1381
+ "⢬",
1382
+ "⢭",
1383
+ "⢮",
1384
+ "⢯",
1385
+ "⣨",
1386
+ "⣩",
1387
+ "⣪",
1388
+ "⣫",
1389
+ "⣬",
1390
+ "⣭",
1391
+ "⣮",
1392
+ "⣯",
1393
+ "⢰",
1394
+ "⢱",
1395
+ "⢲",
1396
+ "⢳",
1397
+ "⢴",
1398
+ "⢵",
1399
+ "⢶",
1400
+ "⢷",
1401
+ "⣰",
1402
+ "⣱",
1403
+ "⣲",
1404
+ "⣳",
1405
+ "⣴",
1406
+ "⣵",
1407
+ "⣶",
1408
+ "⣷",
1409
+ "⢸",
1410
+ "⢹",
1411
+ "⢺",
1412
+ "⢻",
1413
+ "⢼",
1414
+ "⢽",
1415
+ "⢾",
1416
+ "⢿",
1417
+ "⣸",
1418
+ "⣹",
1419
+ "⣺",
1420
+ "⣻",
1421
+ "⣼",
1422
+ "⣽",
1423
+ "⣾",
1424
+ "⣿"
1425
+ ]
1426
+ },
1427
+ sand: {
1428
+ interval: 80,
1429
+ frames: [
1430
+ "⠁",
1431
+ "⠂",
1432
+ "⠄",
1433
+ "⡀",
1434
+ "⡈",
1435
+ "⡐",
1436
+ "⡠",
1437
+ "⣀",
1438
+ "⣁",
1439
+ "⣂",
1440
+ "⣄",
1441
+ "⣌",
1442
+ "⣔",
1443
+ "⣤",
1444
+ "⣥",
1445
+ "⣦",
1446
+ "⣮",
1447
+ "⣶",
1448
+ "⣷",
1449
+ "⣿",
1450
+ "⡿",
1451
+ "⠿",
1452
+ "⢟",
1453
+ "⠟",
1454
+ "⡛",
1455
+ "⠛",
1456
+ "⠫",
1457
+ "⢋",
1458
+ "⠋",
1459
+ "⠍",
1460
+ "⡉",
1461
+ "⠉",
1462
+ "⠑",
1463
+ "⠡",
1464
+ "⢁"
1465
+ ]
1466
+ },
1467
+ line: {
1468
+ interval: 130,
1469
+ frames: [
1470
+ "-",
1471
+ "\\",
1472
+ "|",
1473
+ "/"
1474
+ ]
1475
+ },
1476
+ line2: {
1477
+ interval: 100,
1478
+ frames: [
1479
+ "⠂",
1480
+ "-",
1481
+ "–",
1482
+ "—",
1483
+ "–",
1484
+ "-"
1485
+ ]
1486
+ },
1487
+ pipe: {
1488
+ interval: 100,
1489
+ frames: [
1490
+ "┤",
1491
+ "┘",
1492
+ "┴",
1493
+ "└",
1494
+ "├",
1495
+ "┌",
1496
+ "┬",
1497
+ "┐"
1498
+ ]
1499
+ },
1500
+ simpleDots: {
1501
+ interval: 400,
1502
+ frames: [
1503
+ ". ",
1504
+ ".. ",
1505
+ "...",
1506
+ " "
1507
+ ]
1508
+ },
1509
+ simpleDotsScrolling: {
1510
+ interval: 200,
1511
+ frames: [
1512
+ ". ",
1513
+ ".. ",
1514
+ "...",
1515
+ " ..",
1516
+ " .",
1517
+ " "
1518
+ ]
1519
+ },
1520
+ star: {
1521
+ interval: 70,
1522
+ frames: [
1523
+ "✶",
1524
+ "✸",
1525
+ "✹",
1526
+ "✺",
1527
+ "✹",
1528
+ "✷"
1529
+ ]
1530
+ },
1531
+ star2: {
1532
+ interval: 80,
1533
+ frames: [
1534
+ "+",
1535
+ "x",
1536
+ "*"
1537
+ ]
1538
+ },
1539
+ flip: {
1540
+ interval: 70,
1541
+ frames: [
1542
+ "_",
1543
+ "_",
1544
+ "_",
1545
+ "-",
1546
+ "`",
1547
+ "`",
1548
+ "'",
1549
+ "´",
1550
+ "-",
1551
+ "_",
1552
+ "_",
1553
+ "_"
1554
+ ]
1555
+ },
1556
+ hamburger: {
1557
+ interval: 100,
1558
+ frames: [
1559
+ "☱",
1560
+ "☲",
1561
+ "☴"
1562
+ ]
1563
+ },
1564
+ growVertical: {
1565
+ interval: 120,
1566
+ frames: [
1567
+ "▁",
1568
+ "▃",
1569
+ "▄",
1570
+ "▅",
1571
+ "▆",
1572
+ "▇",
1573
+ "▆",
1574
+ "▅",
1575
+ "▄",
1576
+ "▃"
1577
+ ]
1578
+ },
1579
+ growHorizontal: {
1580
+ interval: 120,
1581
+ frames: [
1582
+ "▏",
1583
+ "▎",
1584
+ "▍",
1585
+ "▌",
1586
+ "▋",
1587
+ "▊",
1588
+ "▉",
1589
+ "▊",
1590
+ "▋",
1591
+ "▌",
1592
+ "▍",
1593
+ "▎"
1594
+ ]
1595
+ },
1596
+ balloon: {
1597
+ interval: 140,
1598
+ frames: [
1599
+ " ",
1600
+ ".",
1601
+ "o",
1602
+ "O",
1603
+ "@",
1604
+ "*",
1605
+ " "
1606
+ ]
1607
+ },
1608
+ balloon2: {
1609
+ interval: 120,
1610
+ frames: [
1611
+ ".",
1612
+ "o",
1613
+ "O",
1614
+ "°",
1615
+ "O",
1616
+ "o",
1617
+ "."
1618
+ ]
1619
+ },
1620
+ noise: {
1621
+ interval: 100,
1622
+ frames: [
1623
+ "▓",
1624
+ "▒",
1625
+ "░"
1626
+ ]
1627
+ },
1628
+ bounce: {
1629
+ interval: 120,
1630
+ frames: [
1631
+ "⠁",
1632
+ "⠂",
1633
+ "⠄",
1634
+ "⠂"
1635
+ ]
1636
+ },
1637
+ boxBounce: {
1638
+ interval: 120,
1639
+ frames: [
1640
+ "▖",
1641
+ "▘",
1642
+ "▝",
1643
+ "▗"
1644
+ ]
1645
+ },
1646
+ boxBounce2: {
1647
+ interval: 100,
1648
+ frames: [
1649
+ "▌",
1650
+ "▀",
1651
+ "▐",
1652
+ "▄"
1653
+ ]
1654
+ },
1655
+ triangle: {
1656
+ interval: 50,
1657
+ frames: [
1658
+ "◢",
1659
+ "◣",
1660
+ "◤",
1661
+ "◥"
1662
+ ]
1663
+ },
1664
+ binary: {
1665
+ interval: 80,
1666
+ frames: [
1667
+ "010010",
1668
+ "001100",
1669
+ "100101",
1670
+ "111010",
1671
+ "111101",
1672
+ "010111",
1673
+ "101011",
1674
+ "111000",
1675
+ "110011",
1676
+ "110101"
1677
+ ]
1678
+ },
1679
+ arc: {
1680
+ interval: 100,
1681
+ frames: [
1682
+ "◜",
1683
+ "◠",
1684
+ "◝",
1685
+ "◞",
1686
+ "◡",
1687
+ "◟"
1688
+ ]
1689
+ },
1690
+ circle: {
1691
+ interval: 120,
1692
+ frames: [
1693
+ "◡",
1694
+ "⊙",
1695
+ "◠"
1696
+ ]
1697
+ },
1698
+ squareCorners: {
1699
+ interval: 180,
1700
+ frames: [
1701
+ "◰",
1702
+ "◳",
1703
+ "◲",
1704
+ "◱"
1705
+ ]
1706
+ },
1707
+ circleQuarters: {
1708
+ interval: 120,
1709
+ frames: [
1710
+ "◴",
1711
+ "◷",
1712
+ "◶",
1713
+ "◵"
1714
+ ]
1715
+ },
1716
+ circleHalves: {
1717
+ interval: 50,
1718
+ frames: [
1719
+ "◐",
1720
+ "◓",
1721
+ "◑",
1722
+ "◒"
1723
+ ]
1724
+ },
1725
+ squish: {
1726
+ interval: 100,
1727
+ frames: [
1728
+ "╫",
1729
+ "╪"
1730
+ ]
1731
+ },
1732
+ toggle: {
1733
+ interval: 250,
1734
+ frames: [
1735
+ "⊶",
1736
+ "⊷"
1737
+ ]
1738
+ },
1739
+ toggle2: {
1740
+ interval: 80,
1741
+ frames: [
1742
+ "▫",
1743
+ "▪"
1744
+ ]
1745
+ },
1746
+ toggle3: {
1747
+ interval: 120,
1748
+ frames: [
1749
+ "□",
1750
+ "■"
1751
+ ]
1752
+ },
1753
+ toggle4: {
1754
+ interval: 100,
1755
+ frames: [
1756
+ "■",
1757
+ "□",
1758
+ "▪",
1759
+ "▫"
1760
+ ]
1761
+ },
1762
+ toggle5: {
1763
+ interval: 100,
1764
+ frames: [
1765
+ "▮",
1766
+ "▯"
1767
+ ]
1768
+ },
1769
+ toggle6: {
1770
+ interval: 300,
1771
+ frames: [
1772
+ "ဝ",
1773
+ "၀"
1774
+ ]
1775
+ },
1776
+ toggle7: {
1777
+ interval: 80,
1778
+ frames: [
1779
+ "⦾",
1780
+ "⦿"
1781
+ ]
1782
+ },
1783
+ toggle8: {
1784
+ interval: 100,
1785
+ frames: [
1786
+ "◍",
1787
+ "◌"
1788
+ ]
1789
+ },
1790
+ toggle9: {
1791
+ interval: 100,
1792
+ frames: [
1793
+ "◉",
1794
+ "◎"
1795
+ ]
1796
+ },
1797
+ toggle10: {
1798
+ interval: 100,
1799
+ frames: [
1800
+ "㊂",
1801
+ "㊀",
1802
+ "㊁"
1803
+ ]
1804
+ },
1805
+ toggle11: {
1806
+ interval: 50,
1807
+ frames: [
1808
+ "⧇",
1809
+ "⧆"
1810
+ ]
1811
+ },
1812
+ toggle12: {
1813
+ interval: 120,
1814
+ frames: [
1815
+ "☗",
1816
+ "☖"
1817
+ ]
1818
+ },
1819
+ toggle13: {
1820
+ interval: 80,
1821
+ frames: [
1822
+ "=",
1823
+ "*",
1824
+ "-"
1825
+ ]
1826
+ },
1827
+ arrow: {
1828
+ interval: 100,
1829
+ frames: [
1830
+ "←",
1831
+ "↖",
1832
+ "↑",
1833
+ "↗",
1834
+ "→",
1835
+ "↘",
1836
+ "↓",
1837
+ "↙"
1838
+ ]
1839
+ },
1840
+ arrow2: {
1841
+ interval: 80,
1842
+ frames: [
1843
+ "⬆️ ",
1844
+ "↗️ ",
1845
+ "➡️ ",
1846
+ "↘️ ",
1847
+ "⬇️ ",
1848
+ "↙️ ",
1849
+ "⬅️ ",
1850
+ "↖️ "
1851
+ ]
1852
+ },
1853
+ arrow3: {
1854
+ interval: 120,
1855
+ frames: [
1856
+ "▹▹▹▹▹",
1857
+ "▸▹▹▹▹",
1858
+ "▹▸▹▹▹",
1859
+ "▹▹▸▹▹",
1860
+ "▹▹▹▸▹",
1861
+ "▹▹▹▹▸"
1862
+ ]
1863
+ },
1864
+ bouncingBar: {
1865
+ interval: 80,
1866
+ frames: [
1867
+ "[ ]",
1868
+ "[= ]",
1869
+ "[== ]",
1870
+ "[=== ]",
1871
+ "[====]",
1872
+ "[ ===]",
1873
+ "[ ==]",
1874
+ "[ =]",
1875
+ "[ ]",
1876
+ "[ =]",
1877
+ "[ ==]",
1878
+ "[ ===]",
1879
+ "[====]",
1880
+ "[=== ]",
1881
+ "[== ]",
1882
+ "[= ]"
1883
+ ]
1884
+ },
1885
+ bouncingBall: {
1886
+ interval: 80,
1887
+ frames: [
1888
+ "( ● )",
1889
+ "( ● )",
1890
+ "( ● )",
1891
+ "( ● )",
1892
+ "( ●)",
1893
+ "( ● )",
1894
+ "( ● )",
1895
+ "( ● )",
1896
+ "( ● )",
1897
+ "(● )"
1898
+ ]
1899
+ },
1900
+ smiley: {
1901
+ interval: 200,
1902
+ frames: [
1903
+ "😄 ",
1904
+ "😝 "
1905
+ ]
1906
+ },
1907
+ monkey: {
1908
+ interval: 300,
1909
+ frames: [
1910
+ "🙈 ",
1911
+ "🙈 ",
1912
+ "🙉 ",
1913
+ "🙊 "
1914
+ ]
1915
+ },
1916
+ hearts: {
1917
+ interval: 100,
1918
+ frames: [
1919
+ "💛 ",
1920
+ "💙 ",
1921
+ "💜 ",
1922
+ "💚 ",
1923
+ "❤️ "
1924
+ ]
1925
+ },
1926
+ clock: {
1927
+ interval: 100,
1928
+ frames: [
1929
+ "🕛 ",
1930
+ "🕐 ",
1931
+ "🕑 ",
1932
+ "🕒 ",
1933
+ "🕓 ",
1934
+ "🕔 ",
1935
+ "🕕 ",
1936
+ "🕖 ",
1937
+ "🕗 ",
1938
+ "🕘 ",
1939
+ "🕙 ",
1940
+ "🕚 "
1941
+ ]
1942
+ },
1943
+ earth: {
1944
+ interval: 180,
1945
+ frames: [
1946
+ "🌍 ",
1947
+ "🌎 ",
1948
+ "🌏 "
1949
+ ]
1950
+ },
1951
+ material: {
1952
+ interval: 17,
1953
+ frames: [
1954
+ "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1955
+ "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1956
+ "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1957
+ "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1958
+ "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1959
+ "██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
1960
+ "███████▁▁▁▁▁▁▁▁▁▁▁▁▁",
1961
+ "████████▁▁▁▁▁▁▁▁▁▁▁▁",
1962
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
1963
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
1964
+ "██████████▁▁▁▁▁▁▁▁▁▁",
1965
+ "███████████▁▁▁▁▁▁▁▁▁",
1966
+ "█████████████▁▁▁▁▁▁▁",
1967
+ "██████████████▁▁▁▁▁▁",
1968
+ "██████████████▁▁▁▁▁▁",
1969
+ "▁██████████████▁▁▁▁▁",
1970
+ "▁██████████████▁▁▁▁▁",
1971
+ "▁██████████████▁▁▁▁▁",
1972
+ "▁▁██████████████▁▁▁▁",
1973
+ "▁▁▁██████████████▁▁▁",
1974
+ "▁▁▁▁█████████████▁▁▁",
1975
+ "▁▁▁▁██████████████▁▁",
1976
+ "▁▁▁▁██████████████▁▁",
1977
+ "▁▁▁▁▁██████████████▁",
1978
+ "▁▁▁▁▁██████████████▁",
1979
+ "▁▁▁▁▁██████████████▁",
1980
+ "▁▁▁▁▁▁██████████████",
1981
+ "▁▁▁▁▁▁██████████████",
1982
+ "▁▁▁▁▁▁▁█████████████",
1983
+ "▁▁▁▁▁▁▁█████████████",
1984
+ "▁▁▁▁▁▁▁▁████████████",
1985
+ "▁▁▁▁▁▁▁▁████████████",
1986
+ "▁▁▁▁▁▁▁▁▁███████████",
1987
+ "▁▁▁▁▁▁▁▁▁███████████",
1988
+ "▁▁▁▁▁▁▁▁▁▁██████████",
1989
+ "▁▁▁▁▁▁▁▁▁▁██████████",
1990
+ "▁▁▁▁▁▁▁▁▁▁▁▁████████",
1991
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
1992
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████",
1993
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1994
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
1995
+ "█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
1996
+ "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1997
+ "██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1998
+ "███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
1999
+ "████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
2000
+ "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2001
+ "█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2002
+ "██████▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2003
+ "████████▁▁▁▁▁▁▁▁▁▁▁▁",
2004
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
2005
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
2006
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
2007
+ "█████████▁▁▁▁▁▁▁▁▁▁▁",
2008
+ "███████████▁▁▁▁▁▁▁▁▁",
2009
+ "████████████▁▁▁▁▁▁▁▁",
2010
+ "████████████▁▁▁▁▁▁▁▁",
2011
+ "██████████████▁▁▁▁▁▁",
2012
+ "██████████████▁▁▁▁▁▁",
2013
+ "▁██████████████▁▁▁▁▁",
2014
+ "▁██████████████▁▁▁▁▁",
2015
+ "▁▁▁█████████████▁▁▁▁",
2016
+ "▁▁▁▁▁████████████▁▁▁",
2017
+ "▁▁▁▁▁████████████▁▁▁",
2018
+ "▁▁▁▁▁▁███████████▁▁▁",
2019
+ "▁▁▁▁▁▁▁▁█████████▁▁▁",
2020
+ "▁▁▁▁▁▁▁▁█████████▁▁▁",
2021
+ "▁▁▁▁▁▁▁▁▁█████████▁▁",
2022
+ "▁▁▁▁▁▁▁▁▁█████████▁▁",
2023
+ "▁▁▁▁▁▁▁▁▁▁█████████▁",
2024
+ "▁▁▁▁▁▁▁▁▁▁▁████████▁",
2025
+ "▁▁▁▁▁▁▁▁▁▁▁████████▁",
2026
+ "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
2027
+ "▁▁▁▁▁▁▁▁▁▁▁▁███████▁",
2028
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
2029
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
2030
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
2031
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
2032
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
2033
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
2034
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
2035
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
2036
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
2037
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
2038
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
2039
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2040
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2041
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
2042
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
2043
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
2044
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
2045
+ "▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁"
2046
+ ]
2047
+ },
2048
+ moon: {
2049
+ interval: 80,
2050
+ frames: [
2051
+ "🌑 ",
2052
+ "🌒 ",
2053
+ "🌓 ",
2054
+ "🌔 ",
2055
+ "🌕 ",
2056
+ "🌖 ",
2057
+ "🌗 ",
2058
+ "🌘 "
2059
+ ]
2060
+ },
2061
+ runner: {
2062
+ interval: 140,
2063
+ frames: [
2064
+ "🚶 ",
2065
+ "🏃 "
2066
+ ]
2067
+ },
2068
+ pong: {
2069
+ interval: 80,
2070
+ frames: [
2071
+ "▐⠂ ▌",
2072
+ "▐⠈ ▌",
2073
+ "▐ ⠂ ▌",
2074
+ "▐ ⠠ ▌",
2075
+ "▐ ⡀ ▌",
2076
+ "▐ ⠠ ▌",
2077
+ "▐ ⠂ ▌",
2078
+ "▐ ⠈ ▌",
2079
+ "▐ ⠂ ▌",
2080
+ "▐ ⠠ ▌",
2081
+ "▐ ⡀ ▌",
2082
+ "▐ ⠠ ▌",
2083
+ "▐ ⠂ ▌",
2084
+ "▐ ⠈ ▌",
2085
+ "▐ ⠂▌",
2086
+ "▐ ⠠▌",
2087
+ "▐ ⡀▌",
2088
+ "▐ ⠠ ▌",
2089
+ "▐ ⠂ ▌",
2090
+ "▐ ⠈ ▌",
2091
+ "▐ ⠂ ▌",
2092
+ "▐ ⠠ ▌",
2093
+ "▐ ⡀ ▌",
2094
+ "▐ ⠠ ▌",
2095
+ "▐ ⠂ ▌",
2096
+ "▐ ⠈ ▌",
2097
+ "▐ ⠂ ▌",
2098
+ "▐ ⠠ ▌",
2099
+ "▐ ⡀ ▌",
2100
+ "▐⠠ ▌"
2101
+ ]
2102
+ },
2103
+ shark: {
2104
+ interval: 120,
2105
+ frames: [
2106
+ "▐|\\____________▌",
2107
+ "▐_|\\___________▌",
2108
+ "▐__|\\__________▌",
2109
+ "▐___|\\_________▌",
2110
+ "▐____|\\________▌",
2111
+ "▐_____|\\_______▌",
2112
+ "▐______|\\______▌",
2113
+ "▐_______|\\_____▌",
2114
+ "▐________|\\____▌",
2115
+ "▐_________|\\___▌",
2116
+ "▐__________|\\__▌",
2117
+ "▐___________|\\_▌",
2118
+ "▐____________|\\▌",
2119
+ "▐____________/|▌",
2120
+ "▐___________/|_▌",
2121
+ "▐__________/|__▌",
2122
+ "▐_________/|___▌",
2123
+ "▐________/|____▌",
2124
+ "▐_______/|_____▌",
2125
+ "▐______/|______▌",
2126
+ "▐_____/|_______▌",
2127
+ "▐____/|________▌",
2128
+ "▐___/|_________▌",
2129
+ "▐__/|__________▌",
2130
+ "▐_/|___________▌",
2131
+ "▐/|____________▌"
2132
+ ]
2133
+ },
2134
+ dqpb: {
2135
+ interval: 100,
2136
+ frames: [
2137
+ "d",
2138
+ "q",
2139
+ "p",
2140
+ "b"
2141
+ ]
2142
+ },
2143
+ weather: {
2144
+ interval: 100,
2145
+ frames: [
2146
+ "☀️ ",
2147
+ "☀️ ",
2148
+ "☀️ ",
2149
+ "🌤 ",
2150
+ "⛅️ ",
2151
+ "🌥 ",
2152
+ "☁️ ",
2153
+ "🌧 ",
2154
+ "🌨 ",
2155
+ "🌧 ",
2156
+ "🌨 ",
2157
+ "🌧 ",
2158
+ "🌨 ",
2159
+ "⛈ ",
2160
+ "🌨 ",
2161
+ "🌧 ",
2162
+ "🌨 ",
2163
+ "☁️ ",
2164
+ "🌥 ",
2165
+ "⛅️ ",
2166
+ "🌤 ",
2167
+ "☀️ ",
2168
+ "☀️ "
2169
+ ]
2170
+ },
2171
+ christmas: {
2172
+ interval: 400,
2173
+ frames: [
2174
+ "🌲",
2175
+ "🎄"
2176
+ ]
2177
+ },
2178
+ grenade: {
2179
+ interval: 80,
2180
+ frames: [
2181
+ "، ",
2182
+ "′ ",
2183
+ " ´ ",
2184
+ " ‾ ",
2185
+ " ⸌",
2186
+ " ⸊",
2187
+ " |",
2188
+ " ⁎",
2189
+ " ⁕",
2190
+ " ෴ ",
2191
+ " ⁓",
2192
+ " ",
2193
+ " ",
2194
+ " "
2195
+ ]
2196
+ },
2197
+ point: {
2198
+ interval: 125,
2199
+ frames: [
2200
+ "∙∙∙",
2201
+ "●∙∙",
2202
+ "∙●∙",
2203
+ "∙∙●",
2204
+ "∙∙∙"
2205
+ ]
2206
+ },
2207
+ layer: {
2208
+ interval: 150,
2209
+ frames: [
2210
+ "-",
2211
+ "=",
2212
+ "≡"
2213
+ ]
2214
+ },
2215
+ betaWave: {
2216
+ interval: 80,
2217
+ frames: [
2218
+ "ρββββββ",
2219
+ "βρβββββ",
2220
+ "ββρββββ",
2221
+ "βββρβββ",
2222
+ "ββββρββ",
2223
+ "βββββρβ",
2224
+ "ββββββρ"
2225
+ ]
2226
+ },
2227
+ fingerDance: {
2228
+ interval: 160,
2229
+ frames: [
2230
+ "🤘 ",
2231
+ "🤟 ",
2232
+ "🖖 ",
2233
+ "✋ ",
2234
+ "🤚 ",
2235
+ "👆 "
2236
+ ]
2237
+ },
2238
+ fistBump: {
2239
+ interval: 80,
2240
+ frames: [
2241
+ "🤜    🤛 ",
2242
+ "🤜    🤛 ",
2243
+ "🤜    🤛 ",
2244
+ " 🤜  🤛  ",
2245
+ "  🤜🤛   ",
2246
+ " 🤜✨🤛   ",
2247
+ "🤜 ✨ 🤛  "
2248
+ ]
2249
+ },
2250
+ soccerHeader: {
2251
+ interval: 80,
2252
+ frames: [
2253
+ " 🧑⚽️ 🧑 ",
2254
+ "🧑 ⚽️ 🧑 ",
2255
+ "🧑 ⚽️ 🧑 ",
2256
+ "🧑 ⚽️ 🧑 ",
2257
+ "🧑 ⚽️ 🧑 ",
2258
+ "🧑 ⚽️ 🧑 ",
2259
+ "🧑 ⚽️🧑 ",
2260
+ "🧑 ⚽️ 🧑 ",
2261
+ "🧑 ⚽️ 🧑 ",
2262
+ "🧑 ⚽️ 🧑 ",
2263
+ "🧑 ⚽️ 🧑 ",
2264
+ "🧑 ⚽️ 🧑 "
2265
+ ]
2266
+ },
2267
+ mindblown: {
2268
+ interval: 160,
2269
+ frames: [
2270
+ "😐 ",
2271
+ "😐 ",
2272
+ "😮 ",
2273
+ "😮 ",
2274
+ "😦 ",
2275
+ "😦 ",
2276
+ "😧 ",
2277
+ "😧 ",
2278
+ "🤯 ",
2279
+ "💥 ",
2280
+ "✨ ",
2281
+ "  ",
2282
+ "  ",
2283
+ "  "
2284
+ ]
2285
+ },
2286
+ speaker: {
2287
+ interval: 160,
2288
+ frames: [
2289
+ "🔈 ",
2290
+ "🔉 ",
2291
+ "🔊 ",
2292
+ "🔉 "
2293
+ ]
2294
+ },
2295
+ orangePulse: {
2296
+ interval: 100,
2297
+ frames: [
2298
+ "🔸 ",
2299
+ "🔶 ",
2300
+ "🟠 ",
2301
+ "🟠 ",
2302
+ "🔶 "
2303
+ ]
2304
+ },
2305
+ bluePulse: {
2306
+ interval: 100,
2307
+ frames: [
2308
+ "🔹 ",
2309
+ "🔷 ",
2310
+ "🔵 ",
2311
+ "🔵 ",
2312
+ "🔷 "
2313
+ ]
2314
+ },
2315
+ orangeBluePulse: {
2316
+ interval: 100,
2317
+ frames: [
2318
+ "🔸 ",
2319
+ "🔶 ",
2320
+ "🟠 ",
2321
+ "🟠 ",
2322
+ "🔶 ",
2323
+ "🔹 ",
2324
+ "🔷 ",
2325
+ "🔵 ",
2326
+ "🔵 ",
2327
+ "🔷 "
2328
+ ]
2329
+ },
2330
+ timeTravel: {
2331
+ interval: 100,
2332
+ frames: [
2333
+ "🕛 ",
2334
+ "🕚 ",
2335
+ "🕙 ",
2336
+ "🕘 ",
2337
+ "🕗 ",
2338
+ "🕖 ",
2339
+ "🕕 ",
2340
+ "🕔 ",
2341
+ "🕓 ",
2342
+ "🕒 ",
2343
+ "🕑 ",
2344
+ "🕐 "
2345
+ ]
2346
+ },
2347
+ aesthetic: {
2348
+ interval: 80,
2349
+ frames: [
2350
+ "▰▱▱▱▱▱▱",
2351
+ "▰▰▱▱▱▱▱",
2352
+ "▰▰▰▱▱▱▱",
2353
+ "▰▰▰▰▱▱▱",
2354
+ "▰▰▰▰▰▱▱",
2355
+ "▰▰▰▰▰▰▱",
2356
+ "▰▰▰▰▰▰▰",
2357
+ "▰▱▱▱▱▱▱"
2358
+ ]
2359
+ },
2360
+ dwarfFortress: {
2361
+ interval: 80,
2362
+ frames: [
2363
+ " ██████£££ ",
2364
+ "☺██████£££ ",
2365
+ "☺██████£££ ",
2366
+ "☺▓█████£££ ",
2367
+ "☺▓█████£££ ",
2368
+ "☺▒█████£££ ",
2369
+ "☺▒█████£££ ",
2370
+ "☺░█████£££ ",
2371
+ "☺░█████£££ ",
2372
+ "☺ █████£££ ",
2373
+ " ☺█████£££ ",
2374
+ " ☺█████£££ ",
2375
+ " ☺▓████£££ ",
2376
+ " ☺▓████£££ ",
2377
+ " ☺▒████£££ ",
2378
+ " ☺▒████£££ ",
2379
+ " ☺░████£££ ",
2380
+ " ☺░████£££ ",
2381
+ " ☺ ████£££ ",
2382
+ " ☺████£££ ",
2383
+ " ☺████£££ ",
2384
+ " ☺▓███£££ ",
2385
+ " ☺▓███£££ ",
2386
+ " ☺▒███£££ ",
2387
+ " ☺▒███£££ ",
2388
+ " ☺░███£££ ",
2389
+ " ☺░███£££ ",
2390
+ " ☺ ███£££ ",
2391
+ " ☺███£££ ",
2392
+ " ☺███£££ ",
2393
+ " ☺▓██£££ ",
2394
+ " ☺▓██£££ ",
2395
+ " ☺▒██£££ ",
2396
+ " ☺▒██£££ ",
2397
+ " ☺░██£££ ",
2398
+ " ☺░██£££ ",
2399
+ " ☺ ██£££ ",
2400
+ " ☺██£££ ",
2401
+ " ☺██£££ ",
2402
+ " ☺▓█£££ ",
2403
+ " ☺▓█£££ ",
2404
+ " ☺▒█£££ ",
2405
+ " ☺▒█£££ ",
2406
+ " ☺░█£££ ",
2407
+ " ☺░█£££ ",
2408
+ " ☺ █£££ ",
2409
+ " ☺█£££ ",
2410
+ " ☺█£££ ",
2411
+ " ☺▓£££ ",
2412
+ " ☺▓£££ ",
2413
+ " ☺▒£££ ",
2414
+ " ☺▒£££ ",
2415
+ " ☺░£££ ",
2416
+ " ☺░£££ ",
2417
+ " ☺ £££ ",
2418
+ " ☺£££ ",
2419
+ " ☺£££ ",
2420
+ " ☺▓££ ",
2421
+ " ☺▓££ ",
2422
+ " ☺▒££ ",
2423
+ " ☺▒££ ",
2424
+ " ☺░££ ",
2425
+ " ☺░££ ",
2426
+ " ☺ ££ ",
2427
+ " ☺££ ",
2428
+ " ☺££ ",
2429
+ " ☺▓£ ",
2430
+ " ☺▓£ ",
2431
+ " ☺▒£ ",
2432
+ " ☺▒£ ",
2433
+ " ☺░£ ",
2434
+ " ☺░£ ",
2435
+ " ☺ £ ",
2436
+ " ☺£ ",
2437
+ " ☺£ ",
2438
+ " ☺▓ ",
2439
+ " ☺▓ ",
2440
+ " ☺▒ ",
2441
+ " ☺▒ ",
2442
+ " ☺░ ",
2443
+ " ☺░ ",
2444
+ " ☺ ",
2445
+ " ☺ &",
2446
+ " ☺ ☼&",
2447
+ " ☺ ☼ &",
2448
+ " ☺☼ &",
2449
+ " ☺☼ & ",
2450
+ " ‼ & ",
2451
+ " ☺ & ",
2452
+ " ‼ & ",
2453
+ " ☺ & ",
2454
+ " ‼ & ",
2455
+ " ☺ & ",
2456
+ "‼ & ",
2457
+ " & ",
2458
+ " & ",
2459
+ " & ░ ",
2460
+ " & ▒ ",
2461
+ " & ▓ ",
2462
+ " & £ ",
2463
+ " & ░£ ",
2464
+ " & ▒£ ",
2465
+ " & ▓£ ",
2466
+ " & ££ ",
2467
+ " & ░££ ",
2468
+ " & ▒££ ",
2469
+ "& ▓££ ",
2470
+ "& £££ ",
2471
+ " ░£££ ",
2472
+ " ▒£££ ",
2473
+ " ▓£££ ",
2474
+ " █£££ ",
2475
+ " ░█£££ ",
2476
+ " ▒█£££ ",
2477
+ " ▓█£££ ",
2478
+ " ██£££ ",
2479
+ " ░██£££ ",
2480
+ " ▒██£££ ",
2481
+ " ▓██£££ ",
2482
+ " ███£££ ",
2483
+ " ░███£££ ",
2484
+ " ▒███£££ ",
2485
+ " ▓███£££ ",
2486
+ " ████£££ ",
2487
+ " ░████£££ ",
2488
+ " ▒████£££ ",
2489
+ " ▓████£££ ",
2490
+ " █████£££ ",
2491
+ " ░█████£££ ",
2492
+ " ▒█████£££ ",
2493
+ " ▓█████£££ ",
2494
+ " ██████£££ ",
2495
+ " ██████£££ "
2496
+ ]
2497
+ }
2498
+ };
2499
+ });
2500
+
2501
+ // node_modules/cli-spinners/index.js
2502
+ var require_cli_spinners = __commonJS((exports, module) => {
2503
+ var spinners = Object.assign({}, require_spinners());
2504
+ var spinnersList = Object.keys(spinners);
2505
+ Object.defineProperty(spinners, "random", {
2506
+ get() {
2507
+ const randomIndex = Math.floor(Math.random() * spinnersList.length);
2508
+ const spinnerName = spinnersList[randomIndex];
2509
+ return spinners[spinnerName];
2510
+ }
2511
+ });
2512
+ module.exports = spinners;
2513
+ });
2514
+
2515
+ // node_modules/log-symbols/node_modules/is-unicode-supported/index.js
2516
+ import process6 from "node:process";
2517
+ function isUnicodeSupported() {
2518
+ if (process6.platform !== "win32") {
2519
+ return process6.env.TERM !== "linux";
2520
+ }
2521
+ return Boolean(process6.env.CI) || Boolean(process6.env.WT_SESSION) || Boolean(process6.env.TERMINUS_SUBLIME) || process6.env.ConEmuTask === "{cmd::Cmder}" || process6.env.TERM_PROGRAM === "Terminus-Sublime" || process6.env.TERM_PROGRAM === "vscode" || process6.env.TERM === "xterm-256color" || process6.env.TERM === "alacritty" || process6.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
2522
+ }
2523
+ var init_is_unicode_supported = () => {};
2524
+
2525
+ // node_modules/log-symbols/index.js
2526
+ var main, fallback, logSymbols, log_symbols_default;
2527
+ var init_log_symbols = __esm(() => {
2528
+ init_source();
2529
+ init_is_unicode_supported();
2530
+ main = {
2531
+ info: source_default.blue("ℹ"),
2532
+ success: source_default.green("✔"),
2533
+ warning: source_default.yellow("⚠"),
2534
+ error: source_default.red("✖")
2535
+ };
2536
+ fallback = {
2537
+ info: source_default.blue("i"),
2538
+ success: source_default.green("√"),
2539
+ warning: source_default.yellow("‼"),
2540
+ error: source_default.red("×")
2541
+ };
2542
+ logSymbols = isUnicodeSupported() ? main : fallback;
2543
+ log_symbols_default = logSymbols;
2544
+ });
2545
+
2546
+ // node_modules/ansi-regex/index.js
2547
+ function ansiRegex({ onlyFirst = false } = {}) {
2548
+ const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
2549
+ const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
2550
+ const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
2551
+ const pattern = `${osc}|${csi}`;
2552
+ return new RegExp(pattern, onlyFirst ? undefined : "g");
2553
+ }
2554
+
2555
+ // node_modules/strip-ansi/index.js
2556
+ function stripAnsi(string) {
2557
+ if (typeof string !== "string") {
2558
+ throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
2559
+ }
2560
+ if (!string.includes("\x1B") && !string.includes("›")) {
2561
+ return string;
2562
+ }
2563
+ return string.replace(regex, "");
2564
+ }
2565
+ var regex;
2566
+ var init_strip_ansi = __esm(() => {
2567
+ regex = ansiRegex();
2568
+ });
2569
+
2570
+ // node_modules/get-east-asian-width/lookup-data.js
2571
+ var ambiguousRanges, fullwidthRanges, halfwidthRanges, narrowRanges, wideRanges;
2572
+ var init_lookup_data = __esm(() => {
2573
+ ambiguousRanges = [161, 161, 164, 164, 167, 168, 170, 170, 173, 174, 176, 180, 182, 186, 188, 191, 198, 198, 208, 208, 215, 216, 222, 225, 230, 230, 232, 234, 236, 237, 240, 240, 242, 243, 247, 250, 252, 252, 254, 254, 257, 257, 273, 273, 275, 275, 283, 283, 294, 295, 299, 299, 305, 307, 312, 312, 319, 322, 324, 324, 328, 331, 333, 333, 338, 339, 358, 359, 363, 363, 462, 462, 464, 464, 466, 466, 468, 468, 470, 470, 472, 472, 474, 474, 476, 476, 593, 593, 609, 609, 708, 708, 711, 711, 713, 715, 717, 717, 720, 720, 728, 731, 733, 733, 735, 735, 768, 879, 913, 929, 931, 937, 945, 961, 963, 969, 1025, 1025, 1040, 1103, 1105, 1105, 8208, 8208, 8211, 8214, 8216, 8217, 8220, 8221, 8224, 8226, 8228, 8231, 8240, 8240, 8242, 8243, 8245, 8245, 8251, 8251, 8254, 8254, 8308, 8308, 8319, 8319, 8321, 8324, 8364, 8364, 8451, 8451, 8453, 8453, 8457, 8457, 8467, 8467, 8470, 8470, 8481, 8482, 8486, 8486, 8491, 8491, 8531, 8532, 8539, 8542, 8544, 8555, 8560, 8569, 8585, 8585, 8592, 8601, 8632, 8633, 8658, 8658, 8660, 8660, 8679, 8679, 8704, 8704, 8706, 8707, 8711, 8712, 8715, 8715, 8719, 8719, 8721, 8721, 8725, 8725, 8730, 8730, 8733, 8736, 8739, 8739, 8741, 8741, 8743, 8748, 8750, 8750, 8756, 8759, 8764, 8765, 8776, 8776, 8780, 8780, 8786, 8786, 8800, 8801, 8804, 8807, 8810, 8811, 8814, 8815, 8834, 8835, 8838, 8839, 8853, 8853, 8857, 8857, 8869, 8869, 8895, 8895, 8978, 8978, 9312, 9449, 9451, 9547, 9552, 9587, 9600, 9615, 9618, 9621, 9632, 9633, 9635, 9641, 9650, 9651, 9654, 9655, 9660, 9661, 9664, 9665, 9670, 9672, 9675, 9675, 9678, 9681, 9698, 9701, 9711, 9711, 9733, 9734, 9737, 9737, 9742, 9743, 9756, 9756, 9758, 9758, 9792, 9792, 9794, 9794, 9824, 9825, 9827, 9829, 9831, 9834, 9836, 9837, 9839, 9839, 9886, 9887, 9919, 9919, 9926, 9933, 9935, 9939, 9941, 9953, 9955, 9955, 9960, 9961, 9963, 9969, 9972, 9972, 9974, 9977, 9979, 9980, 9982, 9983, 10045, 10045, 10102, 10111, 11094, 11097, 12872, 12879, 57344, 63743, 65024, 65039, 65533, 65533, 127232, 127242, 127248, 127277, 127280, 127337, 127344, 127373, 127375, 127376, 127387, 127404, 917760, 917999, 983040, 1048573, 1048576, 1114109];
2574
+ fullwidthRanges = [12288, 12288, 65281, 65376, 65504, 65510];
2575
+ halfwidthRanges = [8361, 8361, 65377, 65470, 65474, 65479, 65482, 65487, 65490, 65495, 65498, 65500, 65512, 65518];
2576
+ narrowRanges = [32, 126, 162, 163, 165, 166, 172, 172, 175, 175, 10214, 10221, 10629, 10630];
2577
+ wideRanges = [4352, 4447, 8986, 8987, 9001, 9002, 9193, 9196, 9200, 9200, 9203, 9203, 9725, 9726, 9748, 9749, 9776, 9783, 9800, 9811, 9855, 9855, 9866, 9871, 9875, 9875, 9889, 9889, 9898, 9899, 9917, 9918, 9924, 9925, 9934, 9934, 9940, 9940, 9962, 9962, 9970, 9971, 9973, 9973, 9978, 9978, 9981, 9981, 9989, 9989, 9994, 9995, 10024, 10024, 10060, 10060, 10062, 10062, 10067, 10069, 10071, 10071, 10133, 10135, 10160, 10160, 10175, 10175, 11035, 11036, 11088, 11088, 11093, 11093, 11904, 11929, 11931, 12019, 12032, 12245, 12272, 12287, 12289, 12350, 12353, 12438, 12441, 12543, 12549, 12591, 12593, 12686, 12688, 12773, 12783, 12830, 12832, 12871, 12880, 42124, 42128, 42182, 43360, 43388, 44032, 55203, 63744, 64255, 65040, 65049, 65072, 65106, 65108, 65126, 65128, 65131, 94176, 94180, 94192, 94198, 94208, 101589, 101631, 101662, 101760, 101874, 110576, 110579, 110581, 110587, 110589, 110590, 110592, 110882, 110898, 110898, 110928, 110930, 110933, 110933, 110948, 110951, 110960, 111355, 119552, 119638, 119648, 119670, 126980, 126980, 127183, 127183, 127374, 127374, 127377, 127386, 127488, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127584, 127589, 127744, 127776, 127789, 127797, 127799, 127868, 127870, 127891, 127904, 127946, 127951, 127955, 127968, 127984, 127988, 127988, 127992, 128062, 128064, 128064, 128066, 128252, 128255, 128317, 128331, 128334, 128336, 128359, 128378, 128378, 128405, 128406, 128420, 128420, 128507, 128591, 128640, 128709, 128716, 128716, 128720, 128722, 128725, 128728, 128732, 128735, 128747, 128748, 128756, 128764, 128992, 129003, 129008, 129008, 129292, 129338, 129340, 129349, 129351, 129535, 129648, 129660, 129664, 129674, 129678, 129734, 129736, 129736, 129741, 129756, 129759, 129770, 129775, 129784, 131072, 196605, 196608, 262141];
2578
+ });
2579
+
2580
+ // node_modules/get-east-asian-width/utilities.js
2581
+ var isInRange = (ranges, codePoint) => {
2582
+ let low = 0;
2583
+ let high = Math.floor(ranges.length / 2) - 1;
2584
+ while (low <= high) {
2585
+ const mid = Math.floor((low + high) / 2);
2586
+ const i = mid * 2;
2587
+ if (codePoint < ranges[i]) {
2588
+ high = mid - 1;
2589
+ } else if (codePoint > ranges[i + 1]) {
2590
+ low = mid + 1;
2591
+ } else {
2592
+ return true;
2593
+ }
2594
+ }
2595
+ return false;
2596
+ };
2597
+
2598
+ // node_modules/get-east-asian-width/lookup.js
2599
+ function findWideFastPathRange(ranges) {
2600
+ let fastPathStart = ranges[0];
2601
+ let fastPathEnd = ranges[1];
2602
+ for (let index = 0;index < ranges.length; index += 2) {
2603
+ const start = ranges[index];
2604
+ const end = ranges[index + 1];
2605
+ if (commonCjkCodePoint >= start && commonCjkCodePoint <= end) {
2606
+ return [start, end];
2607
+ }
2608
+ if (end - start > fastPathEnd - fastPathStart) {
2609
+ fastPathStart = start;
2610
+ fastPathEnd = end;
2611
+ }
2612
+ }
2613
+ return [fastPathStart, fastPathEnd];
2614
+ }
2615
+ var minimumAmbiguousCodePoint, maximumAmbiguousCodePoint, minimumFullWidthCodePoint, maximumFullWidthCodePoint, minimumHalfWidthCodePoint, maximumHalfWidthCodePoint, minimumNarrowCodePoint, maximumNarrowCodePoint, minimumWideCodePoint, maximumWideCodePoint, commonCjkCodePoint = 19968, wideFastPathStart, wideFastPathEnd, isAmbiguous = (codePoint) => {
2616
+ if (codePoint < minimumAmbiguousCodePoint || codePoint > maximumAmbiguousCodePoint) {
2617
+ return false;
2618
+ }
2619
+ return isInRange(ambiguousRanges, codePoint);
2620
+ }, isFullWidth = (codePoint) => {
2621
+ if (codePoint < minimumFullWidthCodePoint || codePoint > maximumFullWidthCodePoint) {
2622
+ return false;
2623
+ }
2624
+ return isInRange(fullwidthRanges, codePoint);
2625
+ }, isWide = (codePoint) => {
2626
+ if (codePoint >= wideFastPathStart && codePoint <= wideFastPathEnd) {
2627
+ return true;
2628
+ }
2629
+ if (codePoint < minimumWideCodePoint || codePoint > maximumWideCodePoint) {
2630
+ return false;
2631
+ }
2632
+ return isInRange(wideRanges, codePoint);
2633
+ };
2634
+ var init_lookup = __esm(() => {
2635
+ init_lookup_data();
2636
+ minimumAmbiguousCodePoint = ambiguousRanges[0];
2637
+ maximumAmbiguousCodePoint = ambiguousRanges.at(-1);
2638
+ minimumFullWidthCodePoint = fullwidthRanges[0];
2639
+ maximumFullWidthCodePoint = fullwidthRanges.at(-1);
2640
+ minimumHalfWidthCodePoint = halfwidthRanges[0];
2641
+ maximumHalfWidthCodePoint = halfwidthRanges.at(-1);
2642
+ minimumNarrowCodePoint = narrowRanges[0];
2643
+ maximumNarrowCodePoint = narrowRanges.at(-1);
2644
+ minimumWideCodePoint = wideRanges[0];
2645
+ maximumWideCodePoint = wideRanges.at(-1);
2646
+ [wideFastPathStart, wideFastPathEnd] = findWideFastPathRange(wideRanges);
2647
+ });
2648
+
2649
+ // node_modules/get-east-asian-width/index.js
2650
+ function validate(codePoint) {
2651
+ if (!Number.isSafeInteger(codePoint)) {
2652
+ throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
2653
+ }
2654
+ }
2655
+ function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
2656
+ validate(codePoint);
2657
+ if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
2658
+ return 2;
2659
+ }
2660
+ return 1;
2661
+ }
2662
+ var init_get_east_asian_width = __esm(() => {
2663
+ init_lookup();
2664
+ init_lookup();
2665
+ });
2666
+
2667
+ // node_modules/emoji-regex/index.js
2668
+ var require_emoji_regex = __commonJS((exports, module) => {
2669
+ module.exports = () => {
2670
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
2671
+ };
2672
+ });
2673
+
2674
+ // node_modules/string-width/index.js
2675
+ function stringWidth(string, options = {}) {
2676
+ if (typeof string !== "string" || string.length === 0) {
2677
+ return 0;
2678
+ }
2679
+ const {
2680
+ ambiguousIsNarrow = true,
2681
+ countAnsiEscapeCodes = false
2682
+ } = options;
2683
+ if (!countAnsiEscapeCodes) {
2684
+ string = stripAnsi(string);
2685
+ }
2686
+ if (string.length === 0) {
2687
+ return 0;
2688
+ }
2689
+ let width = 0;
2690
+ const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
2691
+ for (const { segment: character } of segmenter.segment(string)) {
2692
+ const codePoint = character.codePointAt(0);
2693
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
2694
+ continue;
2695
+ }
2696
+ if (codePoint >= 8203 && codePoint <= 8207 || codePoint === 65279) {
2697
+ continue;
2698
+ }
2699
+ if (codePoint >= 768 && codePoint <= 879 || codePoint >= 6832 && codePoint <= 6911 || codePoint >= 7616 && codePoint <= 7679 || codePoint >= 8400 && codePoint <= 8447 || codePoint >= 65056 && codePoint <= 65071) {
2700
+ continue;
2701
+ }
2702
+ if (codePoint >= 55296 && codePoint <= 57343) {
2703
+ continue;
2704
+ }
2705
+ if (codePoint >= 65024 && codePoint <= 65039) {
2706
+ continue;
2707
+ }
2708
+ if (defaultIgnorableCodePointRegex.test(character)) {
2709
+ continue;
2710
+ }
2711
+ if (import_emoji_regex.default().test(character)) {
2712
+ width += 2;
2713
+ continue;
2714
+ }
2715
+ width += eastAsianWidth(codePoint, eastAsianWidthOptions);
2716
+ }
2717
+ return width;
2718
+ }
2719
+ var import_emoji_regex, segmenter, defaultIgnorableCodePointRegex;
2720
+ var init_string_width = __esm(() => {
2721
+ init_strip_ansi();
2722
+ init_get_east_asian_width();
2723
+ import_emoji_regex = __toESM(require_emoji_regex(), 1);
2724
+ segmenter = new Intl.Segmenter;
2725
+ defaultIgnorableCodePointRegex = /^\p{Default_Ignorable_Code_Point}$/u;
2726
+ });
2727
+
2728
+ // node_modules/is-interactive/index.js
2729
+ function isInteractive({ stream = process.stdout } = {}) {
2730
+ return Boolean(stream && stream.isTTY && process.env.TERM !== "dumb" && !("CI" in process.env));
2731
+ }
2732
+
2733
+ // node_modules/is-unicode-supported/index.js
2734
+ import process7 from "node:process";
2735
+ function isUnicodeSupported2() {
2736
+ const { env: env2 } = process7;
2737
+ const { TERM, TERM_PROGRAM } = env2;
2738
+ if (process7.platform !== "win32") {
2739
+ return TERM !== "linux";
2740
+ }
2741
+ return Boolean(env2.WT_SESSION) || Boolean(env2.TERMINUS_SUBLIME) || env2.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env2.TERMINAL_EMULATOR === "JetBrains-JediTerm";
2742
+ }
2743
+ var init_is_unicode_supported2 = () => {};
2744
+
2745
+ // node_modules/stdin-discarder/index.js
2746
+ import process8 from "node:process";
2747
+
2748
+ class StdinDiscarder {
2749
+ #activeCount = 0;
2750
+ start() {
2751
+ this.#activeCount++;
2752
+ if (this.#activeCount === 1) {
2753
+ this.#realStart();
2754
+ }
2755
+ }
2756
+ stop() {
2757
+ if (this.#activeCount <= 0) {
2758
+ throw new Error("`stop` called more times than `start`");
2759
+ }
2760
+ this.#activeCount--;
2761
+ if (this.#activeCount === 0) {
2762
+ this.#realStop();
2763
+ }
2764
+ }
2765
+ #realStart() {
2766
+ if (process8.platform === "win32" || !process8.stdin.isTTY) {
2767
+ return;
2768
+ }
2769
+ process8.stdin.setRawMode(true);
2770
+ process8.stdin.on("data", this.#handleInput);
2771
+ process8.stdin.resume();
2772
+ }
2773
+ #realStop() {
2774
+ if (!process8.stdin.isTTY) {
2775
+ return;
2776
+ }
2777
+ process8.stdin.off("data", this.#handleInput);
2778
+ process8.stdin.pause();
2779
+ process8.stdin.setRawMode(false);
2780
+ }
2781
+ #handleInput(chunk) {
2782
+ if (chunk[0] === ASCII_ETX_CODE) {
2783
+ process8.emit("SIGINT");
2784
+ }
2785
+ }
2786
+ }
2787
+ var ASCII_ETX_CODE = 3, stdinDiscarder, stdin_discarder_default;
2788
+ var init_stdin_discarder = __esm(() => {
2789
+ stdinDiscarder = new StdinDiscarder;
2790
+ stdin_discarder_default = stdinDiscarder;
2791
+ });
2792
+
2793
+ // node_modules/ora/index.js
2794
+ import process9 from "node:process";
2795
+
2796
+ class Ora {
2797
+ #linesToClear = 0;
2798
+ #isDiscardingStdin = false;
2799
+ #lineCount = 0;
2800
+ #frameIndex = -1;
2801
+ #lastSpinnerFrameTime = 0;
2802
+ #options;
2803
+ #spinner;
2804
+ #stream;
2805
+ #id;
2806
+ #initialInterval;
2807
+ #isEnabled;
2808
+ #isSilent;
2809
+ #indent;
2810
+ #text;
2811
+ #prefixText;
2812
+ #suffixText;
2813
+ color;
2814
+ constructor(options) {
2815
+ if (typeof options === "string") {
2816
+ options = {
2817
+ text: options
2818
+ };
2819
+ }
2820
+ this.#options = {
2821
+ color: "cyan",
2822
+ stream: process9.stderr,
2823
+ discardStdin: true,
2824
+ hideCursor: true,
2825
+ ...options
2826
+ };
2827
+ this.color = this.#options.color;
2828
+ this.spinner = this.#options.spinner;
2829
+ this.#initialInterval = this.#options.interval;
2830
+ this.#stream = this.#options.stream;
2831
+ this.#isEnabled = typeof this.#options.isEnabled === "boolean" ? this.#options.isEnabled : isInteractive({ stream: this.#stream });
2832
+ this.#isSilent = typeof this.#options.isSilent === "boolean" ? this.#options.isSilent : false;
2833
+ this.text = this.#options.text;
2834
+ this.prefixText = this.#options.prefixText;
2835
+ this.suffixText = this.#options.suffixText;
2836
+ this.indent = this.#options.indent;
2837
+ if (process9.env.NODE_ENV === "test") {
2838
+ this._stream = this.#stream;
2839
+ this._isEnabled = this.#isEnabled;
2840
+ Object.defineProperty(this, "_linesToClear", {
2841
+ get() {
2842
+ return this.#linesToClear;
2843
+ },
2844
+ set(newValue) {
2845
+ this.#linesToClear = newValue;
2846
+ }
2847
+ });
2848
+ Object.defineProperty(this, "_frameIndex", {
2849
+ get() {
2850
+ return this.#frameIndex;
2851
+ }
2852
+ });
2853
+ Object.defineProperty(this, "_lineCount", {
2854
+ get() {
2855
+ return this.#lineCount;
2856
+ }
2857
+ });
2858
+ }
2859
+ }
2860
+ get indent() {
2861
+ return this.#indent;
2862
+ }
2863
+ set indent(indent = 0) {
2864
+ if (!(indent >= 0 && Number.isInteger(indent))) {
2865
+ throw new Error("The `indent` option must be an integer from 0 and up");
2866
+ }
2867
+ this.#indent = indent;
2868
+ this.#updateLineCount();
2869
+ }
2870
+ get interval() {
2871
+ return this.#initialInterval ?? this.#spinner.interval ?? 100;
2872
+ }
2873
+ get spinner() {
2874
+ return this.#spinner;
2875
+ }
2876
+ set spinner(spinner) {
2877
+ this.#frameIndex = -1;
2878
+ this.#initialInterval = undefined;
2879
+ if (typeof spinner === "object") {
2880
+ if (spinner.frames === undefined) {
2881
+ throw new Error("The given spinner must have a `frames` property");
2882
+ }
2883
+ this.#spinner = spinner;
2884
+ } else if (!isUnicodeSupported2()) {
2885
+ this.#spinner = import_cli_spinners.default.line;
2886
+ } else if (spinner === undefined) {
2887
+ this.#spinner = import_cli_spinners.default.dots;
2888
+ } else if (spinner !== "default" && import_cli_spinners.default[spinner]) {
2889
+ this.#spinner = import_cli_spinners.default[spinner];
2890
+ } else {
2891
+ throw new Error(`There is no built-in spinner named '${spinner}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);
2892
+ }
2893
+ }
2894
+ get text() {
2895
+ return this.#text;
2896
+ }
2897
+ set text(value = "") {
2898
+ this.#text = value;
2899
+ this.#updateLineCount();
2900
+ }
2901
+ get prefixText() {
2902
+ return this.#prefixText;
2903
+ }
2904
+ set prefixText(value = "") {
2905
+ this.#prefixText = value;
2906
+ this.#updateLineCount();
2907
+ }
2908
+ get suffixText() {
2909
+ return this.#suffixText;
2910
+ }
2911
+ set suffixText(value = "") {
2912
+ this.#suffixText = value;
2913
+ this.#updateLineCount();
2914
+ }
2915
+ get isSpinning() {
2916
+ return this.#id !== undefined;
2917
+ }
2918
+ #getFullPrefixText(prefixText = this.#prefixText, postfix = " ") {
2919
+ if (typeof prefixText === "string" && prefixText !== "") {
2920
+ return prefixText + postfix;
2921
+ }
2922
+ if (typeof prefixText === "function") {
2923
+ return prefixText() + postfix;
2924
+ }
2925
+ return "";
2926
+ }
2927
+ #getFullSuffixText(suffixText = this.#suffixText, prefix = " ") {
2928
+ if (typeof suffixText === "string" && suffixText !== "") {
2929
+ return prefix + suffixText;
2930
+ }
2931
+ if (typeof suffixText === "function") {
2932
+ return prefix + suffixText();
2933
+ }
2934
+ return "";
2935
+ }
2936
+ #updateLineCount() {
2937
+ const columns = this.#stream.columns ?? 80;
2938
+ const fullPrefixText = this.#getFullPrefixText(this.#prefixText, "-");
2939
+ const fullSuffixText = this.#getFullSuffixText(this.#suffixText, "-");
2940
+ const fullText = " ".repeat(this.#indent) + fullPrefixText + "--" + this.#text + "--" + fullSuffixText;
2941
+ this.#lineCount = 0;
2942
+ for (const line of stripAnsi(fullText).split(`
2943
+ `)) {
2944
+ this.#lineCount += Math.max(1, Math.ceil(stringWidth(line, { countAnsiEscapeCodes: true }) / columns));
2945
+ }
2946
+ }
2947
+ get isEnabled() {
2948
+ return this.#isEnabled && !this.#isSilent;
2949
+ }
2950
+ set isEnabled(value) {
2951
+ if (typeof value !== "boolean") {
2952
+ throw new TypeError("The `isEnabled` option must be a boolean");
2953
+ }
2954
+ this.#isEnabled = value;
2955
+ }
2956
+ get isSilent() {
2957
+ return this.#isSilent;
2958
+ }
2959
+ set isSilent(value) {
2960
+ if (typeof value !== "boolean") {
2961
+ throw new TypeError("The `isSilent` option must be a boolean");
2962
+ }
2963
+ this.#isSilent = value;
2964
+ }
2965
+ frame() {
2966
+ const now = Date.now();
2967
+ if (this.#frameIndex === -1 || now - this.#lastSpinnerFrameTime >= this.interval) {
2968
+ this.#frameIndex = ++this.#frameIndex % this.#spinner.frames.length;
2969
+ this.#lastSpinnerFrameTime = now;
2970
+ }
2971
+ const { frames } = this.#spinner;
2972
+ let frame = frames[this.#frameIndex];
2973
+ if (this.color) {
2974
+ frame = source_default[this.color](frame);
2975
+ }
2976
+ const fullPrefixText = typeof this.#prefixText === "string" && this.#prefixText !== "" ? this.#prefixText + " " : "";
2977
+ const fullText = typeof this.text === "string" ? " " + this.text : "";
2978
+ const fullSuffixText = typeof this.#suffixText === "string" && this.#suffixText !== "" ? " " + this.#suffixText : "";
2979
+ return fullPrefixText + frame + fullText + fullSuffixText;
2980
+ }
2981
+ clear() {
2982
+ if (!this.#isEnabled || !this.#stream.isTTY) {
2983
+ return this;
2984
+ }
2985
+ this.#stream.cursorTo(0);
2986
+ for (let index = 0;index < this.#linesToClear; index++) {
2987
+ if (index > 0) {
2988
+ this.#stream.moveCursor(0, -1);
2989
+ }
2990
+ this.#stream.clearLine(1);
2991
+ }
2992
+ if (this.#indent || this.lastIndent !== this.#indent) {
2993
+ this.#stream.cursorTo(this.#indent);
2994
+ }
2995
+ this.lastIndent = this.#indent;
2996
+ this.#linesToClear = 0;
2997
+ return this;
2998
+ }
2999
+ render() {
3000
+ if (this.#isSilent) {
3001
+ return this;
3002
+ }
3003
+ this.clear();
3004
+ this.#stream.write(this.frame());
3005
+ this.#linesToClear = this.#lineCount;
3006
+ return this;
3007
+ }
3008
+ start(text) {
3009
+ if (text) {
3010
+ this.text = text;
3011
+ }
3012
+ if (this.#isSilent) {
3013
+ return this;
3014
+ }
3015
+ if (!this.#isEnabled) {
3016
+ if (this.text) {
3017
+ this.#stream.write(`- ${this.text}
3018
+ `);
3019
+ }
3020
+ return this;
3021
+ }
3022
+ if (this.isSpinning) {
3023
+ return this;
3024
+ }
3025
+ if (this.#options.hideCursor) {
3026
+ cli_cursor_default.hide(this.#stream);
3027
+ }
3028
+ if (this.#options.discardStdin && process9.stdin.isTTY) {
3029
+ this.#isDiscardingStdin = true;
3030
+ stdin_discarder_default.start();
3031
+ }
3032
+ this.render();
3033
+ this.#id = setInterval(this.render.bind(this), this.interval);
3034
+ return this;
3035
+ }
3036
+ stop() {
3037
+ if (!this.#isEnabled) {
3038
+ return this;
3039
+ }
3040
+ clearInterval(this.#id);
3041
+ this.#id = undefined;
3042
+ this.#frameIndex = 0;
3043
+ this.clear();
3044
+ if (this.#options.hideCursor) {
3045
+ cli_cursor_default.show(this.#stream);
3046
+ }
3047
+ if (this.#options.discardStdin && process9.stdin.isTTY && this.#isDiscardingStdin) {
3048
+ stdin_discarder_default.stop();
3049
+ this.#isDiscardingStdin = false;
3050
+ }
3051
+ return this;
3052
+ }
3053
+ succeed(text) {
3054
+ return this.stopAndPersist({ symbol: log_symbols_default.success, text });
3055
+ }
3056
+ fail(text) {
3057
+ return this.stopAndPersist({ symbol: log_symbols_default.error, text });
3058
+ }
3059
+ warn(text) {
3060
+ return this.stopAndPersist({ symbol: log_symbols_default.warning, text });
3061
+ }
3062
+ info(text) {
3063
+ return this.stopAndPersist({ symbol: log_symbols_default.info, text });
3064
+ }
3065
+ stopAndPersist(options = {}) {
3066
+ if (this.#isSilent) {
3067
+ return this;
3068
+ }
3069
+ const prefixText = options.prefixText ?? this.#prefixText;
3070
+ const fullPrefixText = this.#getFullPrefixText(prefixText, " ");
3071
+ const symbolText = options.symbol ?? " ";
3072
+ const text = options.text ?? this.text;
3073
+ const separatorText = symbolText ? " " : "";
3074
+ const fullText = typeof text === "string" ? separatorText + text : "";
3075
+ const suffixText = options.suffixText ?? this.#suffixText;
3076
+ const fullSuffixText = this.#getFullSuffixText(suffixText, " ");
3077
+ const textToWrite = fullPrefixText + symbolText + fullText + fullSuffixText + `
3078
+ `;
3079
+ this.stop();
3080
+ this.#stream.write(textToWrite);
3081
+ return this;
3082
+ }
3083
+ }
3084
+ function ora(options) {
3085
+ return new Ora(options);
3086
+ }
3087
+ var import_cli_spinners, import_cli_spinners2;
3088
+ var init_ora = __esm(() => {
3089
+ init_source();
3090
+ init_cli_cursor();
3091
+ init_log_symbols();
3092
+ init_strip_ansi();
3093
+ init_string_width();
3094
+ init_is_unicode_supported2();
3095
+ init_stdin_discarder();
3096
+ import_cli_spinners = __toESM(require_cli_spinners(), 1);
3097
+ import_cli_spinners2 = __toESM(require_cli_spinners(), 1);
3098
+ });
3099
+
3100
+ // src/utils/logger.ts
3101
+ class Logger {
3102
+ spinner = null;
3103
+ silent;
3104
+ constructor(silent = false) {
3105
+ this.silent = silent;
3106
+ }
3107
+ info(message) {
3108
+ if (this.silent)
3109
+ return;
3110
+ console.log(source_default.blue("ℹ"), message);
3111
+ }
3112
+ success(message) {
3113
+ if (this.silent)
3114
+ return;
3115
+ console.log(source_default.green("✓"), message);
3116
+ }
3117
+ warning(message) {
3118
+ if (this.silent)
3119
+ return;
3120
+ console.log(source_default.yellow("⚠"), message);
3121
+ }
3122
+ error(message) {
3123
+ if (this.silent)
3124
+ return;
3125
+ console.log(source_default.red("✗"), message);
3126
+ }
3127
+ debug(message) {
3128
+ if (this.silent)
3129
+ return;
3130
+ if (process.env.DEBUG) {
3131
+ console.log(source_default.gray("›"), source_default.gray(message));
3132
+ }
3133
+ }
3134
+ header(message) {
3135
+ if (this.silent)
3136
+ return;
3137
+ console.log("");
3138
+ console.log(source_default.bold.cyan(message));
3139
+ console.log(source_default.cyan("─".repeat(message.length)));
3140
+ }
3141
+ blank() {
3142
+ if (this.silent)
3143
+ return;
3144
+ console.log("");
3145
+ }
3146
+ start(text) {
3147
+ if (this.silent) {
3148
+ this.spinner = ora({ silent: true, text }).start();
3149
+ } else {
3150
+ this.spinner = ora({ text, color: "cyan" }).start();
3151
+ }
3152
+ return this.spinner;
3153
+ }
3154
+ succeed(text) {
3155
+ this.spinner?.succeed(text);
3156
+ this.spinner = null;
3157
+ }
3158
+ fail(text) {
3159
+ this.spinner?.fail(text);
3160
+ this.spinner = null;
3161
+ }
3162
+ stop() {
3163
+ this.spinner?.stop();
3164
+ this.spinner = null;
3165
+ }
3166
+ box(title, content) {
3167
+ if (this.silent)
3168
+ return;
3169
+ const lines = content.split(`
3170
+ `);
3171
+ const maxLength = Math.max(title.length, ...lines.map((l) => l.length));
3172
+ console.log("");
3173
+ console.log(source_default.cyan("┌" + "─".repeat(maxLength + 2) + "┐"));
3174
+ console.log(source_default.cyan("│") + " " + source_default.bold(title) + " ".repeat(maxLength - title.length + 1) + source_default.cyan("│"));
3175
+ console.log(source_default.cyan("├" + "─".repeat(maxLength + 2) + "┤"));
3176
+ for (const line of lines) {
3177
+ console.log(source_default.cyan("│") + " " + line + " ".repeat(maxLength - line.length + 1) + source_default.cyan("│"));
3178
+ }
3179
+ console.log(source_default.cyan("└" + "─".repeat(maxLength + 2) + "┘"));
3180
+ console.log("");
3181
+ }
3182
+ table(headers, rows) {
3183
+ if (this.silent)
3184
+ return;
3185
+ const colWidths = headers.map((h, i) => Math.max(h.length, ...rows.map((r) => r[i]?.length || 0)));
3186
+ const printRow = (row) => {
3187
+ console.log(row.map((cell, i) => cell.padEnd(colWidths[i])).join(" "));
3188
+ };
3189
+ console.log("");
3190
+ printRow(headers.map((h) => source_default.bold(h)));
3191
+ console.log(headers.map((_, i) => "─".repeat(colWidths[i])).join(" "));
3192
+ for (const row of rows) {
3193
+ printRow(row);
3194
+ }
3195
+ console.log("");
3196
+ }
3197
+ }
3198
+ var logger;
3199
+ var init_logger = __esm(() => {
3200
+ init_source();
3201
+ init_ora();
3202
+ logger = new Logger;
3203
+ });
3204
+
3205
+ // src/utils/paths.ts
3206
+ import path from "path";
3207
+ import os2 from "os";
3208
+ function getHomeDir() {
3209
+ return os2.homedir();
3210
+ }
3211
+ function getConfig() {
3212
+ const homeDir = getHomeDir();
3213
+ const templateDir = path.join(homeDir, ".git-templates");
3214
+ const hooksDir = path.join(templateDir, "hooks");
3215
+ const hookFile = path.join(hooksDir, "commit-msg");
3216
+ return {
3217
+ templateDir,
3218
+ hooksDir,
3219
+ hookFile
3220
+ };
3221
+ }
3222
+ function toGitPath(filePath) {
3223
+ return filePath.replace(/\\/g, "/");
3224
+ }
3225
+ var init_paths = () => {};
3226
+
3227
+ // src/utils/git.ts
3228
+ import { execSync } from "child_process";
3229
+ function getGitConfig(key) {
3230
+ try {
3231
+ const value = execSync(`git config --global ${key}`, {
3232
+ encoding: "utf-8",
3233
+ stdio: ["pipe", "pipe", "ignore"]
3234
+ }).trim();
3235
+ return { exists: true, value };
3236
+ } catch (error) {
3237
+ return { exists: false, value: null };
3238
+ }
3239
+ }
3240
+ function setGitConfig(key, value) {
3241
+ execSync(`git config --global ${key} '${value}'`, {
3242
+ encoding: "utf-8",
3243
+ stdio: ["pipe", "pipe", "ignore"]
3244
+ });
3245
+ }
3246
+ function unsetGitConfig(key) {
3247
+ try {
3248
+ execSync(`git config --global --unset ${key}`, {
3249
+ encoding: "utf-8",
3250
+ stdio: ["pipe", "pipe", "ignore"]
3251
+ });
3252
+ } catch {}
3253
+ }
3254
+ function getTemplateDir() {
3255
+ return getGitConfig("init.templatedir");
3256
+ }
3257
+ function setTemplateDir(templatePath) {
3258
+ const gitPath = toGitPath(templatePath);
3259
+ setGitConfig("init.templatedir", gitPath);
3260
+ }
3261
+ var init_git = __esm(() => {
3262
+ init_paths();
3263
+ });
3264
+
3265
+ // src/uninstall.ts
3266
+ init_logger();
3267
+ init_paths();
3268
+ init_git();
3269
+ import fs from "fs/promises";
3270
+ async function uninstall(options = {}) {
3271
+ const logger2 = new Logger(options.silent);
3272
+ const config = getConfig();
3273
+ let removedConfig = false;
3274
+ try {
3275
+ logger2.start("Removing hook file...");
3276
+ try {
3277
+ await fs.unlink(config.hookFile);
3278
+ logger2.succeed(`Removed ${config.hookFile}`);
3279
+ } catch {
3280
+ logger2.info("Hook file not found (already removed?)");
3281
+ }
3282
+ try {
3283
+ const hooksExists = await fs.access(config.hooksDir).then(() => true).catch(() => false);
3284
+ if (hooksExists) {
3285
+ const files = await fs.readdir(config.hooksDir);
3286
+ if (files.length === 0) {
3287
+ await fs.rmdir(config.hooksDir);
3288
+ logger2.info("Removed empty hooks directory");
3289
+ }
3290
+ }
3291
+ const templateExists = await fs.access(config.templateDir).then(() => true).catch(() => false);
3292
+ if (templateExists) {
3293
+ const files = await fs.readdir(config.templateDir);
3294
+ if (files.length === 0) {
3295
+ await fs.rmdir(config.templateDir);
3296
+ logger2.info("Removed empty templates directory");
3297
+ }
3298
+ }
3299
+ } catch {}
3300
+ if (options.removeConfig) {
3301
+ logger2.start("Removing git configuration...");
3302
+ unsetGitConfig("init.templatedir");
3303
+ removedConfig = true;
3304
+ logger2.succeed("Git template directory configuration removed");
3305
+ }
3306
+ logger2.blank();
3307
+ logger2.success("✨ Uninstallation complete!");
3308
+ if (!options.removeConfig) {
3309
+ logger2.blank();
3310
+ logger2.info("To remove git template directory config, run:");
3311
+ logger2.blank();
3312
+ logger2.info(" git config --global --unset init.templatedir");
3313
+ logger2.blank();
3314
+ }
3315
+ return {
3316
+ success: true,
3317
+ message: "Successfully uninstalled git-no-ai-author",
3318
+ removedConfig
3319
+ };
3320
+ } catch (error) {
3321
+ logger2.fail("Uninstallation failed");
3322
+ if (error instanceof Error) {
3323
+ logger2.error(error.message);
3324
+ }
3325
+ return {
3326
+ success: false,
3327
+ message: error instanceof Error ? error.message : "Unknown error"
3328
+ };
3329
+ }
3330
+ }
3331
+ async function main2() {
3332
+ const logger2 = new Logger;
3333
+ logger2.header("\uD83D\uDDD1️ git-no-ai-author Uninstall");
3334
+ logger2.blank();
3335
+ const result = await uninstall();
3336
+ if (result.success) {
3337
+ process.exit(0);
3338
+ } else {
3339
+ logger2.blank();
3340
+ logger2.error("Uninstallation failed. Please try again.");
3341
+ process.exit(1);
3342
+ }
3343
+ }
3344
+ export {
3345
+ uninstall,
3346
+ main2 as main
3347
+ };