@storybook/cli 10.1.0-alpha.10 → 10.1.0-alpha.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1340 @@
1
+ import CJS_COMPAT_NODE_URL_cnh1zw3akmi from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_cnh1zw3akmi from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_cnh1zw3akmi from "node:module";
4
+
5
+ var __filename = CJS_COMPAT_NODE_URL_cnh1zw3akmi.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_cnh1zw3akmi.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_cnh1zw3akmi.createRequire(import.meta.url);
8
+
9
+ // ------------------------------------------------------------
10
+ // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
+ // ------------------------------------------------------------
12
+ import {
13
+ globby,
14
+ globbySync
15
+ } from "./chunk-ZAQE57EP.js";
16
+ import {
17
+ require_semver
18
+ } from "./chunk-P7TBIJSH.js";
19
+ import {
20
+ __commonJS,
21
+ __toESM
22
+ } from "./chunk-VFUI46B4.js";
23
+
24
+ // ../../node_modules/picocolors/picocolors.js
25
+ var require_picocolors = __commonJS({
26
+ "../../node_modules/picocolors/picocolors.js"(exports, module) {
27
+ var p = process || {}, argv = p.argv || [], env2 = p.env || {}, isColorSupported = !(env2.NO_COLOR || argv.includes("--no-color")) && (!!env2.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env2.TERM !== "dumb" || !!env2.CI), formatter = (open, close, replace = open) => (input) => {
28
+ let string = "" + input, index = string.indexOf(close, open.length);
29
+ return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close;
30
+ }, replaceClose = (string, close, replace, index) => {
31
+ let result = "", cursor = 0;
32
+ do
33
+ result += string.substring(cursor, index) + replace, cursor = index + close.length, index = string.indexOf(close, cursor);
34
+ while (~index);
35
+ return result + string.substring(cursor);
36
+ }, createColors = (enabled = isColorSupported) => {
37
+ let f = enabled ? formatter : () => String;
38
+ return {
39
+ isColorSupported: enabled,
40
+ reset: f("\x1B[0m", "\x1B[0m"),
41
+ bold: f("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
42
+ dim: f("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
43
+ italic: f("\x1B[3m", "\x1B[23m"),
44
+ underline: f("\x1B[4m", "\x1B[24m"),
45
+ inverse: f("\x1B[7m", "\x1B[27m"),
46
+ hidden: f("\x1B[8m", "\x1B[28m"),
47
+ strikethrough: f("\x1B[9m", "\x1B[29m"),
48
+ black: f("\x1B[30m", "\x1B[39m"),
49
+ red: f("\x1B[31m", "\x1B[39m"),
50
+ green: f("\x1B[32m", "\x1B[39m"),
51
+ yellow: f("\x1B[33m", "\x1B[39m"),
52
+ blue: f("\x1B[34m", "\x1B[39m"),
53
+ magenta: f("\x1B[35m", "\x1B[39m"),
54
+ cyan: f("\x1B[36m", "\x1B[39m"),
55
+ white: f("\x1B[37m", "\x1B[39m"),
56
+ gray: f("\x1B[90m", "\x1B[39m"),
57
+ bgBlack: f("\x1B[40m", "\x1B[49m"),
58
+ bgRed: f("\x1B[41m", "\x1B[49m"),
59
+ bgGreen: f("\x1B[42m", "\x1B[49m"),
60
+ bgYellow: f("\x1B[43m", "\x1B[49m"),
61
+ bgBlue: f("\x1B[44m", "\x1B[49m"),
62
+ bgMagenta: f("\x1B[45m", "\x1B[49m"),
63
+ bgCyan: f("\x1B[46m", "\x1B[49m"),
64
+ bgWhite: f("\x1B[47m", "\x1B[49m"),
65
+ blackBright: f("\x1B[90m", "\x1B[39m"),
66
+ redBright: f("\x1B[91m", "\x1B[39m"),
67
+ greenBright: f("\x1B[92m", "\x1B[39m"),
68
+ yellowBright: f("\x1B[93m", "\x1B[39m"),
69
+ blueBright: f("\x1B[94m", "\x1B[39m"),
70
+ magentaBright: f("\x1B[95m", "\x1B[39m"),
71
+ cyanBright: f("\x1B[96m", "\x1B[39m"),
72
+ whiteBright: f("\x1B[97m", "\x1B[39m"),
73
+ bgBlackBright: f("\x1B[100m", "\x1B[49m"),
74
+ bgRedBright: f("\x1B[101m", "\x1B[49m"),
75
+ bgGreenBright: f("\x1B[102m", "\x1B[49m"),
76
+ bgYellowBright: f("\x1B[103m", "\x1B[49m"),
77
+ bgBlueBright: f("\x1B[104m", "\x1B[49m"),
78
+ bgMagentaBright: f("\x1B[105m", "\x1B[49m"),
79
+ bgCyanBright: f("\x1B[106m", "\x1B[49m"),
80
+ bgWhiteBright: f("\x1B[107m", "\x1B[49m")
81
+ };
82
+ };
83
+ module.exports = createColors();
84
+ module.exports.createColors = createColors;
85
+ }
86
+ });
87
+
88
+ // ../../node_modules/boxen/node_modules/emoji-regex/index.js
89
+ var require_emoji_regex = __commonJS({
90
+ "../../node_modules/boxen/node_modules/emoji-regex/index.js"(exports, module) {
91
+ module.exports = () => /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
92
+ }
93
+ });
94
+
95
+ // ../../node_modules/widest-line/node_modules/emoji-regex/index.js
96
+ var require_emoji_regex2 = __commonJS({
97
+ "../../node_modules/widest-line/node_modules/emoji-regex/index.js"(exports, module) {
98
+ module.exports = () => /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
99
+ }
100
+ });
101
+
102
+ // ../../node_modules/cli-boxes/boxes.json
103
+ var require_boxes = __commonJS({
104
+ "../../node_modules/cli-boxes/boxes.json"(exports, module) {
105
+ module.exports = {
106
+ single: {
107
+ topLeft: "\u250C",
108
+ top: "\u2500",
109
+ topRight: "\u2510",
110
+ right: "\u2502",
111
+ bottomRight: "\u2518",
112
+ bottom: "\u2500",
113
+ bottomLeft: "\u2514",
114
+ left: "\u2502"
115
+ },
116
+ double: {
117
+ topLeft: "\u2554",
118
+ top: "\u2550",
119
+ topRight: "\u2557",
120
+ right: "\u2551",
121
+ bottomRight: "\u255D",
122
+ bottom: "\u2550",
123
+ bottomLeft: "\u255A",
124
+ left: "\u2551"
125
+ },
126
+ round: {
127
+ topLeft: "\u256D",
128
+ top: "\u2500",
129
+ topRight: "\u256E",
130
+ right: "\u2502",
131
+ bottomRight: "\u256F",
132
+ bottom: "\u2500",
133
+ bottomLeft: "\u2570",
134
+ left: "\u2502"
135
+ },
136
+ bold: {
137
+ topLeft: "\u250F",
138
+ top: "\u2501",
139
+ topRight: "\u2513",
140
+ right: "\u2503",
141
+ bottomRight: "\u251B",
142
+ bottom: "\u2501",
143
+ bottomLeft: "\u2517",
144
+ left: "\u2503"
145
+ },
146
+ singleDouble: {
147
+ topLeft: "\u2553",
148
+ top: "\u2500",
149
+ topRight: "\u2556",
150
+ right: "\u2551",
151
+ bottomRight: "\u255C",
152
+ bottom: "\u2500",
153
+ bottomLeft: "\u2559",
154
+ left: "\u2551"
155
+ },
156
+ doubleSingle: {
157
+ topLeft: "\u2552",
158
+ top: "\u2550",
159
+ topRight: "\u2555",
160
+ right: "\u2502",
161
+ bottomRight: "\u255B",
162
+ bottom: "\u2550",
163
+ bottomLeft: "\u2558",
164
+ left: "\u2502"
165
+ },
166
+ classic: {
167
+ topLeft: "+",
168
+ top: "-",
169
+ topRight: "+",
170
+ right: "|",
171
+ bottomRight: "+",
172
+ bottom: "-",
173
+ bottomLeft: "+",
174
+ left: "|"
175
+ },
176
+ arrow: {
177
+ topLeft: "\u2198",
178
+ top: "\u2193",
179
+ topRight: "\u2199",
180
+ right: "\u2190",
181
+ bottomRight: "\u2196",
182
+ bottom: "\u2191",
183
+ bottomLeft: "\u2197",
184
+ left: "\u2192"
185
+ }
186
+ };
187
+ }
188
+ });
189
+
190
+ // ../../node_modules/cli-boxes/index.js
191
+ var require_cli_boxes = __commonJS({
192
+ "../../node_modules/cli-boxes/index.js"(exports, module) {
193
+ "use strict";
194
+ var cliBoxes2 = require_boxes();
195
+ module.exports = cliBoxes2;
196
+ module.exports.default = cliBoxes2;
197
+ }
198
+ });
199
+
200
+ // ../../node_modules/string-width/node_modules/ansi-regex/index.js
201
+ var require_ansi_regex = __commonJS({
202
+ "../../node_modules/string-width/node_modules/ansi-regex/index.js"(exports, module) {
203
+ "use strict";
204
+ module.exports = ({ onlyFirst = !1 } = {}) => {
205
+ let pattern = [
206
+ "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
207
+ "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
208
+ ].join("|");
209
+ return new RegExp(pattern, onlyFirst ? void 0 : "g");
210
+ };
211
+ }
212
+ });
213
+
214
+ // ../../node_modules/string-width/node_modules/strip-ansi/index.js
215
+ var require_strip_ansi = __commonJS({
216
+ "../../node_modules/string-width/node_modules/strip-ansi/index.js"(exports, module) {
217
+ "use strict";
218
+ var ansiRegex2 = require_ansi_regex();
219
+ module.exports = (string) => typeof string == "string" ? string.replace(ansiRegex2(), "") : string;
220
+ }
221
+ });
222
+
223
+ // ../../node_modules/is-fullwidth-code-point/index.js
224
+ var require_is_fullwidth_code_point = __commonJS({
225
+ "../../node_modules/is-fullwidth-code-point/index.js"(exports, module) {
226
+ "use strict";
227
+ var isFullwidthCodePoint = (codePoint) => Number.isNaN(codePoint) ? !1 : codePoint >= 4352 && (codePoint <= 4447 || // Hangul Jamo
228
+ codePoint === 9001 || // LEFT-POINTING ANGLE BRACKET
229
+ codePoint === 9002 || // RIGHT-POINTING ANGLE BRACKET
230
+ // CJK Radicals Supplement .. Enclosed CJK Letters and Months
231
+ 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
232
+ 12880 <= codePoint && codePoint <= 19903 || // CJK Unified Ideographs .. Yi Radicals
233
+ 19968 <= codePoint && codePoint <= 42182 || // Hangul Jamo Extended-A
234
+ 43360 <= codePoint && codePoint <= 43388 || // Hangul Syllables
235
+ 44032 <= codePoint && codePoint <= 55203 || // CJK Compatibility Ideographs
236
+ 63744 <= codePoint && codePoint <= 64255 || // Vertical Forms
237
+ 65040 <= codePoint && codePoint <= 65049 || // CJK Compatibility Forms .. Small Form Variants
238
+ 65072 <= codePoint && codePoint <= 65131 || // Halfwidth and Fullwidth Forms
239
+ 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || // Kana Supplement
240
+ 110592 <= codePoint && codePoint <= 110593 || // Enclosed Ideographic Supplement
241
+ 127488 <= codePoint && codePoint <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
242
+ 131072 <= codePoint && codePoint <= 262141);
243
+ module.exports = isFullwidthCodePoint;
244
+ module.exports.default = isFullwidthCodePoint;
245
+ }
246
+ });
247
+
248
+ // ../../node_modules/string-width/node_modules/emoji-regex/index.js
249
+ var require_emoji_regex3 = __commonJS({
250
+ "../../node_modules/string-width/node_modules/emoji-regex/index.js"(exports, module) {
251
+ "use strict";
252
+ module.exports = function() {
253
+ return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
254
+ };
255
+ }
256
+ });
257
+
258
+ // ../../node_modules/string-width/index.js
259
+ var require_string_width = __commonJS({
260
+ "../../node_modules/string-width/index.js"(exports, module) {
261
+ "use strict";
262
+ var stripAnsi2 = require_strip_ansi(), isFullwidthCodePoint = require_is_fullwidth_code_point(), emojiRegex3 = require_emoji_regex3(), stringWidth3 = (string) => {
263
+ if (typeof string != "string" || string.length === 0 || (string = stripAnsi2(string), string.length === 0))
264
+ return 0;
265
+ string = string.replace(emojiRegex3(), " ");
266
+ let width = 0;
267
+ for (let i = 0; i < string.length; i++) {
268
+ let code = string.codePointAt(i);
269
+ code <= 31 || code >= 127 && code <= 159 || code >= 768 && code <= 879 || (code > 65535 && i++, width += isFullwidthCodePoint(code) ? 2 : 1);
270
+ }
271
+ return width;
272
+ };
273
+ module.exports = stringWidth3;
274
+ module.exports.default = stringWidth3;
275
+ }
276
+ });
277
+
278
+ // ../../node_modules/ansi-align/index.js
279
+ var require_ansi_align = __commonJS({
280
+ "../../node_modules/ansi-align/index.js"(exports, module) {
281
+ "use strict";
282
+ var stringWidth3 = require_string_width();
283
+ function ansiAlign2(text, opts) {
284
+ if (!text) return text;
285
+ opts = opts || {};
286
+ let align = opts.align || "center";
287
+ if (align === "left") return text;
288
+ let split = opts.split || `
289
+ `, pad = opts.pad || " ", widthDiffFn = align !== "right" ? halfDiff : fullDiff, returnString = !1;
290
+ Array.isArray(text) || (returnString = !0, text = String(text).split(split));
291
+ let width, maxWidth = 0;
292
+ return text = text.map(function(str) {
293
+ return str = String(str), width = stringWidth3(str), maxWidth = Math.max(width, maxWidth), {
294
+ str,
295
+ width
296
+ };
297
+ }).map(function(obj) {
298
+ return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad) + obj.str;
299
+ }), returnString ? text.join(split) : text;
300
+ }
301
+ ansiAlign2.left = function(text) {
302
+ return ansiAlign2(text, { align: "left" });
303
+ };
304
+ ansiAlign2.center = function(text) {
305
+ return ansiAlign2(text, { align: "center" });
306
+ };
307
+ ansiAlign2.right = function(text) {
308
+ return ansiAlign2(text, { align: "right" });
309
+ };
310
+ module.exports = ansiAlign2;
311
+ function halfDiff(maxWidth, curWidth) {
312
+ return Math.floor((maxWidth - curWidth) / 2);
313
+ }
314
+ function fullDiff(maxWidth, curWidth) {
315
+ return maxWidth - curWidth;
316
+ }
317
+ }
318
+ });
319
+
320
+ // src/autoblock/utils.ts
321
+ var import_semver2 = __toESM(require_semver(), 1);
322
+ import { CLI_COLORS } from "storybook/internal/node-logger";
323
+
324
+ // src/util.ts
325
+ import { HandledError, JsPackageManager, normalizeStories } from "storybook/internal/common";
326
+ import { getProjectRoot, isSatelliteAddon, versions } from "storybook/internal/common";
327
+ import { StoryIndexGenerator, experimental_loadStorybook } from "storybook/internal/core-server";
328
+ import { logTracker, logger as logger2, prompt } from "storybook/internal/node-logger";
329
+ import {
330
+ UpgradeStorybookToLowerVersionError,
331
+ UpgradeStorybookUnknownCurrentVersionError
332
+ } from "storybook/internal/server-errors";
333
+
334
+ // ../../node_modules/ansi-regex/index.js
335
+ function ansiRegex({ onlyFirst = !1 } = {}) {
336
+ let pattern = "(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
337
+ return new RegExp(pattern, onlyFirst ? void 0 : "g");
338
+ }
339
+
340
+ // ../../node_modules/strip-ansi/index.js
341
+ var regex = ansiRegex();
342
+
343
+ // ../../node_modules/boxen/node_modules/string-width/index.js
344
+ var import_emoji_regex = __toESM(require_emoji_regex(), 1), segmenter = new Intl.Segmenter(), defaultIgnorableCodePointRegex = new RegExp("^\\p{Default_Ignorable_Code_Point}$", "u");
345
+
346
+ // ../../node_modules/boxen/node_modules/chalk/source/vendor/ansi-styles/index.js
347
+ var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`, wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`, wrapAnsi16m = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`, styles = {
348
+ modifier: {
349
+ reset: [0, 0],
350
+ // 21 isn't widely supported and 22 does the same thing
351
+ bold: [1, 22],
352
+ dim: [2, 22],
353
+ italic: [3, 23],
354
+ underline: [4, 24],
355
+ overline: [53, 55],
356
+ inverse: [7, 27],
357
+ hidden: [8, 28],
358
+ strikethrough: [9, 29]
359
+ },
360
+ color: {
361
+ black: [30, 39],
362
+ red: [31, 39],
363
+ green: [32, 39],
364
+ yellow: [33, 39],
365
+ blue: [34, 39],
366
+ magenta: [35, 39],
367
+ cyan: [36, 39],
368
+ white: [37, 39],
369
+ // Bright color
370
+ blackBright: [90, 39],
371
+ gray: [90, 39],
372
+ // Alias of `blackBright`
373
+ grey: [90, 39],
374
+ // Alias of `blackBright`
375
+ redBright: [91, 39],
376
+ greenBright: [92, 39],
377
+ yellowBright: [93, 39],
378
+ blueBright: [94, 39],
379
+ magentaBright: [95, 39],
380
+ cyanBright: [96, 39],
381
+ whiteBright: [97, 39]
382
+ },
383
+ bgColor: {
384
+ bgBlack: [40, 49],
385
+ bgRed: [41, 49],
386
+ bgGreen: [42, 49],
387
+ bgYellow: [43, 49],
388
+ bgBlue: [44, 49],
389
+ bgMagenta: [45, 49],
390
+ bgCyan: [46, 49],
391
+ bgWhite: [47, 49],
392
+ // Bright color
393
+ bgBlackBright: [100, 49],
394
+ bgGray: [100, 49],
395
+ // Alias of `bgBlackBright`
396
+ bgGrey: [100, 49],
397
+ // Alias of `bgBlackBright`
398
+ bgRedBright: [101, 49],
399
+ bgGreenBright: [102, 49],
400
+ bgYellowBright: [103, 49],
401
+ bgBlueBright: [104, 49],
402
+ bgMagentaBright: [105, 49],
403
+ bgCyanBright: [106, 49],
404
+ bgWhiteBright: [107, 49]
405
+ }
406
+ }, modifierNames = Object.keys(styles.modifier), foregroundColorNames = Object.keys(styles.color), backgroundColorNames = Object.keys(styles.bgColor), colorNames = [...foregroundColorNames, ...backgroundColorNames];
407
+ function assembleStyles() {
408
+ let codes = /* @__PURE__ */ new Map();
409
+ for (let [groupName, group] of Object.entries(styles)) {
410
+ for (let [styleName, style] of Object.entries(group))
411
+ styles[styleName] = {
412
+ open: `\x1B[${style[0]}m`,
413
+ close: `\x1B[${style[1]}m`
414
+ }, group[styleName] = styles[styleName], codes.set(style[0], style[1]);
415
+ Object.defineProperty(styles, groupName, {
416
+ value: group,
417
+ enumerable: !1
418
+ });
419
+ }
420
+ return Object.defineProperty(styles, "codes", {
421
+ value: codes,
422
+ enumerable: !1
423
+ }), styles.color.close = "\x1B[39m", styles.bgColor.close = "\x1B[49m", styles.color.ansi = wrapAnsi16(), styles.color.ansi256 = wrapAnsi256(), styles.color.ansi16m = wrapAnsi16m(), styles.bgColor.ansi = wrapAnsi16(10), styles.bgColor.ansi256 = wrapAnsi256(10), styles.bgColor.ansi16m = wrapAnsi16m(10), Object.defineProperties(styles, {
424
+ rgbToAnsi256: {
425
+ value(red, green, blue) {
426
+ return red === green && green === blue ? red < 8 ? 16 : red > 248 ? 231 : Math.round((red - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
427
+ },
428
+ enumerable: !1
429
+ },
430
+ hexToRgb: {
431
+ value(hex) {
432
+ let matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
433
+ if (!matches)
434
+ return [0, 0, 0];
435
+ let [colorString] = matches;
436
+ colorString.length === 3 && (colorString = [...colorString].map((character) => character + character).join(""));
437
+ let integer = Number.parseInt(colorString, 16);
438
+ return [
439
+ /* eslint-disable no-bitwise */
440
+ integer >> 16 & 255,
441
+ integer >> 8 & 255,
442
+ integer & 255
443
+ /* eslint-enable no-bitwise */
444
+ ];
445
+ },
446
+ enumerable: !1
447
+ },
448
+ hexToAnsi256: {
449
+ value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
450
+ enumerable: !1
451
+ },
452
+ ansi256ToAnsi: {
453
+ value(code) {
454
+ if (code < 8)
455
+ return 30 + code;
456
+ if (code < 16)
457
+ return 90 + (code - 8);
458
+ let red, green, blue;
459
+ if (code >= 232)
460
+ red = ((code - 232) * 10 + 8) / 255, green = red, blue = red;
461
+ else {
462
+ code -= 16;
463
+ let remainder = code % 36;
464
+ red = Math.floor(code / 36) / 5, green = Math.floor(remainder / 6) / 5, blue = remainder % 6 / 5;
465
+ }
466
+ let value = Math.max(red, green, blue) * 2;
467
+ if (value === 0)
468
+ return 30;
469
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
470
+ return value === 2 && (result += 60), result;
471
+ },
472
+ enumerable: !1
473
+ },
474
+ rgbToAnsi: {
475
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
476
+ enumerable: !1
477
+ },
478
+ hexToAnsi: {
479
+ value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
480
+ enumerable: !1
481
+ }
482
+ }), styles;
483
+ }
484
+ var ansiStyles = assembleStyles(), ansi_styles_default = ansiStyles;
485
+
486
+ // ../../node_modules/boxen/node_modules/chalk/source/vendor/supports-color/index.js
487
+ import process2 from "node:process";
488
+ import os from "node:os";
489
+ import tty from "node:tty";
490
+ function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process2.argv) {
491
+ let prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--", position = argv.indexOf(prefix + flag), terminatorPosition = argv.indexOf("--");
492
+ return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
493
+ }
494
+ var { env } = process2, flagForceColor;
495
+ hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never") ? flagForceColor = 0 : (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) && (flagForceColor = 1);
496
+ function envForceColor() {
497
+ if ("FORCE_COLOR" in env)
498
+ return env.FORCE_COLOR === "true" ? 1 : env.FORCE_COLOR === "false" ? 0 : env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
499
+ }
500
+ function translateLevel(level) {
501
+ return level === 0 ? !1 : {
502
+ level,
503
+ hasBasic: !0,
504
+ has256: level >= 2,
505
+ has16m: level >= 3
506
+ };
507
+ }
508
+ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = !0 } = {}) {
509
+ let noFlagForceColor = envForceColor();
510
+ noFlagForceColor !== void 0 && (flagForceColor = noFlagForceColor);
511
+ let forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
512
+ if (forceColor === 0)
513
+ return 0;
514
+ if (sniffFlags) {
515
+ if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor"))
516
+ return 3;
517
+ if (hasFlag("color=256"))
518
+ return 2;
519
+ }
520
+ if ("TF_BUILD" in env && "AGENT_NAME" in env)
521
+ return 1;
522
+ if (haveStream && !streamIsTTY && forceColor === void 0)
523
+ return 0;
524
+ let min = forceColor || 0;
525
+ if (env.TERM === "dumb")
526
+ return min;
527
+ if (process2.platform === "win32") {
528
+ let osRelease = os.release().split(".");
529
+ return Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586 ? Number(osRelease[2]) >= 14931 ? 3 : 2 : 1;
530
+ }
531
+ if ("CI" in env)
532
+ return ["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env) ? 3 : ["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship" ? 1 : min;
533
+ if ("TEAMCITY_VERSION" in env)
534
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
535
+ if (env.COLORTERM === "truecolor" || env.TERM === "xterm-kitty" || env.TERM === "xterm-ghostty" || env.TERM === "wezterm")
536
+ return 3;
537
+ if ("TERM_PROGRAM" in env) {
538
+ let version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
539
+ switch (env.TERM_PROGRAM) {
540
+ case "iTerm.app":
541
+ return version >= 3 ? 3 : 2;
542
+ case "Apple_Terminal":
543
+ return 2;
544
+ }
545
+ }
546
+ return /-256(color)?$/i.test(env.TERM) ? 2 : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM) || "COLORTERM" in env ? 1 : min;
547
+ }
548
+ function createSupportsColor(stream, options = {}) {
549
+ let level = _supportsColor(stream, {
550
+ streamIsTTY: stream && stream.isTTY,
551
+ ...options
552
+ });
553
+ return translateLevel(level);
554
+ }
555
+ var supportsColor = {
556
+ stdout: createSupportsColor({ isTTY: tty.isatty(1) }),
557
+ stderr: createSupportsColor({ isTTY: tty.isatty(2) })
558
+ }, supports_color_default = supportsColor;
559
+
560
+ // ../../node_modules/boxen/node_modules/chalk/source/utilities.js
561
+ function stringReplaceAll(string, substring, replacer) {
562
+ let index = string.indexOf(substring);
563
+ if (index === -1)
564
+ return string;
565
+ let substringLength = substring.length, endIndex = 0, returnValue = "";
566
+ do
567
+ returnValue += string.slice(endIndex, index) + substring + replacer, endIndex = index + substringLength, index = string.indexOf(substring, endIndex);
568
+ while (index !== -1);
569
+ return returnValue += string.slice(endIndex), returnValue;
570
+ }
571
+ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
572
+ let endIndex = 0, returnValue = "";
573
+ do {
574
+ let gotCR = string[index - 1] === "\r";
575
+ returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? `\r
576
+ ` : `
577
+ `) + postfix, endIndex = index + 1, index = string.indexOf(`
578
+ `, endIndex);
579
+ } while (index !== -1);
580
+ return returnValue += string.slice(endIndex), returnValue;
581
+ }
582
+
583
+ // ../../node_modules/boxen/node_modules/chalk/source/index.js
584
+ var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default, GENERATOR = Symbol("GENERATOR"), STYLER = Symbol("STYLER"), IS_EMPTY = Symbol("IS_EMPTY"), levelMapping = [
585
+ "ansi",
586
+ "ansi",
587
+ "ansi256",
588
+ "ansi16m"
589
+ ], styles2 = /* @__PURE__ */ Object.create(null), applyOptions = (object, options = {}) => {
590
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3))
591
+ throw new Error("The `level` option should be an integer from 0 to 3");
592
+ let colorLevel = stdoutColor ? stdoutColor.level : 0;
593
+ object.level = options.level === void 0 ? colorLevel : options.level;
594
+ };
595
+ var chalkFactory = (options) => {
596
+ let chalk2 = (...strings) => strings.join(" ");
597
+ return applyOptions(chalk2, options), Object.setPrototypeOf(chalk2, createChalk.prototype), chalk2;
598
+ };
599
+ function createChalk(options) {
600
+ return chalkFactory(options);
601
+ }
602
+ Object.setPrototypeOf(createChalk.prototype, Function.prototype);
603
+ for (let [styleName, style] of Object.entries(ansi_styles_default))
604
+ styles2[styleName] = {
605
+ get() {
606
+ let builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
607
+ return Object.defineProperty(this, styleName, { value: builder }), builder;
608
+ }
609
+ };
610
+ styles2.visible = {
611
+ get() {
612
+ let builder = createBuilder(this, this[STYLER], !0);
613
+ return Object.defineProperty(this, "visible", { value: builder }), builder;
614
+ }
615
+ };
616
+ var getModelAnsi = (model, level, type, ...arguments_) => model === "rgb" ? level === "ansi16m" ? ansi_styles_default[type].ansi16m(...arguments_) : level === "ansi256" ? ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_)) : ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_)) : model === "hex" ? getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_)) : ansi_styles_default[type][model](...arguments_), usedModels = ["rgb", "hex", "ansi256"];
617
+ for (let model of usedModels) {
618
+ styles2[model] = {
619
+ get() {
620
+ let { level } = this;
621
+ return function(...arguments_) {
622
+ let styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
623
+ return createBuilder(this, styler, this[IS_EMPTY]);
624
+ };
625
+ }
626
+ };
627
+ let bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
628
+ styles2[bgModel] = {
629
+ get() {
630
+ let { level } = this;
631
+ return function(...arguments_) {
632
+ let styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
633
+ return createBuilder(this, styler, this[IS_EMPTY]);
634
+ };
635
+ }
636
+ };
637
+ }
638
+ var proto = Object.defineProperties(() => {
639
+ }, {
640
+ ...styles2,
641
+ level: {
642
+ enumerable: !0,
643
+ get() {
644
+ return this[GENERATOR].level;
645
+ },
646
+ set(level) {
647
+ this[GENERATOR].level = level;
648
+ }
649
+ }
650
+ }), createStyler = (open, close, parent) => {
651
+ let openAll, closeAll;
652
+ return parent === void 0 ? (openAll = open, closeAll = close) : (openAll = parent.openAll + open, closeAll = close + parent.closeAll), {
653
+ open,
654
+ close,
655
+ openAll,
656
+ closeAll,
657
+ parent
658
+ };
659
+ }, createBuilder = (self, _styler, _isEmpty) => {
660
+ let builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
661
+ return Object.setPrototypeOf(builder, proto), builder[GENERATOR] = self, builder[STYLER] = _styler, builder[IS_EMPTY] = _isEmpty, builder;
662
+ }, applyStyle = (self, string) => {
663
+ if (self.level <= 0 || !string)
664
+ return self[IS_EMPTY] ? "" : string;
665
+ let styler = self[STYLER];
666
+ if (styler === void 0)
667
+ return string;
668
+ let { openAll, closeAll } = styler;
669
+ if (string.includes("\x1B"))
670
+ for (; styler !== void 0; )
671
+ string = stringReplaceAll(string, styler.close, styler.open), styler = styler.parent;
672
+ let lfIndex = string.indexOf(`
673
+ `);
674
+ return lfIndex !== -1 && (string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex)), openAll + string + closeAll;
675
+ };
676
+ Object.defineProperties(createChalk.prototype, styles2);
677
+ var chalk = createChalk(), chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
678
+
679
+ // ../../node_modules/widest-line/node_modules/string-width/index.js
680
+ var import_emoji_regex2 = __toESM(require_emoji_regex2(), 1), segmenter2 = new Intl.Segmenter(), defaultIgnorableCodePointRegex2 = new RegExp("^\\p{Default_Ignorable_Code_Point}$", "u");
681
+
682
+ // ../../node_modules/boxen/index.js
683
+ var import_cli_boxes = __toESM(require_cli_boxes(), 1);
684
+
685
+ // ../../node_modules/camelcase/index.js
686
+ var IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u, SEPARATORS = /[_.\- ]+/, LEADING_SEPARATORS = new RegExp("^" + SEPARATORS.source), SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu"), NUMBERS_AND_IDENTIFIER = new RegExp("\\d+" + IDENTIFIER.source, "gu");
687
+
688
+ // ../../node_modules/boxen/index.js
689
+ var import_ansi_align = __toESM(require_ansi_align(), 1);
690
+
691
+ // ../../node_modules/ansi-styles/index.js
692
+ var wrapAnsi162 = (offset = 0) => (code) => `\x1B[${code + offset}m`, wrapAnsi2562 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`, wrapAnsi16m2 = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`, styles3 = {
693
+ modifier: {
694
+ reset: [0, 0],
695
+ // 21 isn't widely supported and 22 does the same thing
696
+ bold: [1, 22],
697
+ dim: [2, 22],
698
+ italic: [3, 23],
699
+ underline: [4, 24],
700
+ overline: [53, 55],
701
+ inverse: [7, 27],
702
+ hidden: [8, 28],
703
+ strikethrough: [9, 29]
704
+ },
705
+ color: {
706
+ black: [30, 39],
707
+ red: [31, 39],
708
+ green: [32, 39],
709
+ yellow: [33, 39],
710
+ blue: [34, 39],
711
+ magenta: [35, 39],
712
+ cyan: [36, 39],
713
+ white: [37, 39],
714
+ // Bright color
715
+ blackBright: [90, 39],
716
+ gray: [90, 39],
717
+ // Alias of `blackBright`
718
+ grey: [90, 39],
719
+ // Alias of `blackBright`
720
+ redBright: [91, 39],
721
+ greenBright: [92, 39],
722
+ yellowBright: [93, 39],
723
+ blueBright: [94, 39],
724
+ magentaBright: [95, 39],
725
+ cyanBright: [96, 39],
726
+ whiteBright: [97, 39]
727
+ },
728
+ bgColor: {
729
+ bgBlack: [40, 49],
730
+ bgRed: [41, 49],
731
+ bgGreen: [42, 49],
732
+ bgYellow: [43, 49],
733
+ bgBlue: [44, 49],
734
+ bgMagenta: [45, 49],
735
+ bgCyan: [46, 49],
736
+ bgWhite: [47, 49],
737
+ // Bright color
738
+ bgBlackBright: [100, 49],
739
+ bgGray: [100, 49],
740
+ // Alias of `bgBlackBright`
741
+ bgGrey: [100, 49],
742
+ // Alias of `bgBlackBright`
743
+ bgRedBright: [101, 49],
744
+ bgGreenBright: [102, 49],
745
+ bgYellowBright: [103, 49],
746
+ bgBlueBright: [104, 49],
747
+ bgMagentaBright: [105, 49],
748
+ bgCyanBright: [106, 49],
749
+ bgWhiteBright: [107, 49]
750
+ }
751
+ }, modifierNames2 = Object.keys(styles3.modifier), foregroundColorNames2 = Object.keys(styles3.color), backgroundColorNames2 = Object.keys(styles3.bgColor), colorNames2 = [...foregroundColorNames2, ...backgroundColorNames2];
752
+ function assembleStyles2() {
753
+ let codes = /* @__PURE__ */ new Map();
754
+ for (let [groupName, group] of Object.entries(styles3)) {
755
+ for (let [styleName, style] of Object.entries(group))
756
+ styles3[styleName] = {
757
+ open: `\x1B[${style[0]}m`,
758
+ close: `\x1B[${style[1]}m`
759
+ }, group[styleName] = styles3[styleName], codes.set(style[0], style[1]);
760
+ Object.defineProperty(styles3, groupName, {
761
+ value: group,
762
+ enumerable: !1
763
+ });
764
+ }
765
+ return Object.defineProperty(styles3, "codes", {
766
+ value: codes,
767
+ enumerable: !1
768
+ }), styles3.color.close = "\x1B[39m", styles3.bgColor.close = "\x1B[49m", styles3.color.ansi = wrapAnsi162(), styles3.color.ansi256 = wrapAnsi2562(), styles3.color.ansi16m = wrapAnsi16m2(), styles3.bgColor.ansi = wrapAnsi162(10), styles3.bgColor.ansi256 = wrapAnsi2562(10), styles3.bgColor.ansi16m = wrapAnsi16m2(10), Object.defineProperties(styles3, {
769
+ rgbToAnsi256: {
770
+ value(red, green, blue) {
771
+ return red === green && green === blue ? red < 8 ? 16 : red > 248 ? 231 : Math.round((red - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
772
+ },
773
+ enumerable: !1
774
+ },
775
+ hexToRgb: {
776
+ value(hex) {
777
+ let matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
778
+ if (!matches)
779
+ return [0, 0, 0];
780
+ let [colorString] = matches;
781
+ colorString.length === 3 && (colorString = [...colorString].map((character) => character + character).join(""));
782
+ let integer = Number.parseInt(colorString, 16);
783
+ return [
784
+ /* eslint-disable no-bitwise */
785
+ integer >> 16 & 255,
786
+ integer >> 8 & 255,
787
+ integer & 255
788
+ /* eslint-enable no-bitwise */
789
+ ];
790
+ },
791
+ enumerable: !1
792
+ },
793
+ hexToAnsi256: {
794
+ value: (hex) => styles3.rgbToAnsi256(...styles3.hexToRgb(hex)),
795
+ enumerable: !1
796
+ },
797
+ ansi256ToAnsi: {
798
+ value(code) {
799
+ if (code < 8)
800
+ return 30 + code;
801
+ if (code < 16)
802
+ return 90 + (code - 8);
803
+ let red, green, blue;
804
+ if (code >= 232)
805
+ red = ((code - 232) * 10 + 8) / 255, green = red, blue = red;
806
+ else {
807
+ code -= 16;
808
+ let remainder = code % 36;
809
+ red = Math.floor(code / 36) / 5, green = Math.floor(remainder / 6) / 5, blue = remainder % 6 / 5;
810
+ }
811
+ let value = Math.max(red, green, blue) * 2;
812
+ if (value === 0)
813
+ return 30;
814
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
815
+ return value === 2 && (result += 60), result;
816
+ },
817
+ enumerable: !1
818
+ },
819
+ rgbToAnsi: {
820
+ value: (red, green, blue) => styles3.ansi256ToAnsi(styles3.rgbToAnsi256(red, green, blue)),
821
+ enumerable: !1
822
+ },
823
+ hexToAnsi: {
824
+ value: (hex) => styles3.ansi256ToAnsi(styles3.hexToAnsi256(hex)),
825
+ enumerable: !1
826
+ }
827
+ }), styles3;
828
+ }
829
+ var ansiStyles2 = assembleStyles2();
830
+
831
+ // ../../node_modules/boxen/node_modules/wrap-ansi/index.js
832
+ var ANSI_OSC = "]";
833
+ var ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`;
834
+
835
+ // ../../node_modules/boxen/index.js
836
+ var import_cli_boxes2 = __toESM(require_cli_boxes(), 1);
837
+
838
+ // ../../node_modules/empathic/walk.mjs
839
+ import { dirname } from "node:path";
840
+
841
+ // ../../node_modules/empathic/resolve.mjs
842
+ import { isAbsolute, join, resolve } from "node:path";
843
+ function absolute(input, root) {
844
+ return isAbsolute(input) ? input : resolve(root || ".", input);
845
+ }
846
+
847
+ // ../../node_modules/empathic/walk.mjs
848
+ function up(base, options) {
849
+ let { last, cwd } = options || {}, tmp = absolute(base, cwd), root = absolute(last || "/", cwd), prev, arr = [];
850
+ for (; prev !== root && (arr.push(tmp), tmp = dirname(prev = tmp), tmp !== prev); )
851
+ ;
852
+ return arr;
853
+ }
854
+
855
+ // src/util.ts
856
+ var import_picocolors2 = __toESM(require_picocolors(), 1), import_semver = __toESM(require_semver(), 1);
857
+
858
+ // src/autoblock/index.ts
859
+ var blockers = () => [
860
+ // add/remove blockers here
861
+ import("./block-dependencies-versions-QNU3AJML.js"),
862
+ import("./block-node-version-RG4TKZVB.js"),
863
+ import("./block-webpack5-frameworks-EOHC7MGO.js"),
864
+ import("./block-major-version-RQBG4GU3.js"),
865
+ import("./block-experimental-addon-test-7ID6U4ZB.js")
866
+ ], autoblock = async (options, list = blockers()) => list.length === 0 ? null : await Promise.all(
867
+ list.map(async (i) => {
868
+ let blocker = (await i).blocker;
869
+ return { result: await blocker.check(options), blocker };
870
+ })
871
+ );
872
+
873
+ // src/automigrate/helpers/mainConfigFile.ts
874
+ var import_picocolors = __toESM(require_picocolors(), 1);
875
+ import { dirname as dirname2, isAbsolute as isAbsolute2, join as join2, normalize } from "node:path";
876
+ import {
877
+ JsPackageManagerFactory,
878
+ builderPackages,
879
+ extractProperFrameworkName,
880
+ frameworkPackages,
881
+ getStorybookInfo,
882
+ loadMainConfig,
883
+ rendererPackages
884
+ } from "storybook/internal/common";
885
+ import { frameworkToRenderer, getCoercedStorybookVersion } from "storybook/internal/common";
886
+ import { readConfig, writeConfig as writeConfigFile } from "storybook/internal/csf-tools";
887
+ import { logger } from "storybook/internal/node-logger";
888
+ import { dedent } from "ts-dedent";
889
+ var getFrameworkPackageName = (mainConfig) => {
890
+ let packageNameOrPath = typeof mainConfig?.framework == "string" ? mainConfig.framework : mainConfig?.framework?.name;
891
+ return packageNameOrPath ? extractProperFrameworkName(packageNameOrPath) : null;
892
+ };
893
+ var getStorybookData = async ({
894
+ configDir: userDefinedConfigDir,
895
+ cwd,
896
+ packageManagerName
897
+ }) => {
898
+ logger.debug("Getting Storybook info...");
899
+ let {
900
+ mainConfigPath,
901
+ version: storybookVersionSpecifier,
902
+ configDir: configDirFromScript,
903
+ previewConfigPath
904
+ } = await getStorybookInfo(userDefinedConfigDir), configDir = userDefinedConfigDir || configDirFromScript || ".storybook";
905
+ logger.debug("Loading main config...");
906
+ let mainConfig;
907
+ try {
908
+ mainConfig = await loadMainConfig({ configDir, cwd });
909
+ } catch (err) {
910
+ throw new Error(
911
+ dedent`Unable to find or evaluate ${import_picocolors.default.blue(mainConfigPath)}: ${String(err)}`
912
+ );
913
+ }
914
+ let workingDir = isAbsolute2(configDir) ? dirname2(configDir) : dirname2(join2(cwd ?? process.cwd(), configDir));
915
+ logger.debug("Getting stories paths...");
916
+ let storiesPaths = await getStoriesPathsFromConfig({
917
+ stories: mainConfig.stories,
918
+ configDir,
919
+ workingDir
920
+ });
921
+ logger.debug("Getting package manager...");
922
+ let packageManager = JsPackageManagerFactory.getPackageManager({
923
+ force: packageManagerName,
924
+ configDir,
925
+ storiesPaths
926
+ });
927
+ logger.debug("Getting Storybook version...");
928
+ let storybookVersion = await getCoercedStorybookVersion(packageManager);
929
+ return {
930
+ configDir,
931
+ mainConfig,
932
+ storybookVersionSpecifier,
933
+ storybookVersion,
934
+ mainConfigPath,
935
+ previewConfigPath,
936
+ packageManager,
937
+ storiesPaths
938
+ };
939
+ }, updateMainConfig = async ({ mainConfigPath, dryRun }, callback) => {
940
+ try {
941
+ let main = await readConfig(mainConfigPath);
942
+ await callback(main), dryRun || await writeConfigFile(main);
943
+ } catch (e) {
944
+ logger.log(
945
+ `\u274C The migration failed to update your ${import_picocolors.default.blue(
946
+ mainConfigPath
947
+ )} on your behalf because of the following error:
948
+ ${e}
949
+ `
950
+ ), logger.log(
951
+ `\u26A0\uFE0F Storybook automigrations are based on AST parsing and it's possible that your ${import_picocolors.default.blue(
952
+ mainConfigPath
953
+ )} file contains a non-standard format (e.g. your export is not an object) or that there was an error when parsing dynamic values (e.g. "require" calls, or usage of environment variables). When your main config is non-standard, automigrations are unfortunately not possible. Please follow the instructions given previously and follow the documentation to make the updates manually.`
954
+ );
955
+ }
956
+ };
957
+ function containsESMUsage(content) {
958
+ let hasImportStatement = /^\s*import\s+/m.test(content) || /^\s*import\s*{/m.test(content) || /^\s*import\s*\(/m.test(content), hasExportStatement = /^\s*export\s+/m.test(content) || /^\s*export\s*{/m.test(content) || /^\s*export\s*default/m.test(content), hasImportMeta = /import\.meta/.test(content);
959
+ return hasImportStatement || hasExportStatement || hasImportMeta;
960
+ }
961
+ function containsRequireUsage(content) {
962
+ let requireCallRegex = /\brequire\(/, requireDotRegex = /\brequire\./;
963
+ return requireCallRegex.test(content) || requireDotRegex.test(content);
964
+ }
965
+ function containsPatternUsage(content, pattern) {
966
+ let cleanContent = ((s) => s.replace(/(['"`])(?:\\.|(?!\1)[\s\S])*?\1/g, '""'))(content).replace(/\/\*[\s\S]*?\*\//g, "").split(`
967
+ `).map((line) => line.split("//")[0]).join(`
968
+ `);
969
+ return pattern.test(cleanContent);
970
+ }
971
+ function containsDirnameUsage(content) {
972
+ return containsPatternUsage(content, /\b__dirname\b/);
973
+ }
974
+ function containsFilenameUsage(content) {
975
+ return containsPatternUsage(content, /\b__filename\b/);
976
+ }
977
+ var bannerComment = "// This file has been automatically migrated to valid ESM format by Storybook.", hasRequireBanner = (content) => content.includes(bannerComment);
978
+
979
+ // src/util.ts
980
+ var STORYBOOK_DIR_PATTERN = ["**/.storybook", "**/.rnstorybook"];
981
+ var isSuccessResult = (result) => !("error" in result), isErrorResult = (result) => "error" in result, getVersionModifier = (versionSpecifier) => {
982
+ if (!versionSpecifier || typeof versionSpecifier != "string")
983
+ return { modifier: "", useFixed: !0 };
984
+ let firstPart = versionSpecifier.split(/\s*\|\|\s*/)[0]?.trim();
985
+ if (!firstPart)
986
+ return { modifier: "", useFixed: !0 };
987
+ let modifier = firstPart.match(/^([~^><=]+)/)?.[1] ?? "";
988
+ return {
989
+ modifier,
990
+ useFixed: !modifier
991
+ };
992
+ }, isCanaryVersion = (version) => version.startsWith("0.0.0") || version.startsWith("portal:") || version.startsWith("workspace:");
993
+ function validateVersion(version) {
994
+ if (!version)
995
+ throw new UpgradeStorybookUnknownCurrentVersionError();
996
+ }
997
+ var validateUpgradeCompatibility = (currentVersion, beforeVersion, isCanary) => {
998
+ if (!isCanary && (0, import_semver.lt)(currentVersion, beforeVersion))
999
+ throw new UpgradeStorybookToLowerVersionError({
1000
+ beforeVersion,
1001
+ currentVersion
1002
+ });
1003
+ }, findStorybookProjects = async (cwd = process.cwd()) => {
1004
+ try {
1005
+ logger2.debug("Finding Storybook projects...");
1006
+ let storybookDirs = await globby(STORYBOOK_DIR_PATTERN, {
1007
+ cwd,
1008
+ dot: !0,
1009
+ gitignore: !0,
1010
+ absolute: !0,
1011
+ onlyDirectories: !0,
1012
+ followSymbolicLinks: !1
1013
+ });
1014
+ return logger2.debug(`Found ${storybookDirs.length} Storybook projects`), storybookDirs.length === 0 ? [await prompt.text({
1015
+ message: "No Storybook projects were found. Please enter the path to the .storybook directory for the project you want to upgrade."
1016
+ })] : storybookDirs;
1017
+ } catch (error) {
1018
+ throw logger2.error("Failed to find Storybook projects"), error;
1019
+ }
1020
+ };
1021
+ var processProject = async ({
1022
+ configDir,
1023
+ options,
1024
+ currentCLIVersion,
1025
+ onScanStart
1026
+ }) => {
1027
+ try {
1028
+ onScanStart();
1029
+ let name = configDir.replace(getProjectRoot(), "");
1030
+ logger2.debug("Getting Storybook data...");
1031
+ let {
1032
+ configDir: resolvedConfigDir,
1033
+ mainConfig,
1034
+ mainConfigPath,
1035
+ packageManager,
1036
+ previewConfigPath,
1037
+ storiesPaths,
1038
+ storybookVersion: beforeVersion
1039
+ } = await getStorybookData({ configDir });
1040
+ logger2.debug(`${name} - Validating before version... ${beforeVersion}`), validateVersion(beforeVersion);
1041
+ let isCanary = isCanaryVersion(currentCLIVersion) || isCanaryVersion(beforeVersion);
1042
+ logger2.debug(`${name} - Validating upgrade compatibility...`), validateUpgradeCompatibility(currentCLIVersion, beforeVersion, isCanary), logger2.debug(`${name} - Fetching NPM version information...`);
1043
+ let [latestCLIVersionOnNPM, latestPrereleaseCLIVersionOnNPM] = await Promise.all([
1044
+ packageManager.latestVersion("storybook"),
1045
+ packageManager.latestVersion("storybook@next")
1046
+ ]), isCLIOutdated = (0, import_semver.lt)(currentCLIVersion, latestCLIVersionOnNPM), isCLIExactLatest = currentCLIVersion === latestCLIVersionOnNPM, isCLIPrerelease = (0, import_semver.prerelease)(currentCLIVersion) !== null, isCLIExactPrerelease = currentCLIVersion === latestPrereleaseCLIVersionOnNPM, isUpgrade = (0, import_semver.lt)(beforeVersion, currentCLIVersion), autoblockerCheckResults = null;
1047
+ return typeof mainConfig != "boolean" && typeof mainConfigPath < "u" && !options.force && (logger2.debug(`${name} - Evaluating blockers...`), autoblockerCheckResults = await autoblock({
1048
+ packageManager,
1049
+ configDir: resolvedConfigDir,
1050
+ mainConfig,
1051
+ mainConfigPath
1052
+ })), {
1053
+ configDir: resolvedConfigDir,
1054
+ mainConfig,
1055
+ mainConfigPath,
1056
+ packageManager,
1057
+ isCanary,
1058
+ isCLIOutdated,
1059
+ isCLIPrerelease,
1060
+ isCLIExactLatest,
1061
+ isUpgrade,
1062
+ beforeVersion,
1063
+ currentCLIVersion,
1064
+ latestCLIVersionOnNPM,
1065
+ isCLIExactPrerelease,
1066
+ autoblockerCheckResults,
1067
+ previewConfigPath,
1068
+ storiesPaths
1069
+ };
1070
+ } catch (error) {
1071
+ return logger2.debug(String(error)), {
1072
+ configDir,
1073
+ error
1074
+ };
1075
+ }
1076
+ }, collectProjects = async (options, configDirs, onProjectScanStart) => {
1077
+ let { default: pLimit } = await import("./p-limit-UJQPNFP6.js"), currentCLIVersion = versions.storybook, limit = pLimit(5), projectPromises = configDirs.map(
1078
+ (configDir) => limit(
1079
+ () => processProject({
1080
+ configDir,
1081
+ options,
1082
+ currentCLIVersion,
1083
+ onScanStart: () => onProjectScanStart()
1084
+ })
1085
+ )
1086
+ );
1087
+ return await Promise.all(projectPromises);
1088
+ }, generateUpgradeSpecs = async (dependencies = {}, config) => {
1089
+ let {
1090
+ packageManager,
1091
+ isCanary,
1092
+ isCLIOutdated,
1093
+ isCLIPrerelease,
1094
+ isCLIExactPrerelease,
1095
+ isCLIExactLatest
1096
+ } = config, storybookCoreUpgrades = Object.keys(dependencies).filter(
1097
+ (dependency) => dependency in versions
1098
+ ).map((dependency) => {
1099
+ let versionSpec = dependencies[dependency];
1100
+ if (!versionSpec)
1101
+ return `${dependency}@${versions[dependency]}`;
1102
+ let { modifier } = getVersionModifier(versionSpec);
1103
+ return `${dependency}@${isCLIOutdated || isCanary ? "" : modifier}${versions[dependency]}`;
1104
+ }), storybookSatelliteUpgrades = [];
1105
+ if (isCLIExactPrerelease || isCLIExactLatest) {
1106
+ let satelliteDependencies = Object.keys(dependencies).filter(isSatelliteAddon);
1107
+ if (satelliteDependencies.length > 0)
1108
+ try {
1109
+ let upgradePromises = satelliteDependencies.map(async (dependency) => {
1110
+ try {
1111
+ let packageName = isCLIPrerelease ? `${dependency}@next` : dependency, mostRecentVersion = await packageManager.latestVersion(packageName);
1112
+ if (!mostRecentVersion)
1113
+ return null;
1114
+ let { modifier } = getVersionModifier(dependencies[dependency] ?? "");
1115
+ return `${dependency}@${modifier}${mostRecentVersion}`;
1116
+ } catch {
1117
+ return null;
1118
+ }
1119
+ });
1120
+ storybookSatelliteUpgrades = (await Promise.all(upgradePromises)).filter((result) => result !== null);
1121
+ } catch {
1122
+ logger2.warn("Failed to fetch satellite dependencies");
1123
+ }
1124
+ }
1125
+ return [...storybookCoreUpgrades, ...storybookSatelliteUpgrades];
1126
+ }, upgradeStorybookDependencies = async (config) => {
1127
+ let { packageManager } = config;
1128
+ for (let packageJsonPath of packageManager.packageJsonPaths) {
1129
+ let packageJson = JsPackageManager.getPackageJson(packageJsonPath), [upgradedDependencies, upgradedDevDependencies, upgradedPeerDependencies] = await Promise.all([
1130
+ generateUpgradeSpecs(packageJson.dependencies, config),
1131
+ generateUpgradeSpecs(packageJson.devDependencies, config),
1132
+ generateUpgradeSpecs(packageJson.peerDependencies, config)
1133
+ ]);
1134
+ logger2.debug(JSON.stringify({ upgradedDependencies }, null, 2)), logger2.debug(JSON.stringify({ upgradedDevDependencies }, null, 2)), logger2.debug(JSON.stringify({ upgradedPeerDependencies }, null, 2)), await packageManager.addDependencies(
1135
+ {
1136
+ type: "dependencies",
1137
+ skipInstall: !0,
1138
+ packageJsonInfo: JsPackageManager.getPackageJsonInfo(packageJsonPath)
1139
+ },
1140
+ upgradedDependencies
1141
+ ), await packageManager.addDependencies(
1142
+ {
1143
+ type: "devDependencies",
1144
+ skipInstall: !0,
1145
+ packageJsonInfo: JsPackageManager.getPackageJsonInfo(packageJsonPath)
1146
+ },
1147
+ upgradedDevDependencies
1148
+ ), await packageManager.addDependencies(
1149
+ {
1150
+ type: "peerDependencies",
1151
+ skipInstall: !0,
1152
+ packageJsonInfo: JsPackageManager.getPackageJsonInfo(packageJsonPath)
1153
+ },
1154
+ upgradedPeerDependencies
1155
+ );
1156
+ }
1157
+ }, formatProjectDirectories = (projectData, modifier) => projectData.length === 0 ? "" : projectData.map((project) => project.configDir).map((dir) => `${modifier} ${import_picocolors2.default.cyan(shortenPath(dir))}`).join(`
1158
+ `), shortenPath = (path) => {
1159
+ let gitRoot = getProjectRoot();
1160
+ return path.replace(gitRoot, "");
1161
+ }, handleMultipleProjects = async (validProjects, errorProjects, detectedConfigDirs, yes) => {
1162
+ let allPackageJsonPaths = validProjects.flatMap((data) => data.packageManager.packageJsonPaths).filter(JsPackageManager.hasAnyStorybookDependency);
1163
+ if (new Set(allPackageJsonPaths).size !== allPackageJsonPaths.length) {
1164
+ let projectsFoundMessage = [
1165
+ "Multiple Storybook projects found. Storybook can only upgrade all projects at once:"
1166
+ ];
1167
+ if (validProjects.length > 0 && projectsFoundMessage.push(formatProjectDirectories(validProjects, logger2.SYMBOLS.success)), errorProjects.length > 0 && (logTracker.enableLogWriting(), projectsFoundMessage.push(
1168
+ `There were some errors while collecting data for the following projects:
1169
+ ${formatProjectDirectories(errorProjects, logger2.SYMBOLS.error)}`,
1170
+ "",
1171
+ "Full logs will be available in the Storybook debug logs at the end of the run."
1172
+ )), logger2.log(projectsFoundMessage.join(`
1173
+ `)), !(yes || await prompt.confirm({
1174
+ message: "Continue with the upgrade?",
1175
+ initialValue: !0
1176
+ })))
1177
+ throw new HandledError("Upgrade cancelled by user");
1178
+ return [...validProjects];
1179
+ }
1180
+ if (detectedConfigDirs.length > 1) {
1181
+ let selectedConfigDirs = await prompt.multiselect({
1182
+ message: "Select which projects to upgrade",
1183
+ options: detectedConfigDirs.map((configDir) => ({
1184
+ label: shortenPath(configDir),
1185
+ value: configDir
1186
+ }))
1187
+ });
1188
+ return validProjects.filter((data) => selectedConfigDirs.includes(data.configDir));
1189
+ }
1190
+ }, getProjects = async (options) => {
1191
+ try {
1192
+ let task = prompt.spinner({ id: "detect-projects" });
1193
+ task.start("Detecting projects...");
1194
+ let detectedConfigDirs = options.configDir ?? [];
1195
+ (!options.configDir || options.configDir.length === 0) && (detectedConfigDirs = await findStorybookProjects());
1196
+ let count = 0, projects = await collectProjects(
1197
+ options,
1198
+ detectedConfigDirs,
1199
+ () => task.message(`Detecting projects: ${++count} projects`)
1200
+ );
1201
+ task.stop(`${projects.length} ${projects.length > 1 ? "projects" : "project"} detected`);
1202
+ let validProjects = projects.filter(isSuccessResult), errorProjects = projects.filter(isErrorResult);
1203
+ if (logger2.debug(
1204
+ `Found ${validProjects.length} valid projects and ${errorProjects.length} error projects`
1205
+ ), validProjects.length === 1)
1206
+ return { allProjects: validProjects, selectedProjects: validProjects };
1207
+ if (validProjects.length === 0 && errorProjects.length > 0) {
1208
+ let errorMessage = errorProjects.map((project) => `${shortenPath(project.configDir)}:
1209
+ ${project.error.stack || project.error.message}`).join(`
1210
+ `);
1211
+ throw new Error(
1212
+ `\u274C Storybook found errors while collecting data for the following projects:
1213
+ ${errorMessage}
1214
+ Please fix the errors and run the upgrade command again.`
1215
+ );
1216
+ }
1217
+ let selectedProjects = await handleMultipleProjects(
1218
+ validProjects,
1219
+ errorProjects,
1220
+ detectedConfigDirs,
1221
+ options.yes
1222
+ );
1223
+ return selectedProjects ? { allProjects: validProjects, selectedProjects } : void 0;
1224
+ } catch (error) {
1225
+ throw error instanceof HandledError || logger2.error("Failed to get projects"), error;
1226
+ }
1227
+ }, findFilesUp = (matchers, cwd) => {
1228
+ let matchingFiles = [];
1229
+ for (let directory of up(cwd, { last: getProjectRoot() }))
1230
+ matchingFiles.push(
1231
+ ...globbySync(matchers, {
1232
+ gitignore: !0,
1233
+ absolute: !0,
1234
+ cwd: directory
1235
+ })
1236
+ );
1237
+ return matchingFiles;
1238
+ };
1239
+ var getStoriesPathsFromConfig = async ({
1240
+ stories,
1241
+ configDir,
1242
+ workingDir
1243
+ }) => {
1244
+ if (stories.length === 0)
1245
+ return [];
1246
+ let normalizedStories = normalizeStories(stories, {
1247
+ configDir,
1248
+ workingDir
1249
+ });
1250
+ return (await StoryIndexGenerator.findMatchingFilesForSpecifiers(
1251
+ normalizedStories,
1252
+ workingDir,
1253
+ !0
1254
+ )).flatMap(([specifier, cache]) => StoryIndexGenerator.storyFileNames(/* @__PURE__ */ new Map([[specifier, cache]])));
1255
+ };
1256
+
1257
+ // src/autoblock/utils.ts
1258
+ var typedKeys = (obj) => Object.keys(obj);
1259
+ async function findOutdatedPackage(minimalVersionsMap, options) {
1260
+ return (await Promise.all(
1261
+ typedKeys(minimalVersionsMap).map(async (packageName) => ({
1262
+ packageName,
1263
+ installedVersion: (await options.packageManager.getModulePackageJSON(packageName))?.version ?? null,
1264
+ minimumVersion: minimalVersionsMap[packageName]
1265
+ }))
1266
+ )).reduce(
1267
+ (acc, { installedVersion, minimumVersion, packageName }) => acc || (packageName && installedVersion && (0, import_semver2.lt)(installedVersion, minimumVersion) ? {
1268
+ installedVersion,
1269
+ packageName,
1270
+ minimumVersion
1271
+ } : acc),
1272
+ !1
1273
+ );
1274
+ }
1275
+ function processAutoblockerResults(projects, onError) {
1276
+ let autoblockerMessagesMap = /* @__PURE__ */ new Map();
1277
+ projects.forEach((result) => {
1278
+ result.autoblockerCheckResults?.forEach((blocker) => {
1279
+ if (blocker.result === null || blocker.result === !1)
1280
+ return;
1281
+ let blockerResult = blocker.blocker.log(blocker.result), message = blockerResult.message, link = blockerResult.link;
1282
+ autoblockerMessagesMap.has(message) ? autoblockerMessagesMap.get(message).configDirs.push(result.configDir) : autoblockerMessagesMap.set(message, {
1283
+ title: blockerResult.title,
1284
+ message,
1285
+ link,
1286
+ configDirs: [result.configDir]
1287
+ });
1288
+ });
1289
+ });
1290
+ let autoblockerMessages = Array.from(autoblockerMessagesMap.values());
1291
+ if (autoblockerMessages.length > 0) {
1292
+ let formatConfigDirs = (configDirs) => {
1293
+ let baseMessage = "Affected projects:", relativeDirs = configDirs.map((dir) => shortenPath(dir) || ".");
1294
+ if (relativeDirs.length <= 3)
1295
+ return `${baseMessage} ${relativeDirs.join(", ")}`;
1296
+ let remaining = relativeDirs.length - 3;
1297
+ return `${baseMessage} ${relativeDirs.slice(0, 3).join(", ")}${remaining > 0 ? ` and ${remaining} more...` : ""}`;
1298
+ }, formattedMessages = autoblockerMessages.map((item) => {
1299
+ let message = `${CLI_COLORS.warning(item.title)}
1300
+
1301
+ ${item.message}
1302
+
1303
+ ${formatConfigDirs(item.configDirs)}`;
1304
+ return item.link && (message += `
1305
+
1306
+ More information: ${item.link}`), message;
1307
+ });
1308
+ return onError(
1309
+ `Storybook has found potential blockers that need to be resolved before upgrading:
1310
+
1311
+ ${[...formattedMessages].join(`
1312
+
1313
+ `)}
1314
+
1315
+ ---
1316
+
1317
+ After addressing this, you can try running the upgrade command again. You can also rerun the upgrade command with the ${CLI_COLORS.info("--force")} flag to skip the blocker check and to proceed with the upgrade.`
1318
+ ), !0;
1319
+ }
1320
+ return !1;
1321
+ }
1322
+
1323
+ export {
1324
+ require_picocolors,
1325
+ findOutdatedPackage,
1326
+ processAutoblockerResults,
1327
+ upgradeStorybookDependencies,
1328
+ shortenPath,
1329
+ getProjects,
1330
+ findFilesUp,
1331
+ getFrameworkPackageName,
1332
+ getStorybookData,
1333
+ updateMainConfig,
1334
+ containsESMUsage,
1335
+ containsRequireUsage,
1336
+ containsDirnameUsage,
1337
+ containsFilenameUsage,
1338
+ bannerComment,
1339
+ hasRequireBanner
1340
+ };