sv 0.8.4 → 0.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin.js CHANGED
@@ -1,21 +1,18 @@
1
1
  #!/usr/bin/env node
2
- import { AGENT_NAMES, Command, E, Element, Ge, J, Le, Ne, Option, Ou, Pe, Tag, Ue, Ve, __commonJS as __commonJS$1, __commonJS$1 as __commonJS, __export, __require, __toESM, __toESM$1, addPnpmBuildDependencies, create, detect, esm_exports, from, getUserAgent, installDependencies, installOption, je, ke, packageManagerPrompt, parseCss$1, parseHtml, parseHtml$1, parseJson$1, parseScript$1, parseSvelte, program, qe, require_picocolors as require_picocolors$1, require_picocolors$1 as require_picocolors, resolveCommand, templates, up, walk_exports } from "./package-manager-CZaGcCtM.js";
3
- import { addFromString, applyAddons, array_exports, common_exports, createWorkspace, dedent_default, exports_exports, formatFiles, function_exports, getHighlighter, imports_exports, kit_exports, object_exports, setupAddons, variables_exports } from "./install-CfRQUz9L.js";
2
+ import { AGENT_NAMES, Command, Element, Option, Tag, __commonJS, __export, __require, __toESM, __toESM$1, addPnpmBuildDependencies, box, cancel, confirm, create, detect, esm_exports, from, getUserAgent, group, installDependencies, installOption, intro, isCancel, log, multiselect, note, outro, packageManagerPrompt, parseCss$1, parseHtml, parseHtml$1, parseJson$1, parseScript$1, parseSvelte, program, require_picocolors, resolveCommand, select, spinner, templates, text, up, walk_exports } from "./package-manager-D3PRQ-L_.js";
3
+ import { addFromString, applyAddons, array_exports, common_exports, createWorkspace, dedent_default, exports_exports, formatFiles, function_exports, getHighlighter, imports_exports, kit_exports, object_exports, require_picocolors$1, setupAddons, variables_exports } from "./install-BTJ6iCTS.js";
4
4
  import fs, { existsSync } from "node:fs";
5
5
  import path, { dirname, join } from "node:path";
6
6
  import { fileURLToPath } from "node:url";
7
- import process$1, { stdin, stdout } from "node:process";
8
- import * as y from "node:readline";
9
- import Eu from "node:readline";
10
- import { ReadStream, WriteStream } from "node:tty";
11
- import { promisify, stripVTControlCharacters } from "node:util";
7
+ import process$1 from "node:process";
12
8
  import { exec, execSync } from "node:child_process";
13
9
  import { createGunzip } from "node:zlib";
14
10
  import { pipeline } from "node:stream/promises";
11
+ import { promisify } from "node:util";
15
12
 
16
13
  //#region packages/cli/package.json
17
14
  var name = "sv";
18
- var version = "0.8.4";
15
+ var version = "0.8.6";
19
16
  var type = "module";
20
17
  var description = "A CLI for creating and updating SvelteKit projects";
21
18
  var license = "MIT";
@@ -43,8 +40,8 @@ var exports$1 = {
43
40
  }
44
41
  };
45
42
  var devDependencies = {
46
- "@clack/prompts": "^1.0.0-alpha.0",
47
43
  "@sveltejs/addons": "workspace:*",
44
+ "@sveltejs/clack-prompts": "workspace:*",
48
45
  "@sveltejs/cli-core": "workspace:*",
49
46
  "@sveltejs/create": "workspace:*",
50
47
  "@types/degit": "^2.8.6",
@@ -513,132 +510,178 @@ function defineAddon(config) {
513
510
  function defineAddonOptions(options$6) {
514
511
  return options$6;
515
512
  }
516
- var require_src = __commonJS$1({ "node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js"(exports$2, module$1) {
517
- const ESC = "\x1B";
518
- const CSI = `${ESC}[`;
519
- const beep = "\x07";
520
- const cursor = {
521
- to(x$1, y$1) {
522
- if (!y$1) return `${CSI}${x$1 + 1}G`;
523
- return `${CSI}${y$1 + 1};${x$1 + 1}H`;
513
+ var __create$1 = Object.create;
514
+ var __defProp$1 = Object.defineProperty;
515
+ var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
516
+ var __getOwnPropNames$1 = Object.getOwnPropertyNames;
517
+ var __getProtoOf$1 = Object.getPrototypeOf;
518
+ var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
519
+ var __commonJS$1 = (cb, mod) => function() {
520
+ return mod || (0, cb[__getOwnPropNames$1(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
521
+ };
522
+ var __copyProps$1 = (to, from$2, except, desc) => {
523
+ if (from$2 && typeof from$2 === "object" || typeof from$2 === "function") for (var keys$1 = __getOwnPropNames$1(from$2), i = 0, n$1 = keys$1.length, key; i < n$1; i++) {
524
+ key = keys$1[i];
525
+ if (!__hasOwnProp$1.call(to, key) && key !== except) __defProp$1(to, key, {
526
+ get: ((k) => from$2[k]).bind(null, key),
527
+ enumerable: !(desc = __getOwnPropDesc$1(from$2, key)) || desc.enumerable
528
+ });
529
+ }
530
+ return to;
531
+ };
532
+ var __toESM$1$1 = (mod, isNodeMode, target) => (target = mod != null ? __create$1(__getProtoOf$1(mod)) : {}, __copyProps$1(isNodeMode || !mod || !mod.__esModule ? __defProp$1(target, "default", {
533
+ value: mod,
534
+ enumerable: true
535
+ }) : target, mod));
536
+ var __create = Object.create;
537
+ var __defProp = Object.defineProperty;
538
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
539
+ var __getOwnPropNames = Object.getOwnPropertyNames;
540
+ var __getProtoOf = Object.getPrototypeOf;
541
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
542
+ var __commonJS$2 = (cb, mod) => function() {
543
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
544
+ };
545
+ var __copyProps = (to, from$2, except, desc) => {
546
+ if (from$2 && typeof from$2 === "object" || typeof from$2 === "function") for (var keys$1 = __getOwnPropNames(from$2), i = 0, n$1 = keys$1.length, key; i < n$1; i++) {
547
+ key = keys$1[i];
548
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
549
+ get: ((k) => from$2[k]).bind(null, key),
550
+ enumerable: !(desc = __getOwnPropDesc(from$2, key)) || desc.enumerable
551
+ });
552
+ }
553
+ return to;
554
+ };
555
+ var __toESM$2 = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
556
+ value: mod,
557
+ enumerable: true
558
+ }) : target, mod));
559
+ var require_src$1 = __commonJS$2({ "node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js"(exports$2, module$1) {
560
+ const ESC$1 = "\x1B";
561
+ const CSI$1 = `${ESC$1}[`;
562
+ const beep$1 = "\x07";
563
+ const cursor$3 = {
564
+ to(x, y) {
565
+ if (!y) return `${CSI$1}${x + 1}G`;
566
+ return `${CSI$1}${y + 1};${x + 1}H`;
524
567
  },
525
- move(x$1, y$1) {
568
+ move(x, y) {
526
569
  let ret = "";
527
- if (x$1 < 0) ret += `${CSI}${-x$1}D`;
528
- else if (x$1 > 0) ret += `${CSI}${x$1}C`;
529
- if (y$1 < 0) ret += `${CSI}${-y$1}A`;
530
- else if (y$1 > 0) ret += `${CSI}${y$1}B`;
570
+ if (x < 0) ret += `${CSI$1}${-x}D`;
571
+ else if (x > 0) ret += `${CSI$1}${x}C`;
572
+ if (y < 0) ret += `${CSI$1}${-y}A`;
573
+ else if (y > 0) ret += `${CSI$1}${y}B`;
531
574
  return ret;
532
575
  },
533
- up: (count = 1) => `${CSI}${count}A`,
534
- down: (count = 1) => `${CSI}${count}B`,
535
- forward: (count = 1) => `${CSI}${count}C`,
536
- backward: (count = 1) => `${CSI}${count}D`,
537
- nextLine: (count = 1) => `${CSI}E`.repeat(count),
538
- prevLine: (count = 1) => `${CSI}F`.repeat(count),
539
- left: `${CSI}G`,
540
- hide: `${CSI}?25l`,
541
- show: `${CSI}?25h`,
542
- save: `${ESC}7`,
543
- restore: `${ESC}8`
576
+ up: (count = 1) => `${CSI$1}${count}A`,
577
+ down: (count = 1) => `${CSI$1}${count}B`,
578
+ forward: (count = 1) => `${CSI$1}${count}C`,
579
+ backward: (count = 1) => `${CSI$1}${count}D`,
580
+ nextLine: (count = 1) => `${CSI$1}E`.repeat(count),
581
+ prevLine: (count = 1) => `${CSI$1}F`.repeat(count),
582
+ left: `${CSI$1}G`,
583
+ hide: `${CSI$1}?25l`,
584
+ show: `${CSI$1}?25h`,
585
+ save: `${ESC$1}7`,
586
+ restore: `${ESC$1}8`
544
587
  };
545
- const scroll = {
546
- up: (count = 1) => `${CSI}S`.repeat(count),
547
- down: (count = 1) => `${CSI}T`.repeat(count)
588
+ const scroll$1 = {
589
+ up: (count = 1) => `${CSI$1}S`.repeat(count),
590
+ down: (count = 1) => `${CSI$1}T`.repeat(count)
548
591
  };
549
- const erase = {
550
- screen: `${CSI}2J`,
551
- up: (count = 1) => `${CSI}1J`.repeat(count),
552
- down: (count = 1) => `${CSI}J`.repeat(count),
553
- line: `${CSI}2K`,
554
- lineEnd: `${CSI}K`,
555
- lineStart: `${CSI}1K`,
592
+ const erase$1$1 = {
593
+ screen: `${CSI$1}2J`,
594
+ up: (count = 1) => `${CSI$1}1J`.repeat(count),
595
+ down: (count = 1) => `${CSI$1}J`.repeat(count),
596
+ line: `${CSI$1}2K`,
597
+ lineEnd: `${CSI$1}K`,
598
+ lineStart: `${CSI$1}1K`,
556
599
  lines(count) {
557
600
  let clear = "";
558
- for (let i = 0; i < count; i++) clear += this.line + (i < count - 1 ? cursor.up() : "");
559
- if (count) clear += cursor.left;
601
+ for (let i = 0; i < count; i++) clear += this.line + (i < count - 1 ? cursor$3.up() : "");
602
+ if (count) clear += cursor$3.left;
560
603
  return clear;
561
604
  }
562
605
  };
563
606
  module$1.exports = {
564
- cursor,
565
- scroll,
566
- erase,
567
- beep
607
+ cursor: cursor$3,
608
+ scroll: scroll$1,
609
+ erase: erase$1$1,
610
+ beep: beep$1
568
611
  };
569
612
  } });
570
- var import_src$1 = __toESM(require_src(), 1);
571
- var import_picocolors$3$1 = __toESM(require_picocolors$1(), 1);
572
- function hu({ onlyFirst: e$1 = !1 } = {}) {
573
- const t = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");
574
- return new RegExp(t, e$1 ? void 0 : "g");
575
- }
576
- const cu = hu();
577
- function Y(e$1) {
578
- if (typeof e$1 != "string") throw new TypeError(`Expected a \`string\`, got \`${typeof e$1}\``);
579
- return e$1.replace(cu, "");
613
+ function ansiRegex$1({ onlyFirst = false } = {}) {
614
+ const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
615
+ const pattern = [`[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${ST})`, "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");
616
+ return new RegExp(pattern, onlyFirst ? undefined : "g");
580
617
  }
581
- function Z(e$1) {
582
- return e$1 && e$1.__esModule && Object.prototype.hasOwnProperty.call(e$1, "default") ? e$1.default : e$1;
583
- }
584
- var q$1 = { exports: {} };
585
- (function(e$1) {
586
- var D$1 = {};
587
- e$1.exports = D$1, D$1.eastAsianWidth = function(s) {
588
- var i = s.charCodeAt(0), F$1 = s.length == 2 ? s.charCodeAt(1) : 0, u = i;
589
- return 55296 <= i && i <= 56319 && 56320 <= F$1 && F$1 <= 57343 && (i &= 1023, F$1 &= 1023, u = i << 10 | F$1, u += 65536), u == 12288 || 65281 <= u && u <= 65376 || 65504 <= u && u <= 65510 ? "F" : u == 8361 || 65377 <= u && u <= 65470 || 65474 <= u && u <= 65479 || 65482 <= u && u <= 65487 || 65490 <= u && u <= 65495 || 65498 <= u && u <= 65500 || 65512 <= u && u <= 65518 ? "H" : 4352 <= u && u <= 4447 || 4515 <= u && u <= 4519 || 4602 <= u && u <= 4607 || 9001 <= u && u <= 9002 || 11904 <= u && u <= 11929 || 11931 <= u && u <= 12019 || 12032 <= u && u <= 12245 || 12272 <= u && u <= 12283 || 12289 <= u && u <= 12350 || 12353 <= u && u <= 12438 || 12441 <= u && u <= 12543 || 12549 <= u && u <= 12589 || 12593 <= u && u <= 12686 || 12688 <= u && u <= 12730 || 12736 <= u && u <= 12771 || 12784 <= u && u <= 12830 || 12832 <= u && u <= 12871 || 12880 <= u && u <= 13054 || 13056 <= u && u <= 19903 || 19968 <= u && u <= 42124 || 42128 <= u && u <= 42182 || 43360 <= u && u <= 43388 || 44032 <= u && u <= 55203 || 55216 <= u && u <= 55238 || 55243 <= u && u <= 55291 || 63744 <= u && u <= 64255 || 65040 <= u && u <= 65049 || 65072 <= u && u <= 65106 || 65108 <= u && u <= 65126 || 65128 <= u && u <= 65131 || 110592 <= u && u <= 110593 || 127488 <= u && u <= 127490 || 127504 <= u && u <= 127546 || 127552 <= u && u <= 127560 || 127568 <= u && u <= 127569 || 131072 <= u && u <= 194367 || 177984 <= u && u <= 196605 || 196608 <= u && u <= 262141 ? "W" : 32 <= u && u <= 126 || 162 <= u && u <= 163 || 165 <= u && u <= 166 || u == 172 || u == 175 || 10214 <= u && u <= 10221 || 10629 <= u && u <= 10630 ? "Na" : u == 161 || u == 164 || 167 <= u && u <= 168 || u == 170 || 173 <= u && u <= 174 || 176 <= u && u <= 180 || 182 <= u && u <= 186 || 188 <= u && u <= 191 || u == 198 || u == 208 || 215 <= u && u <= 216 || 222 <= u && u <= 225 || u == 230 || 232 <= u && u <= 234 || 236 <= u && u <= 237 || u == 240 || 242 <= u && u <= 243 || 247 <= u && u <= 250 || u == 252 || u == 254 || u == 257 || u == 273 || u == 275 || u == 283 || 294 <= u && u <= 295 || u == 299 || 305 <= u && u <= 307 || u == 312 || 319 <= u && u <= 322 || u == 324 || 328 <= u && u <= 331 || u == 333 || 338 <= u && u <= 339 || 358 <= u && u <= 359 || u == 363 || u == 462 || u == 464 || u == 466 || u == 468 || u == 470 || u == 472 || u == 474 || u == 476 || u == 593 || u == 609 || u == 708 || u == 711 || 713 <= u && u <= 715 || u == 717 || u == 720 || 728 <= u && u <= 731 || u == 733 || u == 735 || 768 <= u && u <= 879 || 913 <= u && u <= 929 || 931 <= u && u <= 937 || 945 <= u && u <= 961 || 963 <= u && u <= 969 || u == 1025 || 1040 <= u && u <= 1103 || u == 1105 || u == 8208 || 8211 <= u && u <= 8214 || 8216 <= u && u <= 8217 || 8220 <= u && u <= 8221 || 8224 <= u && u <= 8226 || 8228 <= u && u <= 8231 || u == 8240 || 8242 <= u && u <= 8243 || u == 8245 || u == 8251 || u == 8254 || u == 8308 || u == 8319 || 8321 <= u && u <= 8324 || u == 8364 || u == 8451 || u == 8453 || u == 8457 || u == 8467 || u == 8470 || 8481 <= u && u <= 8482 || u == 8486 || u == 8491 || 8531 <= u && u <= 8532 || 8539 <= u && u <= 8542 || 8544 <= u && u <= 8555 || 8560 <= u && u <= 8569 || u == 8585 || 8592 <= u && u <= 8601 || 8632 <= u && u <= 8633 || u == 8658 || u == 8660 || u == 8679 || u == 8704 || 8706 <= u && u <= 8707 || 8711 <= u && u <= 8712 || u == 8715 || u == 8719 || u == 8721 || u == 8725 || u == 8730 || 8733 <= u && u <= 8736 || u == 8739 || u == 8741 || 8743 <= u && u <= 8748 || u == 8750 || 8756 <= u && u <= 8759 || 8764 <= u && u <= 8765 || u == 8776 || u == 8780 || u == 8786 || 8800 <= u && u <= 8801 || 8804 <= u && u <= 8807 || 8810 <= u && u <= 8811 || 8814 <= u && u <= 8815 || 8834 <= u && u <= 8835 || 8838 <= u && u <= 8839 || u == 8853 || u == 8857 || u == 8869 || u == 8895 || u == 8978 || 9312 <= u && u <= 9449 || 9451 <= u && u <= 9547 || 9552 <= u && u <= 9587 || 9600 <= u && u <= 9615 || 9618 <= u && u <= 9621 || 9632 <= u && u <= 9633 || 9635 <= u && u <= 9641 || 9650 <= u && u <= 9651 || 9654 <= u && u <= 9655 || 9660 <= u && u <= 9661 || 9664 <= u && u <= 9665 || 9670 <= u && u <= 9672 || u == 9675 || 9678 <= u && u <= 9681 || 9698 <= u && u <= 9701 || u == 9711 || 9733 <= u && u <= 9734 || u == 9737 || 9742 <= u && u <= 9743 || 9748 <= u && u <= 9749 || u == 9756 || u == 9758 || u == 9792 || u == 9794 || 9824 <= u && u <= 9825 || 9827 <= u && u <= 9829 || 9831 <= u && u <= 9834 || 9836 <= u && u <= 9837 || u == 9839 || 9886 <= u && u <= 9887 || 9918 <= u && u <= 9919 || 9924 <= u && u <= 9933 || 9935 <= u && u <= 9953 || u == 9955 || 9960 <= u && u <= 9983 || u == 10045 || u == 10071 || 10102 <= u && u <= 10111 || 11093 <= u && u <= 11097 || 12872 <= u && u <= 12879 || 57344 <= u && u <= 63743 || 65024 <= u && u <= 65039 || u == 65533 || 127232 <= u && u <= 127242 || 127248 <= u && u <= 127277 || 127280 <= u && u <= 127337 || 127344 <= u && u <= 127386 || 917760 <= u && u <= 917999 || 983040 <= u && u <= 1048573 || 1048576 <= u && u <= 1114109 ? "A" : "N";
590
- }, D$1.characterLength = function(s) {
591
- var i = this.eastAsianWidth(s);
592
- return i == "F" || i == "W" || i == "A" ? 2 : 1;
618
+ const regex = ansiRegex$1();
619
+ var require_eastasianwidth = __commonJS$2({ "node_modules/.pnpm/eastasianwidth@0.2.0/node_modules/eastasianwidth/eastasianwidth.js"(exports$2, module$1) {
620
+ var eaw = {};
621
+ if ("undefined" == typeof module$1) window.eastasianwidth = eaw;
622
+ else module$1.exports = eaw;
623
+ eaw.eastAsianWidth = function(character) {
624
+ var x = character.charCodeAt(0);
625
+ var y = character.length == 2 ? character.charCodeAt(1) : 0;
626
+ var codePoint = x;
627
+ if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) {
628
+ x &= 1023;
629
+ y &= 1023;
630
+ codePoint = x << 10 | y;
631
+ codePoint += 65536;
632
+ }
633
+ if (12288 == codePoint || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510) return "F";
634
+ if (8361 == codePoint || 65377 <= codePoint && codePoint <= 65470 || 65474 <= codePoint && codePoint <= 65479 || 65482 <= codePoint && codePoint <= 65487 || 65490 <= codePoint && codePoint <= 65495 || 65498 <= codePoint && codePoint <= 65500 || 65512 <= codePoint && codePoint <= 65518) return "H";
635
+ if (4352 <= codePoint && codePoint <= 4447 || 4515 <= codePoint && codePoint <= 4519 || 4602 <= codePoint && codePoint <= 4607 || 9001 <= codePoint && codePoint <= 9002 || 11904 <= codePoint && codePoint <= 11929 || 11931 <= codePoint && codePoint <= 12019 || 12032 <= codePoint && codePoint <= 12245 || 12272 <= codePoint && codePoint <= 12283 || 12289 <= codePoint && codePoint <= 12350 || 12353 <= codePoint && codePoint <= 12438 || 12441 <= codePoint && codePoint <= 12543 || 12549 <= codePoint && codePoint <= 12589 || 12593 <= codePoint && codePoint <= 12686 || 12688 <= codePoint && codePoint <= 12730 || 12736 <= codePoint && codePoint <= 12771 || 12784 <= codePoint && codePoint <= 12830 || 12832 <= codePoint && codePoint <= 12871 || 12880 <= codePoint && codePoint <= 13054 || 13056 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42124 || 42128 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 55216 <= codePoint && codePoint <= 55238 || 55243 <= codePoint && codePoint <= 55291 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65106 || 65108 <= codePoint && codePoint <= 65126 || 65128 <= codePoint && codePoint <= 65131 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127490 || 127504 <= codePoint && codePoint <= 127546 || 127552 <= codePoint && codePoint <= 127560 || 127568 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 194367 || 177984 <= codePoint && codePoint <= 196605 || 196608 <= codePoint && codePoint <= 262141) return "W";
636
+ if (32 <= codePoint && codePoint <= 126 || 162 <= codePoint && codePoint <= 163 || 165 <= codePoint && codePoint <= 166 || 172 == codePoint || 175 == codePoint || 10214 <= codePoint && codePoint <= 10221 || 10629 <= codePoint && codePoint <= 10630) return "Na";
637
+ if (161 == codePoint || 164 == codePoint || 167 <= codePoint && codePoint <= 168 || 170 == codePoint || 173 <= codePoint && codePoint <= 174 || 176 <= codePoint && codePoint <= 180 || 182 <= codePoint && codePoint <= 186 || 188 <= codePoint && codePoint <= 191 || 198 == codePoint || 208 == codePoint || 215 <= codePoint && codePoint <= 216 || 222 <= codePoint && codePoint <= 225 || 230 == codePoint || 232 <= codePoint && codePoint <= 234 || 236 <= codePoint && codePoint <= 237 || 240 == codePoint || 242 <= codePoint && codePoint <= 243 || 247 <= codePoint && codePoint <= 250 || 252 == codePoint || 254 == codePoint || 257 == codePoint || 273 == codePoint || 275 == codePoint || 283 == codePoint || 294 <= codePoint && codePoint <= 295 || 299 == codePoint || 305 <= codePoint && codePoint <= 307 || 312 == codePoint || 319 <= codePoint && codePoint <= 322 || 324 == codePoint || 328 <= codePoint && codePoint <= 331 || 333 == codePoint || 338 <= codePoint && codePoint <= 339 || 358 <= codePoint && codePoint <= 359 || 363 == codePoint || 462 == codePoint || 464 == codePoint || 466 == codePoint || 468 == codePoint || 470 == codePoint || 472 == codePoint || 474 == codePoint || 476 == codePoint || 593 == codePoint || 609 == codePoint || 708 == codePoint || 711 == codePoint || 713 <= codePoint && codePoint <= 715 || 717 == codePoint || 720 == codePoint || 728 <= codePoint && codePoint <= 731 || 733 == codePoint || 735 == codePoint || 768 <= codePoint && codePoint <= 879 || 913 <= codePoint && codePoint <= 929 || 931 <= codePoint && codePoint <= 937 || 945 <= codePoint && codePoint <= 961 || 963 <= codePoint && codePoint <= 969 || 1025 == codePoint || 1040 <= codePoint && codePoint <= 1103 || 1105 == codePoint || 8208 == codePoint || 8211 <= codePoint && codePoint <= 8214 || 8216 <= codePoint && codePoint <= 8217 || 8220 <= codePoint && codePoint <= 8221 || 8224 <= codePoint && codePoint <= 8226 || 8228 <= codePoint && codePoint <= 8231 || 8240 == codePoint || 8242 <= codePoint && codePoint <= 8243 || 8245 == codePoint || 8251 == codePoint || 8254 == codePoint || 8308 == codePoint || 8319 == codePoint || 8321 <= codePoint && codePoint <= 8324 || 8364 == codePoint || 8451 == codePoint || 8453 == codePoint || 8457 == codePoint || 8467 == codePoint || 8470 == codePoint || 8481 <= codePoint && codePoint <= 8482 || 8486 == codePoint || 8491 == codePoint || 8531 <= codePoint && codePoint <= 8532 || 8539 <= codePoint && codePoint <= 8542 || 8544 <= codePoint && codePoint <= 8555 || 8560 <= codePoint && codePoint <= 8569 || 8585 == codePoint || 8592 <= codePoint && codePoint <= 8601 || 8632 <= codePoint && codePoint <= 8633 || 8658 == codePoint || 8660 == codePoint || 8679 == codePoint || 8704 == codePoint || 8706 <= codePoint && codePoint <= 8707 || 8711 <= codePoint && codePoint <= 8712 || 8715 == codePoint || 8719 == codePoint || 8721 == codePoint || 8725 == codePoint || 8730 == codePoint || 8733 <= codePoint && codePoint <= 8736 || 8739 == codePoint || 8741 == codePoint || 8743 <= codePoint && codePoint <= 8748 || 8750 == codePoint || 8756 <= codePoint && codePoint <= 8759 || 8764 <= codePoint && codePoint <= 8765 || 8776 == codePoint || 8780 == codePoint || 8786 == codePoint || 8800 <= codePoint && codePoint <= 8801 || 8804 <= codePoint && codePoint <= 8807 || 8810 <= codePoint && codePoint <= 8811 || 8814 <= codePoint && codePoint <= 8815 || 8834 <= codePoint && codePoint <= 8835 || 8838 <= codePoint && codePoint <= 8839 || 8853 == codePoint || 8857 == codePoint || 8869 == codePoint || 8895 == codePoint || 8978 == codePoint || 9312 <= codePoint && codePoint <= 9449 || 9451 <= codePoint && codePoint <= 9547 || 9552 <= codePoint && codePoint <= 9587 || 9600 <= codePoint && codePoint <= 9615 || 9618 <= codePoint && codePoint <= 9621 || 9632 <= codePoint && codePoint <= 9633 || 9635 <= codePoint && codePoint <= 9641 || 9650 <= codePoint && codePoint <= 9651 || 9654 <= codePoint && codePoint <= 9655 || 9660 <= codePoint && codePoint <= 9661 || 9664 <= codePoint && codePoint <= 9665 || 9670 <= codePoint && codePoint <= 9672 || 9675 == codePoint || 9678 <= codePoint && codePoint <= 9681 || 9698 <= codePoint && codePoint <= 9701 || 9711 == codePoint || 9733 <= codePoint && codePoint <= 9734 || 9737 == codePoint || 9742 <= codePoint && codePoint <= 9743 || 9748 <= codePoint && codePoint <= 9749 || 9756 == codePoint || 9758 == codePoint || 9792 == codePoint || 9794 == codePoint || 9824 <= codePoint && codePoint <= 9825 || 9827 <= codePoint && codePoint <= 9829 || 9831 <= codePoint && codePoint <= 9834 || 9836 <= codePoint && codePoint <= 9837 || 9839 == codePoint || 9886 <= codePoint && codePoint <= 9887 || 9918 <= codePoint && codePoint <= 9919 || 9924 <= codePoint && codePoint <= 9933 || 9935 <= codePoint && codePoint <= 9953 || 9955 == codePoint || 9960 <= codePoint && codePoint <= 9983 || 10045 == codePoint || 10071 == codePoint || 10102 <= codePoint && codePoint <= 10111 || 11093 <= codePoint && codePoint <= 11097 || 12872 <= codePoint && codePoint <= 12879 || 57344 <= codePoint && codePoint <= 63743 || 65024 <= codePoint && codePoint <= 65039 || 65533 == codePoint || 127232 <= codePoint && codePoint <= 127242 || 127248 <= codePoint && codePoint <= 127277 || 127280 <= codePoint && codePoint <= 127337 || 127344 <= codePoint && codePoint <= 127386 || 917760 <= codePoint && codePoint <= 917999 || 983040 <= codePoint && codePoint <= 1048573 || 1048576 <= codePoint && codePoint <= 1114109) return "A";
638
+ return "N";
639
+ };
640
+ eaw.characterLength = function(character) {
641
+ var code = this.eastAsianWidth(character);
642
+ if (code == "F" || code == "W" || code == "A") return 2;
643
+ else return 1;
593
644
  };
594
- function t(s) {
595
- return s.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
596
- }
597
- D$1.length = function(s) {
598
- for (var i = t(s), F$1 = 0, u = 0; u < i.length; u++) F$1 = F$1 + this.characterLength(i[u]);
599
- return F$1;
600
- }, D$1.slice = function(s, i, F$1) {
601
- textLen = D$1.length(s), i = i || 0, F$1 = F$1 || 1, i < 0 && (i = textLen + i), F$1 < 0 && (F$1 = textLen + F$1);
602
- for (var u = "", r = 0, a = t(s), n$1 = 0; n$1 < a.length; n$1++) {
603
- var l = a[n$1], o$1 = D$1.length(l);
604
- if (r >= i - (o$1 == 2 ? 1 : 0)) if (r + o$1 <= F$1) u += l;
645
+ function stringToArray(string$1) {
646
+ return string$1.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
647
+ }
648
+ eaw.length = function(string$1) {
649
+ var characters = stringToArray(string$1);
650
+ var len = 0;
651
+ for (var i = 0; i < characters.length; i++) len = len + this.characterLength(characters[i]);
652
+ return len;
653
+ };
654
+ eaw.slice = function(text$1, start, end) {
655
+ textLen = eaw.length(text$1);
656
+ start = start ? start : 0;
657
+ end = end ? end : 1;
658
+ if (start < 0) start = textLen + start;
659
+ if (end < 0) end = textLen + end;
660
+ var result = "";
661
+ var eawLen = 0;
662
+ var chars$1 = stringToArray(text$1);
663
+ for (var i = 0; i < chars$1.length; i++) {
664
+ var char = chars$1[i];
665
+ var charLen = eaw.length(char);
666
+ if (eawLen >= start - (charLen == 2 ? 1 : 0)) if (eawLen + charLen <= end) result += char;
605
667
  else break;
606
- r += o$1;
668
+ eawLen += charLen;
607
669
  }
608
- return u;
670
+ return result;
609
671
  };
610
- })(q$1);
611
- var xu = q$1.exports;
612
- const Bu = Z(xu);
613
- var Au = function() {
614
- return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
615
- };
616
- const pu = Z(Au);
617
- function m(e$1, D$1 = {}) {
618
- if (typeof e$1 != "string" || e$1.length === 0 || (D$1 = {
619
- ambiguousIsNarrow: !0,
620
- ...D$1
621
- }, e$1 = Y(e$1), e$1.length === 0)) return 0;
622
- e$1 = e$1.replace(pu(), " ");
623
- const t = D$1.ambiguousIsNarrow ? 1 : 2;
624
- let s = 0;
625
- for (const i of e$1) {
626
- const F$1 = i.codePointAt(0);
627
- if (F$1 <= 31 || F$1 >= 127 && F$1 <= 159 || F$1 >= 768 && F$1 <= 879) continue;
628
- switch (Bu.eastAsianWidth(i)) {
629
- case "F":
630
- case "W":
631
- s += 2;
632
- break;
633
- case "A":
634
- s += t;
635
- break;
636
- default: s += 1;
637
- }
638
- }
639
- return s;
640
- }
641
- const O$1 = 10, H$1 = (e$1 = 0) => (D$1) => `\x1B[${D$1 + e$1}m`, U$1 = (e$1 = 0) => (D$1) => `\x1B[${38 + e$1};5;${D$1}m`, J$1 = (e$1 = 0) => (D$1, t, s) => `\x1B[${38 + e$1};2;${D$1};${t};${s}m`, C = {
672
+ } });
673
+ var require_emoji_regex = __commonJS$2({ "node_modules/.pnpm/emoji-regex@9.2.2/node_modules/emoji-regex/index.js"(exports$2, module$1) {
674
+ module$1.exports = function() {
675
+ return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
676
+ };
677
+ } });
678
+ var import_eastasianwidth = __toESM$2(require_eastasianwidth(), 1);
679
+ var import_emoji_regex = __toESM$2(require_emoji_regex(), 1);
680
+ const ANSI_BACKGROUND_OFFSET = 10;
681
+ const wrapAnsi16 = (offset = 0) => (code) => `\u001B[${code + offset}m`;
682
+ const wrapAnsi256 = (offset = 0) => (code) => `\u001B[${38 + offset};5;${code}m`;
683
+ const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
684
+ const styles = {
642
685
  modifier: {
643
686
  reset: [0, 0],
644
687
  bold: [1, 22],
@@ -691,1223 +734,363 @@ const O$1 = 10, H$1 = (e$1 = 0) => (D$1) => `\x1B[${D$1 + e$1}m`, U$1 = (e$1 = 0
691
734
  bgWhiteBright: [107, 49]
692
735
  }
693
736
  };
694
- Object.keys(C.modifier);
695
- const fu = Object.keys(C.color), du = Object.keys(C.bgColor);
696
- [...fu, ...du];
697
- function gu() {
698
- const e$1 = new Map();
699
- for (const [D$1, t] of Object.entries(C)) {
700
- for (const [s, i] of Object.entries(t)) C[s] = {
701
- open: `\x1B[${i[0]}m`,
702
- close: `\x1B[${i[1]}m`
703
- }, t[s] = C[s], e$1.set(i[0], i[1]);
704
- Object.defineProperty(C, D$1, {
705
- value: t,
706
- enumerable: !1
737
+ const modifierNames = Object.keys(styles.modifier);
738
+ const foregroundColorNames = Object.keys(styles.color);
739
+ const backgroundColorNames = Object.keys(styles.bgColor);
740
+ const colorNames = [...foregroundColorNames, ...backgroundColorNames];
741
+ function assembleStyles() {
742
+ const codes = new Map();
743
+ for (const [groupName, group$1] of Object.entries(styles)) {
744
+ for (const [styleName, style] of Object.entries(group$1)) {
745
+ styles[styleName] = {
746
+ open: `\u001B[${style[0]}m`,
747
+ close: `\u001B[${style[1]}m`
748
+ };
749
+ group$1[styleName] = styles[styleName];
750
+ codes.set(style[0], style[1]);
751
+ }
752
+ Object.defineProperty(styles, groupName, {
753
+ value: group$1,
754
+ enumerable: false
707
755
  });
708
756
  }
709
- return Object.defineProperty(C, "codes", {
710
- value: e$1,
711
- enumerable: !1
712
- }), C.color.close = "\x1B[39m", C.bgColor.close = "\x1B[49m", C.color.ansi = H$1(), C.color.ansi256 = U$1(), C.color.ansi16m = J$1(), C.bgColor.ansi = H$1(O$1), C.bgColor.ansi256 = U$1(O$1), C.bgColor.ansi16m = J$1(O$1), Object.defineProperties(C, {
757
+ Object.defineProperty(styles, "codes", {
758
+ value: codes,
759
+ enumerable: false
760
+ });
761
+ styles.color.close = "\x1B[39m";
762
+ styles.bgColor.close = "\x1B[49m";
763
+ styles.color.ansi = wrapAnsi16();
764
+ styles.color.ansi256 = wrapAnsi256();
765
+ styles.color.ansi16m = wrapAnsi16m();
766
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
767
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
768
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
769
+ Object.defineProperties(styles, {
713
770
  rgbToAnsi256: {
714
- value: (D$1, t, s) => D$1 === t && t === s ? D$1 < 8 ? 16 : D$1 > 248 ? 231 : Math.round((D$1 - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(D$1 / 255 * 5) + 6 * Math.round(t / 255 * 5) + Math.round(s / 255 * 5),
715
- enumerable: !1
771
+ value: (red, green, blue) => {
772
+ if (red === green && green === blue) {
773
+ if (red < 8) return 16;
774
+ if (red > 248) return 231;
775
+ return Math.round((red - 8) / 247 * 24) + 232;
776
+ }
777
+ return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
778
+ },
779
+ enumerable: false
716
780
  },
717
781
  hexToRgb: {
718
- value: (D$1) => {
719
- const t = /[a-f\d]{6}|[a-f\d]{3}/i.exec(D$1.toString(16));
720
- if (!t) return [
782
+ value: (hex) => {
783
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
784
+ if (!matches) return [
721
785
  0,
722
786
  0,
723
787
  0
724
788
  ];
725
- let [s] = t;
726
- s.length === 3 && (s = [...s].map((F$1) => F$1 + F$1).join(""));
727
- const i = Number.parseInt(s, 16);
789
+ let [colorString] = matches;
790
+ if (colorString.length === 3) colorString = [...colorString].map((character) => character + character).join("");
791
+ const integer = Number.parseInt(colorString, 16);
728
792
  return [
729
- i >> 16 & 255,
730
- i >> 8 & 255,
731
- i & 255
793
+ integer >> 16 & 255,
794
+ integer >> 8 & 255,
795
+ integer & 255
732
796
  ];
733
797
  },
734
- enumerable: !1
798
+ enumerable: false
735
799
  },
736
800
  hexToAnsi256: {
737
- value: (D$1) => C.rgbToAnsi256(...C.hexToRgb(D$1)),
738
- enumerable: !1
801
+ value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
802
+ enumerable: false
739
803
  },
740
804
  ansi256ToAnsi: {
741
- value: (D$1) => {
742
- if (D$1 < 8) return 30 + D$1;
743
- if (D$1 < 16) return 90 + (D$1 - 8);
744
- let t, s, i;
745
- if (D$1 >= 232) t = ((D$1 - 232) * 10 + 8) / 255, s = t, i = t;
746
- else {
747
- D$1 -= 16;
748
- const r = D$1 % 36;
749
- t = Math.floor(D$1 / 36) / 5, s = Math.floor(r / 6) / 5, i = r % 6 / 5;
805
+ value: (code) => {
806
+ if (code < 8) return 30 + code;
807
+ if (code < 16) return 90 + (code - 8);
808
+ let red;
809
+ let green;
810
+ let blue;
811
+ if (code >= 232) {
812
+ red = ((code - 232) * 10 + 8) / 255;
813
+ green = red;
814
+ blue = red;
815
+ } else {
816
+ code -= 16;
817
+ const remainder = code % 36;
818
+ red = Math.floor(code / 36) / 5;
819
+ green = Math.floor(remainder / 6) / 5;
820
+ blue = remainder % 6 / 5;
750
821
  }
751
- const F$1 = Math.max(t, s, i) * 2;
752
- if (F$1 === 0) return 30;
753
- let u = 30 + (Math.round(i) << 2 | Math.round(s) << 1 | Math.round(t));
754
- return F$1 === 2 && (u += 60), u;
822
+ const value = Math.max(red, green, blue) * 2;
823
+ if (value === 0) return 30;
824
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
825
+ if (value === 2) result += 60;
826
+ return result;
755
827
  },
756
- enumerable: !1
828
+ enumerable: false
757
829
  },
758
830
  rgbToAnsi: {
759
- value: (D$1, t, s) => C.ansi256ToAnsi(C.rgbToAnsi256(D$1, t, s)),
760
- enumerable: !1
831
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
832
+ enumerable: false
761
833
  },
762
834
  hexToAnsi: {
763
- value: (D$1) => C.ansi256ToAnsi(C.hexToAnsi256(D$1)),
764
- enumerable: !1
835
+ value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
836
+ enumerable: false
765
837
  }
766
- }), C;
767
- }
768
- const mu = gu(), _$1 = new Set(["\x1B", "›"]), vu = 39, M$1 = "\x07", Q = "[", bu = "]", X$1 = "m", T$1 = `${bu}8;;`, uu = (e$1) => `${_$1.values().next().value}${Q}${e$1}${X$1}`, Du = (e$1) => `${_$1.values().next().value}${T$1}${e$1}${M$1}`, wu = (e$1) => e$1.split(" ").map((D$1) => m(D$1)), j$1 = (e$1, D$1, t) => {
769
- const s = [...D$1];
770
- let i = !1, F$1 = !1, u = m(Y(e$1[e$1.length - 1]));
771
- for (const [r, a] of s.entries()) {
772
- const n$1 = m(a);
773
- if (u + n$1 <= t ? e$1[e$1.length - 1] += a : (e$1.push(a), u = 0), _$1.has(a) && (i = !0, F$1 = s.slice(r + 1).join("").startsWith(T$1)), i) {
774
- F$1 ? a === M$1 && (i = !1, F$1 = !1) : a === X$1 && (i = !1);
775
- continue;
776
- }
777
- u += n$1, u === t && r < s.length - 1 && (e$1.push(""), u = 0);
778
- }
779
- !u && e$1[e$1.length - 1].length > 0 && e$1.length > 1 && (e$1[e$1.length - 2] += e$1.pop());
780
- }, yu = (e$1) => {
781
- const D$1 = e$1.split(" ");
782
- let t = D$1.length;
783
- for (; t > 0 && !(m(D$1[t - 1]) > 0);) t--;
784
- return t === D$1.length ? e$1 : D$1.slice(0, t).join(" ") + D$1.slice(t).join("");
785
- }, _u = (e$1, D$1, t = {}) => {
786
- if (t.trim !== !1 && e$1.trim() === "") return "";
787
- let s = "", i, F$1;
788
- const u = wu(e$1);
789
- let r = [""];
790
- for (const [n$1, l] of e$1.split(" ").entries()) {
791
- t.trim !== !1 && (r[r.length - 1] = r[r.length - 1].trimStart());
792
- let o$1 = m(r[r.length - 1]);
793
- if (n$1 !== 0 && (o$1 >= D$1 && (t.wordWrap === !1 || t.trim === !1) && (r.push(""), o$1 = 0), (o$1 > 0 || t.trim === !1) && (r[r.length - 1] += " ", o$1++)), t.hard && u[n$1] > D$1) {
794
- const A$1 = D$1 - o$1, w = 1 + Math.floor((u[n$1] - A$1 - 1) / D$1);
795
- Math.floor((u[n$1] - 1) / D$1) < w && r.push(""), j$1(r, l, D$1);
796
- continue;
797
- }
798
- if (o$1 + u[n$1] > D$1 && o$1 > 0 && u[n$1] > 0) {
799
- if (t.wordWrap === !1 && o$1 < D$1) {
800
- j$1(r, l, D$1);
801
- continue;
802
- }
803
- r.push("");
804
- }
805
- if (o$1 + u[n$1] > D$1 && t.wordWrap === !1) {
806
- j$1(r, l, D$1);
807
- continue;
808
- }
809
- r[r.length - 1] += l;
810
- }
811
- t.trim !== !1 && (r = r.map((n$1) => yu(n$1)));
812
- const a = [...r.join(`
813
- `)];
814
- for (const [n$1, l] of a.entries()) {
815
- if (s += l, _$1.has(l)) {
816
- const { groups: A$1 } = new RegExp(`(?:\\${Q}(?<code>\\d+)m|\\${T$1}(?<uri>.*)${M$1})`).exec(a.slice(n$1).join("")) || { groups: {} };
817
- if (A$1.code !== void 0) {
818
- const w = Number.parseFloat(A$1.code);
819
- i = w === vu ? void 0 : w;
820
- } else A$1.uri !== void 0 && (F$1 = A$1.uri.length === 0 ? void 0 : A$1.uri);
821
- }
822
- const o$1 = mu.codes.get(Number(i));
823
- a[n$1 + 1] === `
824
- ` ? (F$1 && (s += Du("")), i && o$1 && (s += uu(o$1))) : l === `
825
- ` && (i && o$1 && (s += uu(i)), F$1 && (s += Du(F$1)));
826
- }
827
- return s;
828
- };
829
- function tu(e$1, D$1, t) {
830
- return String(e$1).normalize().replace(/\r\n/g, `
831
- `).split(`
832
- `).map((s) => _u(s, D$1, t)).join(`
833
- `);
834
- }
835
- const $u = [
836
- "up",
837
- "down",
838
- "left",
839
- "right",
840
- "space",
841
- "enter",
842
- "cancel"
843
- ], c = {
844
- actions: new Set($u),
845
- aliases: new Map([
846
- ["k", "up"],
847
- ["j", "down"],
848
- ["h", "left"],
849
- ["l", "right"],
850
- ["", "cancel"],
851
- ["escape", "cancel"]
852
- ]),
853
- messages: {
854
- cancel: "Canceled",
855
- error: "Something went wrong"
856
- }
857
- };
858
- function P$1(e$1, D$1) {
859
- if (typeof e$1 == "string") return c.aliases.get(e$1) === D$1;
860
- for (const t of e$1) if (t !== void 0 && P$1(t, D$1)) return !0;
861
- return !1;
862
- }
863
- function Su(e$1, D$1) {
864
- if (e$1 === D$1) return;
865
- const t = e$1.split(`
866
- `), s = D$1.split(`
867
- `), i = [];
868
- for (let F$1 = 0; F$1 < Math.max(t.length, s.length); F$1++) t[F$1] !== s[F$1] && i.push(F$1);
869
- return i;
870
- }
871
- const Vu = globalThis.process.platform.startsWith("win"), N$1 = Symbol("clack:cancel");
872
- function Ou$1(e$1) {
873
- return e$1 === N$1;
874
- }
875
- function $(e$1, D$1) {
876
- const t = e$1;
877
- t.isTTY && t.setRawMode(D$1);
878
- }
879
- function Mu({ input: e$1 = stdin, output: D$1 = stdout, overwrite: t = !0, hideCursor: s = !0 } = {}) {
880
- const i = y.createInterface({
881
- input: e$1,
882
- output: D$1,
883
- prompt: "",
884
- tabSize: 1
885
838
  });
886
- y.emitKeypressEvents(e$1, i), e$1 instanceof ReadStream && e$1.isTTY && e$1.setRawMode(!0);
887
- const F$1 = (u, { name: r, sequence: a }) => {
888
- const n$1 = String(u);
889
- if (P$1([
890
- n$1,
891
- r,
892
- a
893
- ], "cancel")) {
894
- s && D$1.write(import_src$1.cursor.show), process.exit(0);
895
- return;
896
- }
897
- if (!t) return;
898
- const l = r === "return" ? 0 : -1, o$1 = r === "return" ? -1 : 0;
899
- y.moveCursor(D$1, l, o$1, () => {
900
- y.clearLine(D$1, 1, () => {
901
- e$1.once("keypress", F$1);
902
- });
903
- });
839
+ return styles;
840
+ }
841
+ const ansiStyles = assembleStyles();
842
+ const ANSI_OSC = "]";
843
+ const ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`;
844
+ var import_src$2 = __toESM$2(require_src$1(), 1);
845
+ const cancel$1 = Symbol("clack:cancel");
846
+ var import_src$1 = __toESM$2(require_src$1(), 1);
847
+ var require_picocolors$1$1 = __commonJS$2({ "node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js"(exports$2, module$1) {
848
+ let p$1 = process || {}, argv$1 = p$1.argv || [], env$1 = p$1.env || {};
849
+ let isColorSupported$1 = !(!!env$1.NO_COLOR || argv$1.includes("--no-color")) && (!!env$1.FORCE_COLOR || argv$1.includes("--color") || p$1.platform === "win32" || (p$1.stdout || {}).isTTY && env$1.TERM !== "dumb" || !!env$1.CI);
850
+ let formatter$1 = (open, close, replace = open) => (input) => {
851
+ let string$1 = "" + input, index = string$1.indexOf(close, open.length);
852
+ return ~index ? open + replaceClose$1(string$1, close, replace, index) + close : open + string$1 + close;
904
853
  };
905
- return s && D$1.write(import_src$1.cursor.hide), e$1.once("keypress", F$1), () => {
906
- e$1.off("keypress", F$1), s && D$1.write(import_src$1.cursor.show), e$1 instanceof ReadStream && e$1.isTTY && !Vu && e$1.setRawMode(!1), i.terminal = !1, i.close();
854
+ let replaceClose$1 = (string$1, close, replace, index) => {
855
+ let result = "", cursor$4 = 0;
856
+ do {
857
+ result += string$1.substring(cursor$4, index) + replace;
858
+ cursor$4 = index + close.length;
859
+ index = string$1.indexOf(close, cursor$4);
860
+ } while (~index);
861
+ return result + string$1.substring(cursor$4);
907
862
  };
863
+ let createColors$1 = (enabled = isColorSupported$1) => {
864
+ let f = enabled ? formatter$1 : () => String;
865
+ return {
866
+ isColorSupported: enabled,
867
+ reset: f("\x1B[0m", "\x1B[0m"),
868
+ bold: f("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
869
+ dim: f("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
870
+ italic: f("\x1B[3m", "\x1B[23m"),
871
+ underline: f("\x1B[4m", "\x1B[24m"),
872
+ inverse: f("\x1B[7m", "\x1B[27m"),
873
+ hidden: f("\x1B[8m", "\x1B[28m"),
874
+ strikethrough: f("\x1B[9m", "\x1B[29m"),
875
+ black: f("\x1B[30m", "\x1B[39m"),
876
+ red: f("\x1B[31m", "\x1B[39m"),
877
+ green: f("\x1B[32m", "\x1B[39m"),
878
+ yellow: f("\x1B[33m", "\x1B[39m"),
879
+ blue: f("\x1B[34m", "\x1B[39m"),
880
+ magenta: f("\x1B[35m", "\x1B[39m"),
881
+ cyan: f("\x1B[36m", "\x1B[39m"),
882
+ white: f("\x1B[37m", "\x1B[39m"),
883
+ gray: f("\x1B[90m", "\x1B[39m"),
884
+ bgBlack: f("\x1B[40m", "\x1B[49m"),
885
+ bgRed: f("\x1B[41m", "\x1B[49m"),
886
+ bgGreen: f("\x1B[42m", "\x1B[49m"),
887
+ bgYellow: f("\x1B[43m", "\x1B[49m"),
888
+ bgBlue: f("\x1B[44m", "\x1B[49m"),
889
+ bgMagenta: f("\x1B[45m", "\x1B[49m"),
890
+ bgCyan: f("\x1B[46m", "\x1B[49m"),
891
+ bgWhite: f("\x1B[47m", "\x1B[49m"),
892
+ blackBright: f("\x1B[90m", "\x1B[39m"),
893
+ redBright: f("\x1B[91m", "\x1B[39m"),
894
+ greenBright: f("\x1B[92m", "\x1B[39m"),
895
+ yellowBright: f("\x1B[93m", "\x1B[39m"),
896
+ blueBright: f("\x1B[94m", "\x1B[39m"),
897
+ magentaBright: f("\x1B[95m", "\x1B[39m"),
898
+ cyanBright: f("\x1B[96m", "\x1B[39m"),
899
+ whiteBright: f("\x1B[97m", "\x1B[39m"),
900
+ bgBlackBright: f("\x1B[100m", "\x1B[49m"),
901
+ bgRedBright: f("\x1B[101m", "\x1B[49m"),
902
+ bgGreenBright: f("\x1B[102m", "\x1B[49m"),
903
+ bgYellowBright: f("\x1B[103m", "\x1B[49m"),
904
+ bgBlueBright: f("\x1B[104m", "\x1B[49m"),
905
+ bgMagentaBright: f("\x1B[105m", "\x1B[49m"),
906
+ bgCyanBright: f("\x1B[106m", "\x1B[49m"),
907
+ bgWhiteBright: f("\x1B[107m", "\x1B[49m")
908
+ };
909
+ };
910
+ module$1.exports = createColors$1();
911
+ module$1.exports.createColors = createColors$1;
912
+ } });
913
+ var import_picocolors$1$1 = __toESM$2(require_picocolors$1$1(), 1);
914
+ var import_picocolors$2$1 = __toESM$2(require_picocolors$1$1(), 1);
915
+ var import_src$3 = __toESM$2(require_src$1(), 1);
916
+ const isWindows = process$1.platform.startsWith("win");
917
+ function isUnicodeSupported() {
918
+ if (process$1.platform !== "win32") return process$1.env.TERM !== "linux";
919
+ return Boolean(process$1.env.CI) || Boolean(process$1.env.WT_SESSION) || Boolean(process$1.env.TERMINUS_SUBLIME) || process$1.env.ConEmuTask === "{cmd::Cmder}" || process$1.env.TERM_PROGRAM === "Terminus-Sublime" || process$1.env.TERM_PROGRAM === "vscode" || process$1.env.TERM === "xterm-256color" || process$1.env.TERM === "alacritty" || process$1.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
908
920
  }
909
- const Tu = (e$1) => e$1 instanceof WriteStream && e$1.columns ? e$1.columns : 80;
910
- var ju = Object.defineProperty, Pu = (e$1, D$1, t) => D$1 in e$1 ? ju(e$1, D$1, {
911
- enumerable: !0,
912
- configurable: !0,
913
- writable: !0,
914
- value: t
915
- }) : e$1[D$1] = t, E$1 = (e$1, D$1, t) => (Pu(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t);
916
- var B = class {
917
- constructor(D$1, t = !0) {
918
- E$1(this, "input"), E$1(this, "output"), E$1(this, "_abortSignal"), E$1(this, "rl"), E$1(this, "opts"), E$1(this, "_render"), E$1(this, "_track", !1), E$1(this, "_prevFrame", ""), E$1(this, "_subscribers", new Map()), E$1(this, "_cursor", 0), E$1(this, "_usePlaceholderAsValue", !0), E$1(this, "state", "initial"), E$1(this, "error", ""), E$1(this, "value");
919
- const { input: s = stdin, output: i = stdout, render: F$1, signal: u,...r } = D$1;
920
- this.opts = r, this.onKeypress = this.onKeypress.bind(this), this.close = this.close.bind(this), this.render = this.render.bind(this), this._render = F$1.bind(this), this._track = t, this._abortSignal = u, this.input = s, this.output = i;
921
- }
922
- unsubscribe() {
923
- this._subscribers.clear();
924
- }
925
- setSubscriber(D$1, t) {
926
- const s = this._subscribers.get(D$1) ?? [];
927
- s.push(t), this._subscribers.set(D$1, s);
928
- }
929
- on(D$1, t) {
930
- this.setSubscriber(D$1, { cb: t });
931
- }
932
- once(D$1, t) {
933
- this.setSubscriber(D$1, {
934
- cb: t,
935
- once: !0
936
- });
937
- }
938
- emit(D$1, ...t) {
939
- const s = this._subscribers.get(D$1) ?? [], i = [];
940
- for (const F$1 of s) F$1.cb(...t), F$1.once && i.push(() => s.splice(s.indexOf(F$1), 1));
941
- for (const F$1 of i) F$1();
942
- }
943
- prompt() {
944
- return new Promise((D$1, t) => {
945
- if (this._abortSignal) {
946
- if (this._abortSignal.aborted) return this.state = "cancel", this.close(), D$1(N$1);
947
- this._abortSignal.addEventListener("abort", () => {
948
- this.state = "cancel", this.close();
949
- }, { once: !0 });
950
- }
951
- this.rl = Eu.createInterface({
952
- input: this.input,
953
- tabSize: 2,
954
- prompt: "",
955
- escapeCodeTimeout: 50,
956
- terminal: !0
957
- }), this.rl.prompt(), this.opts.initialValue !== void 0 && (this._track && this.rl.write(this.opts.initialValue), this._setValue(this.opts.initialValue)), this.input.on("keypress", this.onKeypress), $(this.input, !0), this.output.on("resize", this.render), this.render(), this.once("submit", () => {
958
- this.output.write(import_src$1.cursor.show), this.output.off("resize", this.render), $(this.input, !1), D$1(this.value);
959
- }), this.once("cancel", () => {
960
- this.output.write(import_src$1.cursor.show), this.output.off("resize", this.render), $(this.input, !1), D$1(N$1);
961
- });
962
- });
963
- }
964
- _isActionKey(D$1, t) {
965
- return D$1 === " ";
966
- }
967
- _setValue(D$1) {
968
- this.value = D$1, this.emit("value", this.value);
969
- }
970
- onKeypress(D$1, t) {
971
- if (this._track && t.name !== "return" && (t.name && this._isActionKey(D$1, t) && this.rl?.write(null, {
972
- ctrl: !0,
973
- name: "h"
974
- }), this._cursor = this.rl?.cursor ?? 0, this._setValue(this.rl?.line)), this.state === "error" && (this.state = "active"), t?.name && (!this._track && c.aliases.has(t.name) && this.emit("cursor", c.aliases.get(t.name)), c.actions.has(t.name) && this.emit("cursor", t.name)), D$1 && (D$1.toLowerCase() === "y" || D$1.toLowerCase() === "n") && this.emit("confirm", D$1.toLowerCase() === "y"), this._usePlaceholderAsValue && D$1 === " " && this.opts.placeholder && (this.value || (this.rl?.write(this.opts.placeholder), this._setValue(this.opts.placeholder))), this.emit("key", D$1?.toLowerCase(), t), t?.name === "return") {
975
- if (!this.value && this.opts.placeholder && (this.rl?.write(this.opts.placeholder), this._setValue(this.opts.placeholder)), this.opts.validate) {
976
- const s = this.opts.validate(this.value);
977
- s && (this.error = s instanceof Error ? s.message : s, this.state = "error", this.rl?.write(this.value));
978
- }
979
- this.state !== "error" && (this.state = "submit");
980
- }
981
- P$1([
982
- D$1,
983
- t?.name,
984
- t?.sequence
985
- ], "cancel") && (this.state = "cancel"), (this.state === "submit" || this.state === "cancel") && this.emit("finalize"), this.render(), (this.state === "submit" || this.state === "cancel") && this.close();
986
- }
987
- close() {
988
- this.input.unpipe(), this.input.removeListener("keypress", this.onKeypress), this.output.write(`
989
- `), $(this.input, !1), this.rl?.close(), this.rl = void 0, this.emit(`${this.state}`, this.value), this.unsubscribe();
990
- }
991
- restoreCursor() {
992
- const D$1 = tu(this._prevFrame, process.stdout.columns, { hard: !0 }).split(`
993
- `).length - 1;
994
- this.output.write(import_src$1.cursor.move(-999, D$1 * -1));
995
- }
996
- render() {
997
- const D$1 = tu(this._render(this) ?? "", process.stdout.columns, { hard: !0 });
998
- if (D$1 !== this._prevFrame) {
999
- if (this.state === "initial") this.output.write(import_src$1.cursor.hide);
1000
- else {
1001
- const t = Su(this._prevFrame, D$1);
1002
- if (this.restoreCursor(), t && t?.length === 1) {
1003
- const s = t[0];
1004
- this.output.write(import_src$1.cursor.move(0, s)), this.output.write(import_src$1.erase.lines(1));
1005
- const i = D$1.split(`
1006
- `);
1007
- this.output.write(i[s]), this._prevFrame = D$1, this.output.write(import_src$1.cursor.move(0, i.length - s - 1));
1008
- return;
1009
- }
1010
- if (t && t?.length > 1) {
1011
- const s = t[0];
1012
- this.output.write(import_src$1.cursor.move(0, s)), this.output.write(import_src$1.erase.down());
1013
- const i = D$1.split(`
1014
- `).slice(s);
1015
- this.output.write(i.join(`
1016
- `)), this._prevFrame = D$1;
1017
- return;
1018
- }
1019
- this.output.write(import_src$1.erase.down());
1020
- }
1021
- this.output.write(D$1), this.state === "initial" && (this.state = "active"), this._prevFrame = D$1;
1022
- }
1023
- }
1024
- };
1025
- var Nu = class extends B {
1026
- get cursor() {
1027
- return this.value ? 0 : 1;
1028
- }
1029
- get _value() {
1030
- return this.cursor === 0;
1031
- }
1032
- constructor(D$1) {
1033
- super(D$1, !1), this.value = !!D$1.initialValue, this.on("value", () => {
1034
- this.value = this._value;
1035
- }), this.on("confirm", (t) => {
1036
- this.output.write(import_src$1.cursor.move(0, -1)), this.value = t, this.state = "submit", this.close();
1037
- }), this.on("cursor", () => {
1038
- this.value = !this.value;
1039
- });
1040
- }
1041
- };
1042
- var Wu = Object.defineProperty, Lu = (e$1, D$1, t) => D$1 in e$1 ? Wu(e$1, D$1, {
1043
- enumerable: !0,
1044
- configurable: !0,
1045
- writable: !0,
1046
- value: t
1047
- }) : e$1[D$1] = t, eu = (e$1, D$1, t) => (Lu(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t), su = (e$1, D$1, t) => {
1048
- if (!D$1.has(e$1)) throw TypeError("Cannot " + t);
1049
- }, W$1 = (e$1, D$1, t) => (su(e$1, D$1, "read from private field"), t ? t.call(e$1) : D$1.get(e$1)), Iu = (e$1, D$1, t) => {
1050
- if (D$1.has(e$1)) throw TypeError("Cannot add the same private member more than once");
1051
- D$1 instanceof WeakSet ? D$1.add(e$1) : D$1.set(e$1, t);
1052
- }, Ru = (e$1, D$1, t, s) => (su(e$1, D$1, "write to private field"), s ? s.call(e$1, t) : D$1.set(e$1, t), t), d;
1053
- let Ku = class extends B {
1054
- constructor(D$1) {
1055
- super(D$1, !1), eu(this, "options"), eu(this, "cursor", 0), Iu(this, d, void 0);
1056
- const { options: t } = D$1;
1057
- Ru(this, d, D$1.selectableGroups !== !1), this.options = Object.entries(t).flatMap(([s, i]) => [{
1058
- value: s,
1059
- group: !0,
1060
- label: s
1061
- }, ...i.map((F$1) => ({
1062
- ...F$1,
1063
- group: s
1064
- }))]), this.value = [...D$1.initialValues ?? []], this.cursor = Math.max(this.options.findIndex(({ value: s }) => s === D$1.cursorAt), W$1(this, d) ? 0 : 1), this.on("cursor", (s) => {
1065
- switch (s) {
1066
- case "left":
1067
- case "up": {
1068
- this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
1069
- const i = this.options[this.cursor]?.group === !0;
1070
- !W$1(this, d) && i && (this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1);
1071
- break;
1072
- }
1073
- case "down":
1074
- case "right": {
1075
- this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
1076
- const i = this.options[this.cursor]?.group === !0;
1077
- !W$1(this, d) && i && (this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1);
1078
- break;
1079
- }
1080
- case "space":
1081
- this.toggleValue();
1082
- break;
1083
- }
1084
- });
1085
- }
1086
- getGroupItems(D$1) {
1087
- return this.options.filter((t) => t.group === D$1);
1088
- }
1089
- isGroupSelected(D$1) {
1090
- return this.getGroupItems(D$1).every((t) => this.value.includes(t.value));
1091
- }
1092
- toggleValue() {
1093
- const D$1 = this.options[this.cursor];
1094
- if (D$1.group === !0) {
1095
- const t = D$1.value, s = this.getGroupItems(t);
1096
- this.isGroupSelected(t) ? this.value = this.value.filter((i) => s.findIndex((F$1) => F$1.value === i) === -1) : this.value = [...this.value, ...s.map((i) => i.value)], this.value = Array.from(new Set(this.value));
1097
- } else {
1098
- const t = this.value.includes(D$1.value);
1099
- this.value = t ? this.value.filter((s) => s !== D$1.value) : [...this.value, D$1.value];
1100
- }
1101
- }
1102
- };
1103
- d = new WeakMap();
1104
- var Gu = Object.defineProperty, zu = (e$1, D$1, t) => D$1 in e$1 ? Gu(e$1, D$1, {
1105
- enumerable: !0,
1106
- configurable: !0,
1107
- writable: !0,
1108
- value: t
1109
- }) : e$1[D$1] = t, iu = (e$1, D$1, t) => (zu(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t);
1110
- let Yu = class extends B {
1111
- constructor(D$1) {
1112
- super(D$1, !1), iu(this, "options"), iu(this, "cursor", 0), this.options = D$1.options, this.value = [...D$1.initialValues ?? []], this.cursor = Math.max(this.options.findIndex(({ value: t }) => t === D$1.cursorAt), 0), this.on("key", (t) => {
1113
- t === "a" && this.toggleAll();
1114
- }), this.on("cursor", (t) => {
1115
- switch (t) {
1116
- case "left":
1117
- case "up":
1118
- this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
1119
- break;
1120
- case "down":
1121
- case "right":
1122
- this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
1123
- break;
1124
- case "space":
1125
- this.toggleValue();
1126
- break;
1127
- }
1128
- });
1129
- }
1130
- get _value() {
1131
- return this.options[this.cursor].value;
1132
- }
1133
- toggleAll() {
1134
- const D$1 = this.value.length === this.options.length;
1135
- this.value = D$1 ? [] : this.options.map((t) => t.value);
1136
- }
1137
- toggleValue() {
1138
- const D$1 = this.value.includes(this._value);
1139
- this.value = D$1 ? this.value.filter((t) => t !== this._value) : [...this.value, this._value];
1140
- }
1141
- };
1142
- var Zu = Object.defineProperty, qu = (e$1, D$1, t) => D$1 in e$1 ? Zu(e$1, D$1, {
1143
- enumerable: !0,
1144
- configurable: !0,
1145
- writable: !0,
1146
- value: t
1147
- }) : e$1[D$1] = t, Hu = (e$1, D$1, t) => (qu(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t);
1148
- let Uu = class extends B {
1149
- constructor({ mask: D$1,...t }) {
1150
- super(t), Hu(this, "_mask", "•"), this._mask = D$1 ?? "•";
1151
- }
1152
- get cursor() {
1153
- return this._cursor;
1154
- }
1155
- get masked() {
1156
- return this.value?.replaceAll(/./g, this._mask) ?? "";
1157
- }
1158
- get valueWithCursor() {
1159
- if (this.state === "submit" || this.state === "cancel") return this.masked;
1160
- const D$1 = this.value ?? "";
1161
- if (this.cursor >= D$1.length) return `${this.masked}${import_picocolors$3$1.default.inverse(import_picocolors$3$1.default.hidden("_"))}`;
1162
- const t = this.masked.slice(0, this.cursor), s = this.masked.slice(this.cursor);
1163
- return `${t}${import_picocolors$3$1.default.inverse(s[0])}${s.slice(1)}`;
1164
- }
1165
- };
1166
- var Ju = Object.defineProperty, Qu = (e$1, D$1, t) => D$1 in e$1 ? Ju(e$1, D$1, {
1167
- enumerable: !0,
1168
- configurable: !0,
1169
- writable: !0,
1170
- value: t
1171
- }) : e$1[D$1] = t, Fu = (e$1, D$1, t) => (Qu(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t);
1172
- let Xu = class extends B {
1173
- constructor(D$1) {
1174
- super(D$1, !1), Fu(this, "options"), Fu(this, "cursor", 0), this.options = D$1.options, this.cursor = this.options.findIndex(({ value: t }) => t === D$1.initialValue), this.cursor === -1 && (this.cursor = 0), this.changeValue(), this.on("cursor", (t) => {
1175
- switch (t) {
1176
- case "left":
1177
- case "up":
1178
- this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
1179
- break;
1180
- case "down":
1181
- case "right":
1182
- this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
1183
- break;
1184
- }
1185
- this.changeValue();
1186
- });
1187
- }
1188
- get _value() {
1189
- return this.options[this.cursor];
1190
- }
1191
- changeValue() {
1192
- this.value = this._value.value;
1193
- }
1194
- };
1195
- var uD = Object.defineProperty, DD = (e$1, D$1, t) => D$1 in e$1 ? uD(e$1, D$1, {
1196
- enumerable: !0,
1197
- configurable: !0,
1198
- writable: !0,
1199
- value: t
1200
- }) : e$1[D$1] = t, ru = (e$1, D$1, t) => (DD(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t);
1201
- let tD = class extends B {
1202
- constructor(D$1) {
1203
- super(D$1, !1), ru(this, "options"), ru(this, "cursor", 0), this.options = D$1.options;
1204
- const t = this.options.map(({ value: [s] }) => s?.toLowerCase());
1205
- this.cursor = Math.max(t.indexOf(D$1.initialValue), 0), this.on("key", (s) => {
1206
- if (!t.includes(s)) return;
1207
- const i = this.options.find(({ value: [F$1] }) => F$1?.toLowerCase() === s);
1208
- i && (this.value = i.value, this.state = "submit", this.emit("submit"));
1209
- });
1210
- }
1211
- }, eD = class extends B {
1212
- get valueWithCursor() {
1213
- if (this.state === "submit") return this.value;
1214
- const D$1 = this.value ?? "";
1215
- if (this.cursor >= D$1.length) return `${this.value}\u2588`;
1216
- const t = D$1.slice(0, this.cursor), [s, ...i] = D$1.slice(this.cursor);
1217
- return `${t}${import_picocolors$3$1.default.inverse(s)}${i.join("")}`;
1218
- }
1219
- get cursor() {
1220
- return this._cursor;
1221
- }
1222
- constructor(D$1) {
1223
- super(D$1), this.on("finalize", () => {
1224
- this.value || (this.value = D$1.defaultValue);
1225
- });
1226
- }
1227
- };
1228
- var sD = Object.defineProperty, iD = (e$1, D$1, t) => D$1 in e$1 ? sD(e$1, D$1, {
1229
- enumerable: !0,
1230
- configurable: !0,
1231
- writable: !0,
1232
- value: t
1233
- }) : e$1[D$1] = t, g = (e$1, D$1, t) => (iD(e$1, typeof D$1 != "symbol" ? D$1 + "" : D$1, t), t), L$1 = (e$1, D$1, t) => {
1234
- if (!D$1.has(e$1)) throw TypeError("Cannot " + t);
1235
- }, f$1 = (e$1, D$1, t) => (L$1(e$1, D$1, "read from private field"), t ? t.call(e$1) : D$1.get(e$1)), v = (e$1, D$1, t) => {
1236
- if (D$1.has(e$1)) throw TypeError("Cannot add the same private member more than once");
1237
- D$1 instanceof WeakSet ? D$1.add(e$1) : D$1.set(e$1, t);
1238
- }, b = (e$1, D$1, t, s) => (L$1(e$1, D$1, "write to private field"), s ? s.call(e$1, t) : D$1.set(e$1, t), t), Cu = (e$1, D$1, t) => (L$1(e$1, D$1, "access private method"), t), x, k$1, S, I, nu, R$1, ou;
1239
- function FD(e$1, D$1) {
1240
- if (e$1 === void 0 || D$1.length === 0) return 0;
1241
- const t = D$1.findIndex((s) => s.value === e$1);
1242
- return t !== -1 ? t : 0;
1243
- }
1244
- function rD(e$1, D$1) {
1245
- return (D$1.label ?? String(D$1.value)).toLowerCase().includes(e$1.toLowerCase());
1246
- }
1247
- function au(e$1, D$1) {
1248
- if (D$1) return e$1 ? D$1 : D$1[0];
1249
- }
1250
- var CD = class extends B {
1251
- constructor(D$1) {
1252
- super(D$1), v(this, I), v(this, R$1), g(this, "options"), g(this, "filteredOptions"), g(this, "multiple"), g(this, "isNavigating", !1), g(this, "selectedValues", []), g(this, "focusedValue"), v(this, x, 0), v(this, k$1, void 0), v(this, S, void 0), this.options = D$1.options, this.filteredOptions = [...this.options], this.multiple = D$1.multiple === !0, this._usePlaceholderAsValue = !1, b(this, S, D$1.filter ?? rD);
1253
- let t;
1254
- if (D$1.initialValue && Array.isArray(D$1.initialValue) && (this.multiple ? t = D$1.initialValue : t = D$1.initialValue.slice(0, 1)), t) {
1255
- this.selectedValues = t;
1256
- for (const s of t) {
1257
- const i = this.options.findIndex((F$1) => F$1.value === s);
1258
- i !== -1 && (this.toggleSelected(s), b(this, x, i), this.focusedValue = this.options[f$1(this, x)]?.value);
1259
- }
1260
- }
1261
- this.on("finalize", () => {
1262
- this.value || (this.value = au(this.multiple, t)), this.state === "submit" && (this.value = au(this.multiple, this.selectedValues));
1263
- }), this.on("key", (s, i) => Cu(this, I, nu).call(this, s, i)), this.on("value", (s) => Cu(this, R$1, ou).call(this, s));
1264
- }
1265
- get cursor() {
1266
- return f$1(this, x);
1267
- }
1268
- get valueWithCursor() {
1269
- if (!this.value) return import_picocolors$3$1.default.inverse(import_picocolors$3$1.default.hidden("_"));
1270
- if (this._cursor >= this.value.length) return `${this.value}\u2588`;
1271
- const D$1 = this.value.slice(0, this._cursor), [t, ...s] = this.value.slice(this._cursor);
1272
- return `${D$1}${import_picocolors$3$1.default.inverse(t)}${s.join("")}`;
1273
- }
1274
- _isActionKey(D$1, t) {
1275
- return D$1 === " " || this.multiple && this.isNavigating && t.name === "space" && D$1 !== void 0 && D$1 !== "";
1276
- }
1277
- toggleSelected(D$1) {
1278
- this.filteredOptions.length !== 0 && (this.multiple ? this.selectedValues.includes(D$1) ? this.selectedValues = this.selectedValues.filter((t) => t !== D$1) : this.selectedValues = [...this.selectedValues, D$1] : this.selectedValues = [D$1]);
1279
- }
1280
- };
1281
- x = new WeakMap(), k$1 = new WeakMap(), S = new WeakMap(), I = new WeakSet(), nu = function(e$1, D$1) {
1282
- const t = D$1.name === "up", s = D$1.name === "down";
1283
- t || s ? (b(this, x, Math.max(0, Math.min(f$1(this, x) + (t ? -1 : 1), this.filteredOptions.length - 1))), this.focusedValue = this.filteredOptions[f$1(this, x)]?.value, this.multiple || (this.selectedValues = [this.focusedValue]), this.isNavigating = !0) : this.multiple && this.focusedValue !== void 0 && (D$1.name === "tab" || this.isNavigating && D$1.name === "space") ? this.toggleSelected(this.focusedValue) : this.isNavigating = !1;
1284
- }, R$1 = new WeakSet(), ou = function(e$1) {
1285
- e$1 !== f$1(this, k$1) && (b(this, k$1, e$1), e$1 ? this.filteredOptions = this.options.filter((D$1) => f$1(this, S).call(this, e$1, D$1)) : this.filteredOptions = [...this.options], b(this, x, FD(this.focusedValue, this.filteredOptions)), this.focusedValue = this.filteredOptions[f$1(this, x)]?.value);
1286
- };
1287
- var import_picocolors$1$1 = __toESM(require_picocolors$1(), 1);
1288
- var import_picocolors$2$1 = __toESM(require_picocolors$1(), 1);
1289
- var import_src = __toESM(require_src(), 1);
1290
- function Me() {
1291
- return process$1.platform !== "win32" ? process$1.env.TERM !== "linux" : !!process$1.env.CI || !!process$1.env.WT_SESSION || !!process$1.env.TERMINUS_SUBLIME || process$1.env.ConEmuTask === "{cmd::Cmder}" || process$1.env.TERM_PROGRAM === "Terminus-Sublime" || process$1.env.TERM_PROGRAM === "vscode" || process$1.env.TERM === "xterm-256color" || process$1.env.TERM === "alacritty" || process$1.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
1292
- }
1293
- const P = Me(), W = () => process.env.CI === "true", h = (t, r) => P ? t : r, re = h("◆", "*"), D = h("■", "x"), F = h("▲", "x"), M = h("◇", "o"), ie = h("┌", "T"), o = h("│", "|"), f = h("└", "—"), j = h("●", ">"), N = h("○", " "), L = h("◻", "[•]"), O = h("◼", "[+]"), k = h("◻", "[ ]"), ne = h("▪", "•"), q = h("─", "-"), oe = h("╮", "+"), ae = h("├", "+"), ue = h("╯", "+"), H = h("●", "•"), K = h("◆", "*"), U = h("▲", "!"), X = h("■", "x"), T = (t) => {
1294
- switch (t) {
1295
- case "initial":
1296
- case "active": return import_picocolors$2$1.default.cyan(re);
1297
- case "cancel": return import_picocolors$2$1.default.red(D);
1298
- case "error": return import_picocolors$2$1.default.yellow(F);
1299
- case "submit": return import_picocolors$2$1.default.green(M);
1300
- }
1301
- }, A = (t) => {
1302
- const { cursor: r, options: s, style: i } = t, n$1 = t.output ?? process.stdout, a = n$1 instanceof WriteStream && n$1.rows !== void 0 ? n$1.rows : 10, u = import_picocolors$2$1.default.dim("..."), l = t.maxItems ?? Number.POSITIVE_INFINITY, c$1 = Math.max(a - 4, 0), $$1 = Math.min(c$1, Math.max(l, 5));
1303
- let p$1 = 0;
1304
- r >= p$1 + $$1 - 3 ? p$1 = Math.max(Math.min(r - $$1 + 3, s.length - $$1), 0) : r < p$1 + 2 && (p$1 = Math.max(r - 2, 0));
1305
- const g$1 = $$1 < s.length && p$1 > 0, m$1 = $$1 < s.length && p$1 + $$1 < s.length;
1306
- return s.slice(p$1, p$1 + $$1).map((y$1, d$1, v$1) => {
1307
- const S$1 = d$1 === 0 && g$1, b$1 = d$1 === v$1.length - 1 && m$1;
1308
- return S$1 || b$1 ? u : i(y$1, d$1 + p$1 === r);
1309
- });
1310
- };
1311
- function ce(t) {
1312
- return t.label ?? String(t.value ?? "");
1313
- }
1314
- function le(t, r) {
1315
- if (!t) return !0;
1316
- const s = (r.label ?? String(r.value ?? "")).toLowerCase(), i = (r.hint ?? "").toLowerCase(), n$1 = String(r.value).toLowerCase(), a = t.toLowerCase();
1317
- return s.includes(a) || i.includes(a) || n$1.includes(a);
1318
- }
1319
- function Oe(t, r) {
1320
- const s = [];
1321
- for (const i of r) t.includes(i.value) && s.push(i);
1322
- return s;
1323
- }
1324
- const Re = (t) => new CD({
1325
- options: t.options,
1326
- placeholder: t.placeholder,
1327
- initialValue: t.initialValue ? [t.initialValue] : void 0,
1328
- filter: (r, s) => le(r, s),
1329
- input: t.input,
1330
- output: t.output,
1331
- render() {
1332
- const r = `${import_picocolors$2$1.default.gray(o)}
1333
- ${T(this.state)} ${t.message}
1334
- `, s = String(this.value ?? "");
1335
- switch (this.state) {
1336
- case "submit": {
1337
- const i = Oe(this.selectedValues, this.options), n$1 = i.length > 0 ? i.map(ce).join(", ") : "";
1338
- return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.dim(n$1)}`;
1339
- }
1340
- case "cancel": return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(this.value ?? ""))}`;
1341
- default: {
1342
- const i = this.isNavigating ? import_picocolors$2$1.default.dim(s) : this.valueWithCursor, n$1 = this.filteredOptions.length !== this.options.length ? import_picocolors$2$1.default.dim(` (${this.filteredOptions.length} match${this.filteredOptions.length === 1 ? "" : "es"})`) : "", a = this.filteredOptions.length === 0 ? [] : A({
1343
- cursor: this.cursor,
1344
- options: this.filteredOptions,
1345
- style: (c$1, $$1) => {
1346
- const p$1 = ce(c$1), g$1 = c$1.hint && c$1.value === this.focusedValue ? import_picocolors$2$1.default.dim(` (${c$1.hint})`) : "";
1347
- return $$1 ? `${import_picocolors$2$1.default.green(j)} ${p$1}${g$1}` : `${import_picocolors$2$1.default.dim(N)} ${import_picocolors$2$1.default.dim(p$1)}${g$1}`;
1348
- },
1349
- maxItems: t.maxItems,
1350
- output: t.output
1351
- }), u = [
1352
- `${import_picocolors$2$1.default.dim("↑/↓")} to select`,
1353
- `${import_picocolors$2$1.default.dim("Enter:")} confirm`,
1354
- `${import_picocolors$2$1.default.dim("Type:")} to search`
1355
- ], l = this.filteredOptions.length === 0 && s ? [`${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.yellow("No matches found")}`] : [];
1356
- return [
1357
- r,
1358
- `${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.dim("Search:")} ${i}${n$1}`,
1359
- ...l,
1360
- ...a.map((c$1) => `${import_picocolors$2$1.default.cyan(o)} ${c$1}`),
1361
- `${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.dim(u.join(" • "))}`,
1362
- `${import_picocolors$2$1.default.cyan(f)}`
1363
- ].join(`
1364
- `);
1365
- }
1366
- }
1367
- }
1368
- }).prompt(), xe = (t) => {
1369
- const r = (s, i, n$1, a) => {
1370
- const u = n$1.includes(s.value), l = s.label ?? String(s.value ?? ""), c$1 = s.hint && a !== void 0 && s.value === a ? import_picocolors$2$1.default.dim(` (${s.hint})`) : "", $$1 = u ? import_picocolors$2$1.default.green(O) : import_picocolors$2$1.default.dim(k);
1371
- return i ? `${$$1} ${l}${c$1}` : `${$$1} ${import_picocolors$2$1.default.dim(l)}`;
921
+ var require_picocolors$2 = __commonJS$1({ "node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js"(exports$2, module$1) {
922
+ let p = process || {}, argv = p.argv || [], env$1 = p.env || {};
923
+ let isColorSupported = !(!!env$1.NO_COLOR || argv.includes("--no-color")) && (!!env$1.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env$1.TERM !== "dumb" || !!env$1.CI);
924
+ let formatter = (open, close, replace = open) => (input) => {
925
+ let string$1 = "" + input, index = string$1.indexOf(close, open.length);
926
+ return ~index ? open + replaceClose(string$1, close, replace, index) + close : open + string$1 + close;
1372
927
  };
1373
- return new CD({
1374
- options: t.options,
1375
- multiple: !0,
1376
- filter: (s, i) => le(s, i),
1377
- placeholder: t.placeholder,
1378
- initialValue: t.initialValues,
1379
- input: t.input,
1380
- output: t.output,
1381
- render() {
1382
- const s = `${import_picocolors$2$1.default.gray(o)}
1383
- ${T(this.state)} ${t.message}
1384
- `;
1385
- this.selectedValues.length > 0 && import_picocolors$2$1.default.cyan(` (${this.selectedValues.length} selected)`);
1386
- const i = String(this.value ?? ""), n$1 = this.isNavigating ? import_picocolors$2$1.default.dim(i) : this.valueWithCursor, a = this.filteredOptions.length !== t.options.length ? import_picocolors$2$1.default.dim(` (${this.filteredOptions.length} match${this.filteredOptions.length === 1 ? "" : "es"})`) : "";
1387
- switch (this.state) {
1388
- case "submit": return `${s}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.dim(`${this.selectedValues.length} items selected`)}`;
1389
- case "cancel": return `${s}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(i))}`;
1390
- default: {
1391
- const u = [
1392
- `${import_picocolors$2$1.default.dim("↑/↓")} to navigate`,
1393
- `${import_picocolors$2$1.default.dim("Space:")} select`,
1394
- `${import_picocolors$2$1.default.dim("Enter:")} confirm`,
1395
- `${import_picocolors$2$1.default.dim("Type:")} to search`
1396
- ], l = this.filteredOptions.length === 0 && i ? [`${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.yellow("No matches found")}`] : [], c$1 = A({
1397
- cursor: this.cursor,
1398
- options: this.filteredOptions,
1399
- style: ($$1, p$1) => r($$1, p$1, this.selectedValues, this.focusedValue),
1400
- maxItems: t.maxItems,
1401
- output: t.output
1402
- });
1403
- return [
1404
- s,
1405
- `${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.dim("Search:")} ${n$1}${a}`,
1406
- ...l,
1407
- ...c$1.map(($$1) => `${import_picocolors$2$1.default.cyan(o)} ${$$1}`),
1408
- `${import_picocolors$2$1.default.cyan(o)} ${import_picocolors$2$1.default.dim(u.join(" "))}`,
1409
- `${import_picocolors$2$1.default.cyan(f)}`
1410
- ].join(`
1411
- `);
1412
- }
1413
- }
1414
- }
1415
- }).prompt();
1416
- }, Ve$1 = (t) => {
1417
- const r = t.active ?? "Yes", s = t.inactive ?? "No";
1418
- return new Nu({
1419
- active: r,
1420
- inactive: s,
1421
- input: t.input,
1422
- output: t.output,
1423
- initialValue: t.initialValue ?? !0,
1424
- render() {
1425
- const i = `${import_picocolors$2$1.default.gray(o)}
1426
- ${T(this.state)} ${t.message}
1427
- `, n$1 = this.value ? r : s;
1428
- switch (this.state) {
1429
- case "submit": return `${i}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.dim(n$1)}`;
1430
- case "cancel": return `${i}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(n$1))}
1431
- ${import_picocolors$2$1.default.gray(o)}`;
1432
- default: return `${i}${import_picocolors$2$1.default.cyan(o)} ${this.value ? `${import_picocolors$2$1.default.green(j)} ${r}` : `${import_picocolors$2$1.default.dim(N)} ${import_picocolors$2$1.default.dim(r)}`} ${import_picocolors$2$1.default.dim("/")} ${this.value ? `${import_picocolors$2$1.default.dim(N)} ${import_picocolors$2$1.default.dim(s)}` : `${import_picocolors$2$1.default.green(j)} ${s}`}
1433
- ${import_picocolors$2$1.default.cyan(f)}
1434
- `;
1435
- }
1436
- }
1437
- }).prompt();
1438
- }, Ae = (t) => {
1439
- const { selectableGroups: r = !0, groupSpacing: s = 0 } = t, i = (n$1, a, u = []) => {
1440
- const l = n$1.label ?? String(n$1.value), c$1 = typeof n$1.group == "string", $$1 = c$1 && (u[u.indexOf(n$1) + 1] ?? { group: !0 }), p$1 = c$1 && $$1.group === !0, g$1 = c$1 ? r ? `${p$1 ? f : o} ` : " " : "", m$1 = s > 0 && !c$1 ? `
1441
- ${import_picocolors$2$1.default.cyan(o)} `.repeat(s) : "";
1442
- if (a === "active") return `${m$1}${import_picocolors$2$1.default.dim(g$1)}${import_picocolors$2$1.default.cyan(L)} ${l} ${n$1.hint ? import_picocolors$2$1.default.dim(`(${n$1.hint})`) : ""}`;
1443
- if (a === "group-active") return `${m$1}${g$1}${import_picocolors$2$1.default.cyan(L)} ${import_picocolors$2$1.default.dim(l)}`;
1444
- if (a === "group-active-selected") return `${m$1}${g$1}${import_picocolors$2$1.default.green(O)} ${import_picocolors$2$1.default.dim(l)}`;
1445
- if (a === "selected") {
1446
- const d$1 = c$1 || r ? import_picocolors$2$1.default.green(O) : "";
1447
- return `${m$1}${import_picocolors$2$1.default.dim(g$1)}${d$1} ${import_picocolors$2$1.default.dim(l)} ${n$1.hint ? import_picocolors$2$1.default.dim(`(${n$1.hint})`) : ""}`;
1448
- }
1449
- if (a === "cancelled") return `${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(l))}`;
1450
- if (a === "active-selected") return `${m$1}${import_picocolors$2$1.default.dim(g$1)}${import_picocolors$2$1.default.green(O)} ${l} ${n$1.hint ? import_picocolors$2$1.default.dim(`(${n$1.hint})`) : ""}`;
1451
- if (a === "submitted") return `${import_picocolors$2$1.default.dim(l)}`;
1452
- const y$1 = c$1 || r ? import_picocolors$2$1.default.dim(k) : "";
1453
- return `${m$1}${import_picocolors$2$1.default.dim(g$1)}${y$1} ${import_picocolors$2$1.default.dim(l)}`;
928
+ let replaceClose = (string$1, close, replace, index) => {
929
+ let result = "", cursor$2 = 0;
930
+ do {
931
+ result += string$1.substring(cursor$2, index) + replace;
932
+ cursor$2 = index + close.length;
933
+ index = string$1.indexOf(close, cursor$2);
934
+ } while (~index);
935
+ return result + string$1.substring(cursor$2);
936
+ };
937
+ let createColors = (enabled = isColorSupported) => {
938
+ let f = enabled ? formatter : () => String;
939
+ return {
940
+ isColorSupported: enabled,
941
+ reset: f("\x1B[0m", "\x1B[0m"),
942
+ bold: f("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
943
+ dim: f("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
944
+ italic: f("\x1B[3m", "\x1B[23m"),
945
+ underline: f("\x1B[4m", "\x1B[24m"),
946
+ inverse: f("\x1B[7m", "\x1B[27m"),
947
+ hidden: f("\x1B[8m", "\x1B[28m"),
948
+ strikethrough: f("\x1B[9m", "\x1B[29m"),
949
+ black: f("\x1B[30m", "\x1B[39m"),
950
+ red: f("\x1B[31m", "\x1B[39m"),
951
+ green: f("\x1B[32m", "\x1B[39m"),
952
+ yellow: f("\x1B[33m", "\x1B[39m"),
953
+ blue: f("\x1B[34m", "\x1B[39m"),
954
+ magenta: f("\x1B[35m", "\x1B[39m"),
955
+ cyan: f("\x1B[36m", "\x1B[39m"),
956
+ white: f("\x1B[37m", "\x1B[39m"),
957
+ gray: f("\x1B[90m", "\x1B[39m"),
958
+ bgBlack: f("\x1B[40m", "\x1B[49m"),
959
+ bgRed: f("\x1B[41m", "\x1B[49m"),
960
+ bgGreen: f("\x1B[42m", "\x1B[49m"),
961
+ bgYellow: f("\x1B[43m", "\x1B[49m"),
962
+ bgBlue: f("\x1B[44m", "\x1B[49m"),
963
+ bgMagenta: f("\x1B[45m", "\x1B[49m"),
964
+ bgCyan: f("\x1B[46m", "\x1B[49m"),
965
+ bgWhite: f("\x1B[47m", "\x1B[49m"),
966
+ blackBright: f("\x1B[90m", "\x1B[39m"),
967
+ redBright: f("\x1B[91m", "\x1B[39m"),
968
+ greenBright: f("\x1B[92m", "\x1B[39m"),
969
+ yellowBright: f("\x1B[93m", "\x1B[39m"),
970
+ blueBright: f("\x1B[94m", "\x1B[39m"),
971
+ magentaBright: f("\x1B[95m", "\x1B[39m"),
972
+ cyanBright: f("\x1B[96m", "\x1B[39m"),
973
+ whiteBright: f("\x1B[97m", "\x1B[39m"),
974
+ bgBlackBright: f("\x1B[100m", "\x1B[49m"),
975
+ bgRedBright: f("\x1B[101m", "\x1B[49m"),
976
+ bgGreenBright: f("\x1B[102m", "\x1B[49m"),
977
+ bgYellowBright: f("\x1B[103m", "\x1B[49m"),
978
+ bgBlueBright: f("\x1B[104m", "\x1B[49m"),
979
+ bgMagentaBright: f("\x1B[105m", "\x1B[49m"),
980
+ bgCyanBright: f("\x1B[106m", "\x1B[49m"),
981
+ bgWhiteBright: f("\x1B[107m", "\x1B[49m")
982
+ };
1454
983
  };
1455
- return new Ku({
1456
- options: t.options,
1457
- input: t.input,
1458
- output: t.output,
1459
- initialValues: t.initialValues,
1460
- required: t.required ?? !0,
1461
- cursorAt: t.cursorAt,
1462
- selectableGroups: r,
1463
- validate(n$1) {
1464
- if (this.required && n$1.length === 0) return `Please select at least one option.
1465
- ${import_picocolors$2$1.default.reset(import_picocolors$2$1.default.dim(`Press ${import_picocolors$2$1.default.gray(import_picocolors$2$1.default.bgWhite(import_picocolors$2$1.default.inverse(" space ")))} to select, ${import_picocolors$2$1.default.gray(import_picocolors$2$1.default.bgWhite(import_picocolors$2$1.default.inverse(" enter ")))} to submit`))}`;
984
+ module$1.exports = createColors();
985
+ module$1.exports.createColors = createColors;
986
+ } });
987
+ var require_src = __commonJS$1({ "node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js"(exports$2, module$1) {
988
+ const ESC = "\x1B";
989
+ const CSI = `${ESC}[`;
990
+ const beep = "\x07";
991
+ const cursor$1 = {
992
+ to(x, y) {
993
+ if (!y) return `${CSI}${x + 1}G`;
994
+ return `${CSI}${y + 1};${x + 1}H`;
1466
995
  },
1467
- render() {
1468
- const n$1 = `${import_picocolors$2$1.default.gray(o)}
1469
- ${T(this.state)} ${t.message}
1470
- `;
1471
- switch (this.state) {
1472
- case "submit": return `${n$1}${import_picocolors$2$1.default.gray(o)} ${this.options.filter(({ value: a }) => this.value.includes(a)).map((a) => i(a, "submitted")).join(import_picocolors$2$1.default.dim(", "))}`;
1473
- case "cancel": {
1474
- const a = this.options.filter(({ value: u }) => this.value.includes(u)).map((u) => i(u, "cancelled")).join(import_picocolors$2$1.default.dim(", "));
1475
- return `${n$1}${import_picocolors$2$1.default.gray(o)} ${a.trim() ? `${a}
1476
- ${import_picocolors$2$1.default.gray(o)}` : ""}`;
1477
- }
1478
- case "error": {
1479
- const a = this.error.split(`
1480
- `).map((u, l) => l === 0 ? `${import_picocolors$2$1.default.yellow(f)} ${import_picocolors$2$1.default.yellow(u)}` : ` ${u}`).join(`
1481
- `);
1482
- return `${n$1}${import_picocolors$2$1.default.yellow(o)} ${this.options.map((u, l, c$1) => {
1483
- const $$1 = this.value.includes(u.value) || u.group === !0 && this.isGroupSelected(`${u.value}`), p$1 = l === this.cursor;
1484
- return !p$1 && typeof u.group == "string" && this.options[this.cursor].value === u.group ? i(u, $$1 ? "group-active-selected" : "group-active", c$1) : p$1 && $$1 ? i(u, "active-selected", c$1) : $$1 ? i(u, "selected", c$1) : i(u, p$1 ? "active" : "inactive", c$1);
1485
- }).join(`
1486
- ${import_picocolors$2$1.default.yellow(o)} `)}
1487
- ${a}
1488
- `;
1489
- }
1490
- default: return `${n$1}${import_picocolors$2$1.default.cyan(o)} ${this.options.map((a, u, l) => {
1491
- const c$1 = this.value.includes(a.value) || a.group === !0 && this.isGroupSelected(`${a.value}`), $$1 = u === this.cursor;
1492
- return !$$1 && typeof a.group == "string" && this.options[this.cursor].value === a.group ? i(a, c$1 ? "group-active-selected" : "group-active", l) : $$1 && c$1 ? i(a, "active-selected", l) : c$1 ? i(a, "selected", l) : i(a, $$1 ? "active" : "inactive", l);
1493
- }).join(`
1494
- ${import_picocolors$2$1.default.cyan(o)} `)}
1495
- ${import_picocolors$2$1.default.cyan(f)}
1496
- `;
1497
- }
1498
- }
1499
- }).prompt();
1500
- }, je$1 = async (t, r) => {
1501
- const s = {}, i = Object.keys(t);
1502
- for (const n$1 of i) {
1503
- const a = t[n$1], u = await a({ results: s })?.catch((l) => {
1504
- throw l;
1505
- });
1506
- if (typeof r?.onCancel == "function" && Ou$1(u)) {
1507
- s[n$1] = "canceled", r.onCancel({ results: s });
1508
- continue;
1509
- }
1510
- s[n$1] = u;
1511
- }
1512
- return s;
1513
- }, E$2 = {
1514
- message: (t = [], { symbol: r = import_picocolors$2$1.default.gray(o), secondarySymbol: s = import_picocolors$2$1.default.gray(o), output: i = process.stdout, spacing: n$1 = 1 } = {}) => {
1515
- const a = [];
1516
- for (let l = 0; l < n$1; l++) a.push(`${s}`);
1517
- const u = Array.isArray(t) ? t : t.split(`
1518
- `);
1519
- if (u.length > 0) {
1520
- const [l, ...c$1] = u;
1521
- l.length > 0 ? a.push(`${r} ${l}`) : a.push(r);
1522
- for (const $$1 of c$1) $$1.length > 0 ? a.push(`${s} ${$$1}`) : a.push(s);
1523
- }
1524
- i.write(`${a.join(`
1525
- `)}
1526
- `);
996
+ move(x, y) {
997
+ let ret = "";
998
+ if (x < 0) ret += `${CSI}${-x}D`;
999
+ else if (x > 0) ret += `${CSI}${x}C`;
1000
+ if (y < 0) ret += `${CSI}${-y}A`;
1001
+ else if (y > 0) ret += `${CSI}${y}B`;
1002
+ return ret;
1003
+ },
1004
+ up: (count = 1) => `${CSI}${count}A`,
1005
+ down: (count = 1) => `${CSI}${count}B`,
1006
+ forward: (count = 1) => `${CSI}${count}C`,
1007
+ backward: (count = 1) => `${CSI}${count}D`,
1008
+ nextLine: (count = 1) => `${CSI}E`.repeat(count),
1009
+ prevLine: (count = 1) => `${CSI}F`.repeat(count),
1010
+ left: `${CSI}G`,
1011
+ hide: `${CSI}?25l`,
1012
+ show: `${CSI}?25h`,
1013
+ save: `${ESC}7`,
1014
+ restore: `${ESC}8`
1015
+ };
1016
+ const scroll = {
1017
+ up: (count = 1) => `${CSI}S`.repeat(count),
1018
+ down: (count = 1) => `${CSI}T`.repeat(count)
1019
+ };
1020
+ const erase$1 = {
1021
+ screen: `${CSI}2J`,
1022
+ up: (count = 1) => `${CSI}1J`.repeat(count),
1023
+ down: (count = 1) => `${CSI}J`.repeat(count),
1024
+ line: `${CSI}2K`,
1025
+ lineEnd: `${CSI}K`,
1026
+ lineStart: `${CSI}1K`,
1027
+ lines(count) {
1028
+ let clear = "";
1029
+ for (let i = 0; i < count; i++) clear += this.line + (i < count - 1 ? cursor$1.up() : "");
1030
+ if (count) clear += cursor$1.left;
1031
+ return clear;
1032
+ }
1033
+ };
1034
+ module$1.exports = {
1035
+ cursor: cursor$1,
1036
+ scroll,
1037
+ erase: erase$1,
1038
+ beep
1039
+ };
1040
+ } });
1041
+ var import_picocolors$3$1 = __toESM$1$1(require_picocolors$2(), 1);
1042
+ var import_src = __toESM$1$1(require_src(), 1);
1043
+ const unicode = isUnicodeSupported();
1044
+ const s = (c, fallback) => unicode ? c : fallback;
1045
+ const S_STEP_ACTIVE = s("◆", "*");
1046
+ const S_STEP_CANCEL = s("■", "x");
1047
+ const S_STEP_ERROR = s("▲", "x");
1048
+ const S_STEP_SUBMIT = s("◇", "o");
1049
+ const S_BAR_START = s("┌", "T");
1050
+ const S_BAR = s("│", "|");
1051
+ const S_BAR_END = s("└", "—");
1052
+ const S_RADIO_ACTIVE = s("●", ">");
1053
+ const S_RADIO_INACTIVE = s("○", " ");
1054
+ const S_CHECKBOX_ACTIVE = s("◻", "[•]");
1055
+ const S_CHECKBOX_SELECTED = s("◼", "[+]");
1056
+ const S_CHECKBOX_INACTIVE = s("◻", "[ ]");
1057
+ const S_PASSWORD_MASK = s("▪", "•");
1058
+ const S_BAR_H = s("─", "-");
1059
+ const S_CORNER_TOP_RIGHT = s("╮", "+");
1060
+ const S_CONNECT_LEFT = s("├", "+");
1061
+ const S_CORNER_BOTTOM_RIGHT = s("╯", "+");
1062
+ const S_INFO = s("●", "•");
1063
+ const S_SUCCESS = s("◆", "*");
1064
+ const S_WARN = s("▲", "!");
1065
+ const S_ERROR = s("■", "x");
1066
+ const log$1 = {
1067
+ message: (message = "", { symbol: symbol$1 = import_picocolors$3$1.default.gray(S_BAR) } = {}) => {
1068
+ const parts = [import_picocolors$3$1.default.gray(S_BAR)];
1069
+ if (message) {
1070
+ const [firstLine, ...lines] = message.split("\n");
1071
+ parts.push(`${symbol$1} ${firstLine}`, ...lines.map((ln) => `${import_picocolors$3$1.default.gray(S_BAR)} ${ln}`));
1072
+ }
1073
+ process$1.stdout.write(`${parts.join("\n")}\n`);
1527
1074
  },
1528
- info: (t, r) => {
1529
- E$2.message(t, {
1530
- ...r,
1531
- symbol: import_picocolors$2$1.default.blue(H)
1532
- });
1075
+ info: (message) => {
1076
+ log$1.message(message, { symbol: import_picocolors$3$1.default.blue(S_INFO) });
1533
1077
  },
1534
- success: (t, r) => {
1535
- E$2.message(t, {
1536
- ...r,
1537
- symbol: import_picocolors$2$1.default.green(K)
1538
- });
1078
+ success: (message) => {
1079
+ log$1.message(message, { symbol: import_picocolors$3$1.default.green(S_SUCCESS) });
1539
1080
  },
1540
- step: (t, r) => {
1541
- E$2.message(t, {
1542
- ...r,
1543
- symbol: import_picocolors$2$1.default.green(M)
1544
- });
1081
+ step: (message) => {
1082
+ log$1.message(message, { symbol: import_picocolors$3$1.default.green(S_STEP_SUBMIT) });
1545
1083
  },
1546
- warn: (t, r) => {
1547
- E$2.message(t, {
1548
- ...r,
1549
- symbol: import_picocolors$2$1.default.yellow(U)
1550
- });
1084
+ warn: (message) => {
1085
+ log$1.message(message, { symbol: import_picocolors$3$1.default.yellow(S_WARN) });
1551
1086
  },
1552
- warning: (t, r) => {
1553
- E$2.warn(t, r);
1087
+ warning: (message) => {
1088
+ log$1.warn(message);
1554
1089
  },
1555
- error: (t, r) => {
1556
- E$2.message(t, {
1557
- ...r,
1558
- symbol: import_picocolors$2$1.default.red(X)
1559
- });
1090
+ error: (message) => {
1091
+ log$1.message(message, { symbol: import_picocolors$3$1.default.red(S_ERROR) });
1560
1092
  }
1561
- }, Ne$1 = (t = "", r) => {
1562
- (r?.output ?? process.stdout).write(`${import_picocolors$2$1.default.gray(f)} ${import_picocolors$2$1.default.red(t)}
1563
-
1564
- `);
1565
- }, Pe$1 = (t = "", r) => {
1566
- (r?.output ?? process.stdout).write(`${import_picocolors$2$1.default.gray(ie)} ${t}
1567
- `);
1568
- }, Le$1 = (t = "", r) => {
1569
- (r?.output ?? process.stdout).write(`${import_picocolors$2$1.default.gray(o)}
1570
- ${import_picocolors$2$1.default.gray(f)} ${t}
1571
-
1572
- `);
1573
- }, ke$1 = (t) => {
1574
- const r = (s, i) => {
1575
- const n$1 = s.label ?? String(s.value);
1576
- return i === "active" ? `${import_picocolors$2$1.default.cyan(L)} ${n$1} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}` : i === "selected" ? `${import_picocolors$2$1.default.green(O)} ${import_picocolors$2$1.default.dim(n$1)} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}` : i === "cancelled" ? `${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(n$1))}` : i === "active-selected" ? `${import_picocolors$2$1.default.green(O)} ${n$1} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}` : i === "submitted" ? `${import_picocolors$2$1.default.dim(n$1)}` : `${import_picocolors$2$1.default.dim(k)} ${import_picocolors$2$1.default.dim(n$1)}`;
1577
- };
1578
- return new Yu({
1579
- options: t.options,
1580
- input: t.input,
1581
- output: t.output,
1582
- initialValues: t.initialValues,
1583
- required: t.required ?? !0,
1584
- cursorAt: t.cursorAt,
1585
- validate(s) {
1586
- if (this.required && s.length === 0) return `Please select at least one option.
1587
- ${import_picocolors$2$1.default.reset(import_picocolors$2$1.default.dim(`Press ${import_picocolors$2$1.default.gray(import_picocolors$2$1.default.bgWhite(import_picocolors$2$1.default.inverse(" space ")))} to select, ${import_picocolors$2$1.default.gray(import_picocolors$2$1.default.bgWhite(import_picocolors$2$1.default.inverse(" enter ")))} to submit`))}`;
1588
- },
1589
- render() {
1590
- const s = `${import_picocolors$2$1.default.gray(o)}
1591
- ${T(this.state)} ${t.message}
1592
- `, i = (n$1, a) => {
1593
- const u = this.value.includes(n$1.value);
1594
- return a && u ? r(n$1, "active-selected") : u ? r(n$1, "selected") : r(n$1, a ? "active" : "inactive");
1595
- };
1596
- switch (this.state) {
1597
- case "submit": return `${s}${import_picocolors$2$1.default.gray(o)} ${this.options.filter(({ value: n$1 }) => this.value.includes(n$1)).map((n$1) => r(n$1, "submitted")).join(import_picocolors$2$1.default.dim(", ")) || import_picocolors$2$1.default.dim("none")}`;
1598
- case "cancel": {
1599
- const n$1 = this.options.filter(({ value: a }) => this.value.includes(a)).map((a) => r(a, "cancelled")).join(import_picocolors$2$1.default.dim(", "));
1600
- return `${s}${import_picocolors$2$1.default.gray(o)} ${n$1.trim() ? `${n$1}
1601
- ${import_picocolors$2$1.default.gray(o)}` : ""}`;
1602
- }
1603
- case "error": {
1604
- const n$1 = this.error.split(`
1605
- `).map((a, u) => u === 0 ? `${import_picocolors$2$1.default.yellow(f)} ${import_picocolors$2$1.default.yellow(a)}` : ` ${a}`).join(`
1606
- `);
1607
- return `${s + import_picocolors$2$1.default.yellow(o)} ${A({
1608
- output: t.output,
1609
- options: this.options,
1610
- cursor: this.cursor,
1611
- maxItems: t.maxItems,
1612
- style: i
1613
- }).join(`
1614
- ${import_picocolors$2$1.default.yellow(o)} `)}
1615
- ${n$1}
1616
- `;
1617
- }
1618
- default: return `${s}${import_picocolors$2$1.default.cyan(o)} ${A({
1619
- output: t.output,
1620
- options: this.options,
1621
- cursor: this.cursor,
1622
- maxItems: t.maxItems,
1623
- style: i
1624
- }).join(`
1625
- ${import_picocolors$2$1.default.cyan(o)} `)}
1626
- ${import_picocolors$2$1.default.cyan(f)}
1627
- `;
1628
- }
1629
- }
1630
- }).prompt();
1631
- }, Be = (t) => import_picocolors$2$1.default.dim(t), Ge$1 = (t = "", r = "", s) => {
1632
- const i = s?.format ?? Be, n$1 = [
1633
- "",
1634
- ...t.split(`
1635
- `).map(i),
1636
- ""
1637
- ], a = stripVTControlCharacters(r).length, u = s?.output ?? process.stdout, l = Math.max(n$1.reduce(($$1, p$1) => {
1638
- const g$1 = stripVTControlCharacters(p$1);
1639
- return g$1.length > $$1 ? g$1.length : $$1;
1640
- }, 0), a) + 2, c$1 = n$1.map(($$1) => `${import_picocolors$2$1.default.gray(o)} ${$$1}${" ".repeat(l - stripVTControlCharacters($$1).length)}${import_picocolors$2$1.default.gray(o)}`).join(`
1641
- `);
1642
- u.write(`${import_picocolors$2$1.default.gray(o)}
1643
- ${import_picocolors$2$1.default.green(M)} ${import_picocolors$2$1.default.reset(r)} ${import_picocolors$2$1.default.gray(q.repeat(Math.max(l - a - 1, 1)) + oe)}
1644
- ${c$1}
1645
- ${import_picocolors$2$1.default.gray(ae + q.repeat(l + 2) + ue)}
1646
- `);
1647
- }, We = (t) => new Uu({
1648
- validate: t.validate,
1649
- mask: t.mask ?? ne,
1650
- input: t.input,
1651
- output: t.output,
1652
- render() {
1653
- const r = `${import_picocolors$2$1.default.gray(o)}
1654
- ${T(this.state)} ${t.message}
1655
- `, s = this.valueWithCursor, i = this.masked;
1656
- switch (this.state) {
1657
- case "error": return `${r.trim()}
1658
- ${import_picocolors$2$1.default.yellow(o)} ${i}
1659
- ${import_picocolors$2$1.default.yellow(f)} ${import_picocolors$2$1.default.yellow(this.error)}
1660
- `;
1661
- case "submit": return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.dim(i)}`;
1662
- case "cancel": return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(i ?? ""))}${i ? `
1663
- ${import_picocolors$2$1.default.gray(o)}` : ""}`;
1664
- default: return `${r}${import_picocolors$2$1.default.cyan(o)} ${s}
1665
- ${import_picocolors$2$1.default.cyan(f)}
1666
- `;
1667
- }
1668
- }
1669
- }).prompt(), J$2 = ({ indicator: t = "dots", onCancel: r, output: s = process.stdout, cancelMessage: i, errorMessage: n$1, frames: a = P ? [
1670
- "◒",
1671
- "◐",
1672
- "◓",
1673
- "◑"
1674
- ] : [
1675
- "•",
1676
- "o",
1677
- "O",
1678
- "0"
1679
- ], delay: u = P ? 80 : 120 } = {}) => {
1680
- const l = W();
1681
- let c$1, $$1, p$1 = !1, g$1 = !1, m$1 = "", y$1, d$1 = performance.now();
1682
- const v$1 = (w) => {
1683
- const C$1 = w > 1 ? n$1 ?? c.messages.error : i ?? c.messages.cancel;
1684
- g$1 = w === 1, p$1 && (Z$1(C$1, w), g$1 && typeof r == "function" && r());
1685
- }, S$1 = () => v$1(2), b$1 = () => v$1(1), B$1 = () => {
1686
- process.on("uncaughtExceptionMonitor", S$1), process.on("unhandledRejection", S$1), process.on("SIGINT", b$1), process.on("SIGTERM", b$1), process.on("exit", v$1);
1687
- }, me = () => {
1688
- process.removeListener("uncaughtExceptionMonitor", S$1), process.removeListener("unhandledRejection", S$1), process.removeListener("SIGINT", b$1), process.removeListener("SIGTERM", b$1), process.removeListener("exit", v$1);
1689
- }, Y$1 = () => {
1690
- if (y$1 === void 0) return;
1691
- l && s.write(`
1692
- `);
1693
- const w = y$1.split(`
1694
- `);
1695
- s.write(import_src.cursor.move(-999, w.length - 1)), s.write(import_src.erase.down(w.length));
1696
- }, z = (w) => w.replace(/\.+$/, ""), Q$1 = (w) => {
1697
- const C$1 = (performance.now() - w) / 1e3, I$1 = Math.floor(C$1 / 60), x$1 = Math.floor(C$1 % 60);
1698
- return I$1 > 0 ? `[${I$1}m ${x$1}s]` : `[${x$1}s]`;
1699
- }, de = (w = "") => {
1700
- p$1 = !0, c$1 = Mu({ output: s }), m$1 = z(w), d$1 = performance.now(), s.write(`${import_picocolors$2$1.default.gray(o)}
1701
- `);
1702
- let C$1 = 0, I$1 = 0;
1703
- B$1(), $$1 = setInterval(() => {
1704
- if (l && m$1 === y$1) return;
1705
- Y$1(), y$1 = m$1;
1706
- const x$1 = import_picocolors$2$1.default.magenta(a[C$1]);
1707
- if (l) s.write(`${x$1} ${m$1}...`);
1708
- else if (t === "timer") s.write(`${x$1} ${m$1} ${Q$1(d$1)}`);
1709
- else {
1710
- const he = ".".repeat(Math.floor(I$1)).slice(0, 3);
1711
- s.write(`${x$1} ${m$1}${he}`);
1712
- }
1713
- C$1 = C$1 + 1 < a.length ? C$1 + 1 : 0, I$1 = I$1 < 4 ? I$1 + .125 : 0;
1714
- }, u);
1715
- }, Z$1 = (w = "", C$1 = 0) => {
1716
- p$1 = !1, clearInterval($$1), Y$1();
1717
- const I$1 = C$1 === 0 ? import_picocolors$2$1.default.green(M) : C$1 === 1 ? import_picocolors$2$1.default.red(D) : import_picocolors$2$1.default.red(F);
1718
- m$1 = w ?? m$1, t === "timer" ? s.write(`${I$1} ${m$1} ${Q$1(d$1)}
1719
- `) : s.write(`${I$1} ${m$1}
1720
- `), me(), c$1();
1721
- };
1722
- return {
1723
- start: de,
1724
- stop: Z$1,
1725
- message: (w = "") => {
1726
- m$1 = z(w ?? m$1);
1727
- },
1728
- get isCancelled() {
1729
- return g$1;
1730
- }
1731
- };
1732
- }, $e = {
1733
- light: h("─", "-"),
1734
- heavy: h("━", "="),
1735
- block: h("█", "#")
1736
1093
  };
1737
- const Fe = (t) => {
1738
- const r = (s, i = "inactive") => {
1739
- const n$1 = s.label ?? String(s.value);
1740
- return i === "selected" ? `${import_picocolors$2$1.default.dim(n$1)}` : i === "cancelled" ? `${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(n$1))}` : i === "active" ? `${import_picocolors$2$1.default.bgCyan(import_picocolors$2$1.default.gray(` ${s.value} `))} ${n$1} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}` : `${import_picocolors$2$1.default.gray(import_picocolors$2$1.default.bgWhite(import_picocolors$2$1.default.inverse(` ${s.value} `)))} ${n$1} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}`;
1741
- };
1742
- return new tD({
1743
- options: t.options,
1744
- input: t.input,
1745
- output: t.output,
1746
- initialValue: t.initialValue,
1747
- render() {
1748
- const s = `${import_picocolors$2$1.default.gray(o)}
1749
- ${T(this.state)} ${t.message}
1750
- `;
1751
- switch (this.state) {
1752
- case "submit": return `${s}${import_picocolors$2$1.default.gray(o)} ${r(this.options.find((i) => i.value === this.value) ?? t.options[0], "selected")}`;
1753
- case "cancel": return `${s}${import_picocolors$2$1.default.gray(o)} ${r(this.options[0], "cancelled")}
1754
- ${import_picocolors$2$1.default.gray(o)}`;
1755
- default: return `${s}${import_picocolors$2$1.default.cyan(o)} ${this.options.map((i, n$1) => r(i, n$1 === this.cursor ? "active" : "inactive")).join(`
1756
- ${import_picocolors$2$1.default.cyan(o)} `)}
1757
- ${import_picocolors$2$1.default.cyan(f)}
1758
- `;
1759
- }
1760
- }
1761
- }).prompt();
1762
- }, qe$1 = (t) => {
1763
- const r = (s, i) => {
1764
- const n$1 = s.label ?? String(s.value);
1765
- switch (i) {
1766
- case "selected": return `${import_picocolors$2$1.default.dim(n$1)}`;
1767
- case "active": return `${import_picocolors$2$1.default.green(j)} ${n$1} ${s.hint ? import_picocolors$2$1.default.dim(`(${s.hint})`) : ""}`;
1768
- case "cancelled": return `${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(n$1))}`;
1769
- default: return `${import_picocolors$2$1.default.dim(N)} ${import_picocolors$2$1.default.dim(n$1)}`;
1770
- }
1771
- };
1772
- return new Xu({
1773
- options: t.options,
1774
- input: t.input,
1775
- output: t.output,
1776
- initialValue: t.initialValue,
1777
- render() {
1778
- const s = `${import_picocolors$2$1.default.gray(o)}
1779
- ${T(this.state)} ${t.message}
1780
- `;
1781
- switch (this.state) {
1782
- case "submit": return `${s}${import_picocolors$2$1.default.gray(o)} ${r(this.options[this.cursor], "selected")}`;
1783
- case "cancel": return `${s}${import_picocolors$2$1.default.gray(o)} ${r(this.options[this.cursor], "cancelled")}
1784
- ${import_picocolors$2$1.default.gray(o)}`;
1785
- default: return `${s}${import_picocolors$2$1.default.cyan(o)} ${A({
1786
- output: t.output,
1787
- cursor: this.cursor,
1788
- options: this.options,
1789
- maxItems: t.maxItems,
1790
- style: (i, n$1) => r(i, n$1 ? "active" : "inactive")
1791
- }).join(`
1792
- ${import_picocolors$2$1.default.cyan(o)} `)}
1793
- ${import_picocolors$2$1.default.cyan(f)}
1794
- `;
1795
- }
1796
- }
1797
- }).prompt();
1798
- }, pe = `${import_picocolors$2$1.default.gray(o)} `, R = {
1799
- message: async (t, { symbol: r = import_picocolors$2$1.default.gray(o) } = {}) => {
1800
- process.stdout.write(`${import_picocolors$2$1.default.gray(o)}
1801
- ${r} `);
1802
- let s = 3;
1803
- for await (let i of t) {
1804
- i = i.replace(/\n/g, `
1805
- ${pe}`), i.includes(`
1806
- `) && (s = 3 + stripVTControlCharacters(i.slice(i.lastIndexOf(`
1807
- `))).length);
1808
- const n$1 = stripVTControlCharacters(i).length;
1809
- s + n$1 < process.stdout.columns ? (s += n$1, process.stdout.write(i)) : (process.stdout.write(`
1810
- ${pe}${i.trimStart()}`), s = 3 + stripVTControlCharacters(i.trimStart()).length);
1811
- }
1812
- process.stdout.write(`
1813
- `);
1814
- },
1815
- info: (t) => R.message(t, { symbol: import_picocolors$2$1.default.blue(H) }),
1816
- success: (t) => R.message(t, { symbol: import_picocolors$2$1.default.green(K) }),
1817
- step: (t) => R.message(t, { symbol: import_picocolors$2$1.default.green(M) }),
1818
- warn: (t) => R.message(t, { symbol: import_picocolors$2$1.default.yellow(U) }),
1819
- warning: (t) => R.warn(t),
1820
- error: (t) => R.message(t, { symbol: import_picocolors$2$1.default.red(X) })
1821
- }, He = async (t, r) => {
1822
- for (const s of t) {
1823
- if (s.enabled === !1) continue;
1824
- const i = J$2(r);
1825
- i.start(s.title);
1826
- const n$1 = await s.task(i.message);
1827
- i.stop(n$1 || s.title);
1828
- }
1829
- }, Ke = (t) => {
1830
- const r = t.output ?? process.stdout, s = Tu(r), i = import_picocolors$1$1.gray(o), n$1 = t.spacing ?? 1, a = 3, u = t.retainLog === !0, l = W();
1831
- r.write(`${i}
1832
- `), r.write(`${import_picocolors$1$1.green(M)} ${t.title}
1833
- `);
1834
- for (let d$1 = 0; d$1 < n$1; d$1++) r.write(`${i}
1835
- `);
1836
- let c$1 = "", $$1 = "", p$1 = !1;
1837
- const g$1 = (d$1) => {
1838
- if (c$1.length === 0) return;
1839
- const v$1 = c$1.split(`
1840
- `).reduce((S$1, b$1) => b$1 === "" ? S$1 + 1 : S$1 + Math.ceil((b$1.length + a) / s), 0) + 1 + (d$1 ? n$1 + 2 : 0);
1841
- r.write(import_src.erase.lines(v$1));
1842
- }, m$1 = (d$1, v$1) => {
1843
- E$2.message(d$1.split(`
1844
- `).map(import_picocolors$1$1.dim), {
1845
- output: r,
1846
- secondarySymbol: i,
1847
- symbol: i,
1848
- spacing: v$1 ?? n$1
1849
- });
1850
- }, y$1 = () => {
1851
- u === !0 && $$1.length > 0 ? m$1(`${$$1}
1852
- ${c$1}`) : m$1(c$1);
1853
- };
1854
- return {
1855
- message(d$1, v$1) {
1856
- if (g$1(!1), (v$1?.raw !== !0 || !p$1) && c$1 !== "" && (c$1 += `
1857
- `), c$1 += d$1, p$1 = v$1?.raw === !0, t.limit !== void 0) {
1858
- const S$1 = c$1.split(`
1859
- `), b$1 = S$1.length - t.limit;
1860
- if (b$1 > 0) {
1861
- const B$1 = S$1.splice(0, b$1);
1862
- u && ($$1 += ($$1 === "" ? "" : `
1863
- `) + B$1.join(`
1864
- `));
1865
- }
1866
- c$1 = S$1.join(`
1867
- `);
1868
- }
1869
- l || m$1(c$1, 0);
1870
- },
1871
- error(d$1, v$1) {
1872
- g$1(!0), E$2.error(d$1, {
1873
- output: r,
1874
- secondarySymbol: i,
1875
- spacing: 1
1876
- }), v$1?.showLog !== !1 && y$1(), c$1 = $$1 = "";
1877
- },
1878
- success(d$1, v$1) {
1879
- g$1(!0), E$2.success(d$1, {
1880
- output: r,
1881
- secondarySymbol: i,
1882
- spacing: 1
1883
- }), v$1?.showLog === !0 && y$1(), c$1 = $$1 = "";
1884
- }
1885
- };
1886
- }, Ue$1 = (t) => new eD({
1887
- validate: t.validate,
1888
- placeholder: t.placeholder,
1889
- defaultValue: t.defaultValue,
1890
- initialValue: t.initialValue,
1891
- output: t.output,
1892
- input: t.input,
1893
- render() {
1894
- const r = `${import_picocolors$2$1.default.gray(o)}
1895
- ${T(this.state)} ${t.message}
1896
- `, s = t.placeholder ? import_picocolors$2$1.default.inverse(t.placeholder[0]) + import_picocolors$2$1.default.dim(t.placeholder.slice(1)) : import_picocolors$2$1.default.inverse(import_picocolors$2$1.default.hidden("_")), i = this.value ? this.valueWithCursor : s;
1897
- switch (this.state) {
1898
- case "error": return `${r.trim()}
1899
- ${import_picocolors$2$1.default.yellow(o)} ${i}
1900
- ${import_picocolors$2$1.default.yellow(f)} ${import_picocolors$2$1.default.yellow(this.error)}
1901
- `;
1902
- case "submit": return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.dim(this.value || t.placeholder)}`;
1903
- case "cancel": return `${r}${import_picocolors$2$1.default.gray(o)} ${import_picocolors$2$1.default.strikethrough(import_picocolors$2$1.default.dim(this.value ?? ""))}${this.value?.trim() ? `
1904
- ${import_picocolors$2$1.default.gray(o)}` : ""}`;
1905
- default: return `${r}${import_picocolors$2$1.default.cyan(o)} ${i}
1906
- ${import_picocolors$2$1.default.cyan(f)}
1907
- `;
1908
- }
1909
- }
1910
- }).prompt();
1911
1094
  var utils_exports = {};
1912
1095
  __export(utils_exports, { createPrinter: () => createPrinter });
1913
1096
  function createPrinter(...conditions) {
@@ -1916,7 +1099,7 @@ function createPrinter(...conditions) {
1916
1099
  });
1917
1100
  return printers;
1918
1101
  }
1919
- var import_picocolors$4 = __toESM(require_picocolors$1(), 1);
1102
+ var import_picocolors$4 = __toESM(require_picocolors(), 1);
1920
1103
  var colors = import_picocolors$4.default;
1921
1104
 
1922
1105
  //#endregion
@@ -1955,10 +1138,13 @@ function addToDemoPage(content, path$2) {
1955
1138
  }
1956
1139
  function getNodeTypesVersion() {
1957
1140
  const nodeVersion = process$1.versions.node;
1141
+ const isDenoOrBun = Boolean(process$1.versions.deno ?? process$1.versions.bun);
1958
1142
  const [major] = nodeVersion.split(".");
1959
- const isLTS = Number(major) % 2 === 0;
1143
+ const majorNum = Number(major);
1144
+ const isEvenMajor = majorNum % 2 === 0;
1145
+ const isLTS = !!process$1.release.lts || isDenoOrBun && isEvenMajor;
1960
1146
  if (isLTS) return `^${major}`;
1961
- const previousLTSMajor = Number(major) - 1;
1147
+ const previousLTSMajor = isEvenMajor ? majorNum - 2 : majorNum - 1;
1962
1148
  return `^${previousLTSMajor}`;
1963
1149
  }
1964
1150
 
@@ -2384,12 +1570,12 @@ var eslint_default = defineAddon({
2384
1570
  exportExpression = tsConfigCall;
2385
1571
  } else {
2386
1572
  const eslintArray = array_exports.createEmpty();
2387
- eslintConfigs.map((x$1) => array_exports.push(eslintArray, x$1));
1573
+ eslintConfigs.map((x) => array_exports.push(eslintArray, x));
2388
1574
  exportExpression = eslintArray;
2389
1575
  }
2390
1576
  const defaultExport = exports_exports.defaultExport(ast, exportExpression);
2391
1577
  if (defaultExport.value !== exportExpression) {
2392
- E$2.warn("An eslint config is already defined. Skipping initialization.");
1578
+ log$1.warn("An eslint config is already defined. Skipping initialization.");
2393
1579
  return content;
2394
1580
  }
2395
1581
  if (!typescript) common_exports.addJsDocTypeComment(defaultExport.astNode, "import('eslint').Linter.Config[]");
@@ -2475,7 +1661,7 @@ var sveltekit_adapter_default = defineAddon({
2475
1661
  if (adapterImportDecl) {
2476
1662
  adapterImportDecl.source.value = adapter.package;
2477
1663
  adapterImportDecl.source.raw = undefined;
2478
- adapterName = adapterImportDecl.specifiers?.find((s) => s.type === "ImportDefaultSpecifier")?.local?.name;
1664
+ adapterName = adapterImportDecl.specifiers?.find((s$1) => s$1.type === "ImportDefaultSpecifier")?.local?.name;
2479
1665
  } else imports_exports.addDefault(ast, adapter.package, adapterName);
2480
1666
  const { value: config } = exports_exports.defaultExport(ast, object_exports.createEmpty());
2481
1667
  const kitConfig = config.properties.find((p) => p.type === "Property" && p.key.type === "Identifier" && p.key.name === "kit");
@@ -2497,9 +1683,9 @@ const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
2497
1683
  const intToChar = new Uint8Array(64);
2498
1684
  const charToInt = new Uint8Array(128);
2499
1685
  for (let i = 0; i < chars.length; i++) {
2500
- const c$1 = chars.charCodeAt(i);
2501
- intToChar[i] = c$1;
2502
- charToInt[c$1] = i;
1686
+ const c = chars.charCodeAt(i);
1687
+ intToChar[i] = c;
1688
+ charToInt[c] = i;
2503
1689
  }
2504
1690
  function encodeInteger(builder, num, relative) {
2505
1691
  let delta = num - relative;
@@ -2527,9 +1713,9 @@ var StringWriter = class {
2527
1713
  this.out = "";
2528
1714
  this.buffer = new Uint8Array(bufLength);
2529
1715
  }
2530
- write(v$1) {
1716
+ write(v) {
2531
1717
  const { buffer } = this;
2532
- buffer[this.pos++] = v$1;
1718
+ buffer[this.pos++] = v;
2533
1719
  if (this.pos === bufLength) {
2534
1720
  this.out += td.decode(buffer);
2535
1721
  this.pos = 0;
@@ -2551,9 +1737,9 @@ function encode(decoded) {
2551
1737
  if (i > 0) writer.write(semicolon);
2552
1738
  if (line.length === 0) continue;
2553
1739
  let genColumn = 0;
2554
- for (let j$2 = 0; j$2 < line.length; j$2++) {
2555
- const segment = line[j$2];
2556
- if (j$2 > 0) writer.write(comma);
1740
+ for (let j = 0; j < line.length; j++) {
1741
+ const segment = line[j];
1742
+ if (j > 0) writer.write(comma);
2557
1743
  genColumn = encodeInteger(writer, segment[0], genColumn);
2558
1744
  if (segment.length === 1) continue;
2559
1745
  sourcesIndex = encodeInteger(writer, segment[1], sourcesIndex);
@@ -2772,11 +1958,11 @@ function getLocator(source) {
2772
1958
  }
2773
1959
  return function locate(index) {
2774
1960
  let i = 0;
2775
- let j$2 = lineOffsets.length;
2776
- while (i < j$2) {
2777
- const m$1 = i + j$2 >> 1;
2778
- if (index < lineOffsets[m$1]) j$2 = m$1;
2779
- else i = m$1 + 1;
1961
+ let j = lineOffsets.length;
1962
+ while (i < j) {
1963
+ const m = i + j >> 1;
1964
+ if (index < lineOffsets[m]) j = m;
1965
+ else i = m + 1;
2780
1966
  }
2781
1967
  const line = i - 1;
2782
1968
  const column = index - lineOffsets[line];
@@ -3453,10 +2639,10 @@ else this.outro = content + this.outro;
3453
2639
  });
3454
2640
  else return replacement(...match, match.index, str, match.groups);
3455
2641
  }
3456
- function matchAll(re$1, str) {
2642
+ function matchAll(re, str) {
3457
2643
  let match;
3458
2644
  const matches = [];
3459
- while (match = re$1.exec(str)) matches.push(match);
2645
+ while (match = re.exec(str)) matches.push(match);
3460
2646
  return matches;
3461
2647
  }
3462
2648
  if (searchValue.global) {
@@ -3759,7 +2945,7 @@ var lucia_default = defineAddon({
3759
2945
  sv.file(`${kit.routesDirectory}/demo/lucia/login/+page.server.${ext}`, (content) => {
3760
2946
  if (content) {
3761
2947
  const filePath = `${kit.routesDirectory}/demo/lucia/login/+page.server.${typescript ? "ts" : "js"}`;
3762
- E$2.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
2948
+ log$1.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3763
2949
  return content;
3764
2950
  }
3765
2951
  const [ts] = utils_exports.createPrinter(typescript);
@@ -3880,7 +3066,7 @@ var lucia_default = defineAddon({
3880
3066
  sv.file(`${kit.routesDirectory}/demo/lucia/login/+page.svelte`, (content) => {
3881
3067
  if (content) {
3882
3068
  const filePath = `${kit.routesDirectory}/demo/lucia/login/+page.svelte`;
3883
- E$2.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3069
+ log$1.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3884
3070
  return content;
3885
3071
  }
3886
3072
  const tailwind = dependencyVersion("@tailwindcss/vite") !== undefined;
@@ -3925,7 +3111,7 @@ var lucia_default = defineAddon({
3925
3111
  sv.file(`${kit.routesDirectory}/demo/lucia/+page.server.${ext}`, (content) => {
3926
3112
  if (content) {
3927
3113
  const filePath = `${kit.routesDirectory}/demo/lucia/+page.server.${typescript ? "ts" : "js"}`;
3928
- E$2.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3114
+ log$1.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3929
3115
  return content;
3930
3116
  }
3931
3117
  const [ts] = utils_exports.createPrinter(typescript);
@@ -3965,7 +3151,7 @@ var lucia_default = defineAddon({
3965
3151
  sv.file(`${kit.routesDirectory}/demo/lucia/+page.svelte`, (content) => {
3966
3152
  if (content) {
3967
3153
  const filePath = `${kit.routesDirectory}/demo/lucia/+page.svelte`;
3968
- E$2.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3154
+ log$1.warn(`Existing ${colors.yellow(filePath)} file. Could not update.`);
3969
3155
  return content;
3970
3156
  }
3971
3157
  const svelte5 = !!dependencyVersion("svelte")?.startsWith("5");
@@ -4133,7 +3319,7 @@ else {
4133
3319
  style: "long",
4134
3320
  type: "conjunction"
4135
3321
  });
4136
- return `The inputs ${listFormat.format(invalidLanguageTags.map((x$1) => `"${x$1}"`))} are not valid BCP47 language tags`;
3322
+ return `The inputs ${listFormat.format(invalidLanguageTags.map((x) => `"${x}"`))} are not valid BCP47 language tags`;
4137
3323
  }
4138
3324
  if (validLanguageTags.length === 0) return "Please enter at least one valid BCP47 language tag. Eg: en";
4139
3325
  return undefined;
@@ -4190,7 +3376,7 @@ var paraglide_default = defineAddon({
4190
3376
  const expression = common_exports.expressionFromString("(request) => deLocalizeUrl(request.url).pathname");
4191
3377
  const rerouteIdentifier = variables_exports.declaration(ast, "const", "reroute", expression);
4192
3378
  const existingExport = exports_exports.namedExport(ast, "reroute", rerouteIdentifier);
4193
- if (existingExport.declaration !== rerouteIdentifier) E$2.warn("Adding the reroute hook automatically failed. Add it manually");
3379
+ if (existingExport.declaration !== rerouteIdentifier) log$1.warn("Adding the reroute hook automatically failed. Add it manually");
4194
3380
  return generateCode();
4195
3381
  });
4196
3382
  sv.file(`src/hooks.server.${ext}`, (content) => {
@@ -4209,7 +3395,7 @@ var paraglide_default = defineAddon({
4209
3395
  const { ast, generateCode } = parseHtml$1(content);
4210
3396
  const htmlNode = ast.children.find((child) => child.type === esm_exports.Tag && child.name === "html");
4211
3397
  if (!htmlNode) {
4212
- E$2.warn("Could not find <html> node in app.html. You'll need to add the language placeholder manually");
3398
+ log$1.warn("Could not find <html> node in app.html. You'll need to add the language placeholder manually");
4213
3399
  return generateCode();
4214
3400
  }
4215
3401
  htmlNode.attribs = {
@@ -4237,7 +3423,7 @@ var paraglide_default = defineAddon({
4237
3423
  const templateCode = new MagicString(template.source);
4238
3424
  templateCode.append("\n\n<h1>{m.hello_world({ name: 'SvelteKit User' })}</h1>\n");
4239
3425
  const { validLanguageTags: validLanguageTags$1 } = parseLanguageTagInput(options$6.languageTags);
4240
- const links = validLanguageTags$1.map((x$1) => `${templateCode.getIndentString()}<button onclick={() => setLocale('${x$1}')}>${x$1}</button>`).join("\n");
3426
+ const links = validLanguageTags$1.map((x) => `${templateCode.getIndentString()}<button onclick={() => setLocale('${x}')}>${x}</button>`).join("\n");
4241
3427
  templateCode.append(`<div>\n${links}\n</div>`);
4242
3428
  templateCode.append("<p>\nIf you use VSCode, install the <a href=\"https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension\" target=\"_blank\">Sherlock i18n extension</a> for a better i18n experience.\n</p>");
4243
3429
  return generateCode({
@@ -4325,7 +3511,7 @@ var playwright_default = defineAddon({
4325
3511
  imports_exports.addNamed(ast, "@playwright/test", { defineConfig: "defineConfig" });
4326
3512
  object_exports.properties(defaultExport.value.arguments[0], config);
4327
3513
  } else if (defaultExport.value.type === "ObjectExpression") object_exports.properties(defaultExport.value, config);
4328
- else E$2.warn("Unexpected playwright config for playwright add-on. Could not update.");
3514
+ else log$1.warn("Unexpected playwright config for playwright add-on. Could not update.");
4329
3515
  return generateCode();
4330
3516
  });
4331
3517
  }
@@ -4357,7 +3543,7 @@ var prettier_default = defineAddon({
4357
3543
  try {
4358
3544
  ({data, generateCode} = parseJson$1(content));
4359
3545
  } catch {
4360
- E$2.warn(`A ${colors.yellow(".prettierrc")} config already exists and cannot be parsed as JSON. Skipping initialization.`);
3546
+ log$1.warn(`A ${colors.yellow(".prettierrc")} config already exists and cannot be parsed as JSON. Skipping initialization.`);
4361
3547
  return content;
4362
3548
  }
4363
3549
  if (Object.keys(data).length === 0) {
@@ -4371,7 +3557,7 @@ var prettier_default = defineAddon({
4371
3557
  const plugins$1 = data.plugins;
4372
3558
  if (!plugins$1.includes("prettier-plugin-svelte")) data.plugins.unshift("prettier-plugin-svelte");
4373
3559
  const overrides = data.overrides;
4374
- const override = overrides.find((o$1) => o$1?.options?.parser === "svelte");
3560
+ const override = overrides.find((o) => o?.options?.parser === "svelte");
4375
3561
  if (!override) overrides.push({
4376
3562
  files: "*.svelte",
4377
3563
  options: { parser: "svelte" }
@@ -4392,7 +3578,7 @@ var prettier_default = defineAddon({
4392
3578
  } else scripts$1["lint"] ??= CHECK_CMD;
4393
3579
  return generateCode();
4394
3580
  });
4395
- if (eslintVersion?.startsWith(SUPPORTED_ESLINT_VERSION) === false) E$2.warn(`An older major version of ${colors.yellow("eslint")} was detected. Skipping ${colors.yellow("eslint-config-prettier")} installation.`);
3581
+ if (eslintVersion?.startsWith(SUPPORTED_ESLINT_VERSION) === false) log$1.warn(`An older major version of ${colors.yellow("eslint")} was detected. Skipping ${colors.yellow("eslint-config-prettier")} installation.`);
4396
3582
  if (eslintInstalled) {
4397
3583
  sv.devDependency("eslint-config-prettier", "^10.0.1");
4398
3584
  sv.file("eslint.config.js", addEslintConfigPrettier);
@@ -4643,7 +3829,7 @@ else sv.file(`src/App.svelte.test.${ext}`, (content) => {
4643
3829
  });
4644
3830
  const defineConfigFallback = function_exports.call("defineConfig", []);
4645
3831
  const { value: defineWorkspaceCall } = exports_exports.defaultExport(ast, defineConfigFallback);
4646
- if (defineWorkspaceCall.type !== "CallExpression") E$2.warn("Unexpected vite config. Could not update.");
3832
+ if (defineWorkspaceCall.type !== "CallExpression") log$1.warn("Unexpected vite config. Could not update.");
4647
3833
  const vitestConfig = function_exports.argumentByIndex(defineWorkspaceCall, 0, object_exports.createEmpty());
4648
3834
  const testObject = object_exports.property(vitestConfig, "test", object_exports.createEmpty());
4649
3835
  const workspaceArray = object_exports.property(testObject, "workspace", array_exports.createEmpty());
@@ -4696,24 +3882,24 @@ var UnsupportedError = class extends Error {
4696
3882
 
4697
3883
  //#endregion
4698
3884
  //#region packages/cli/utils/common.ts
4699
- var import_picocolors$3 = __toESM$1(require_picocolors(), 1);
3885
+ var import_picocolors$3 = __toESM$1(require_picocolors$1(), 1);
4700
3886
  const NO_PREFIX = "--no-";
4701
3887
  let options = [];
4702
3888
  function getLongFlag(flags) {
4703
- return flags.split(",").map((f$2) => f$2.trim()).find((f$2) => f$2.startsWith("--"));
3889
+ return flags.split(",").map((f) => f.trim()).find((f) => f.startsWith("--"));
4704
3890
  }
4705
3891
  const helpConfig = {
4706
3892
  argumentDescription: formatDescription,
4707
3893
  optionDescription: formatDescription,
4708
3894
  visibleOptions(cmd) {
4709
3895
  options = cmd.options;
4710
- const visible = cmd.options.filter((o$1) => !o$1.hidden);
3896
+ const visible = cmd.options.filter((o) => !o.hidden);
4711
3897
  const show = [];
4712
3898
  for (const option of visible) {
4713
3899
  const flag = getLongFlag(option.flags);
4714
3900
  if (flag?.startsWith(NO_PREFIX)) {
4715
3901
  const stripped = flag.slice(NO_PREFIX.length);
4716
- const isNoVariant = visible.some((o$1) => getLongFlag(o$1.flags)?.startsWith(`--${stripped}`));
3902
+ const isNoVariant = visible.some((o) => getLongFlag(o.flags)?.startsWith(`--${stripped}`));
4717
3903
  if (isNoVariant) continue;
4718
3904
  }
4719
3905
  show.push(option);
@@ -4725,7 +3911,7 @@ const helpConfig = {
4725
3911
  const flag = longFlag?.split(" ").at(0);
4726
3912
  if (!flag || !longFlag) return option.flags;
4727
3913
  const noVariant = `--no-${flag.slice(2)}`;
4728
- const hasVariant = options.some((o$1) => getLongFlag(o$1.flags) === noVariant);
3914
+ const hasVariant = options.some((o) => getLongFlag(o.flags) === noVariant);
4729
3915
  if (hasVariant) return `--[no-]${longFlag.slice(2)}`;
4730
3916
  return option.flags;
4731
3917
  },
@@ -4744,24 +3930,24 @@ function formatDescription(arg) {
4744
3930
  }
4745
3931
  async function runCommand(action) {
4746
3932
  try {
4747
- Pe(`Welcome to the Svelte CLI! ${import_picocolors$3.default.gray(`(v${package_default.version})`)}`);
3933
+ intro(`Welcome to the Svelte CLI! ${import_picocolors$3.default.gray(`(v${package_default.version})`)}`);
4748
3934
  await action();
4749
- Le("You're all set!");
3935
+ outro("You're all set!");
4750
3936
  } catch (e) {
4751
3937
  if (e instanceof UnsupportedError) {
4752
3938
  const padding = getPadding(e.reasons.map((r) => r.id));
4753
3939
  const message = e.reasons.map((r) => ` ${r.id.padEnd(padding)} ${import_picocolors$3.default.red(r.reason)}`).join("\n");
4754
- E.error(`${e.name}\n\n${message}`);
4755
- E.message();
3940
+ log.error(`${e.name}\n\n${message}`);
3941
+ log.message();
4756
3942
  } else if (e instanceof Error) {
4757
- E.error(e.stack ?? String(e));
4758
- E.message();
3943
+ log.error(e.stack ?? String(e));
3944
+ log.message();
4759
3945
  }
4760
- Ne("Operation failed.");
3946
+ cancel("Operation failed.");
4761
3947
  }
4762
3948
  }
4763
3949
  function getPadding(lines) {
4764
- const lengths = lines.map((s) => s.length);
3950
+ const lengths = lines.map((s$1) => s$1.length);
4765
3951
  return Math.max(...lengths);
4766
3952
  }
4767
3953
  function forwardExitCode(error) {
@@ -4875,8 +4061,8 @@ var require_b4a = __commonJS({ "node_modules/.pnpm/b4a@1.6.7/node_modules/b4a/in
4875
4061
  function byteLength(string$1, encoding) {
4876
4062
  return Buffer.byteLength(string$1, encoding);
4877
4063
  }
4878
- function compare(a, b$1) {
4879
- return Buffer.compare(a, b$1);
4064
+ function compare(a, b) {
4065
+ return Buffer.compare(a, b);
4880
4066
  }
4881
4067
  function concat(buffers, totalLength) {
4882
4068
  return Buffer.concat(buffers, totalLength);
@@ -4884,8 +4070,8 @@ var require_b4a = __commonJS({ "node_modules/.pnpm/b4a@1.6.7/node_modules/b4a/in
4884
4070
  function copy(source, target, targetStart, start, end) {
4885
4071
  return toBuffer(source).copy(target, targetStart, start, end);
4886
4072
  }
4887
- function equals(a, b$1) {
4888
- return toBuffer(a).equals(b$1);
4073
+ function equals(a, b) {
4074
+ return toBuffer(a).equals(b);
4889
4075
  }
4890
4076
  function fill(buffer, value, offset, end, encoding) {
4891
4077
  return toBuffer(buffer).fill(value, offset, end, encoding);
@@ -6030,22 +5216,22 @@ else {
6030
5216
  if (autoDestroy) dest.on("close", () => done(error || (fin ? null : PREMATURE_CLOSE)));
6031
5217
  }
6032
5218
  return dest;
6033
- function errorHandle(s, rd, wr, onerror$1) {
6034
- s.on("error", onerror$1);
6035
- s.on("close", onclose);
5219
+ function errorHandle(s$1, rd, wr, onerror$1) {
5220
+ s$1.on("error", onerror$1);
5221
+ s$1.on("close", onclose);
6036
5222
  function onclose() {
6037
- if (rd && s._readableState && !s._readableState.ended) return onerror$1(PREMATURE_CLOSE);
6038
- if (wr && s._writableState && !s._writableState.ended) return onerror$1(PREMATURE_CLOSE);
5223
+ if (rd && s$1._readableState && !s$1._readableState.ended) return onerror$1(PREMATURE_CLOSE);
5224
+ if (wr && s$1._writableState && !s$1._writableState.ended) return onerror$1(PREMATURE_CLOSE);
6039
5225
  }
6040
5226
  }
6041
5227
  function onerror(err) {
6042
5228
  if (!err || error) return;
6043
5229
  error = err;
6044
- for (const s of all) s.destroy(err);
5230
+ for (const s$1 of all) s$1.destroy(err);
6045
5231
  }
6046
5232
  }
6047
- function echo$1(s) {
6048
- return s;
5233
+ function echo$1(s$1) {
5234
+ return s$1;
6049
5235
  }
6050
5236
  function isStream(stream) {
6051
5237
  return !!stream._readableState || !!stream._writableState;
@@ -6079,8 +5265,8 @@ else {
6079
5265
  function abort() {
6080
5266
  this.destroy(new Error("Stream aborted."));
6081
5267
  }
6082
- function isWritev(s) {
6083
- return s._writev !== Writable$2.prototype._writev && s._writev !== Duplex.prototype._writev;
5268
+ function isWritev(s$1) {
5269
+ return s$1._writev !== Writable$2.prototype._writev && s$1._writev !== Duplex.prototype._writev;
6084
5270
  }
6085
5271
  module.exports = {
6086
5272
  pipeline: pipeline$1,
@@ -6146,10 +5332,10 @@ var require_headers = __commonJS({ "node_modules/.pnpm/tar-stream@3.1.7/node_mod
6146
5332
  while (i < buf.length && buf[i] !== 32) i++;
6147
5333
  const len = parseInt(b4a$2.toString(buf.subarray(0, i)), 10);
6148
5334
  if (!len) return result;
6149
- const b$1 = b4a$2.toString(buf.subarray(i + 1, len - 1));
6150
- const keyIndex = b$1.indexOf("=");
5335
+ const b = b4a$2.toString(buf.subarray(i + 1, len - 1));
5336
+ const keyIndex = b.indexOf("=");
6151
5337
  if (keyIndex === -1) return result;
6152
- result[b$1.slice(0, keyIndex)] = b$1.slice(keyIndex + 1);
5338
+ result[b.slice(0, keyIndex)] = b.slice(keyIndex + 1);
6153
5339
  buf = buf.subarray(len);
6154
5340
  }
6155
5341
  return result;
@@ -6200,9 +5386,9 @@ var require_headers = __commonJS({ "node_modules/.pnpm/tar-stream@3.1.7/node_mod
6200
5386
  const gname = decodeStr(buf, 297, 32);
6201
5387
  const devmajor = decodeOct(buf, 329, 8);
6202
5388
  const devminor = decodeOct(buf, 337, 8);
6203
- const c$1 = cksum(buf);
6204
- if (c$1 === 256) return null;
6205
- if (c$1 !== decodeOct(buf, 148, 8)) throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");
5389
+ const c = cksum(buf);
5390
+ if (c === 256) return null;
5391
+ if (c !== decodeOct(buf, 148, 8)) throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");
6206
5392
  if (isUSTAR(buf)) {
6207
5393
  if (buf[345]) name$1 = decodeStr(buf, 345, 155, filenameEncoding) + "/" + name$1;
6208
5394
  } else if (isGNU(buf)) {} else if (!allowUnknownFormat) throw new Error("Invalid tar header: unknown format.");
@@ -6277,7 +5463,7 @@ var require_headers = __commonJS({ "node_modules/.pnpm/tar-stream@3.1.7/node_mod
6277
5463
  function cksum(block) {
6278
5464
  let sum = 256;
6279
5465
  for (let i = 0; i < 148; i++) sum += block[i];
6280
- for (let j$2 = 156; j$2 < 512; j$2++) sum += block[j$2];
5466
+ for (let j = 156; j < 512; j++) sum += block[j];
6281
5467
  return sum;
6282
5468
  }
6283
5469
  function encodeOct(val, n$1) {
@@ -6932,8 +6118,8 @@ var require_wrappy = __commonJS({ "node_modules/.pnpm/wrappy@1.0.2/node_modules/
6932
6118
  function wrappy$1(fn, cb) {
6933
6119
  if (fn && cb) return wrappy$1(fn)(cb);
6934
6120
  if (typeof fn !== "function") throw new TypeError("need wrapper function");
6935
- Object.keys(fn).forEach(function(k$2) {
6936
- wrapper[k$2] = fn[k$2];
6121
+ Object.keys(fn).forEach(function(k) {
6122
+ wrapper[k] = fn[k];
6937
6123
  });
6938
6124
  return wrapper;
6939
6125
  function wrapper() {
@@ -6941,8 +6127,8 @@ var require_wrappy = __commonJS({ "node_modules/.pnpm/wrappy@1.0.2/node_modules/
6941
6127
  for (var i = 0; i < args.length; i++) args[i] = arguments[i];
6942
6128
  var ret = fn.apply(this, args);
6943
6129
  var cb$1 = args[args.length - 1];
6944
- if (typeof ret === "function" && ret !== cb$1) Object.keys(cb$1).forEach(function(k$2) {
6945
- ret[k$2] = cb$1[k$2];
6130
+ if (typeof ret === "function" && ret !== cb$1) Object.keys(cb$1).forEach(function(k) {
6131
+ ret[k] = cb$1[k];
6946
6132
  });
6947
6133
  return ret;
6948
6134
  }
@@ -6970,24 +6156,24 @@ var require_once = __commonJS({ "node_modules/.pnpm/once@1.4.0/node_modules/once
6970
6156
  });
6971
6157
  });
6972
6158
  function once$2(fn) {
6973
- var f$2 = function() {
6974
- if (f$2.called) return f$2.value;
6975
- f$2.called = true;
6976
- return f$2.value = fn.apply(this, arguments);
6159
+ var f = function() {
6160
+ if (f.called) return f.value;
6161
+ f.called = true;
6162
+ return f.value = fn.apply(this, arguments);
6977
6163
  };
6978
- f$2.called = false;
6979
- return f$2;
6164
+ f.called = false;
6165
+ return f;
6980
6166
  }
6981
6167
  function onceStrict(fn) {
6982
- var f$2 = function() {
6983
- if (f$2.called) throw new Error(f$2.onceError);
6984
- f$2.called = true;
6985
- return f$2.value = fn.apply(this, arguments);
6168
+ var f = function() {
6169
+ if (f.called) throw new Error(f.onceError);
6170
+ f.called = true;
6171
+ return f.value = fn.apply(this, arguments);
6986
6172
  };
6987
6173
  var name$1 = fn.name || "Function wrapped with `once`";
6988
- f$2.onceError = name$1 + " shouldn't be called more than once";
6989
- f$2.called = false;
6990
- return f$2;
6174
+ f.onceError = name$1 + " shouldn't be called more than once";
6175
+ f.called = false;
6176
+ return f;
6991
6177
  }
6992
6178
  } });
6993
6179
 
@@ -7567,8 +6753,8 @@ function getGlobalPreconditions(cwd, addons, addonSetupResult) {
7567
6753
 
7568
6754
  //#endregion
7569
6755
  //#region packages/cli/commands/add/index.ts
7570
- var import_picocolors$2 = __toESM$1(require_picocolors(), 1);
7571
- const aliases = officialAddons.map((c$1) => c$1.alias).filter((v$1) => v$1 !== undefined);
6756
+ var import_picocolors$2 = __toESM$1(require_picocolors$1(), 1);
6757
+ const aliases = officialAddons.map((c) => c.alias).filter((v) => v !== undefined);
7572
6758
  const addonOptions = getAddonOptionFlags();
7573
6759
  const communityDetails = [];
7574
6760
  const AddonsSchema = array(string());
@@ -7684,7 +6870,7 @@ const add = new Command("add").description("applies specified add-ons into a pro
7684
6870
  runCommand(async () => {
7685
6871
  const selectedAddonIds = selectedAddons.map(({ id }) => id);
7686
6872
  const { nextSteps } = await runAddCommand(options$6, selectedAddonIds);
7687
- if (nextSteps) Ge(nextSteps, "Next steps", { format: (line) => line });
6873
+ if (nextSteps) box(nextSteps, "Next steps");
7688
6874
  });
7689
6875
  });
7690
6876
  async function runAddCommand(options$6, selectedAddonIds) {
@@ -7699,7 +6885,7 @@ async function runAddCommand(options$6, selectedAddonIds) {
7699
6885
  const specifiedOptions = options$6.addons[addonId];
7700
6886
  if (!specifiedOptions) continue;
7701
6887
  const details$1 = getAddonDetails(addonId);
7702
- if (!selectedAddons.find((d$1) => d$1.addon === details$1)) selectedAddons.push({
6888
+ if (!selectedAddons.find((d) => d.addon === details$1)) selectedAddons.push({
7703
6889
  type: "official",
7704
6890
  addon: details$1
7705
6891
  });
@@ -7733,16 +6919,16 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7733
6919
  label: addon.id,
7734
6920
  hint: "https://www.npmjs.com/package/" + addon.id
7735
6921
  }));
7736
- const selected = await ke({
6922
+ const selected = await multiselect({
7737
6923
  message: "Which community tools would you like to add to your project?",
7738
6924
  options: promptOptions,
7739
6925
  required: false
7740
6926
  });
7741
- if (Ou(selected)) {
7742
- Ne("Operation cancelled.");
6927
+ if (isCancel(selected)) {
6928
+ cancel("Operation cancelled.");
7743
6929
  process$1.exit(1);
7744
6930
  } else if (selected.length === 0) {
7745
- Ne("No add-ons selected. Exiting.");
6931
+ cancel("No add-ons selected. Exiting.");
7746
6932
  process$1.exit(1);
7747
6933
  }
7748
6934
  options$6.community = selected;
@@ -7755,7 +6941,7 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7755
6941
  if (!validAddon) throw new Error(`Invalid community add-on specified: '${id}'\nAvailable options: ${communityAddonIds.join(", ")}`);
7756
6942
  return id;
7757
6943
  });
7758
- const { start, stop } = J();
6944
+ const { start, stop } = spinner();
7759
6945
  try {
7760
6946
  start("Resolving community add-on packages");
7761
6947
  const pkgs = await Promise.all(addons.map(async (id) => {
@@ -7765,7 +6951,7 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7765
6951
  });
7766
6952
  }));
7767
6953
  stop("Resolved community add-on packages");
7768
- E.warn("The Svelte maintainers have not reviewed community add-ons for malicious code. Use at your discretion.");
6954
+ log.warn("The Svelte maintainers have not reviewed community add-ons for malicious code. Use at your discretion.");
7769
6955
  const paddingName = getPadding(pkgs.map(({ pkg }) => pkg.name));
7770
6956
  const paddingVersion = getPadding(pkgs.map(({ pkg }) => `(v${pkg.version})`));
7771
6957
  const packageInfos = pkgs.map(({ pkg, repo: _repo }) => {
@@ -7774,10 +6960,10 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7774
6960
  const repo = import_picocolors$2.default.dim(`(${_repo})`);
7775
6961
  return `${name$1} ${version$1} ${repo}`;
7776
6962
  });
7777
- E.message(packageInfos.join("\n"));
7778
- const confirm = await Ve({ message: "Would you like to continue?" });
7779
- if (confirm !== true) {
7780
- Ne("Operation cancelled.");
6963
+ log.message(packageInfos.join("\n"));
6964
+ const confirm$1 = await confirm({ message: "Would you like to continue?" });
6965
+ if (confirm$1 !== true) {
6966
+ cancel("Operation cancelled.");
7781
6967
  process$1.exit(1);
7782
6968
  }
7783
6969
  start("Downloading community add-on packages");
@@ -7805,13 +6991,13 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7805
6991
  value: id,
7806
6992
  hint: `${shortDescription} - ${homepage$1}`
7807
6993
  }));
7808
- const selected = await ke({
6994
+ const selected = await multiselect({
7809
6995
  message: `What would you like to add to your project? ${import_picocolors$2.default.dim("(use arrow keys / space bar)")}`,
7810
6996
  options: addonOptions$1,
7811
6997
  required: false
7812
6998
  });
7813
- if (Ou(selected)) {
7814
- Ne("Operation cancelled.");
6999
+ if (isCancel(selected)) {
7000
+ cancel("Operation cancelled.");
7815
7001
  process$1.exit(1);
7816
7002
  }
7817
7003
  for (const id of selected) {
@@ -7829,9 +7015,9 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7829
7015
  for (const depId of missingDependencies) {
7830
7016
  const dependency = officialAddons.find((a) => a.id === depId);
7831
7017
  if (!dependency) throw new Error(`'${addon.id}' depends on an invalid add-on: '${depId}'`);
7832
- const install = await Ve({ message: `The ${import_picocolors$2.default.bold(import_picocolors$2.default.cyan(addon.id))} add-on requires ${import_picocolors$2.default.bold(import_picocolors$2.default.cyan(depId))} to also be setup. ${import_picocolors$2.default.green("Include it?")}` });
7018
+ const install = await confirm({ message: `The ${import_picocolors$2.default.bold(import_picocolors$2.default.cyan(addon.id))} add-on requires ${import_picocolors$2.default.bold(import_picocolors$2.default.cyan(depId))} to also be setup. ${import_picocolors$2.default.green("Include it?")}` });
7833
7019
  if (install !== true) {
7834
- Ne("Operation cancelled.");
7020
+ cancel("Operation cancelled.");
7835
7021
  process$1.exit(1);
7836
7022
  }
7837
7023
  selectedAddons.push({
@@ -7853,13 +7039,13 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7853
7039
  }
7854
7040
  if (fails.length > 0) {
7855
7041
  const message = fails.map(({ name: name$1, message: message$1 }) => import_picocolors$2.default.yellow(`${name$1} (${message$1})`)).join("\n- ");
7856
- Ge(`- ${message}`, "Preconditions not met", { format: (line) => line });
7857
- const force = await Ve({
7042
+ note(`- ${message}`, "Preconditions not met");
7043
+ const force = await confirm({
7858
7044
  message: "Preconditions failed. Do you wish to continue?",
7859
7045
  initialValue: false
7860
7046
  });
7861
- if (Ou(force) || !force) {
7862
- Ne("Operation cancelled.");
7047
+ if (isCancel(force) || !force) {
7048
+ cancel("Operation cancelled.");
7863
7049
  process$1.exit(1);
7864
7050
  }
7865
7051
  }
@@ -7881,23 +7067,23 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7881
7067
  if (shouldAsk === false || values[questionId] !== undefined) continue;
7882
7068
  let answer;
7883
7069
  const message = questionPrefix + question.question;
7884
- if (question.type === "boolean") answer = await Ve({
7070
+ if (question.type === "boolean") answer = await confirm({
7885
7071
  message,
7886
7072
  initialValue: question.default
7887
7073
  });
7888
- if (question.type === "select") answer = await qe({
7074
+ if (question.type === "select") answer = await select({
7889
7075
  message,
7890
7076
  initialValue: question.default,
7891
7077
  options: question.options
7892
7078
  });
7893
- if (question.type === "multiselect") answer = await ke({
7079
+ if (question.type === "multiselect") answer = await multiselect({
7894
7080
  message,
7895
7081
  initialValues: question.default,
7896
7082
  required: false,
7897
7083
  options: question.options
7898
7084
  });
7899
7085
  if (question.type === "string" || question.type === "number") {
7900
- answer = await Ue({
7086
+ answer = await text({
7901
7087
  message,
7902
7088
  initialValue: question.default.toString(),
7903
7089
  placeholder: question.placeholder,
@@ -7905,8 +7091,8 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7905
7091
  });
7906
7092
  if (question.type === "number") answer = Number(answer);
7907
7093
  }
7908
- if (Ou(answer)) {
7909
- Ne("Operation cancelled.");
7094
+ if (isCancel(answer)) {
7095
+ cancel("Operation cancelled.");
7910
7096
  process$1.exit(1);
7911
7097
  }
7912
7098
  values[questionId] = answer;
@@ -7923,7 +7109,7 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7923
7109
  addons: addonMap,
7924
7110
  options: official
7925
7111
  });
7926
- E.success("Successfully setup add-ons");
7112
+ log.success("Successfully setup add-ons");
7927
7113
  let packageManager;
7928
7114
  if (options$6.install) {
7929
7115
  packageManager = options$6.install === true ? await packageManagerPrompt(options$6.cwd) : options$6.install;
@@ -7935,7 +7121,7 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7935
7121
  }
7936
7122
  workspace = await createWorkspace(workspace);
7937
7123
  if (filesToFormat.length > 0 && packageManager && !!workspace.dependencyVersion("prettier")) {
7938
- const { start, stop } = J();
7124
+ const { start, stop } = spinner();
7939
7125
  start("Formatting modified files");
7940
7126
  try {
7941
7127
  await formatFiles({
@@ -7946,7 +7132,7 @@ else if (official[addonId][id] !== undefined) throw new Error(`Incompatible '${a
7946
7132
  stop("Successfully formatted modified files");
7947
7133
  } catch (e) {
7948
7134
  stop("Failed to format files");
7949
- if (e instanceof Error) E.error(e.message);
7135
+ if (e instanceof Error) log.error(e.message);
7950
7136
  }
7951
7137
  }
7952
7138
  const highlighter = getHighlighter();
@@ -7987,7 +7173,7 @@ function getAddonOptionFlags() {
7987
7173
  const details = getAddonDetails(id);
7988
7174
  if (Object.values(details.options).length === 0) continue;
7989
7175
  const { defaults, groups } = getOptionChoices(details);
7990
- const choices = Object.entries(groups).map(([group, choices$1]) => `${import_picocolors$2.default.dim(`${group}:`)} ${choices$1.join(", ")}`).join("\n");
7176
+ const choices = Object.entries(groups).map(([group$1, choices$1]) => `${import_picocolors$2.default.dim(`${group$1}:`)} ${choices$1.join(", ")}`).join("\n");
7991
7177
  const preset = defaults.join(", ") || "none";
7992
7178
  options$6.push({
7993
7179
  id,
@@ -8013,14 +7199,14 @@ function getOptionChoices(details) {
8013
7199
  }
8014
7200
  }
8015
7201
  if (question.type === "select") {
8016
- values = question.options.map((o$1) => o$1.value);
7202
+ values = question.options.map((o) => o.value);
8017
7203
  if (applyDefault) {
8018
7204
  options$6[id] = question.default;
8019
7205
  defaults.push(question.default);
8020
7206
  }
8021
7207
  }
8022
7208
  if (question.type === "multiselect") {
8023
- values = question.options.map((o$1) => o$1.value);
7209
+ values = question.options.map((o) => o.value);
8024
7210
  if (applyDefault) {
8025
7211
  options$6[id] = question.default;
8026
7212
  defaults.push(...question.default);
@@ -8047,7 +7233,7 @@ function getOptionChoices(details) {
8047
7233
 
8048
7234
  //#endregion
8049
7235
  //#region packages/cli/commands/create.ts
8050
- var import_picocolors$1 = __toESM$1(require_picocolors(), 1);
7236
+ var import_picocolors$1 = __toESM$1(require_picocolors$1(), 1);
8051
7237
  const langs = ["ts", "jsdoc"];
8052
7238
  const langMap = {
8053
7239
  ts: "typescript",
@@ -8093,36 +7279,36 @@ const create$1 = new Command("create").description("scaffolds a new SvelteKit pr
8093
7279
  "",
8094
7280
  `Stuck? Visit us at ${import_picocolors$1.default.cyan("https://svelte.dev/chat")}`
8095
7281
  ];
8096
- Ge(steps.join("\n"), "Project next steps", { format: (line) => line });
8097
- if (addOnNextSteps) Ge(addOnNextSteps, "Add-on next steps", { format: (line) => line });
7282
+ box(steps.join("\n"), "Project next steps");
7283
+ if (addOnNextSteps) box(addOnNextSteps, "Add-on next steps");
8098
7284
  });
8099
7285
  });
8100
7286
  async function createProject(cwd, options$6) {
8101
- const { directory, template, language } = await je({
7287
+ const { directory, template, language } = await group({
8102
7288
  directory: () => {
8103
7289
  if (cwd) return Promise.resolve(path.resolve(cwd));
8104
7290
  const defaultPath = "./";
8105
- return Ue({
7291
+ return text({
8106
7292
  message: "Where would you like your project to be created?",
8107
7293
  placeholder: ` (hit Enter to use '${defaultPath}')`,
8108
7294
  defaultValue: defaultPath
8109
7295
  });
8110
7296
  },
8111
7297
  force: async ({ results: { directory: directory$1 } }) => {
8112
- if (fs.existsSync(directory$1) && fs.readdirSync(directory$1).filter((x$1) => !x$1.startsWith(".git")).length > 0) {
8113
- const force = await Ve({
7298
+ if (fs.existsSync(directory$1) && fs.readdirSync(directory$1).filter((x) => !x.startsWith(".git")).length > 0) {
7299
+ const force = await confirm({
8114
7300
  message: "Directory not empty. Continue?",
8115
7301
  initialValue: false
8116
7302
  });
8117
- if (Ou(force) || !force) {
8118
- Ne("Exiting.");
7303
+ if (isCancel(force) || !force) {
7304
+ cancel("Exiting.");
8119
7305
  process$1.exit(0);
8120
7306
  }
8121
7307
  }
8122
7308
  },
8123
7309
  template: () => {
8124
7310
  if (options$6.template) return Promise.resolve(options$6.template);
8125
- return qe({
7311
+ return select({
8126
7312
  message: "Which template would you like?",
8127
7313
  initialValue: "minimal",
8128
7314
  options: templates.map((t) => ({
@@ -8134,7 +7320,7 @@ async function createProject(cwd, options$6) {
8134
7320
  },
8135
7321
  language: () => {
8136
7322
  if (options$6.types) return Promise.resolve(options$6.types);
8137
- return qe({
7323
+ return select({
8138
7324
  message: "Add type checking with TypeScript?",
8139
7325
  initialValue: "typescript",
8140
7326
  options: [
@@ -8154,7 +7340,7 @@ async function createProject(cwd, options$6) {
8154
7340
  });
8155
7341
  }
8156
7342
  }, { onCancel: () => {
8157
- Ne("Operation cancelled.");
7343
+ cancel("Operation cancelled.");
8158
7344
  process$1.exit(0);
8159
7345
  } });
8160
7346
  const projectPath = path.resolve(directory);
@@ -8163,7 +7349,7 @@ async function createProject(cwd, options$6) {
8163
7349
  template,
8164
7350
  types: language
8165
7351
  });
8166
- E.success("Project created");
7352
+ log.success("Project created");
8167
7353
  let packageManager;
8168
7354
  let addOnNextSteps;
8169
7355
  const installDeps = async (install) => {
@@ -8215,7 +7401,7 @@ function runMigrate(cwd, args) {
8215
7401
 
8216
7402
  //#endregion
8217
7403
  //#region packages/cli/commands/check.ts
8218
- var import_picocolors = __toESM$1(require_picocolors(), 1);
7404
+ var import_picocolors = __toESM$1(require_picocolors$1(), 1);
8219
7405
  const check = new Command("check").description("a CLI for checking your Svelte code").allowUnknownOption(true).allowExcessArguments(true).option("-C, --cwd <path>", "path to working directory", process$1.cwd()).configureHelp({ formatHelp() {
8220
7406
  runCheck(process$1.cwd(), ["--help"]);
8221
7407
  return "";