@hot-updater/firebase 0.21.7 → 0.21.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/iac/index.cjs +174 -1339
- package/dist/iac/index.d.cts +1 -1
- package/dist/iac/index.d.ts +1 -1
- package/dist/iac/index.js +208 -1373
- package/package.json +6 -7
package/dist/iac/index.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { createRequire } from "node:module";
|
|
2
|
-
import {
|
|
3
|
-
import g, { execArgv, execPath, hrtime, platform, stdin, stdout } from "node:process";
|
|
4
|
-
import * as f$1 from "node:readline";
|
|
5
|
-
import M from "node:readline";
|
|
6
|
-
import tty, { WriteStream } from "node:tty";
|
|
7
|
-
import { ConfigBuilder, copyDirToTmp, link, makeEnv, transformEnv, transformTemplate } from "@hot-updater/plugin-core";
|
|
2
|
+
import { ConfigBuilder, copyDirToTmp, link, makeEnv, p, transformEnv, transformTemplate } from "@hot-updater/cli-tools";
|
|
8
3
|
import { fileURLToPath } from "node:url";
|
|
9
4
|
import { ChildProcess, execFile, spawn, spawnSync } from "node:child_process";
|
|
10
5
|
import { StringDecoder } from "node:string_decoder";
|
|
6
|
+
import { aborted, callbackify, debuglog, inspect, promisify, stripVTControlCharacters } from "node:util";
|
|
7
|
+
import process$1, { execArgv, execPath, hrtime, platform } from "node:process";
|
|
8
|
+
import tty from "node:tty";
|
|
11
9
|
import path from "node:path";
|
|
12
10
|
import path$1 from "path";
|
|
13
11
|
import fs from "fs";
|
|
@@ -34,7 +32,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
34
32
|
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i$1 = 0, n$1 = keys.length, key; i$1 < n$1; i$1++) {
|
|
35
33
|
key = keys[i$1];
|
|
36
34
|
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
37
|
-
get: ((k
|
|
35
|
+
get: ((k) => from[k]).bind(null, key),
|
|
38
36
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
39
37
|
});
|
|
40
38
|
}
|
|
@@ -46,1187 +44,24 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
46
44
|
}) : target, mod));
|
|
47
45
|
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
48
46
|
|
|
49
|
-
//#endregion
|
|
50
|
-
//#region ../../node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js
|
|
51
|
-
var require_src = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/sisteransi@1.0.5/node_modules/sisteransi/src/index.js": ((exports, module) => {
|
|
52
|
-
const ESC = "\x1B";
|
|
53
|
-
const CSI = `${ESC}[`;
|
|
54
|
-
const beep = "\x07";
|
|
55
|
-
const cursor = {
|
|
56
|
-
to(x$1, y$1) {
|
|
57
|
-
if (!y$1) return `${CSI}${x$1 + 1}G`;
|
|
58
|
-
return `${CSI}${y$1 + 1};${x$1 + 1}H`;
|
|
59
|
-
},
|
|
60
|
-
move(x$1, y$1) {
|
|
61
|
-
let ret = "";
|
|
62
|
-
if (x$1 < 0) ret += `${CSI}${-x$1}D`;
|
|
63
|
-
else if (x$1 > 0) ret += `${CSI}${x$1}C`;
|
|
64
|
-
if (y$1 < 0) ret += `${CSI}${-y$1}A`;
|
|
65
|
-
else if (y$1 > 0) ret += `${CSI}${y$1}B`;
|
|
66
|
-
return ret;
|
|
67
|
-
},
|
|
68
|
-
up: (count$1 = 1) => `${CSI}${count$1}A`,
|
|
69
|
-
down: (count$1 = 1) => `${CSI}${count$1}B`,
|
|
70
|
-
forward: (count$1 = 1) => `${CSI}${count$1}C`,
|
|
71
|
-
backward: (count$1 = 1) => `${CSI}${count$1}D`,
|
|
72
|
-
nextLine: (count$1 = 1) => `${CSI}E`.repeat(count$1),
|
|
73
|
-
prevLine: (count$1 = 1) => `${CSI}F`.repeat(count$1),
|
|
74
|
-
left: `${CSI}G`,
|
|
75
|
-
hide: `${CSI}?25l`,
|
|
76
|
-
show: `${CSI}?25h`,
|
|
77
|
-
save: `${ESC}7`,
|
|
78
|
-
restore: `${ESC}8`
|
|
79
|
-
};
|
|
80
|
-
const scroll = {
|
|
81
|
-
up: (count$1 = 1) => `${CSI}S`.repeat(count$1),
|
|
82
|
-
down: (count$1 = 1) => `${CSI}T`.repeat(count$1)
|
|
83
|
-
};
|
|
84
|
-
const erase = {
|
|
85
|
-
screen: `${CSI}2J`,
|
|
86
|
-
up: (count$1 = 1) => `${CSI}1J`.repeat(count$1),
|
|
87
|
-
down: (count$1 = 1) => `${CSI}J`.repeat(count$1),
|
|
88
|
-
line: `${CSI}2K`,
|
|
89
|
-
lineEnd: `${CSI}K`,
|
|
90
|
-
lineStart: `${CSI}1K`,
|
|
91
|
-
lines(count$1) {
|
|
92
|
-
let clear = "";
|
|
93
|
-
for (let i$1 = 0; i$1 < count$1; i$1++) clear += this.line + (i$1 < count$1 - 1 ? cursor.up() : "");
|
|
94
|
-
if (count$1) clear += cursor.left;
|
|
95
|
-
return clear;
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
module.exports = {
|
|
99
|
-
cursor,
|
|
100
|
-
scroll,
|
|
101
|
-
erase,
|
|
102
|
-
beep
|
|
103
|
-
};
|
|
104
|
-
}) });
|
|
105
|
-
|
|
106
|
-
//#endregion
|
|
107
|
-
//#region ../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js
|
|
108
|
-
var require_picocolors = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js": ((exports, module) => {
|
|
109
|
-
let p = process || {}, argv = p.argv || [], env = p.env || {};
|
|
110
|
-
let isColorSupported = !(!!env.NO_COLOR || argv.includes("--no-color")) && (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env.TERM !== "dumb" || !!env.CI);
|
|
111
|
-
let formatter = (open, close, replace = open) => (input) => {
|
|
112
|
-
let string = "" + input, index = string.indexOf(close, open.length);
|
|
113
|
-
return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close;
|
|
114
|
-
};
|
|
115
|
-
let replaceClose = (string, close, replace, index) => {
|
|
116
|
-
let result = "", cursor$1 = 0;
|
|
117
|
-
do {
|
|
118
|
-
result += string.substring(cursor$1, index) + replace;
|
|
119
|
-
cursor$1 = index + close.length;
|
|
120
|
-
index = string.indexOf(close, cursor$1);
|
|
121
|
-
} while (~index);
|
|
122
|
-
return result + string.substring(cursor$1);
|
|
123
|
-
};
|
|
124
|
-
let createColors = (enabled = isColorSupported) => {
|
|
125
|
-
let f$2 = enabled ? formatter : () => String;
|
|
126
|
-
return {
|
|
127
|
-
isColorSupported: enabled,
|
|
128
|
-
reset: f$2("\x1B[0m", "\x1B[0m"),
|
|
129
|
-
bold: f$2("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
|
|
130
|
-
dim: f$2("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
|
|
131
|
-
italic: f$2("\x1B[3m", "\x1B[23m"),
|
|
132
|
-
underline: f$2("\x1B[4m", "\x1B[24m"),
|
|
133
|
-
inverse: f$2("\x1B[7m", "\x1B[27m"),
|
|
134
|
-
hidden: f$2("\x1B[8m", "\x1B[28m"),
|
|
135
|
-
strikethrough: f$2("\x1B[9m", "\x1B[29m"),
|
|
136
|
-
black: f$2("\x1B[30m", "\x1B[39m"),
|
|
137
|
-
red: f$2("\x1B[31m", "\x1B[39m"),
|
|
138
|
-
green: f$2("\x1B[32m", "\x1B[39m"),
|
|
139
|
-
yellow: f$2("\x1B[33m", "\x1B[39m"),
|
|
140
|
-
blue: f$2("\x1B[34m", "\x1B[39m"),
|
|
141
|
-
magenta: f$2("\x1B[35m", "\x1B[39m"),
|
|
142
|
-
cyan: f$2("\x1B[36m", "\x1B[39m"),
|
|
143
|
-
white: f$2("\x1B[37m", "\x1B[39m"),
|
|
144
|
-
gray: f$2("\x1B[90m", "\x1B[39m"),
|
|
145
|
-
bgBlack: f$2("\x1B[40m", "\x1B[49m"),
|
|
146
|
-
bgRed: f$2("\x1B[41m", "\x1B[49m"),
|
|
147
|
-
bgGreen: f$2("\x1B[42m", "\x1B[49m"),
|
|
148
|
-
bgYellow: f$2("\x1B[43m", "\x1B[49m"),
|
|
149
|
-
bgBlue: f$2("\x1B[44m", "\x1B[49m"),
|
|
150
|
-
bgMagenta: f$2("\x1B[45m", "\x1B[49m"),
|
|
151
|
-
bgCyan: f$2("\x1B[46m", "\x1B[49m"),
|
|
152
|
-
bgWhite: f$2("\x1B[47m", "\x1B[49m"),
|
|
153
|
-
blackBright: f$2("\x1B[90m", "\x1B[39m"),
|
|
154
|
-
redBright: f$2("\x1B[91m", "\x1B[39m"),
|
|
155
|
-
greenBright: f$2("\x1B[92m", "\x1B[39m"),
|
|
156
|
-
yellowBright: f$2("\x1B[93m", "\x1B[39m"),
|
|
157
|
-
blueBright: f$2("\x1B[94m", "\x1B[39m"),
|
|
158
|
-
magentaBright: f$2("\x1B[95m", "\x1B[39m"),
|
|
159
|
-
cyanBright: f$2("\x1B[96m", "\x1B[39m"),
|
|
160
|
-
whiteBright: f$2("\x1B[97m", "\x1B[39m"),
|
|
161
|
-
bgBlackBright: f$2("\x1B[100m", "\x1B[49m"),
|
|
162
|
-
bgRedBright: f$2("\x1B[101m", "\x1B[49m"),
|
|
163
|
-
bgGreenBright: f$2("\x1B[102m", "\x1B[49m"),
|
|
164
|
-
bgYellowBright: f$2("\x1B[103m", "\x1B[49m"),
|
|
165
|
-
bgBlueBright: f$2("\x1B[104m", "\x1B[49m"),
|
|
166
|
-
bgMagentaBright: f$2("\x1B[105m", "\x1B[49m"),
|
|
167
|
-
bgCyanBright: f$2("\x1B[106m", "\x1B[49m"),
|
|
168
|
-
bgWhiteBright: f$2("\x1B[107m", "\x1B[49m")
|
|
169
|
-
};
|
|
170
|
-
};
|
|
171
|
-
module.exports = createColors();
|
|
172
|
-
module.exports.createColors = createColors;
|
|
173
|
-
}) });
|
|
174
|
-
|
|
175
|
-
//#endregion
|
|
176
|
-
//#region ../../node_modules/.pnpm/@clack+core@0.4.1/node_modules/@clack/core/dist/index.mjs
|
|
177
|
-
var import_src$1 = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
178
|
-
var import_picocolors$1 = /* @__PURE__ */ __toESM(require_picocolors(), 1);
|
|
179
|
-
function J$1({ onlyFirst: t = !1 } = {}) {
|
|
180
|
-
const F$1 = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))", "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");
|
|
181
|
-
return new RegExp(F$1, t ? void 0 : "g");
|
|
182
|
-
}
|
|
183
|
-
const Q = J$1();
|
|
184
|
-
function T$1(t) {
|
|
185
|
-
if (typeof t != "string") throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);
|
|
186
|
-
return t.replace(Q, "");
|
|
187
|
-
}
|
|
188
|
-
function O(t) {
|
|
189
|
-
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
|
|
190
|
-
}
|
|
191
|
-
var P$1 = { exports: {} };
|
|
192
|
-
(function(t) {
|
|
193
|
-
var u$2 = {};
|
|
194
|
-
t.exports = u$2, u$2.eastAsianWidth = function(e$1) {
|
|
195
|
-
var s = e$1.charCodeAt(0), i$1 = e$1.length == 2 ? e$1.charCodeAt(1) : 0, D$1 = s;
|
|
196
|
-
return 55296 <= s && s <= 56319 && 56320 <= i$1 && i$1 <= 57343 && (s &= 1023, i$1 &= 1023, D$1 = s << 10 | i$1, D$1 += 65536), D$1 == 12288 || 65281 <= D$1 && D$1 <= 65376 || 65504 <= D$1 && D$1 <= 65510 ? "F" : D$1 == 8361 || 65377 <= D$1 && D$1 <= 65470 || 65474 <= D$1 && D$1 <= 65479 || 65482 <= D$1 && D$1 <= 65487 || 65490 <= D$1 && D$1 <= 65495 || 65498 <= D$1 && D$1 <= 65500 || 65512 <= D$1 && D$1 <= 65518 ? "H" : 4352 <= D$1 && D$1 <= 4447 || 4515 <= D$1 && D$1 <= 4519 || 4602 <= D$1 && D$1 <= 4607 || 9001 <= D$1 && D$1 <= 9002 || 11904 <= D$1 && D$1 <= 11929 || 11931 <= D$1 && D$1 <= 12019 || 12032 <= D$1 && D$1 <= 12245 || 12272 <= D$1 && D$1 <= 12283 || 12289 <= D$1 && D$1 <= 12350 || 12353 <= D$1 && D$1 <= 12438 || 12441 <= D$1 && D$1 <= 12543 || 12549 <= D$1 && D$1 <= 12589 || 12593 <= D$1 && D$1 <= 12686 || 12688 <= D$1 && D$1 <= 12730 || 12736 <= D$1 && D$1 <= 12771 || 12784 <= D$1 && D$1 <= 12830 || 12832 <= D$1 && D$1 <= 12871 || 12880 <= D$1 && D$1 <= 13054 || 13056 <= D$1 && D$1 <= 19903 || 19968 <= D$1 && D$1 <= 42124 || 42128 <= D$1 && D$1 <= 42182 || 43360 <= D$1 && D$1 <= 43388 || 44032 <= D$1 && D$1 <= 55203 || 55216 <= D$1 && D$1 <= 55238 || 55243 <= D$1 && D$1 <= 55291 || 63744 <= D$1 && D$1 <= 64255 || 65040 <= D$1 && D$1 <= 65049 || 65072 <= D$1 && D$1 <= 65106 || 65108 <= D$1 && D$1 <= 65126 || 65128 <= D$1 && D$1 <= 65131 || 110592 <= D$1 && D$1 <= 110593 || 127488 <= D$1 && D$1 <= 127490 || 127504 <= D$1 && D$1 <= 127546 || 127552 <= D$1 && D$1 <= 127560 || 127568 <= D$1 && D$1 <= 127569 || 131072 <= D$1 && D$1 <= 194367 || 177984 <= D$1 && D$1 <= 196605 || 196608 <= D$1 && D$1 <= 262141 ? "W" : 32 <= D$1 && D$1 <= 126 || 162 <= D$1 && D$1 <= 163 || 165 <= D$1 && D$1 <= 166 || D$1 == 172 || D$1 == 175 || 10214 <= D$1 && D$1 <= 10221 || 10629 <= D$1 && D$1 <= 10630 ? "Na" : D$1 == 161 || D$1 == 164 || 167 <= D$1 && D$1 <= 168 || D$1 == 170 || 173 <= D$1 && D$1 <= 174 || 176 <= D$1 && D$1 <= 180 || 182 <= D$1 && D$1 <= 186 || 188 <= D$1 && D$1 <= 191 || D$1 == 198 || D$1 == 208 || 215 <= D$1 && D$1 <= 216 || 222 <= D$1 && D$1 <= 225 || D$1 == 230 || 232 <= D$1 && D$1 <= 234 || 236 <= D$1 && D$1 <= 237 || D$1 == 240 || 242 <= D$1 && D$1 <= 243 || 247 <= D$1 && D$1 <= 250 || D$1 == 252 || D$1 == 254 || D$1 == 257 || D$1 == 273 || D$1 == 275 || D$1 == 283 || 294 <= D$1 && D$1 <= 295 || D$1 == 299 || 305 <= D$1 && D$1 <= 307 || D$1 == 312 || 319 <= D$1 && D$1 <= 322 || D$1 == 324 || 328 <= D$1 && D$1 <= 331 || D$1 == 333 || 338 <= D$1 && D$1 <= 339 || 358 <= D$1 && D$1 <= 359 || D$1 == 363 || D$1 == 462 || D$1 == 464 || D$1 == 466 || D$1 == 468 || D$1 == 470 || D$1 == 472 || D$1 == 474 || D$1 == 476 || D$1 == 593 || D$1 == 609 || D$1 == 708 || D$1 == 711 || 713 <= D$1 && D$1 <= 715 || D$1 == 717 || D$1 == 720 || 728 <= D$1 && D$1 <= 731 || D$1 == 733 || D$1 == 735 || 768 <= D$1 && D$1 <= 879 || 913 <= D$1 && D$1 <= 929 || 931 <= D$1 && D$1 <= 937 || 945 <= D$1 && D$1 <= 961 || 963 <= D$1 && D$1 <= 969 || D$1 == 1025 || 1040 <= D$1 && D$1 <= 1103 || D$1 == 1105 || D$1 == 8208 || 8211 <= D$1 && D$1 <= 8214 || 8216 <= D$1 && D$1 <= 8217 || 8220 <= D$1 && D$1 <= 8221 || 8224 <= D$1 && D$1 <= 8226 || 8228 <= D$1 && D$1 <= 8231 || D$1 == 8240 || 8242 <= D$1 && D$1 <= 8243 || D$1 == 8245 || D$1 == 8251 || D$1 == 8254 || D$1 == 8308 || D$1 == 8319 || 8321 <= D$1 && D$1 <= 8324 || D$1 == 8364 || D$1 == 8451 || D$1 == 8453 || D$1 == 8457 || D$1 == 8467 || D$1 == 8470 || 8481 <= D$1 && D$1 <= 8482 || D$1 == 8486 || D$1 == 8491 || 8531 <= D$1 && D$1 <= 8532 || 8539 <= D$1 && D$1 <= 8542 || 8544 <= D$1 && D$1 <= 8555 || 8560 <= D$1 && D$1 <= 8569 || D$1 == 8585 || 8592 <= D$1 && D$1 <= 8601 || 8632 <= D$1 && D$1 <= 8633 || D$1 == 8658 || D$1 == 8660 || D$1 == 8679 || D$1 == 8704 || 8706 <= D$1 && D$1 <= 8707 || 8711 <= D$1 && D$1 <= 8712 || D$1 == 8715 || D$1 == 8719 || D$1 == 8721 || D$1 == 8725 || D$1 == 8730 || 8733 <= D$1 && D$1 <= 8736 || D$1 == 8739 || D$1 == 8741 || 8743 <= D$1 && D$1 <= 8748 || D$1 == 8750 || 8756 <= D$1 && D$1 <= 8759 || 8764 <= D$1 && D$1 <= 8765 || D$1 == 8776 || D$1 == 8780 || D$1 == 8786 || 8800 <= D$1 && D$1 <= 8801 || 8804 <= D$1 && D$1 <= 8807 || 8810 <= D$1 && D$1 <= 8811 || 8814 <= D$1 && D$1 <= 8815 || 8834 <= D$1 && D$1 <= 8835 || 8838 <= D$1 && D$1 <= 8839 || D$1 == 8853 || D$1 == 8857 || D$1 == 8869 || D$1 == 8895 || D$1 == 8978 || 9312 <= D$1 && D$1 <= 9449 || 9451 <= D$1 && D$1 <= 9547 || 9552 <= D$1 && D$1 <= 9587 || 9600 <= D$1 && D$1 <= 9615 || 9618 <= D$1 && D$1 <= 9621 || 9632 <= D$1 && D$1 <= 9633 || 9635 <= D$1 && D$1 <= 9641 || 9650 <= D$1 && D$1 <= 9651 || 9654 <= D$1 && D$1 <= 9655 || 9660 <= D$1 && D$1 <= 9661 || 9664 <= D$1 && D$1 <= 9665 || 9670 <= D$1 && D$1 <= 9672 || D$1 == 9675 || 9678 <= D$1 && D$1 <= 9681 || 9698 <= D$1 && D$1 <= 9701 || D$1 == 9711 || 9733 <= D$1 && D$1 <= 9734 || D$1 == 9737 || 9742 <= D$1 && D$1 <= 9743 || 9748 <= D$1 && D$1 <= 9749 || D$1 == 9756 || D$1 == 9758 || D$1 == 9792 || D$1 == 9794 || 9824 <= D$1 && D$1 <= 9825 || 9827 <= D$1 && D$1 <= 9829 || 9831 <= D$1 && D$1 <= 9834 || 9836 <= D$1 && D$1 <= 9837 || D$1 == 9839 || 9886 <= D$1 && D$1 <= 9887 || 9918 <= D$1 && D$1 <= 9919 || 9924 <= D$1 && D$1 <= 9933 || 9935 <= D$1 && D$1 <= 9953 || D$1 == 9955 || 9960 <= D$1 && D$1 <= 9983 || D$1 == 10045 || D$1 == 10071 || 10102 <= D$1 && D$1 <= 10111 || 11093 <= D$1 && D$1 <= 11097 || 12872 <= D$1 && D$1 <= 12879 || 57344 <= D$1 && D$1 <= 63743 || 65024 <= D$1 && D$1 <= 65039 || D$1 == 65533 || 127232 <= D$1 && D$1 <= 127242 || 127248 <= D$1 && D$1 <= 127277 || 127280 <= D$1 && D$1 <= 127337 || 127344 <= D$1 && D$1 <= 127386 || 917760 <= D$1 && D$1 <= 917999 || 983040 <= D$1 && D$1 <= 1048573 || 1048576 <= D$1 && D$1 <= 1114109 ? "A" : "N";
|
|
197
|
-
}, u$2.characterLength = function(e$1) {
|
|
198
|
-
var s = this.eastAsianWidth(e$1);
|
|
199
|
-
return s == "F" || s == "W" || s == "A" ? 2 : 1;
|
|
200
|
-
};
|
|
201
|
-
function F$1(e$1) {
|
|
202
|
-
return e$1.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
|
|
203
|
-
}
|
|
204
|
-
u$2.length = function(e$1) {
|
|
205
|
-
for (var s = F$1(e$1), i$1 = 0, D$1 = 0; D$1 < s.length; D$1++) i$1 = i$1 + this.characterLength(s[D$1]);
|
|
206
|
-
return i$1;
|
|
207
|
-
}, u$2.slice = function(e$1, s, i$1) {
|
|
208
|
-
textLen = u$2.length(e$1), s = s || 0, i$1 = i$1 || 1, s < 0 && (s = textLen + s), i$1 < 0 && (i$1 = textLen + i$1);
|
|
209
|
-
for (var D$1 = "", C$1 = 0, o$2 = F$1(e$1), E = 0; E < o$2.length; E++) {
|
|
210
|
-
var a$1 = o$2[E], n$1 = u$2.length(a$1);
|
|
211
|
-
if (C$1 >= s - (n$1 == 2 ? 1 : 0)) if (C$1 + n$1 <= i$1) D$1 += a$1;
|
|
212
|
-
else break;
|
|
213
|
-
C$1 += n$1;
|
|
214
|
-
}
|
|
215
|
-
return D$1;
|
|
216
|
-
};
|
|
217
|
-
})(P$1);
|
|
218
|
-
var X = P$1.exports;
|
|
219
|
-
const DD = O(X);
|
|
220
|
-
var uD = function() {
|
|
221
|
-
return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
|
|
222
|
-
};
|
|
223
|
-
const FD = O(uD);
|
|
224
|
-
function A$1(t, u$2 = {}) {
|
|
225
|
-
if (typeof t != "string" || t.length === 0 || (u$2 = {
|
|
226
|
-
ambiguousIsNarrow: !0,
|
|
227
|
-
...u$2
|
|
228
|
-
}, t = T$1(t), t.length === 0)) return 0;
|
|
229
|
-
t = t.replace(FD(), " ");
|
|
230
|
-
const F$1 = u$2.ambiguousIsNarrow ? 1 : 2;
|
|
231
|
-
let e$1 = 0;
|
|
232
|
-
for (const s of t) {
|
|
233
|
-
const i$1 = s.codePointAt(0);
|
|
234
|
-
if (i$1 <= 31 || i$1 >= 127 && i$1 <= 159 || i$1 >= 768 && i$1 <= 879) continue;
|
|
235
|
-
switch (DD.eastAsianWidth(s)) {
|
|
236
|
-
case "F":
|
|
237
|
-
case "W":
|
|
238
|
-
e$1 += 2;
|
|
239
|
-
break;
|
|
240
|
-
case "A":
|
|
241
|
-
e$1 += F$1;
|
|
242
|
-
break;
|
|
243
|
-
default: e$1 += 1;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
return e$1;
|
|
247
|
-
}
|
|
248
|
-
const m = 10, L$1 = (t = 0) => (u$2) => `\x1B[${u$2 + t}m`, N = (t = 0) => (u$2) => `\x1B[${38 + t};5;${u$2}m`, I = (t = 0) => (u$2, F$1, e$1) => `\x1B[${38 + t};2;${u$2};${F$1};${e$1}m`, r = {
|
|
249
|
-
modifier: {
|
|
250
|
-
reset: [0, 0],
|
|
251
|
-
bold: [1, 22],
|
|
252
|
-
dim: [2, 22],
|
|
253
|
-
italic: [3, 23],
|
|
254
|
-
underline: [4, 24],
|
|
255
|
-
overline: [53, 55],
|
|
256
|
-
inverse: [7, 27],
|
|
257
|
-
hidden: [8, 28],
|
|
258
|
-
strikethrough: [9, 29]
|
|
259
|
-
},
|
|
260
|
-
color: {
|
|
261
|
-
black: [30, 39],
|
|
262
|
-
red: [31, 39],
|
|
263
|
-
green: [32, 39],
|
|
264
|
-
yellow: [33, 39],
|
|
265
|
-
blue: [34, 39],
|
|
266
|
-
magenta: [35, 39],
|
|
267
|
-
cyan: [36, 39],
|
|
268
|
-
white: [37, 39],
|
|
269
|
-
blackBright: [90, 39],
|
|
270
|
-
gray: [90, 39],
|
|
271
|
-
grey: [90, 39],
|
|
272
|
-
redBright: [91, 39],
|
|
273
|
-
greenBright: [92, 39],
|
|
274
|
-
yellowBright: [93, 39],
|
|
275
|
-
blueBright: [94, 39],
|
|
276
|
-
magentaBright: [95, 39],
|
|
277
|
-
cyanBright: [96, 39],
|
|
278
|
-
whiteBright: [97, 39]
|
|
279
|
-
},
|
|
280
|
-
bgColor: {
|
|
281
|
-
bgBlack: [40, 49],
|
|
282
|
-
bgRed: [41, 49],
|
|
283
|
-
bgGreen: [42, 49],
|
|
284
|
-
bgYellow: [43, 49],
|
|
285
|
-
bgBlue: [44, 49],
|
|
286
|
-
bgMagenta: [45, 49],
|
|
287
|
-
bgCyan: [46, 49],
|
|
288
|
-
bgWhite: [47, 49],
|
|
289
|
-
bgBlackBright: [100, 49],
|
|
290
|
-
bgGray: [100, 49],
|
|
291
|
-
bgGrey: [100, 49],
|
|
292
|
-
bgRedBright: [101, 49],
|
|
293
|
-
bgGreenBright: [102, 49],
|
|
294
|
-
bgYellowBright: [103, 49],
|
|
295
|
-
bgBlueBright: [104, 49],
|
|
296
|
-
bgMagentaBright: [105, 49],
|
|
297
|
-
bgCyanBright: [106, 49],
|
|
298
|
-
bgWhiteBright: [107, 49]
|
|
299
|
-
}
|
|
300
|
-
};
|
|
301
|
-
Object.keys(r.modifier);
|
|
302
|
-
const tD = Object.keys(r.color), eD = Object.keys(r.bgColor);
|
|
303
|
-
[...tD, ...eD];
|
|
304
|
-
function sD() {
|
|
305
|
-
const t = /* @__PURE__ */ new Map();
|
|
306
|
-
for (const [u$2, F$1] of Object.entries(r)) {
|
|
307
|
-
for (const [e$1, s] of Object.entries(F$1)) r[e$1] = {
|
|
308
|
-
open: `\x1B[${s[0]}m`,
|
|
309
|
-
close: `\x1B[${s[1]}m`
|
|
310
|
-
}, F$1[e$1] = r[e$1], t.set(s[0], s[1]);
|
|
311
|
-
Object.defineProperty(r, u$2, {
|
|
312
|
-
value: F$1,
|
|
313
|
-
enumerable: !1
|
|
314
|
-
});
|
|
315
|
-
}
|
|
316
|
-
return Object.defineProperty(r, "codes", {
|
|
317
|
-
value: t,
|
|
318
|
-
enumerable: !1
|
|
319
|
-
}), r.color.close = "\x1B[39m", r.bgColor.close = "\x1B[49m", r.color.ansi = L$1(), r.color.ansi256 = N(), r.color.ansi16m = I(), r.bgColor.ansi = L$1(m), r.bgColor.ansi256 = N(m), r.bgColor.ansi16m = I(m), Object.defineProperties(r, {
|
|
320
|
-
rgbToAnsi256: {
|
|
321
|
-
value: (u$2, F$1, e$1) => u$2 === F$1 && F$1 === e$1 ? u$2 < 8 ? 16 : u$2 > 248 ? 231 : Math.round((u$2 - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(u$2 / 255 * 5) + 6 * Math.round(F$1 / 255 * 5) + Math.round(e$1 / 255 * 5),
|
|
322
|
-
enumerable: !1
|
|
323
|
-
},
|
|
324
|
-
hexToRgb: {
|
|
325
|
-
value: (u$2) => {
|
|
326
|
-
const F$1 = /[a-f\d]{6}|[a-f\d]{3}/i.exec(u$2.toString(16));
|
|
327
|
-
if (!F$1) return [
|
|
328
|
-
0,
|
|
329
|
-
0,
|
|
330
|
-
0
|
|
331
|
-
];
|
|
332
|
-
let [e$1] = F$1;
|
|
333
|
-
e$1.length === 3 && (e$1 = [...e$1].map((i$1) => i$1 + i$1).join(""));
|
|
334
|
-
const s = Number.parseInt(e$1, 16);
|
|
335
|
-
return [
|
|
336
|
-
s >> 16 & 255,
|
|
337
|
-
s >> 8 & 255,
|
|
338
|
-
s & 255
|
|
339
|
-
];
|
|
340
|
-
},
|
|
341
|
-
enumerable: !1
|
|
342
|
-
},
|
|
343
|
-
hexToAnsi256: {
|
|
344
|
-
value: (u$2) => r.rgbToAnsi256(...r.hexToRgb(u$2)),
|
|
345
|
-
enumerable: !1
|
|
346
|
-
},
|
|
347
|
-
ansi256ToAnsi: {
|
|
348
|
-
value: (u$2) => {
|
|
349
|
-
if (u$2 < 8) return 30 + u$2;
|
|
350
|
-
if (u$2 < 16) return 90 + (u$2 - 8);
|
|
351
|
-
let F$1, e$1, s;
|
|
352
|
-
if (u$2 >= 232) F$1 = ((u$2 - 232) * 10 + 8) / 255, e$1 = F$1, s = F$1;
|
|
353
|
-
else {
|
|
354
|
-
u$2 -= 16;
|
|
355
|
-
const C$1 = u$2 % 36;
|
|
356
|
-
F$1 = Math.floor(u$2 / 36) / 5, e$1 = Math.floor(C$1 / 6) / 5, s = C$1 % 6 / 5;
|
|
357
|
-
}
|
|
358
|
-
const i$1 = Math.max(F$1, e$1, s) * 2;
|
|
359
|
-
if (i$1 === 0) return 30;
|
|
360
|
-
let D$1 = 30 + (Math.round(s) << 2 | Math.round(e$1) << 1 | Math.round(F$1));
|
|
361
|
-
return i$1 === 2 && (D$1 += 60), D$1;
|
|
362
|
-
},
|
|
363
|
-
enumerable: !1
|
|
364
|
-
},
|
|
365
|
-
rgbToAnsi: {
|
|
366
|
-
value: (u$2, F$1, e$1) => r.ansi256ToAnsi(r.rgbToAnsi256(u$2, F$1, e$1)),
|
|
367
|
-
enumerable: !1
|
|
368
|
-
},
|
|
369
|
-
hexToAnsi: {
|
|
370
|
-
value: (u$2) => r.ansi256ToAnsi(r.hexToAnsi256(u$2)),
|
|
371
|
-
enumerable: !1
|
|
372
|
-
}
|
|
373
|
-
}), r;
|
|
374
|
-
}
|
|
375
|
-
const iD = sD(), v = new Set(["\x1B", ""]), CD = 39, w$1 = "\x07", W$1 = "[", rD = "]", R = "m", y = `${rD}8;;`, V$1 = (t) => `${v.values().next().value}${W$1}${t}${R}`, z = (t) => `${v.values().next().value}${y}${t}${w$1}`, ED = (t) => t.split(" ").map((u$2) => A$1(u$2)), _$1 = (t, u$2, F$1) => {
|
|
376
|
-
const e$1 = [...u$2];
|
|
377
|
-
let s = !1, i$1 = !1, D$1 = A$1(T$1(t[t.length - 1]));
|
|
378
|
-
for (const [C$1, o$2] of e$1.entries()) {
|
|
379
|
-
const E = A$1(o$2);
|
|
380
|
-
if (D$1 + E <= F$1 ? t[t.length - 1] += o$2 : (t.push(o$2), D$1 = 0), v.has(o$2) && (s = !0, i$1 = e$1.slice(C$1 + 1).join("").startsWith(y)), s) {
|
|
381
|
-
i$1 ? o$2 === w$1 && (s = !1, i$1 = !1) : o$2 === R && (s = !1);
|
|
382
|
-
continue;
|
|
383
|
-
}
|
|
384
|
-
D$1 += E, D$1 === F$1 && C$1 < e$1.length - 1 && (t.push(""), D$1 = 0);
|
|
385
|
-
}
|
|
386
|
-
!D$1 && t[t.length - 1].length > 0 && t.length > 1 && (t[t.length - 2] += t.pop());
|
|
387
|
-
}, nD = (t) => {
|
|
388
|
-
const u$2 = t.split(" ");
|
|
389
|
-
let F$1 = u$2.length;
|
|
390
|
-
for (; F$1 > 0 && !(A$1(u$2[F$1 - 1]) > 0);) F$1--;
|
|
391
|
-
return F$1 === u$2.length ? t : u$2.slice(0, F$1).join(" ") + u$2.slice(F$1).join("");
|
|
392
|
-
}, oD = (t, u$2, F$1 = {}) => {
|
|
393
|
-
if (F$1.trim !== !1 && t.trim() === "") return "";
|
|
394
|
-
let e$1 = "", s, i$1;
|
|
395
|
-
const D$1 = ED(t);
|
|
396
|
-
let C$1 = [""];
|
|
397
|
-
for (const [E, a$1] of t.split(" ").entries()) {
|
|
398
|
-
F$1.trim !== !1 && (C$1[C$1.length - 1] = C$1[C$1.length - 1].trimStart());
|
|
399
|
-
let n$1 = A$1(C$1[C$1.length - 1]);
|
|
400
|
-
if (E !== 0 && (n$1 >= u$2 && (F$1.wordWrap === !1 || F$1.trim === !1) && (C$1.push(""), n$1 = 0), (n$1 > 0 || F$1.trim === !1) && (C$1[C$1.length - 1] += " ", n$1++)), F$1.hard && D$1[E] > u$2) {
|
|
401
|
-
const B$1 = u$2 - n$1, p$1 = 1 + Math.floor((D$1[E] - B$1 - 1) / u$2);
|
|
402
|
-
Math.floor((D$1[E] - 1) / u$2) < p$1 && C$1.push(""), _$1(C$1, a$1, u$2);
|
|
403
|
-
continue;
|
|
404
|
-
}
|
|
405
|
-
if (n$1 + D$1[E] > u$2 && n$1 > 0 && D$1[E] > 0) {
|
|
406
|
-
if (F$1.wordWrap === !1 && n$1 < u$2) {
|
|
407
|
-
_$1(C$1, a$1, u$2);
|
|
408
|
-
continue;
|
|
409
|
-
}
|
|
410
|
-
C$1.push("");
|
|
411
|
-
}
|
|
412
|
-
if (n$1 + D$1[E] > u$2 && F$1.wordWrap === !1) {
|
|
413
|
-
_$1(C$1, a$1, u$2);
|
|
414
|
-
continue;
|
|
415
|
-
}
|
|
416
|
-
C$1[C$1.length - 1] += a$1;
|
|
417
|
-
}
|
|
418
|
-
F$1.trim !== !1 && (C$1 = C$1.map((E) => nD(E)));
|
|
419
|
-
const o$2 = [...C$1.join(`
|
|
420
|
-
`)];
|
|
421
|
-
for (const [E, a$1] of o$2.entries()) {
|
|
422
|
-
if (e$1 += a$1, v.has(a$1)) {
|
|
423
|
-
const { groups: B$1 } = (/* @__PURE__ */ new RegExp(`(?:\\${W$1}(?<code>\\d+)m|\\${y}(?<uri>.*)${w$1})`)).exec(o$2.slice(E).join("")) || { groups: {} };
|
|
424
|
-
if (B$1.code !== void 0) {
|
|
425
|
-
const p$1 = Number.parseFloat(B$1.code);
|
|
426
|
-
s = p$1 === CD ? void 0 : p$1;
|
|
427
|
-
} else B$1.uri !== void 0 && (i$1 = B$1.uri.length === 0 ? void 0 : B$1.uri);
|
|
428
|
-
}
|
|
429
|
-
const n$1 = iD.codes.get(Number(s));
|
|
430
|
-
o$2[E + 1] === `
|
|
431
|
-
` ? (i$1 && (e$1 += z("")), s && n$1 && (e$1 += V$1(n$1))) : a$1 === `
|
|
432
|
-
` && (s && n$1 && (e$1 += V$1(s)), i$1 && (e$1 += z(i$1)));
|
|
433
|
-
}
|
|
434
|
-
return e$1;
|
|
435
|
-
};
|
|
436
|
-
function G(t, u$2, F$1) {
|
|
437
|
-
return String(t).normalize().replace(/\r\n/g, `
|
|
438
|
-
`).split(`
|
|
439
|
-
`).map((e$1) => oD(e$1, u$2, F$1)).join(`
|
|
440
|
-
`);
|
|
441
|
-
}
|
|
442
|
-
const c$1 = {
|
|
443
|
-
actions: new Set([
|
|
444
|
-
"up",
|
|
445
|
-
"down",
|
|
446
|
-
"left",
|
|
447
|
-
"right",
|
|
448
|
-
"space",
|
|
449
|
-
"enter",
|
|
450
|
-
"cancel"
|
|
451
|
-
]),
|
|
452
|
-
aliases: new Map([
|
|
453
|
-
["k", "up"],
|
|
454
|
-
["j", "down"],
|
|
455
|
-
["h", "left"],
|
|
456
|
-
["l", "right"],
|
|
457
|
-
["", "cancel"],
|
|
458
|
-
["escape", "cancel"]
|
|
459
|
-
])
|
|
460
|
-
};
|
|
461
|
-
function k$1(t, u$2) {
|
|
462
|
-
if (typeof t == "string") return c$1.aliases.get(t) === u$2;
|
|
463
|
-
for (const F$1 of t) if (F$1 !== void 0 && k$1(F$1, u$2)) return !0;
|
|
464
|
-
return !1;
|
|
465
|
-
}
|
|
466
|
-
function lD(t, u$2) {
|
|
467
|
-
if (t === u$2) return;
|
|
468
|
-
const F$1 = t.split(`
|
|
469
|
-
`), e$1 = u$2.split(`
|
|
470
|
-
`), s = [];
|
|
471
|
-
for (let i$1 = 0; i$1 < Math.max(F$1.length, e$1.length); i$1++) F$1[i$1] !== e$1[i$1] && s.push(i$1);
|
|
472
|
-
return s;
|
|
473
|
-
}
|
|
474
|
-
const xD = globalThis.process.platform.startsWith("win"), S = Symbol("clack:cancel");
|
|
475
|
-
function BD(t) {
|
|
476
|
-
return t === S;
|
|
477
|
-
}
|
|
478
|
-
function d$1(t, u$2) {
|
|
479
|
-
const F$1 = t;
|
|
480
|
-
F$1.isTTY && F$1.setRawMode(u$2);
|
|
481
|
-
}
|
|
482
|
-
function cD({ input: t = stdin, output: u$2 = stdout, overwrite: F$1 = !0, hideCursor: e$1 = !0 } = {}) {
|
|
483
|
-
const s = f$1.createInterface({
|
|
484
|
-
input: t,
|
|
485
|
-
output: u$2,
|
|
486
|
-
prompt: "",
|
|
487
|
-
tabSize: 1
|
|
488
|
-
});
|
|
489
|
-
f$1.emitKeypressEvents(t, s), t.isTTY && t.setRawMode(!0);
|
|
490
|
-
const i$1 = (D$1, { name: C$1, sequence: o$2 }) => {
|
|
491
|
-
if (k$1([
|
|
492
|
-
String(D$1),
|
|
493
|
-
C$1,
|
|
494
|
-
o$2
|
|
495
|
-
], "cancel")) {
|
|
496
|
-
e$1 && u$2.write(import_src$1.cursor.show), process.exit(0);
|
|
497
|
-
return;
|
|
498
|
-
}
|
|
499
|
-
if (!F$1) return;
|
|
500
|
-
const a$1 = C$1 === "return" ? 0 : -1, n$1 = C$1 === "return" ? -1 : 0;
|
|
501
|
-
f$1.moveCursor(u$2, a$1, n$1, () => {
|
|
502
|
-
f$1.clearLine(u$2, 1, () => {
|
|
503
|
-
t.once("keypress", i$1);
|
|
504
|
-
});
|
|
505
|
-
});
|
|
506
|
-
};
|
|
507
|
-
return e$1 && u$2.write(import_src$1.cursor.hide), t.once("keypress", i$1), () => {
|
|
508
|
-
t.off("keypress", i$1), e$1 && u$2.write(import_src$1.cursor.show), t.isTTY && !xD && t.setRawMode(!1), s.terminal = !1, s.close();
|
|
509
|
-
};
|
|
510
|
-
}
|
|
511
|
-
var AD = Object.defineProperty, pD = (t, u$2, F$1) => u$2 in t ? AD(t, u$2, {
|
|
512
|
-
enumerable: !0,
|
|
513
|
-
configurable: !0,
|
|
514
|
-
writable: !0,
|
|
515
|
-
value: F$1
|
|
516
|
-
}) : t[u$2] = F$1, h$1 = (t, u$2, F$1) => (pD(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
517
|
-
var x = class {
|
|
518
|
-
constructor(u$2, F$1 = !0) {
|
|
519
|
-
h$1(this, "input"), h$1(this, "output"), h$1(this, "_abortSignal"), h$1(this, "rl"), h$1(this, "opts"), h$1(this, "_render"), h$1(this, "_track", !1), h$1(this, "_prevFrame", ""), h$1(this, "_subscribers", /* @__PURE__ */ new Map()), h$1(this, "_cursor", 0), h$1(this, "state", "initial"), h$1(this, "error", ""), h$1(this, "value");
|
|
520
|
-
const { input: e$1 = stdin, output: s = stdout, render: i$1, signal: D$1,...C$1 } = u$2;
|
|
521
|
-
this.opts = C$1, this.onKeypress = this.onKeypress.bind(this), this.close = this.close.bind(this), this.render = this.render.bind(this), this._render = i$1.bind(this), this._track = F$1, this._abortSignal = D$1, this.input = e$1, this.output = s;
|
|
522
|
-
}
|
|
523
|
-
unsubscribe() {
|
|
524
|
-
this._subscribers.clear();
|
|
525
|
-
}
|
|
526
|
-
setSubscriber(u$2, F$1) {
|
|
527
|
-
const e$1 = this._subscribers.get(u$2) ?? [];
|
|
528
|
-
e$1.push(F$1), this._subscribers.set(u$2, e$1);
|
|
529
|
-
}
|
|
530
|
-
on(u$2, F$1) {
|
|
531
|
-
this.setSubscriber(u$2, { cb: F$1 });
|
|
532
|
-
}
|
|
533
|
-
once(u$2, F$1) {
|
|
534
|
-
this.setSubscriber(u$2, {
|
|
535
|
-
cb: F$1,
|
|
536
|
-
once: !0
|
|
537
|
-
});
|
|
538
|
-
}
|
|
539
|
-
emit(u$2, ...F$1) {
|
|
540
|
-
const e$1 = this._subscribers.get(u$2) ?? [], s = [];
|
|
541
|
-
for (const i$1 of e$1) i$1.cb(...F$1), i$1.once && s.push(() => e$1.splice(e$1.indexOf(i$1), 1));
|
|
542
|
-
for (const i$1 of s) i$1();
|
|
543
|
-
}
|
|
544
|
-
prompt() {
|
|
545
|
-
return new Promise((u$2, F$1) => {
|
|
546
|
-
if (this._abortSignal) {
|
|
547
|
-
if (this._abortSignal.aborted) return this.state = "cancel", this.close(), u$2(S);
|
|
548
|
-
this._abortSignal.addEventListener("abort", () => {
|
|
549
|
-
this.state = "cancel", this.close();
|
|
550
|
-
}, { once: !0 });
|
|
551
|
-
}
|
|
552
|
-
const e$1 = new WriteStream(0);
|
|
553
|
-
e$1._write = (s, i$1, D$1) => {
|
|
554
|
-
this._track && (this.value = this.rl?.line.replace(/\t/g, ""), this._cursor = this.rl?.cursor ?? 0, this.emit("value", this.value)), D$1();
|
|
555
|
-
}, this.input.pipe(e$1), this.rl = M.createInterface({
|
|
556
|
-
input: this.input,
|
|
557
|
-
output: e$1,
|
|
558
|
-
tabSize: 2,
|
|
559
|
-
prompt: "",
|
|
560
|
-
escapeCodeTimeout: 50
|
|
561
|
-
}), M.emitKeypressEvents(this.input, this.rl), this.rl.prompt(), this.opts.initialValue !== void 0 && this._track && this.rl.write(this.opts.initialValue), this.input.on("keypress", this.onKeypress), d$1(this.input, !0), this.output.on("resize", this.render), this.render(), this.once("submit", () => {
|
|
562
|
-
this.output.write(import_src$1.cursor.show), this.output.off("resize", this.render), d$1(this.input, !1), u$2(this.value);
|
|
563
|
-
}), this.once("cancel", () => {
|
|
564
|
-
this.output.write(import_src$1.cursor.show), this.output.off("resize", this.render), d$1(this.input, !1), u$2(S);
|
|
565
|
-
});
|
|
566
|
-
});
|
|
567
|
-
}
|
|
568
|
-
onKeypress(u$2, F$1) {
|
|
569
|
-
if (this.state === "error" && (this.state = "active"), F$1?.name && (!this._track && c$1.aliases.has(F$1.name) && this.emit("cursor", c$1.aliases.get(F$1.name)), c$1.actions.has(F$1.name) && this.emit("cursor", F$1.name)), u$2 && (u$2.toLowerCase() === "y" || u$2.toLowerCase() === "n") && this.emit("confirm", u$2.toLowerCase() === "y"), u$2 === " " && this.opts.placeholder && (this.value || (this.rl?.write(this.opts.placeholder), this.emit("value", this.opts.placeholder))), u$2 && this.emit("key", u$2.toLowerCase()), F$1?.name === "return") {
|
|
570
|
-
if (this.opts.validate) {
|
|
571
|
-
const e$1 = this.opts.validate(this.value);
|
|
572
|
-
e$1 && (this.error = e$1 instanceof Error ? e$1.message : e$1, this.state = "error", this.rl?.write(this.value));
|
|
573
|
-
}
|
|
574
|
-
this.state !== "error" && (this.state = "submit");
|
|
575
|
-
}
|
|
576
|
-
k$1([
|
|
577
|
-
u$2,
|
|
578
|
-
F$1?.name,
|
|
579
|
-
F$1?.sequence
|
|
580
|
-
], "cancel") && (this.state = "cancel"), (this.state === "submit" || this.state === "cancel") && this.emit("finalize"), this.render(), (this.state === "submit" || this.state === "cancel") && this.close();
|
|
581
|
-
}
|
|
582
|
-
close() {
|
|
583
|
-
this.input.unpipe(), this.input.removeListener("keypress", this.onKeypress), this.output.write(`
|
|
584
|
-
`), d$1(this.input, !1), this.rl?.close(), this.rl = void 0, this.emit(`${this.state}`, this.value), this.unsubscribe();
|
|
585
|
-
}
|
|
586
|
-
restoreCursor() {
|
|
587
|
-
const u$2 = G(this._prevFrame, process.stdout.columns, { hard: !0 }).split(`
|
|
588
|
-
`).length - 1;
|
|
589
|
-
this.output.write(import_src$1.cursor.move(-999, u$2 * -1));
|
|
590
|
-
}
|
|
591
|
-
render() {
|
|
592
|
-
const u$2 = G(this._render(this) ?? "", process.stdout.columns, { hard: !0 });
|
|
593
|
-
if (u$2 !== this._prevFrame) {
|
|
594
|
-
if (this.state === "initial") this.output.write(import_src$1.cursor.hide);
|
|
595
|
-
else {
|
|
596
|
-
const F$1 = lD(this._prevFrame, u$2);
|
|
597
|
-
if (this.restoreCursor(), F$1 && F$1?.length === 1) {
|
|
598
|
-
const e$1 = F$1[0];
|
|
599
|
-
this.output.write(import_src$1.cursor.move(0, e$1)), this.output.write(import_src$1.erase.lines(1));
|
|
600
|
-
const s = u$2.split(`
|
|
601
|
-
`);
|
|
602
|
-
this.output.write(s[e$1]), this._prevFrame = u$2, this.output.write(import_src$1.cursor.move(0, s.length - e$1 - 1));
|
|
603
|
-
return;
|
|
604
|
-
}
|
|
605
|
-
if (F$1 && F$1?.length > 1) {
|
|
606
|
-
const e$1 = F$1[0];
|
|
607
|
-
this.output.write(import_src$1.cursor.move(0, e$1)), this.output.write(import_src$1.erase.down());
|
|
608
|
-
const s = u$2.split(`
|
|
609
|
-
`).slice(e$1);
|
|
610
|
-
this.output.write(s.join(`
|
|
611
|
-
`)), this._prevFrame = u$2;
|
|
612
|
-
return;
|
|
613
|
-
}
|
|
614
|
-
this.output.write(import_src$1.erase.down());
|
|
615
|
-
}
|
|
616
|
-
this.output.write(u$2), this.state === "initial" && (this.state = "active"), this._prevFrame = u$2;
|
|
617
|
-
}
|
|
618
|
-
}
|
|
619
|
-
};
|
|
620
|
-
var fD = class extends x {
|
|
621
|
-
get cursor() {
|
|
622
|
-
return this.value ? 0 : 1;
|
|
623
|
-
}
|
|
624
|
-
get _value() {
|
|
625
|
-
return this.cursor === 0;
|
|
626
|
-
}
|
|
627
|
-
constructor(u$2) {
|
|
628
|
-
super(u$2, !1), this.value = !!u$2.initialValue, this.on("value", () => {
|
|
629
|
-
this.value = this._value;
|
|
630
|
-
}), this.on("confirm", (F$1) => {
|
|
631
|
-
this.output.write(import_src$1.cursor.move(0, -1)), this.value = F$1, this.state = "submit", this.close();
|
|
632
|
-
}), this.on("cursor", () => {
|
|
633
|
-
this.value = !this.value;
|
|
634
|
-
});
|
|
635
|
-
}
|
|
636
|
-
};
|
|
637
|
-
var gD = Object.defineProperty, vD = (t, u$2, F$1) => u$2 in t ? gD(t, u$2, {
|
|
638
|
-
enumerable: !0,
|
|
639
|
-
configurable: !0,
|
|
640
|
-
writable: !0,
|
|
641
|
-
value: F$1
|
|
642
|
-
}) : t[u$2] = F$1, K$1 = (t, u$2, F$1) => (vD(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
643
|
-
let dD = class extends x {
|
|
644
|
-
constructor(u$2) {
|
|
645
|
-
super(u$2, !1), K$1(this, "options"), K$1(this, "cursor", 0);
|
|
646
|
-
const { options: F$1 } = u$2;
|
|
647
|
-
this.options = Object.entries(F$1).flatMap(([e$1, s]) => [{
|
|
648
|
-
value: e$1,
|
|
649
|
-
group: !0,
|
|
650
|
-
label: e$1
|
|
651
|
-
}, ...s.map((i$1) => ({
|
|
652
|
-
...i$1,
|
|
653
|
-
group: e$1
|
|
654
|
-
}))]), this.value = [...u$2.initialValues ?? []], this.cursor = Math.max(this.options.findIndex(({ value: e$1 }) => e$1 === u$2.cursorAt), 0), this.on("cursor", (e$1) => {
|
|
655
|
-
switch (e$1) {
|
|
656
|
-
case "left":
|
|
657
|
-
case "up":
|
|
658
|
-
this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
|
|
659
|
-
break;
|
|
660
|
-
case "down":
|
|
661
|
-
case "right":
|
|
662
|
-
this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
663
|
-
break;
|
|
664
|
-
case "space":
|
|
665
|
-
this.toggleValue();
|
|
666
|
-
break;
|
|
667
|
-
}
|
|
668
|
-
});
|
|
669
|
-
}
|
|
670
|
-
getGroupItems(u$2) {
|
|
671
|
-
return this.options.filter((F$1) => F$1.group === u$2);
|
|
672
|
-
}
|
|
673
|
-
isGroupSelected(u$2) {
|
|
674
|
-
return this.getGroupItems(u$2).every((F$1) => this.value.includes(F$1.value));
|
|
675
|
-
}
|
|
676
|
-
toggleValue() {
|
|
677
|
-
const u$2 = this.options[this.cursor];
|
|
678
|
-
if (u$2.group === !0) {
|
|
679
|
-
const F$1 = u$2.value, e$1 = this.getGroupItems(F$1);
|
|
680
|
-
this.isGroupSelected(F$1) ? this.value = this.value.filter((s) => e$1.findIndex((i$1) => i$1.value === s) === -1) : this.value = [...this.value, ...e$1.map((s) => s.value)], this.value = Array.from(new Set(this.value));
|
|
681
|
-
} else this.value = this.value.includes(u$2.value) ? this.value.filter((e$1) => e$1 !== u$2.value) : [...this.value, u$2.value];
|
|
682
|
-
}
|
|
683
|
-
};
|
|
684
|
-
var bD = Object.defineProperty, mD = (t, u$2, F$1) => u$2 in t ? bD(t, u$2, {
|
|
685
|
-
enumerable: !0,
|
|
686
|
-
configurable: !0,
|
|
687
|
-
writable: !0,
|
|
688
|
-
value: F$1
|
|
689
|
-
}) : t[u$2] = F$1, Y$1 = (t, u$2, F$1) => (mD(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
690
|
-
let wD = class extends x {
|
|
691
|
-
constructor(u$2) {
|
|
692
|
-
super(u$2, !1), Y$1(this, "options"), Y$1(this, "cursor", 0), this.options = u$2.options, this.value = [...u$2.initialValues ?? []], this.cursor = Math.max(this.options.findIndex(({ value: F$1 }) => F$1 === u$2.cursorAt), 0), this.on("key", (F$1) => {
|
|
693
|
-
F$1 === "a" && this.toggleAll();
|
|
694
|
-
}), this.on("cursor", (F$1) => {
|
|
695
|
-
switch (F$1) {
|
|
696
|
-
case "left":
|
|
697
|
-
case "up":
|
|
698
|
-
this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
|
|
699
|
-
break;
|
|
700
|
-
case "down":
|
|
701
|
-
case "right":
|
|
702
|
-
this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
703
|
-
break;
|
|
704
|
-
case "space":
|
|
705
|
-
this.toggleValue();
|
|
706
|
-
break;
|
|
707
|
-
}
|
|
708
|
-
});
|
|
709
|
-
}
|
|
710
|
-
get _value() {
|
|
711
|
-
return this.options[this.cursor].value;
|
|
712
|
-
}
|
|
713
|
-
toggleAll() {
|
|
714
|
-
this.value = this.value.length === this.options.length ? [] : this.options.map((F$1) => F$1.value);
|
|
715
|
-
}
|
|
716
|
-
toggleValue() {
|
|
717
|
-
this.value = this.value.includes(this._value) ? this.value.filter((F$1) => F$1 !== this._value) : [...this.value, this._value];
|
|
718
|
-
}
|
|
719
|
-
};
|
|
720
|
-
var yD = Object.defineProperty, _D = (t, u$2, F$1) => u$2 in t ? yD(t, u$2, {
|
|
721
|
-
enumerable: !0,
|
|
722
|
-
configurable: !0,
|
|
723
|
-
writable: !0,
|
|
724
|
-
value: F$1
|
|
725
|
-
}) : t[u$2] = F$1, Z = (t, u$2, F$1) => (_D(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
726
|
-
var kD = class extends x {
|
|
727
|
-
constructor({ mask: u$2,...F$1 }) {
|
|
728
|
-
super(F$1), Z(this, "valueWithCursor", ""), Z(this, "_mask", "•"), this._mask = u$2 ?? "•", this.on("finalize", () => {
|
|
729
|
-
this.valueWithCursor = this.masked;
|
|
730
|
-
}), this.on("value", () => {
|
|
731
|
-
if (this.cursor >= this.value.length) this.valueWithCursor = `${this.masked}${import_picocolors$1.default.inverse(import_picocolors$1.default.hidden("_"))}`;
|
|
732
|
-
else {
|
|
733
|
-
const e$1 = this.masked.slice(0, this.cursor), s = this.masked.slice(this.cursor);
|
|
734
|
-
this.valueWithCursor = `${e$1}${import_picocolors$1.default.inverse(s[0])}${s.slice(1)}`;
|
|
735
|
-
}
|
|
736
|
-
});
|
|
737
|
-
}
|
|
738
|
-
get cursor() {
|
|
739
|
-
return this._cursor;
|
|
740
|
-
}
|
|
741
|
-
get masked() {
|
|
742
|
-
return this.value.replaceAll(/./g, this._mask);
|
|
743
|
-
}
|
|
744
|
-
};
|
|
745
|
-
var SD = Object.defineProperty, $D = (t, u$2, F$1) => u$2 in t ? SD(t, u$2, {
|
|
746
|
-
enumerable: !0,
|
|
747
|
-
configurable: !0,
|
|
748
|
-
writable: !0,
|
|
749
|
-
value: F$1
|
|
750
|
-
}) : t[u$2] = F$1, q$1 = (t, u$2, F$1) => ($D(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
751
|
-
var jD = class extends x {
|
|
752
|
-
constructor(u$2) {
|
|
753
|
-
super(u$2, !1), q$1(this, "options"), q$1(this, "cursor", 0), this.options = u$2.options, this.cursor = this.options.findIndex(({ value: F$1 }) => F$1 === u$2.initialValue), this.cursor === -1 && (this.cursor = 0), this.changeValue(), this.on("cursor", (F$1) => {
|
|
754
|
-
switch (F$1) {
|
|
755
|
-
case "left":
|
|
756
|
-
case "up":
|
|
757
|
-
this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
|
|
758
|
-
break;
|
|
759
|
-
case "down":
|
|
760
|
-
case "right":
|
|
761
|
-
this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
762
|
-
break;
|
|
763
|
-
}
|
|
764
|
-
this.changeValue();
|
|
765
|
-
});
|
|
766
|
-
}
|
|
767
|
-
get _value() {
|
|
768
|
-
return this.options[this.cursor];
|
|
769
|
-
}
|
|
770
|
-
changeValue() {
|
|
771
|
-
this.value = this._value.value;
|
|
772
|
-
}
|
|
773
|
-
};
|
|
774
|
-
var MD = Object.defineProperty, TD = (t, u$2, F$1) => u$2 in t ? MD(t, u$2, {
|
|
775
|
-
enumerable: !0,
|
|
776
|
-
configurable: !0,
|
|
777
|
-
writable: !0,
|
|
778
|
-
value: F$1
|
|
779
|
-
}) : t[u$2] = F$1, H = (t, u$2, F$1) => (TD(t, typeof u$2 != "symbol" ? u$2 + "" : u$2, F$1), F$1);
|
|
780
|
-
var OD = class extends x {
|
|
781
|
-
constructor(u$2) {
|
|
782
|
-
super(u$2, !1), H(this, "options"), H(this, "cursor", 0), this.options = u$2.options;
|
|
783
|
-
const F$1 = this.options.map(({ value: [e$1] }) => e$1?.toLowerCase());
|
|
784
|
-
this.cursor = Math.max(F$1.indexOf(u$2.initialValue), 0), this.on("key", (e$1) => {
|
|
785
|
-
if (!F$1.includes(e$1)) return;
|
|
786
|
-
const s = this.options.find(({ value: [i$1] }) => i$1?.toLowerCase() === e$1);
|
|
787
|
-
s && (this.value = s.value, this.state = "submit", this.emit("submit"));
|
|
788
|
-
});
|
|
789
|
-
}
|
|
790
|
-
};
|
|
791
|
-
var PD = class extends x {
|
|
792
|
-
get valueWithCursor() {
|
|
793
|
-
if (this.state === "submit") return this.value;
|
|
794
|
-
if (this.cursor >= this.value.length) return `${this.value}\u2588`;
|
|
795
|
-
const u$2 = this.value.slice(0, this.cursor), [F$1, ...e$1] = this.value.slice(this.cursor);
|
|
796
|
-
return `${u$2}${import_picocolors$1.default.inverse(F$1)}${e$1.join("")}`;
|
|
797
|
-
}
|
|
798
|
-
get cursor() {
|
|
799
|
-
return this._cursor;
|
|
800
|
-
}
|
|
801
|
-
constructor(u$2) {
|
|
802
|
-
super(u$2), this.on("finalize", () => {
|
|
803
|
-
this.value || (this.value = u$2.defaultValue);
|
|
804
|
-
});
|
|
805
|
-
}
|
|
806
|
-
};
|
|
807
|
-
|
|
808
|
-
//#endregion
|
|
809
|
-
//#region ../../node_modules/.pnpm/@clack+prompts@0.10.0/node_modules/@clack/prompts/dist/index.mjs
|
|
810
|
-
var import_picocolors = /* @__PURE__ */ __toESM(require_picocolors(), 1);
|
|
811
|
-
var import_src = /* @__PURE__ */ __toESM(require_src(), 1);
|
|
812
|
-
function ce() {
|
|
813
|
-
return g.platform !== "win32" ? g.env.TERM !== "linux" : !!g.env.CI || !!g.env.WT_SESSION || !!g.env.TERMINUS_SUBLIME || g.env.ConEmuTask === "{cmd::Cmder}" || g.env.TERM_PROGRAM === "Terminus-Sublime" || g.env.TERM_PROGRAM === "vscode" || g.env.TERM === "xterm-256color" || g.env.TERM === "alacritty" || g.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
814
|
-
}
|
|
815
|
-
const V = ce(), u$1 = (t, n$1) => V ? t : n$1, le = u$1("◆", "*"), L = u$1("■", "x"), W = u$1("▲", "x"), C = u$1("◇", "o"), ue = u$1("┌", "T"), o$1 = u$1("│", "|"), d = u$1("└", "—"), k = u$1("●", ">"), P = u$1("○", " "), A = u$1("◻", "[•]"), T = u$1("◼", "[+]"), F = u$1("◻", "[ ]"), $e = u$1("▪", "•"), _ = u$1("─", "-"), me = u$1("╮", "+"), de = u$1("├", "+"), pe = u$1("╯", "+"), q = u$1("●", "•"), D = u$1("◆", "*"), U = u$1("▲", "!"), K = u$1("■", "x"), w = (t) => {
|
|
816
|
-
switch (t) {
|
|
817
|
-
case "initial":
|
|
818
|
-
case "active": return import_picocolors.default.cyan(le);
|
|
819
|
-
case "cancel": return import_picocolors.default.red(L);
|
|
820
|
-
case "error": return import_picocolors.default.yellow(W);
|
|
821
|
-
case "submit": return import_picocolors.default.green(C);
|
|
822
|
-
}
|
|
823
|
-
}, B = (t) => {
|
|
824
|
-
const { cursor: n$1, options: s, style: r$1 } = t, i$1 = t.maxItems ?? Number.POSITIVE_INFINITY, a$1 = Math.max(process.stdout.rows - 4, 0), c$2 = Math.min(a$1, Math.max(i$1, 5));
|
|
825
|
-
let l$1 = 0;
|
|
826
|
-
n$1 >= l$1 + c$2 - 3 ? l$1 = Math.max(Math.min(n$1 - c$2 + 3, s.length - c$2), 0) : n$1 < l$1 + 2 && (l$1 = Math.max(n$1 - 2, 0));
|
|
827
|
-
const $$1 = c$2 < s.length && l$1 > 0, p$1 = c$2 < s.length && l$1 + c$2 < s.length;
|
|
828
|
-
return s.slice(l$1, l$1 + c$2).map((M$1, v$1, x$1) => {
|
|
829
|
-
const j = v$1 === 0 && $$1, E = v$1 === x$1.length - 1 && p$1;
|
|
830
|
-
return j || E ? import_picocolors.default.dim("...") : r$1(M$1, v$1 + l$1 === n$1);
|
|
831
|
-
});
|
|
832
|
-
}, he = (t) => new PD({
|
|
833
|
-
validate: t.validate,
|
|
834
|
-
placeholder: t.placeholder,
|
|
835
|
-
defaultValue: t.defaultValue,
|
|
836
|
-
initialValue: t.initialValue,
|
|
837
|
-
render() {
|
|
838
|
-
const n$1 = `${import_picocolors.default.gray(o$1)}
|
|
839
|
-
${w(this.state)} ${t.message}
|
|
840
|
-
`, s = t.placeholder ? import_picocolors.default.inverse(t.placeholder[0]) + import_picocolors.default.dim(t.placeholder.slice(1)) : import_picocolors.default.inverse(import_picocolors.default.hidden("_")), r$1 = this.value ? this.valueWithCursor : s;
|
|
841
|
-
switch (this.state) {
|
|
842
|
-
case "error": return `${n$1.trim()}
|
|
843
|
-
${import_picocolors.default.yellow(o$1)} ${r$1}
|
|
844
|
-
${import_picocolors.default.yellow(d)} ${import_picocolors.default.yellow(this.error)}
|
|
845
|
-
`;
|
|
846
|
-
case "submit": return `${n$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.dim(this.value || t.placeholder)}`;
|
|
847
|
-
case "cancel": return `${n$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.strikethrough(import_picocolors.default.dim(this.value ?? ""))}${this.value?.trim() ? `
|
|
848
|
-
${import_picocolors.default.gray(o$1)}` : ""}`;
|
|
849
|
-
default: return `${n$1}${import_picocolors.default.cyan(o$1)} ${r$1}
|
|
850
|
-
${import_picocolors.default.cyan(d)}
|
|
851
|
-
`;
|
|
852
|
-
}
|
|
853
|
-
}
|
|
854
|
-
}).prompt(), ge = (t) => new kD({
|
|
855
|
-
validate: t.validate,
|
|
856
|
-
mask: t.mask ?? $e,
|
|
857
|
-
render() {
|
|
858
|
-
const n$1 = `${import_picocolors.default.gray(o$1)}
|
|
859
|
-
${w(this.state)} ${t.message}
|
|
860
|
-
`, s = this.valueWithCursor, r$1 = this.masked;
|
|
861
|
-
switch (this.state) {
|
|
862
|
-
case "error": return `${n$1.trim()}
|
|
863
|
-
${import_picocolors.default.yellow(o$1)} ${r$1}
|
|
864
|
-
${import_picocolors.default.yellow(d)} ${import_picocolors.default.yellow(this.error)}
|
|
865
|
-
`;
|
|
866
|
-
case "submit": return `${n$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.dim(r$1)}`;
|
|
867
|
-
case "cancel": return `${n$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.strikethrough(import_picocolors.default.dim(r$1 ?? ""))}${r$1 ? `
|
|
868
|
-
${import_picocolors.default.gray(o$1)}` : ""}`;
|
|
869
|
-
default: return `${n$1}${import_picocolors.default.cyan(o$1)} ${s}
|
|
870
|
-
${import_picocolors.default.cyan(d)}
|
|
871
|
-
`;
|
|
872
|
-
}
|
|
873
|
-
}
|
|
874
|
-
}).prompt(), ye = (t) => {
|
|
875
|
-
const n$1 = t.active ?? "Yes", s = t.inactive ?? "No";
|
|
876
|
-
return new fD({
|
|
877
|
-
active: n$1,
|
|
878
|
-
inactive: s,
|
|
879
|
-
initialValue: t.initialValue ?? !0,
|
|
880
|
-
render() {
|
|
881
|
-
const r$1 = `${import_picocolors.default.gray(o$1)}
|
|
882
|
-
${w(this.state)} ${t.message}
|
|
883
|
-
`, i$1 = this.value ? n$1 : s;
|
|
884
|
-
switch (this.state) {
|
|
885
|
-
case "submit": return `${r$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.dim(i$1)}`;
|
|
886
|
-
case "cancel": return `${r$1}${import_picocolors.default.gray(o$1)} ${import_picocolors.default.strikethrough(import_picocolors.default.dim(i$1))}
|
|
887
|
-
${import_picocolors.default.gray(o$1)}`;
|
|
888
|
-
default: return `${r$1}${import_picocolors.default.cyan(o$1)} ${this.value ? `${import_picocolors.default.green(k)} ${n$1}` : `${import_picocolors.default.dim(P)} ${import_picocolors.default.dim(n$1)}`} ${import_picocolors.default.dim("/")} ${this.value ? `${import_picocolors.default.dim(P)} ${import_picocolors.default.dim(s)}` : `${import_picocolors.default.green(k)} ${s}`}
|
|
889
|
-
${import_picocolors.default.cyan(d)}
|
|
890
|
-
`;
|
|
891
|
-
}
|
|
892
|
-
}
|
|
893
|
-
}).prompt();
|
|
894
|
-
}, ve = (t) => {
|
|
895
|
-
const n$1 = (s, r$1) => {
|
|
896
|
-
const i$1 = s.label ?? String(s.value);
|
|
897
|
-
switch (r$1) {
|
|
898
|
-
case "selected": return `${import_picocolors.default.dim(i$1)}`;
|
|
899
|
-
case "active": return `${import_picocolors.default.green(k)} ${i$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}`;
|
|
900
|
-
case "cancelled": return `${import_picocolors.default.strikethrough(import_picocolors.default.dim(i$1))}`;
|
|
901
|
-
default: return `${import_picocolors.default.dim(P)} ${import_picocolors.default.dim(i$1)}`;
|
|
902
|
-
}
|
|
903
|
-
};
|
|
904
|
-
return new jD({
|
|
905
|
-
options: t.options,
|
|
906
|
-
initialValue: t.initialValue,
|
|
907
|
-
render() {
|
|
908
|
-
const s = `${import_picocolors.default.gray(o$1)}
|
|
909
|
-
${w(this.state)} ${t.message}
|
|
910
|
-
`;
|
|
911
|
-
switch (this.state) {
|
|
912
|
-
case "submit": return `${s}${import_picocolors.default.gray(o$1)} ${n$1(this.options[this.cursor], "selected")}`;
|
|
913
|
-
case "cancel": return `${s}${import_picocolors.default.gray(o$1)} ${n$1(this.options[this.cursor], "cancelled")}
|
|
914
|
-
${import_picocolors.default.gray(o$1)}`;
|
|
915
|
-
default: return `${s}${import_picocolors.default.cyan(o$1)} ${B({
|
|
916
|
-
cursor: this.cursor,
|
|
917
|
-
options: this.options,
|
|
918
|
-
maxItems: t.maxItems,
|
|
919
|
-
style: (r$1, i$1) => n$1(r$1, i$1 ? "active" : "inactive")
|
|
920
|
-
}).join(`
|
|
921
|
-
${import_picocolors.default.cyan(o$1)} `)}
|
|
922
|
-
${import_picocolors.default.cyan(d)}
|
|
923
|
-
`;
|
|
924
|
-
}
|
|
925
|
-
}
|
|
926
|
-
}).prompt();
|
|
927
|
-
}, we = (t) => {
|
|
928
|
-
const n$1 = (s, r$1 = "inactive") => {
|
|
929
|
-
const i$1 = s.label ?? String(s.value);
|
|
930
|
-
return r$1 === "selected" ? `${import_picocolors.default.dim(i$1)}` : r$1 === "cancelled" ? `${import_picocolors.default.strikethrough(import_picocolors.default.dim(i$1))}` : r$1 === "active" ? `${import_picocolors.default.bgCyan(import_picocolors.default.gray(` ${s.value} `))} ${i$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}` : `${import_picocolors.default.gray(import_picocolors.default.bgWhite(import_picocolors.default.inverse(` ${s.value} `)))} ${i$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}`;
|
|
931
|
-
};
|
|
932
|
-
return new OD({
|
|
933
|
-
options: t.options,
|
|
934
|
-
initialValue: t.initialValue,
|
|
935
|
-
render() {
|
|
936
|
-
const s = `${import_picocolors.default.gray(o$1)}
|
|
937
|
-
${w(this.state)} ${t.message}
|
|
938
|
-
`;
|
|
939
|
-
switch (this.state) {
|
|
940
|
-
case "submit": return `${s}${import_picocolors.default.gray(o$1)} ${n$1(this.options.find((r$1) => r$1.value === this.value) ?? t.options[0], "selected")}`;
|
|
941
|
-
case "cancel": return `${s}${import_picocolors.default.gray(o$1)} ${n$1(this.options[0], "cancelled")}
|
|
942
|
-
${import_picocolors.default.gray(o$1)}`;
|
|
943
|
-
default: return `${s}${import_picocolors.default.cyan(o$1)} ${this.options.map((r$1, i$1) => n$1(r$1, i$1 === this.cursor ? "active" : "inactive")).join(`
|
|
944
|
-
${import_picocolors.default.cyan(o$1)} `)}
|
|
945
|
-
${import_picocolors.default.cyan(d)}
|
|
946
|
-
`;
|
|
947
|
-
}
|
|
948
|
-
}
|
|
949
|
-
}).prompt();
|
|
950
|
-
}, fe = (t) => {
|
|
951
|
-
const n$1 = (s, r$1) => {
|
|
952
|
-
const i$1 = s.label ?? String(s.value);
|
|
953
|
-
return r$1 === "active" ? `${import_picocolors.default.cyan(A)} ${i$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}` : r$1 === "selected" ? `${import_picocolors.default.green(T)} ${import_picocolors.default.dim(i$1)}` : r$1 === "cancelled" ? `${import_picocolors.default.strikethrough(import_picocolors.default.dim(i$1))}` : r$1 === "active-selected" ? `${import_picocolors.default.green(T)} ${i$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}` : r$1 === "submitted" ? `${import_picocolors.default.dim(i$1)}` : `${import_picocolors.default.dim(F)} ${import_picocolors.default.dim(i$1)}`;
|
|
954
|
-
};
|
|
955
|
-
return new wD({
|
|
956
|
-
options: t.options,
|
|
957
|
-
initialValues: t.initialValues,
|
|
958
|
-
required: t.required ?? !0,
|
|
959
|
-
cursorAt: t.cursorAt,
|
|
960
|
-
validate(s) {
|
|
961
|
-
if (this.required && s.length === 0) return `Please select at least one option.
|
|
962
|
-
${import_picocolors.default.reset(import_picocolors.default.dim(`Press ${import_picocolors.default.gray(import_picocolors.default.bgWhite(import_picocolors.default.inverse(" space ")))} to select, ${import_picocolors.default.gray(import_picocolors.default.bgWhite(import_picocolors.default.inverse(" enter ")))} to submit`))}`;
|
|
963
|
-
},
|
|
964
|
-
render() {
|
|
965
|
-
const s = `${import_picocolors.default.gray(o$1)}
|
|
966
|
-
${w(this.state)} ${t.message}
|
|
967
|
-
`, r$1 = (i$1, a$1) => {
|
|
968
|
-
const c$2 = this.value.includes(i$1.value);
|
|
969
|
-
return a$1 && c$2 ? n$1(i$1, "active-selected") : c$2 ? n$1(i$1, "selected") : n$1(i$1, a$1 ? "active" : "inactive");
|
|
970
|
-
};
|
|
971
|
-
switch (this.state) {
|
|
972
|
-
case "submit": return `${s}${import_picocolors.default.gray(o$1)} ${this.options.filter(({ value: i$1 }) => this.value.includes(i$1)).map((i$1) => n$1(i$1, "submitted")).join(import_picocolors.default.dim(", ")) || import_picocolors.default.dim("none")}`;
|
|
973
|
-
case "cancel": {
|
|
974
|
-
const i$1 = this.options.filter(({ value: a$1 }) => this.value.includes(a$1)).map((a$1) => n$1(a$1, "cancelled")).join(import_picocolors.default.dim(", "));
|
|
975
|
-
return `${s}${import_picocolors.default.gray(o$1)} ${i$1.trim() ? `${i$1}
|
|
976
|
-
${import_picocolors.default.gray(o$1)}` : ""}`;
|
|
977
|
-
}
|
|
978
|
-
case "error": {
|
|
979
|
-
const i$1 = this.error.split(`
|
|
980
|
-
`).map((a$1, c$2) => c$2 === 0 ? `${import_picocolors.default.yellow(d)} ${import_picocolors.default.yellow(a$1)}` : ` ${a$1}`).join(`
|
|
981
|
-
`);
|
|
982
|
-
return `${s + import_picocolors.default.yellow(o$1)} ${B({
|
|
983
|
-
options: this.options,
|
|
984
|
-
cursor: this.cursor,
|
|
985
|
-
maxItems: t.maxItems,
|
|
986
|
-
style: r$1
|
|
987
|
-
}).join(`
|
|
988
|
-
${import_picocolors.default.yellow(o$1)} `)}
|
|
989
|
-
${i$1}
|
|
990
|
-
`;
|
|
991
|
-
}
|
|
992
|
-
default: return `${s}${import_picocolors.default.cyan(o$1)} ${B({
|
|
993
|
-
options: this.options,
|
|
994
|
-
cursor: this.cursor,
|
|
995
|
-
maxItems: t.maxItems,
|
|
996
|
-
style: r$1
|
|
997
|
-
}).join(`
|
|
998
|
-
${import_picocolors.default.cyan(o$1)} `)}
|
|
999
|
-
${import_picocolors.default.cyan(d)}
|
|
1000
|
-
`;
|
|
1001
|
-
}
|
|
1002
|
-
}
|
|
1003
|
-
}).prompt();
|
|
1004
|
-
}, be = (t) => {
|
|
1005
|
-
const n$1 = (s, r$1, i$1 = []) => {
|
|
1006
|
-
const a$1 = s.label ?? String(s.value), c$2 = typeof s.group == "string", l$1 = c$2 && (i$1[i$1.indexOf(s) + 1] ?? { group: !0 }), $$1 = c$2 && l$1.group === !0, p$1 = c$2 ? `${$$1 ? d : o$1} ` : "";
|
|
1007
|
-
return r$1 === "active" ? `${import_picocolors.default.dim(p$1)}${import_picocolors.default.cyan(A)} ${a$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}` : r$1 === "group-active" ? `${p$1}${import_picocolors.default.cyan(A)} ${import_picocolors.default.dim(a$1)}` : r$1 === "group-active-selected" ? `${p$1}${import_picocolors.default.green(T)} ${import_picocolors.default.dim(a$1)}` : r$1 === "selected" ? `${import_picocolors.default.dim(p$1)}${import_picocolors.default.green(T)} ${import_picocolors.default.dim(a$1)}` : r$1 === "cancelled" ? `${import_picocolors.default.strikethrough(import_picocolors.default.dim(a$1))}` : r$1 === "active-selected" ? `${import_picocolors.default.dim(p$1)}${import_picocolors.default.green(T)} ${a$1} ${s.hint ? import_picocolors.default.dim(`(${s.hint})`) : ""}` : r$1 === "submitted" ? `${import_picocolors.default.dim(a$1)}` : `${import_picocolors.default.dim(p$1)}${import_picocolors.default.dim(F)} ${import_picocolors.default.dim(a$1)}`;
|
|
1008
|
-
};
|
|
1009
|
-
return new dD({
|
|
1010
|
-
options: t.options,
|
|
1011
|
-
initialValues: t.initialValues,
|
|
1012
|
-
required: t.required ?? !0,
|
|
1013
|
-
cursorAt: t.cursorAt,
|
|
1014
|
-
validate(s) {
|
|
1015
|
-
if (this.required && s.length === 0) return `Please select at least one option.
|
|
1016
|
-
${import_picocolors.default.reset(import_picocolors.default.dim(`Press ${import_picocolors.default.gray(import_picocolors.default.bgWhite(import_picocolors.default.inverse(" space ")))} to select, ${import_picocolors.default.gray(import_picocolors.default.bgWhite(import_picocolors.default.inverse(" enter ")))} to submit`))}`;
|
|
1017
|
-
},
|
|
1018
|
-
render() {
|
|
1019
|
-
const s = `${import_picocolors.default.gray(o$1)}
|
|
1020
|
-
${w(this.state)} ${t.message}
|
|
1021
|
-
`;
|
|
1022
|
-
switch (this.state) {
|
|
1023
|
-
case "submit": return `${s}${import_picocolors.default.gray(o$1)} ${this.options.filter(({ value: r$1 }) => this.value.includes(r$1)).map((r$1) => n$1(r$1, "submitted")).join(import_picocolors.default.dim(", "))}`;
|
|
1024
|
-
case "cancel": {
|
|
1025
|
-
const r$1 = this.options.filter(({ value: i$1 }) => this.value.includes(i$1)).map((i$1) => n$1(i$1, "cancelled")).join(import_picocolors.default.dim(", "));
|
|
1026
|
-
return `${s}${import_picocolors.default.gray(o$1)} ${r$1.trim() ? `${r$1}
|
|
1027
|
-
${import_picocolors.default.gray(o$1)}` : ""}`;
|
|
1028
|
-
}
|
|
1029
|
-
case "error": {
|
|
1030
|
-
const r$1 = this.error.split(`
|
|
1031
|
-
`).map((i$1, a$1) => a$1 === 0 ? `${import_picocolors.default.yellow(d)} ${import_picocolors.default.yellow(i$1)}` : ` ${i$1}`).join(`
|
|
1032
|
-
`);
|
|
1033
|
-
return `${s}${import_picocolors.default.yellow(o$1)} ${this.options.map((i$1, a$1, c$2) => {
|
|
1034
|
-
const l$1 = this.value.includes(i$1.value) || i$1.group === !0 && this.isGroupSelected(`${i$1.value}`), $$1 = a$1 === this.cursor;
|
|
1035
|
-
return !$$1 && typeof i$1.group == "string" && this.options[this.cursor].value === i$1.group ? n$1(i$1, l$1 ? "group-active-selected" : "group-active", c$2) : $$1 && l$1 ? n$1(i$1, "active-selected", c$2) : l$1 ? n$1(i$1, "selected", c$2) : n$1(i$1, $$1 ? "active" : "inactive", c$2);
|
|
1036
|
-
}).join(`
|
|
1037
|
-
${import_picocolors.default.yellow(o$1)} `)}
|
|
1038
|
-
${r$1}
|
|
1039
|
-
`;
|
|
1040
|
-
}
|
|
1041
|
-
default: return `${s}${import_picocolors.default.cyan(o$1)} ${this.options.map((r$1, i$1, a$1) => {
|
|
1042
|
-
const c$2 = this.value.includes(r$1.value) || r$1.group === !0 && this.isGroupSelected(`${r$1.value}`), l$1 = i$1 === this.cursor;
|
|
1043
|
-
return !l$1 && typeof r$1.group == "string" && this.options[this.cursor].value === r$1.group ? n$1(r$1, c$2 ? "group-active-selected" : "group-active", a$1) : l$1 && c$2 ? n$1(r$1, "active-selected", a$1) : c$2 ? n$1(r$1, "selected", a$1) : n$1(r$1, l$1 ? "active" : "inactive", a$1);
|
|
1044
|
-
}).join(`
|
|
1045
|
-
${import_picocolors.default.cyan(o$1)} `)}
|
|
1046
|
-
${import_picocolors.default.cyan(d)}
|
|
1047
|
-
`;
|
|
1048
|
-
}
|
|
1049
|
-
}
|
|
1050
|
-
}).prompt();
|
|
1051
|
-
}, Me = (t = "", n$1 = "") => {
|
|
1052
|
-
const s = `
|
|
1053
|
-
${t}
|
|
1054
|
-
`.split(`
|
|
1055
|
-
`), r$1 = stripVTControlCharacters(n$1).length, i$1 = Math.max(s.reduce((c$2, l$1) => {
|
|
1056
|
-
const $$1 = stripVTControlCharacters(l$1);
|
|
1057
|
-
return $$1.length > c$2 ? $$1.length : c$2;
|
|
1058
|
-
}, 0), r$1) + 2, a$1 = s.map((c$2) => `${import_picocolors.default.gray(o$1)} ${import_picocolors.default.dim(c$2)}${" ".repeat(i$1 - stripVTControlCharacters(c$2).length)}${import_picocolors.default.gray(o$1)}`).join(`
|
|
1059
|
-
`);
|
|
1060
|
-
process.stdout.write(`${import_picocolors.default.gray(o$1)}
|
|
1061
|
-
${import_picocolors.default.green(C)} ${import_picocolors.default.reset(n$1)} ${import_picocolors.default.gray(_.repeat(Math.max(i$1 - r$1 - 1, 1)) + me)}
|
|
1062
|
-
${a$1}
|
|
1063
|
-
${import_picocolors.default.gray(de + _.repeat(i$1 + 2) + pe)}
|
|
1064
|
-
`);
|
|
1065
|
-
}, xe = (t = "") => {
|
|
1066
|
-
process.stdout.write(`${import_picocolors.default.gray(d)} ${import_picocolors.default.red(t)}
|
|
1067
|
-
|
|
1068
|
-
`);
|
|
1069
|
-
}, Ie = (t = "") => {
|
|
1070
|
-
process.stdout.write(`${import_picocolors.default.gray(ue)} ${t}
|
|
1071
|
-
`);
|
|
1072
|
-
}, Se = (t = "") => {
|
|
1073
|
-
process.stdout.write(`${import_picocolors.default.gray(o$1)}
|
|
1074
|
-
${import_picocolors.default.gray(d)} ${t}
|
|
1075
|
-
|
|
1076
|
-
`);
|
|
1077
|
-
}, f = {
|
|
1078
|
-
message: (t = "", { symbol: n$1 = import_picocolors.default.gray(o$1) } = {}) => {
|
|
1079
|
-
const s = [`${import_picocolors.default.gray(o$1)}`];
|
|
1080
|
-
if (t) {
|
|
1081
|
-
const [r$1, ...i$1] = t.split(`
|
|
1082
|
-
`);
|
|
1083
|
-
s.push(`${n$1} ${r$1}`, ...i$1.map((a$1) => `${import_picocolors.default.gray(o$1)} ${a$1}`));
|
|
1084
|
-
}
|
|
1085
|
-
process.stdout.write(`${s.join(`
|
|
1086
|
-
`)}
|
|
1087
|
-
`);
|
|
1088
|
-
},
|
|
1089
|
-
info: (t) => {
|
|
1090
|
-
f.message(t, { symbol: import_picocolors.default.blue(q) });
|
|
1091
|
-
},
|
|
1092
|
-
success: (t) => {
|
|
1093
|
-
f.message(t, { symbol: import_picocolors.default.green(D) });
|
|
1094
|
-
},
|
|
1095
|
-
step: (t) => {
|
|
1096
|
-
f.message(t, { symbol: import_picocolors.default.green(C) });
|
|
1097
|
-
},
|
|
1098
|
-
warn: (t) => {
|
|
1099
|
-
f.message(t, { symbol: import_picocolors.default.yellow(U) });
|
|
1100
|
-
},
|
|
1101
|
-
warning: (t) => {
|
|
1102
|
-
f.warn(t);
|
|
1103
|
-
},
|
|
1104
|
-
error: (t) => {
|
|
1105
|
-
f.message(t, { symbol: import_picocolors.default.red(K) });
|
|
1106
|
-
}
|
|
1107
|
-
}, J = `${import_picocolors.default.gray(o$1)} `, b = {
|
|
1108
|
-
message: async (t, { symbol: n$1 = import_picocolors.default.gray(o$1) } = {}) => {
|
|
1109
|
-
process.stdout.write(`${import_picocolors.default.gray(o$1)}
|
|
1110
|
-
${n$1} `);
|
|
1111
|
-
let s = 3;
|
|
1112
|
-
for await (let r$1 of t) {
|
|
1113
|
-
r$1 = r$1.replace(/\n/g, `
|
|
1114
|
-
${J}`), r$1.includes(`
|
|
1115
|
-
`) && (s = 3 + stripVTControlCharacters(r$1.slice(r$1.lastIndexOf(`
|
|
1116
|
-
`))).length);
|
|
1117
|
-
const i$1 = stripVTControlCharacters(r$1).length;
|
|
1118
|
-
s + i$1 < process.stdout.columns ? (s += i$1, process.stdout.write(r$1)) : (process.stdout.write(`
|
|
1119
|
-
${J}${r$1.trimStart()}`), s = 3 + stripVTControlCharacters(r$1.trimStart()).length);
|
|
1120
|
-
}
|
|
1121
|
-
process.stdout.write(`
|
|
1122
|
-
`);
|
|
1123
|
-
},
|
|
1124
|
-
info: (t) => b.message(t, { symbol: import_picocolors.default.blue(q) }),
|
|
1125
|
-
success: (t) => b.message(t, { symbol: import_picocolors.default.green(D) }),
|
|
1126
|
-
step: (t) => b.message(t, { symbol: import_picocolors.default.green(C) }),
|
|
1127
|
-
warn: (t) => b.message(t, { symbol: import_picocolors.default.yellow(U) }),
|
|
1128
|
-
warning: (t) => b.warn(t),
|
|
1129
|
-
error: (t) => b.message(t, { symbol: import_picocolors.default.red(K) })
|
|
1130
|
-
}, Y = ({ indicator: t = "dots" } = {}) => {
|
|
1131
|
-
const n$1 = V ? [
|
|
1132
|
-
"◒",
|
|
1133
|
-
"◐",
|
|
1134
|
-
"◓",
|
|
1135
|
-
"◑"
|
|
1136
|
-
] : [
|
|
1137
|
-
"•",
|
|
1138
|
-
"o",
|
|
1139
|
-
"O",
|
|
1140
|
-
"0"
|
|
1141
|
-
], s = V ? 80 : 120, r$1 = process.env.CI === "true";
|
|
1142
|
-
let i$1, a$1, c$2 = !1, l$1 = "", $$1, p$1 = performance.now();
|
|
1143
|
-
const M$1 = (m$1) => {
|
|
1144
|
-
c$2 && N$1(m$1 > 1 ? "Something went wrong" : "Canceled", m$1);
|
|
1145
|
-
}, v$1 = () => M$1(2), x$1 = () => M$1(1), j = () => {
|
|
1146
|
-
process.on("uncaughtExceptionMonitor", v$1), process.on("unhandledRejection", v$1), process.on("SIGINT", x$1), process.on("SIGTERM", x$1), process.on("exit", M$1);
|
|
1147
|
-
}, E = () => {
|
|
1148
|
-
process.removeListener("uncaughtExceptionMonitor", v$1), process.removeListener("unhandledRejection", v$1), process.removeListener("SIGINT", x$1), process.removeListener("SIGTERM", x$1), process.removeListener("exit", M$1);
|
|
1149
|
-
}, O$1 = () => {
|
|
1150
|
-
if ($$1 === void 0) return;
|
|
1151
|
-
r$1 && process.stdout.write(`
|
|
1152
|
-
`);
|
|
1153
|
-
const m$1 = $$1.split(`
|
|
1154
|
-
`);
|
|
1155
|
-
process.stdout.write(import_src.cursor.move(-999, m$1.length - 1)), process.stdout.write(import_src.erase.down(m$1.length));
|
|
1156
|
-
}, R$1 = (m$1) => m$1.replace(/\.+$/, ""), G$1 = (m$1) => {
|
|
1157
|
-
const h$2 = (performance.now() - m$1) / 1e3, y$1 = Math.floor(h$2 / 60), I$1 = Math.floor(h$2 % 60);
|
|
1158
|
-
return y$1 > 0 ? `[${y$1}m ${I$1}s]` : `[${I$1}s]`;
|
|
1159
|
-
}, H$1 = (m$1 = "") => {
|
|
1160
|
-
c$2 = !0, i$1 = cD(), l$1 = R$1(m$1), p$1 = performance.now(), process.stdout.write(`${import_picocolors.default.gray(o$1)}
|
|
1161
|
-
`);
|
|
1162
|
-
let h$2 = 0, y$1 = 0;
|
|
1163
|
-
j(), a$1 = setInterval(() => {
|
|
1164
|
-
if (r$1 && l$1 === $$1) return;
|
|
1165
|
-
O$1(), $$1 = l$1;
|
|
1166
|
-
const I$1 = import_picocolors.default.magenta(n$1[h$2]);
|
|
1167
|
-
if (r$1) process.stdout.write(`${I$1} ${l$1}...`);
|
|
1168
|
-
else if (t === "timer") process.stdout.write(`${I$1} ${l$1} ${G$1(p$1)}`);
|
|
1169
|
-
else {
|
|
1170
|
-
const z$1 = ".".repeat(Math.floor(y$1)).slice(0, 3);
|
|
1171
|
-
process.stdout.write(`${I$1} ${l$1}${z$1}`);
|
|
1172
|
-
}
|
|
1173
|
-
h$2 = h$2 + 1 < n$1.length ? h$2 + 1 : 0, y$1 = y$1 < n$1.length ? y$1 + .125 : 0;
|
|
1174
|
-
}, s);
|
|
1175
|
-
}, N$1 = (m$1 = "", h$2 = 0) => {
|
|
1176
|
-
c$2 = !1, clearInterval(a$1), O$1();
|
|
1177
|
-
const y$1 = h$2 === 0 ? import_picocolors.default.green(C) : h$2 === 1 ? import_picocolors.default.red(L) : import_picocolors.default.red(W);
|
|
1178
|
-
l$1 = R$1(m$1 ?? l$1), t === "timer" ? process.stdout.write(`${y$1} ${l$1} ${G$1(p$1)}
|
|
1179
|
-
`) : process.stdout.write(`${y$1} ${l$1}
|
|
1180
|
-
`), E(), i$1();
|
|
1181
|
-
};
|
|
1182
|
-
return {
|
|
1183
|
-
start: H$1,
|
|
1184
|
-
stop: N$1,
|
|
1185
|
-
message: (m$1 = "") => {
|
|
1186
|
-
l$1 = R$1(m$1 ?? l$1);
|
|
1187
|
-
}
|
|
1188
|
-
};
|
|
1189
|
-
}, Ce = async (t, n$1) => {
|
|
1190
|
-
const s = {}, r$1 = Object.keys(t);
|
|
1191
|
-
for (const i$1 of r$1) {
|
|
1192
|
-
const a$1 = t[i$1], c$2 = await a$1({ results: s })?.catch((l$1) => {
|
|
1193
|
-
throw l$1;
|
|
1194
|
-
});
|
|
1195
|
-
if (typeof n$1?.onCancel == "function" && BD(c$2)) {
|
|
1196
|
-
s[i$1] = "canceled", n$1.onCancel({ results: s });
|
|
1197
|
-
continue;
|
|
1198
|
-
}
|
|
1199
|
-
s[i$1] = c$2;
|
|
1200
|
-
}
|
|
1201
|
-
return s;
|
|
1202
|
-
}, Te = async (t) => {
|
|
1203
|
-
for (const n$1 of t) {
|
|
1204
|
-
if (n$1.enabled === !1) continue;
|
|
1205
|
-
const s = Y();
|
|
1206
|
-
s.start(n$1.title);
|
|
1207
|
-
const r$1 = await n$1.task(s.message);
|
|
1208
|
-
s.stop(r$1 || n$1.title);
|
|
1209
|
-
}
|
|
1210
|
-
};
|
|
1211
|
-
|
|
1212
47
|
//#endregion
|
|
1213
48
|
//#region ../../node_modules/.pnpm/es-toolkit@1.32.0/node_modules/es-toolkit/dist/_internal/compareValues.mjs
|
|
1214
|
-
function compareValues(a$1, b
|
|
1215
|
-
if (a$1 < b
|
|
1216
|
-
if (a$1 > b
|
|
49
|
+
function compareValues(a$1, b, order) {
|
|
50
|
+
if (a$1 < b) return order === "asc" ? -1 : 1;
|
|
51
|
+
if (a$1 > b) return order === "asc" ? 1 : -1;
|
|
1217
52
|
return 0;
|
|
1218
53
|
}
|
|
1219
54
|
|
|
1220
55
|
//#endregion
|
|
1221
56
|
//#region ../../node_modules/.pnpm/es-toolkit@1.32.0/node_modules/es-toolkit/dist/array/orderBy.mjs
|
|
1222
57
|
function orderBy(arr, criteria, orders) {
|
|
1223
|
-
return arr.slice().sort((a$1, b
|
|
58
|
+
return arr.slice().sort((a$1, b) => {
|
|
1224
59
|
const ordersLength = orders.length;
|
|
1225
60
|
for (let i$1 = 0; i$1 < criteria.length; i$1++) {
|
|
1226
61
|
const order = ordersLength > i$1 ? orders[i$1] : orders[ordersLength - 1];
|
|
1227
62
|
const criterion = criteria[i$1];
|
|
1228
63
|
const criterionIsFunction = typeof criterion === "function";
|
|
1229
|
-
const result = compareValues(criterionIsFunction ? criterion(a$1) : a$1[criterion], criterionIsFunction ? criterion(b
|
|
64
|
+
const result = compareValues(criterionIsFunction ? criterion(a$1) : a$1[criterion], criterionIsFunction ? criterion(b) : b[criterion], order);
|
|
1230
65
|
if (result !== 0) return result;
|
|
1231
66
|
}
|
|
1232
67
|
return 0;
|
|
@@ -1245,7 +80,7 @@ function uniqWith(arr, areItemsEqual) {
|
|
|
1245
80
|
const result = [];
|
|
1246
81
|
for (let i$1 = 0; i$1 < arr.length; i$1++) {
|
|
1247
82
|
const item = arr[i$1];
|
|
1248
|
-
if (result.every((v
|
|
83
|
+
if (result.every((v) => !areItemsEqual(v, item))) result.push(item);
|
|
1249
84
|
}
|
|
1250
85
|
return result;
|
|
1251
86
|
}
|
|
@@ -1330,60 +165,60 @@ function eq(value, other) {
|
|
|
1330
165
|
|
|
1331
166
|
//#endregion
|
|
1332
167
|
//#region ../../node_modules/.pnpm/es-toolkit@1.32.0/node_modules/es-toolkit/dist/predicate/isEqualWith.mjs
|
|
1333
|
-
function isEqualWith(a$1, b
|
|
1334
|
-
return isEqualWithImpl(a$1, b
|
|
168
|
+
function isEqualWith(a$1, b, areValuesEqual) {
|
|
169
|
+
return isEqualWithImpl(a$1, b, void 0, void 0, void 0, void 0, areValuesEqual);
|
|
1335
170
|
}
|
|
1336
|
-
function isEqualWithImpl(a$1, b
|
|
1337
|
-
const result = areValuesEqual(a$1, b
|
|
171
|
+
function isEqualWithImpl(a$1, b, property, aParent, bParent, stack, areValuesEqual) {
|
|
172
|
+
const result = areValuesEqual(a$1, b, property, aParent, bParent, stack);
|
|
1338
173
|
if (result !== void 0) return result;
|
|
1339
|
-
if (typeof a$1 === typeof b
|
|
174
|
+
if (typeof a$1 === typeof b) switch (typeof a$1) {
|
|
1340
175
|
case "bigint":
|
|
1341
176
|
case "string":
|
|
1342
177
|
case "boolean":
|
|
1343
178
|
case "symbol":
|
|
1344
|
-
case "undefined": return a$1 === b
|
|
1345
|
-
case "number": return a$1 === b
|
|
1346
|
-
case "function": return a$1 === b
|
|
1347
|
-
case "object": return areObjectsEqual(a$1, b
|
|
179
|
+
case "undefined": return a$1 === b;
|
|
180
|
+
case "number": return a$1 === b || Object.is(a$1, b);
|
|
181
|
+
case "function": return a$1 === b;
|
|
182
|
+
case "object": return areObjectsEqual(a$1, b, stack, areValuesEqual);
|
|
1348
183
|
}
|
|
1349
|
-
return areObjectsEqual(a$1, b
|
|
184
|
+
return areObjectsEqual(a$1, b, stack, areValuesEqual);
|
|
1350
185
|
}
|
|
1351
|
-
function areObjectsEqual(a$1, b
|
|
1352
|
-
if (Object.is(a$1, b
|
|
186
|
+
function areObjectsEqual(a$1, b, stack, areValuesEqual) {
|
|
187
|
+
if (Object.is(a$1, b)) return true;
|
|
1353
188
|
let aTag = getTag(a$1);
|
|
1354
|
-
let bTag = getTag(b
|
|
189
|
+
let bTag = getTag(b);
|
|
1355
190
|
if (aTag === argumentsTag) aTag = objectTag;
|
|
1356
191
|
if (bTag === argumentsTag) bTag = objectTag;
|
|
1357
192
|
if (aTag !== bTag) return false;
|
|
1358
193
|
switch (aTag) {
|
|
1359
|
-
case stringTag: return a$1.toString() === b
|
|
1360
|
-
case numberTag: return eq(a$1.valueOf(), b
|
|
194
|
+
case stringTag: return a$1.toString() === b.toString();
|
|
195
|
+
case numberTag: return eq(a$1.valueOf(), b.valueOf());
|
|
1361
196
|
case booleanTag:
|
|
1362
197
|
case dateTag:
|
|
1363
|
-
case symbolTag: return Object.is(a$1.valueOf(), b
|
|
1364
|
-
case regexpTag: return a$1.source === b
|
|
1365
|
-
case functionTag: return a$1 === b
|
|
198
|
+
case symbolTag: return Object.is(a$1.valueOf(), b.valueOf());
|
|
199
|
+
case regexpTag: return a$1.source === b.source && a$1.flags === b.flags;
|
|
200
|
+
case functionTag: return a$1 === b;
|
|
1366
201
|
}
|
|
1367
202
|
stack = stack ?? /* @__PURE__ */ new Map();
|
|
1368
203
|
const aStack = stack.get(a$1);
|
|
1369
|
-
const bStack = stack.get(b
|
|
1370
|
-
if (aStack != null && bStack != null) return aStack === b
|
|
1371
|
-
stack.set(a$1, b
|
|
1372
|
-
stack.set(b
|
|
204
|
+
const bStack = stack.get(b);
|
|
205
|
+
if (aStack != null && bStack != null) return aStack === b;
|
|
206
|
+
stack.set(a$1, b);
|
|
207
|
+
stack.set(b, a$1);
|
|
1373
208
|
try {
|
|
1374
209
|
switch (aTag) {
|
|
1375
210
|
case mapTag:
|
|
1376
|
-
if (a$1.size !== b
|
|
1377
|
-
for (const [key, value] of a$1.entries()) if (!b
|
|
211
|
+
if (a$1.size !== b.size) return false;
|
|
212
|
+
for (const [key, value] of a$1.entries()) if (!b.has(key) || !isEqualWithImpl(value, b.get(key), key, a$1, b, stack, areValuesEqual)) return false;
|
|
1378
213
|
return true;
|
|
1379
214
|
case setTag: {
|
|
1380
|
-
if (a$1.size !== b
|
|
215
|
+
if (a$1.size !== b.size) return false;
|
|
1381
216
|
const aValues = Array.from(a$1.values());
|
|
1382
|
-
const bValues = Array.from(b
|
|
217
|
+
const bValues = Array.from(b.values());
|
|
1383
218
|
for (let i$1 = 0; i$1 < aValues.length; i$1++) {
|
|
1384
219
|
const aValue = aValues[i$1];
|
|
1385
220
|
const index = bValues.findIndex((bValue) => {
|
|
1386
|
-
return isEqualWithImpl(aValue, bValue, void 0, a$1, b
|
|
221
|
+
return isEqualWithImpl(aValue, bValue, void 0, a$1, b, stack, areValuesEqual);
|
|
1387
222
|
});
|
|
1388
223
|
if (index === -1) return false;
|
|
1389
224
|
bValues.splice(index, 1);
|
|
@@ -1402,28 +237,28 @@ function areObjectsEqual(a$1, b$2, stack, areValuesEqual) {
|
|
|
1402
237
|
case bigInt64ArrayTag:
|
|
1403
238
|
case float32ArrayTag:
|
|
1404
239
|
case float64ArrayTag:
|
|
1405
|
-
if (typeof Buffer !== "undefined" && Buffer.isBuffer(a$1) !== Buffer.isBuffer(b
|
|
1406
|
-
if (a$1.length !== b
|
|
1407
|
-
for (let i$1 = 0; i$1 < a$1.length; i$1++) if (!isEqualWithImpl(a$1[i$1], b
|
|
240
|
+
if (typeof Buffer !== "undefined" && Buffer.isBuffer(a$1) !== Buffer.isBuffer(b)) return false;
|
|
241
|
+
if (a$1.length !== b.length) return false;
|
|
242
|
+
for (let i$1 = 0; i$1 < a$1.length; i$1++) if (!isEqualWithImpl(a$1[i$1], b[i$1], i$1, a$1, b, stack, areValuesEqual)) return false;
|
|
1408
243
|
return true;
|
|
1409
244
|
case arrayBufferTag:
|
|
1410
|
-
if (a$1.byteLength !== b
|
|
1411
|
-
return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b
|
|
245
|
+
if (a$1.byteLength !== b.byteLength) return false;
|
|
246
|
+
return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b), stack, areValuesEqual);
|
|
1412
247
|
case dataViewTag:
|
|
1413
|
-
if (a$1.byteLength !== b
|
|
1414
|
-
return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b
|
|
1415
|
-
case errorTag: return a$1.name === b
|
|
248
|
+
if (a$1.byteLength !== b.byteLength || a$1.byteOffset !== b.byteOffset) return false;
|
|
249
|
+
return areObjectsEqual(new Uint8Array(a$1), new Uint8Array(b), stack, areValuesEqual);
|
|
250
|
+
case errorTag: return a$1.name === b.name && a$1.message === b.message;
|
|
1416
251
|
case objectTag: {
|
|
1417
|
-
if (!(areObjectsEqual(a$1.constructor, b
|
|
252
|
+
if (!(areObjectsEqual(a$1.constructor, b.constructor, stack, areValuesEqual) || isPlainObject$1(a$1) && isPlainObject$1(b))) return false;
|
|
1418
253
|
const aKeys = [...Object.keys(a$1), ...getSymbols(a$1)];
|
|
1419
|
-
const bKeys = [...Object.keys(b
|
|
254
|
+
const bKeys = [...Object.keys(b), ...getSymbols(b)];
|
|
1420
255
|
if (aKeys.length !== bKeys.length) return false;
|
|
1421
256
|
for (let i$1 = 0; i$1 < aKeys.length; i$1++) {
|
|
1422
257
|
const propKey = aKeys[i$1];
|
|
1423
258
|
const aProp = a$1[propKey];
|
|
1424
|
-
if (!Object.hasOwn(b
|
|
1425
|
-
const bProp = b
|
|
1426
|
-
if (!isEqualWithImpl(aProp, bProp, propKey, a$1, b
|
|
259
|
+
if (!Object.hasOwn(b, propKey)) return false;
|
|
260
|
+
const bProp = b[propKey];
|
|
261
|
+
if (!isEqualWithImpl(aProp, bProp, propKey, a$1, b, stack, areValuesEqual)) return false;
|
|
1427
262
|
}
|
|
1428
263
|
return true;
|
|
1429
264
|
}
|
|
@@ -1431,14 +266,14 @@ function areObjectsEqual(a$1, b$2, stack, areValuesEqual) {
|
|
|
1431
266
|
}
|
|
1432
267
|
} finally {
|
|
1433
268
|
stack.delete(a$1);
|
|
1434
|
-
stack.delete(b
|
|
269
|
+
stack.delete(b);
|
|
1435
270
|
}
|
|
1436
271
|
}
|
|
1437
272
|
|
|
1438
273
|
//#endregion
|
|
1439
274
|
//#region ../../node_modules/.pnpm/es-toolkit@1.32.0/node_modules/es-toolkit/dist/predicate/isEqual.mjs
|
|
1440
|
-
function isEqual(a$1, b
|
|
1441
|
-
return isEqualWith(a$1, b
|
|
275
|
+
function isEqual(a$1, b) {
|
|
276
|
+
return isEqualWith(a$1, b, noop$2);
|
|
1442
277
|
}
|
|
1443
278
|
|
|
1444
279
|
//#endregion
|
|
@@ -1600,20 +435,20 @@ const parseExpression = (expression) => {
|
|
|
1600
435
|
if (expression instanceof ChildProcess || Object.prototype.toString.call(expression) === "[object Promise]") throw new TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");
|
|
1601
436
|
throw new TypeError(`Unexpected "${typeOfExpression}" in template expression`);
|
|
1602
437
|
};
|
|
1603
|
-
const getSubprocessResult = ({ stdout
|
|
1604
|
-
if (typeof stdout
|
|
1605
|
-
if (isUint8Array(stdout
|
|
1606
|
-
if (stdout
|
|
1607
|
-
throw new TypeError(`Unexpected "${typeof stdout
|
|
438
|
+
const getSubprocessResult = ({ stdout }) => {
|
|
439
|
+
if (typeof stdout === "string") return stdout;
|
|
440
|
+
if (isUint8Array(stdout)) return uint8ArrayToString(stdout);
|
|
441
|
+
if (stdout === void 0) throw new TypeError("Missing result.stdout in template expression. This is probably due to the previous subprocess' \"stdout\" option.");
|
|
442
|
+
throw new TypeError(`Unexpected "${typeof stdout}" stdout in template expression`);
|
|
1608
443
|
};
|
|
1609
444
|
|
|
1610
445
|
//#endregion
|
|
1611
446
|
//#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/utils/standard-stream.js
|
|
1612
447
|
const isStandardStream = (stream) => STANDARD_STREAMS.includes(stream);
|
|
1613
448
|
const STANDARD_STREAMS = [
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
449
|
+
process$1.stdin,
|
|
450
|
+
process$1.stdout,
|
|
451
|
+
process$1.stderr
|
|
1617
452
|
];
|
|
1618
453
|
const STANDARD_STREAMS_ALIASES = [
|
|
1619
454
|
"stdin",
|
|
@@ -1738,10 +573,10 @@ const NO_ESCAPE_REGEXP = /^[\w./-]+$/;
|
|
|
1738
573
|
//#endregion
|
|
1739
574
|
//#region ../../node_modules/.pnpm/is-unicode-supported@2.1.0/node_modules/is-unicode-supported/index.js
|
|
1740
575
|
function isUnicodeSupported() {
|
|
1741
|
-
const { env
|
|
1742
|
-
const { TERM, TERM_PROGRAM } = env
|
|
1743
|
-
if (
|
|
1744
|
-
return Boolean(env
|
|
576
|
+
const { env } = process$1;
|
|
577
|
+
const { TERM, TERM_PROGRAM } = env;
|
|
578
|
+
if (process$1.platform !== "win32") return TERM !== "linux";
|
|
579
|
+
return Boolean(env.WT_SESSION) || Boolean(env.TERMINUS_SUBLIME) || env.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
1745
580
|
}
|
|
1746
581
|
|
|
1747
582
|
//#endregion
|
|
@@ -2281,11 +1116,11 @@ var require_mode = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm/isexe@
|
|
|
2281
1116
|
var gid = stat.gid;
|
|
2282
1117
|
var myUid = options.uid !== void 0 ? options.uid : process.getuid && process.getuid();
|
|
2283
1118
|
var myGid = options.gid !== void 0 ? options.gid : process.getgid && process.getgid();
|
|
2284
|
-
var u$
|
|
2285
|
-
var g
|
|
2286
|
-
var o$
|
|
2287
|
-
var ug = u$
|
|
2288
|
-
return mod & o$
|
|
1119
|
+
var u$1 = parseInt("100", 8);
|
|
1120
|
+
var g = parseInt("010", 8);
|
|
1121
|
+
var o$1 = parseInt("001", 8);
|
|
1122
|
+
var ug = u$1 | g;
|
|
1123
|
+
return mod & o$1 || mod & g && gid === myGid || mod & u$1 && uid === myUid || mod & ug && myUid === 0;
|
|
2289
1124
|
}
|
|
2290
1125
|
}) });
|
|
2291
1126
|
|
|
@@ -2424,7 +1259,7 @@ var require_resolveCommand = /* @__PURE__ */ __commonJS({ "../../node_modules/.p
|
|
|
2424
1259
|
const which = require_which();
|
|
2425
1260
|
const getPathKey = require_path_key();
|
|
2426
1261
|
function resolveCommandAttempt(parsed, withoutPathExt) {
|
|
2427
|
-
const env
|
|
1262
|
+
const env = parsed.options.env || process.env;
|
|
2428
1263
|
const cwd = process.cwd();
|
|
2429
1264
|
const hasCustomCwd = parsed.options.cwd != null;
|
|
2430
1265
|
const shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled;
|
|
@@ -2434,10 +1269,10 @@ var require_resolveCommand = /* @__PURE__ */ __commonJS({ "../../node_modules/.p
|
|
|
2434
1269
|
let resolved;
|
|
2435
1270
|
try {
|
|
2436
1271
|
resolved = which.sync(parsed.command, {
|
|
2437
|
-
path: env
|
|
1272
|
+
path: env[getPathKey({ env })],
|
|
2438
1273
|
pathExt: withoutPathExt ? path$3.delimiter : void 0
|
|
2439
1274
|
});
|
|
2440
|
-
} catch (e
|
|
1275
|
+
} catch (e) {} finally {
|
|
2441
1276
|
if (shouldSwitchCwd) process.chdir(cwd);
|
|
2442
1277
|
}
|
|
2443
1278
|
if (resolved) resolved = path$3.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
|
|
@@ -2503,7 +1338,7 @@ var require_readShebang = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm
|
|
|
2503
1338
|
fd = fs$1.openSync(command, "r");
|
|
2504
1339
|
fs$1.readSync(fd, buffer, 0, size, 0);
|
|
2505
1340
|
fs$1.closeSync(fd);
|
|
2506
|
-
} catch (e
|
|
1341
|
+
} catch (e) {}
|
|
2507
1342
|
return shebangCommand(buffer.toString());
|
|
2508
1343
|
}
|
|
2509
1344
|
module.exports = readShebang$1;
|
|
@@ -2640,9 +1475,9 @@ var require_cross_spawn = /* @__PURE__ */ __commonJS({ "../../node_modules/.pnpm
|
|
|
2640
1475
|
//#region ../../node_modules/.pnpm/path-key@4.0.0/node_modules/path-key/index.js
|
|
2641
1476
|
var import_cross_spawn = /* @__PURE__ */ __toESM(require_cross_spawn(), 1);
|
|
2642
1477
|
function pathKey(options = {}) {
|
|
2643
|
-
const { env
|
|
1478
|
+
const { env = process.env, platform: platform$1 = process.platform } = options;
|
|
2644
1479
|
if (platform$1 !== "win32") return "PATH";
|
|
2645
|
-
return Object.keys(env
|
|
1480
|
+
return Object.keys(env).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
|
|
2646
1481
|
}
|
|
2647
1482
|
|
|
2648
1483
|
//#endregion
|
|
@@ -2666,7 +1501,7 @@ const TEN_MEGABYTES_IN_BYTES = 10 * 1024 * 1024;
|
|
|
2666
1501
|
|
|
2667
1502
|
//#endregion
|
|
2668
1503
|
//#region ../../node_modules/.pnpm/npm-run-path@6.0.0/node_modules/npm-run-path/index.js
|
|
2669
|
-
const npmRunPath = ({ cwd =
|
|
1504
|
+
const npmRunPath = ({ cwd = process$1.cwd(), path: pathOption = process$1.env[pathKey()], preferLocal = true, execPath: execPath$1 = process$1.execPath, addExecPath = true } = {}) => {
|
|
2670
1505
|
const cwdPath = path.resolve(toPath(cwd));
|
|
2671
1506
|
const result = [];
|
|
2672
1507
|
const pathParts = pathOption.split(path.delimiter);
|
|
@@ -2684,12 +1519,12 @@ const applyExecPath = (result, pathParts, execPath$1, cwdPath) => {
|
|
|
2684
1519
|
const pathPart = path.resolve(cwdPath, toPath(execPath$1), "..");
|
|
2685
1520
|
if (!pathParts.includes(pathPart)) result.push(pathPart);
|
|
2686
1521
|
};
|
|
2687
|
-
const npmRunPathEnv = ({ env
|
|
2688
|
-
env
|
|
2689
|
-
const pathName = pathKey({ env
|
|
2690
|
-
options.path = env
|
|
2691
|
-
env
|
|
2692
|
-
return env
|
|
1522
|
+
const npmRunPathEnv = ({ env = process$1.env,...options } = {}) => {
|
|
1523
|
+
env = { ...env };
|
|
1524
|
+
const pathName = pathKey({ env });
|
|
1525
|
+
options.path = env[pathName];
|
|
1526
|
+
env[pathName] = npmRunPath(options);
|
|
1527
|
+
return env;
|
|
2693
1528
|
};
|
|
2694
1529
|
|
|
2695
1530
|
//#endregion
|
|
@@ -3293,15 +2128,15 @@ const getInvalidStdioOptionMessage = (fdNumber, fdName, options, isWritable) =>
|
|
|
3293
2128
|
return `The "${optionName}: ${serializeOptionValue(optionValue)}" option is incompatible with using "${getOptionName(isWritable)}: ${serializeOptionValue(fdName)}".
|
|
3294
2129
|
Please set this option with "pipe" instead.`;
|
|
3295
2130
|
};
|
|
3296
|
-
const getInvalidStdioOption = (fdNumber, { stdin
|
|
2131
|
+
const getInvalidStdioOption = (fdNumber, { stdin, stdout, stderr, stdio }) => {
|
|
3297
2132
|
const usedDescriptor = getUsedDescriptor(fdNumber);
|
|
3298
|
-
if (usedDescriptor === 0 && stdin
|
|
2133
|
+
if (usedDescriptor === 0 && stdin !== void 0) return {
|
|
3299
2134
|
optionName: "stdin",
|
|
3300
|
-
optionValue: stdin
|
|
2135
|
+
optionValue: stdin
|
|
3301
2136
|
};
|
|
3302
|
-
if (usedDescriptor === 1 && stdout
|
|
2137
|
+
if (usedDescriptor === 1 && stdout !== void 0) return {
|
|
3303
2138
|
optionName: "stdout",
|
|
3304
|
-
optionValue: stdout
|
|
2139
|
+
optionValue: stdout
|
|
3305
2140
|
};
|
|
3306
2141
|
if (usedDescriptor === 2 && stderr !== void 0) return {
|
|
3307
2142
|
optionName: "stderr",
|
|
@@ -3819,7 +2654,7 @@ const normalizeCwd = (cwd = getDefaultCwd()) => {
|
|
|
3819
2654
|
};
|
|
3820
2655
|
const getDefaultCwd = () => {
|
|
3821
2656
|
try {
|
|
3822
|
-
return
|
|
2657
|
+
return process$1.cwd();
|
|
3823
2658
|
} catch (error) {
|
|
3824
2659
|
error.message = `The current directory does not exist.\n${error.message}`;
|
|
3825
2660
|
throw error;
|
|
@@ -3854,7 +2689,7 @@ const normalizeOptions = (filePath, rawArguments, rawOptions) => {
|
|
|
3854
2689
|
options.killSignal = normalizeKillSignal(options.killSignal);
|
|
3855
2690
|
options.forceKillAfterDelay = normalizeForceKillAfterDelay(options.forceKillAfterDelay);
|
|
3856
2691
|
options.lines = options.lines.map((lines, fdNumber) => lines && !BINARY_ENCODINGS.has(options.encoding) && options.buffer[fdNumber]);
|
|
3857
|
-
if (
|
|
2692
|
+
if (process$1.platform === "win32" && path.basename(file, ".exe") === "cmd") commandArguments.unshift("/q");
|
|
3858
2693
|
return {
|
|
3859
2694
|
file,
|
|
3860
2695
|
commandArguments,
|
|
@@ -3880,18 +2715,18 @@ const addDefaultOptions = ({ extendEnv = true, preferLocal = false, cwd, localDi
|
|
|
3880
2715
|
serialization
|
|
3881
2716
|
});
|
|
3882
2717
|
const getEnv = ({ env: envOption, extendEnv, preferLocal, node, localDirectory, nodePath }) => {
|
|
3883
|
-
const env
|
|
3884
|
-
...
|
|
2718
|
+
const env = extendEnv ? {
|
|
2719
|
+
...process$1.env,
|
|
3885
2720
|
...envOption
|
|
3886
2721
|
} : envOption;
|
|
3887
2722
|
if (preferLocal || node) return npmRunPathEnv({
|
|
3888
|
-
env
|
|
2723
|
+
env,
|
|
3889
2724
|
cwd: localDirectory,
|
|
3890
2725
|
execPath: nodePath,
|
|
3891
2726
|
preferLocal,
|
|
3892
2727
|
addExecPath: node
|
|
3893
2728
|
});
|
|
3894
|
-
return env
|
|
2729
|
+
return env;
|
|
3895
2730
|
};
|
|
3896
2731
|
|
|
3897
2732
|
//#endregion
|
|
@@ -3934,15 +2769,15 @@ var c = class {
|
|
|
3934
2769
|
#n;
|
|
3935
2770
|
#r = !1;
|
|
3936
2771
|
#e = void 0;
|
|
3937
|
-
constructor(e
|
|
3938
|
-
this.#t = e
|
|
2772
|
+
constructor(e, t) {
|
|
2773
|
+
this.#t = e, this.#n = t;
|
|
3939
2774
|
}
|
|
3940
2775
|
next() {
|
|
3941
|
-
const e
|
|
3942
|
-
return this.#e = this.#e ? this.#e.then(e
|
|
2776
|
+
const e = () => this.#s();
|
|
2777
|
+
return this.#e = this.#e ? this.#e.then(e, e) : e(), this.#e;
|
|
3943
2778
|
}
|
|
3944
|
-
return(e
|
|
3945
|
-
const t = () => this.#i(e
|
|
2779
|
+
return(e) {
|
|
2780
|
+
const t = () => this.#i(e);
|
|
3946
2781
|
return this.#e ? this.#e.then(t, t) : t();
|
|
3947
2782
|
}
|
|
3948
2783
|
async #s() {
|
|
@@ -3950,29 +2785,29 @@ var c = class {
|
|
|
3950
2785
|
done: !0,
|
|
3951
2786
|
value: void 0
|
|
3952
2787
|
};
|
|
3953
|
-
let e
|
|
2788
|
+
let e;
|
|
3954
2789
|
try {
|
|
3955
|
-
e
|
|
2790
|
+
e = await this.#t.read();
|
|
3956
2791
|
} catch (t) {
|
|
3957
2792
|
throw this.#e = void 0, this.#r = !0, this.#t.releaseLock(), t;
|
|
3958
2793
|
}
|
|
3959
|
-
return e
|
|
2794
|
+
return e.done && (this.#e = void 0, this.#r = !0, this.#t.releaseLock()), e;
|
|
3960
2795
|
}
|
|
3961
|
-
async #i(e
|
|
2796
|
+
async #i(e) {
|
|
3962
2797
|
if (this.#r) return {
|
|
3963
2798
|
done: !0,
|
|
3964
|
-
value: e
|
|
2799
|
+
value: e
|
|
3965
2800
|
};
|
|
3966
2801
|
if (this.#r = !0, !this.#n) {
|
|
3967
|
-
const t = this.#t.cancel(e
|
|
2802
|
+
const t = this.#t.cancel(e);
|
|
3968
2803
|
return this.#t.releaseLock(), await t, {
|
|
3969
2804
|
done: !0,
|
|
3970
|
-
value: e
|
|
2805
|
+
value: e
|
|
3971
2806
|
};
|
|
3972
2807
|
}
|
|
3973
2808
|
return this.#t.releaseLock(), {
|
|
3974
2809
|
done: !0,
|
|
3975
|
-
value: e
|
|
2810
|
+
value: e
|
|
3976
2811
|
};
|
|
3977
2812
|
}
|
|
3978
2813
|
};
|
|
@@ -3981,8 +2816,8 @@ function i() {
|
|
|
3981
2816
|
return this[n].next();
|
|
3982
2817
|
}
|
|
3983
2818
|
Object.defineProperty(i, "name", { value: "next" });
|
|
3984
|
-
function o(r
|
|
3985
|
-
return this[n].return(r
|
|
2819
|
+
function o(r) {
|
|
2820
|
+
return this[n].return(r);
|
|
3986
2821
|
}
|
|
3987
2822
|
Object.defineProperty(o, "name", { value: "return" });
|
|
3988
2823
|
const u = Object.create(a, {
|
|
@@ -3999,8 +2834,8 @@ const u = Object.create(a, {
|
|
|
3999
2834
|
value: o
|
|
4000
2835
|
}
|
|
4001
2836
|
});
|
|
4002
|
-
function h({ preventCancel: r
|
|
4003
|
-
const t = new c(this.getReader(), r
|
|
2837
|
+
function h({ preventCancel: r = !1 } = {}) {
|
|
2838
|
+
const t = new c(this.getReader(), r), s = Object.create(u);
|
|
4004
2839
|
return s[n] = t, s;
|
|
4005
2840
|
}
|
|
4006
2841
|
|
|
@@ -4869,12 +3704,12 @@ const guessStreamDirection = {
|
|
|
4869
3704
|
}
|
|
4870
3705
|
};
|
|
4871
3706
|
const getStandardStreamDirection = (value) => {
|
|
4872
|
-
if ([0,
|
|
3707
|
+
if ([0, process$1.stdin].includes(value)) return "input";
|
|
4873
3708
|
if ([
|
|
4874
3709
|
1,
|
|
4875
3710
|
2,
|
|
4876
|
-
|
|
4877
|
-
|
|
3711
|
+
process$1.stdout,
|
|
3712
|
+
process$1.stderr
|
|
4878
3713
|
].includes(value)) return "output";
|
|
4879
3714
|
};
|
|
4880
3715
|
const DEFAULT_DIRECTION = "output";
|
|
@@ -4899,7 +3734,7 @@ const getStdioArray = (stdio, options) => {
|
|
|
4899
3734
|
];
|
|
4900
3735
|
if (!Array.isArray(stdio)) throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``);
|
|
4901
3736
|
const length = Math.max(stdio.length, STANDARD_STREAMS_ALIASES.length);
|
|
4902
|
-
return Array.from({ length }, (_
|
|
3737
|
+
return Array.from({ length }, (_, fdNumber) => stdio[fdNumber]);
|
|
4903
3738
|
};
|
|
4904
3739
|
const hasAlias = (options) => STANDARD_STREAMS_ALIASES.some((alias) => options[alias] !== void 0);
|
|
4905
3740
|
const addDefaultValue = (stdioOption, fdNumber) => {
|
|
@@ -5632,14 +4467,14 @@ const writeToFiles = (serializedResult, stdioItems, outputFiles) => {
|
|
|
5632
4467
|
|
|
5633
4468
|
//#endregion
|
|
5634
4469
|
//#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/resolve/all-sync.js
|
|
5635
|
-
const getAllSync = ([, stdout
|
|
4470
|
+
const getAllSync = ([, stdout, stderr], options) => {
|
|
5636
4471
|
if (!options.all) return;
|
|
5637
|
-
if (stdout
|
|
5638
|
-
if (stderr === void 0) return stdout
|
|
5639
|
-
if (Array.isArray(stdout
|
|
5640
|
-
if (Array.isArray(stderr)) return [stripNewline(stdout
|
|
5641
|
-
if (isUint8Array(stdout
|
|
5642
|
-
return `${stdout
|
|
4472
|
+
if (stdout === void 0) return stderr;
|
|
4473
|
+
if (stderr === void 0) return stdout;
|
|
4474
|
+
if (Array.isArray(stdout)) return Array.isArray(stderr) ? [...stdout, ...stderr] : [...stdout, stripNewline(stderr, options, "all")];
|
|
4475
|
+
if (Array.isArray(stderr)) return [stripNewline(stdout, options, "all"), ...stderr];
|
|
4476
|
+
if (isUint8Array(stdout) && isUint8Array(stderr)) return concatUint8Arrays([stdout, stderr]);
|
|
4477
|
+
return `${stdout}${stderr}`;
|
|
5643
4478
|
};
|
|
5644
4479
|
|
|
5645
4480
|
//#endregion
|
|
@@ -5938,9 +4773,9 @@ const addIpcMethods = (subprocess, { ipc }) => {
|
|
|
5938
4773
|
Object.assign(subprocess, getIpcMethods(subprocess, false, ipc));
|
|
5939
4774
|
};
|
|
5940
4775
|
const getIpcExport = () => {
|
|
5941
|
-
const anyProcess =
|
|
4776
|
+
const anyProcess = process$1;
|
|
5942
4777
|
const isSubprocess = true;
|
|
5943
|
-
const ipc =
|
|
4778
|
+
const ipc = process$1.channel !== void 0;
|
|
5944
4779
|
return {
|
|
5945
4780
|
...getIpcMethods(anyProcess, isSubprocess, ipc),
|
|
5946
4781
|
getCancelSignal: getCancelSignal$1.bind(void 0, {
|
|
@@ -5997,20 +4832,20 @@ const handleEarlyError = ({ error, command, escapedCommand, fileDescriptors, opt
|
|
|
5997
4832
|
};
|
|
5998
4833
|
};
|
|
5999
4834
|
const createDummyStreams = (subprocess, fileDescriptors) => {
|
|
6000
|
-
const stdin
|
|
6001
|
-
const stdout
|
|
4835
|
+
const stdin = createDummyStream();
|
|
4836
|
+
const stdout = createDummyStream();
|
|
6002
4837
|
const stderr = createDummyStream();
|
|
6003
4838
|
const extraStdio = Array.from({ length: fileDescriptors.length - 3 }, createDummyStream);
|
|
6004
4839
|
const all = createDummyStream();
|
|
6005
4840
|
const stdio = [
|
|
6006
|
-
stdin
|
|
6007
|
-
stdout
|
|
4841
|
+
stdin,
|
|
4842
|
+
stdout,
|
|
6008
4843
|
stderr,
|
|
6009
4844
|
...extraStdio
|
|
6010
4845
|
];
|
|
6011
4846
|
Object.assign(subprocess, {
|
|
6012
|
-
stdin
|
|
6013
|
-
stdout
|
|
4847
|
+
stdin,
|
|
4848
|
+
stdout,
|
|
6014
4849
|
stderr,
|
|
6015
4850
|
all,
|
|
6016
4851
|
stdio
|
|
@@ -6349,7 +5184,7 @@ if (process.platform === "linux") signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SI
|
|
|
6349
5184
|
|
|
6350
5185
|
//#endregion
|
|
6351
5186
|
//#region ../../node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/index.js
|
|
6352
|
-
const processOk = (process$
|
|
5187
|
+
const processOk = (process$3) => !!process$3 && typeof process$3 === "object" && typeof process$3.removeListener === "function" && typeof process$3.emit === "function" && typeof process$3.reallyExit === "function" && typeof process$3.listeners === "function" && typeof process$3.kill === "function" && typeof process$3.pid === "number" && typeof process$3.on === "function";
|
|
6353
5188
|
const kExitEmitter = Symbol.for("signal-exit emitter");
|
|
6354
5189
|
const global$1 = globalThis;
|
|
6355
5190
|
const ObjectDefineProperty = Object.defineProperty.bind(Object);
|
|
@@ -6417,7 +5252,7 @@ var SignalExitFallback = class extends SignalExitBase {
|
|
|
6417
5252
|
};
|
|
6418
5253
|
var SignalExit = class extends SignalExitBase {
|
|
6419
5254
|
/* c8 ignore start */
|
|
6420
|
-
#hupSig = process$
|
|
5255
|
+
#hupSig = process$2.platform === "win32" ? "SIGINT" : "SIGHUP";
|
|
6421
5256
|
/* c8 ignore stop */
|
|
6422
5257
|
#emitter = new Emitter();
|
|
6423
5258
|
#process;
|
|
@@ -6425,15 +5260,15 @@ var SignalExit = class extends SignalExitBase {
|
|
|
6425
5260
|
#originalProcessReallyExit;
|
|
6426
5261
|
#sigListeners = {};
|
|
6427
5262
|
#loaded = false;
|
|
6428
|
-
constructor(process$
|
|
5263
|
+
constructor(process$3) {
|
|
6429
5264
|
super();
|
|
6430
|
-
this.#process = process$
|
|
5265
|
+
this.#process = process$3;
|
|
6431
5266
|
this.#sigListeners = {};
|
|
6432
5267
|
for (const sig of signals) this.#sigListeners[sig] = () => {
|
|
6433
5268
|
const listeners = this.#process.listeners(sig);
|
|
6434
5269
|
let { count: count$1 } = this.#emitter;
|
|
6435
5270
|
/* c8 ignore start */
|
|
6436
|
-
const p$1 = process$
|
|
5271
|
+
const p$1 = process$3;
|
|
6437
5272
|
if (typeof p$1.__signal_exit_emitter__ === "object" && typeof p$1.__signal_exit_emitter__.count === "number") count$1 += p$1.__signal_exit_emitter__.count;
|
|
6438
5273
|
/* c8 ignore stop */
|
|
6439
5274
|
if (listeners.length === count$1) {
|
|
@@ -6441,11 +5276,11 @@ var SignalExit = class extends SignalExitBase {
|
|
|
6441
5276
|
const ret = this.#emitter.emit("exit", null, sig);
|
|
6442
5277
|
/* c8 ignore start */
|
|
6443
5278
|
const s = sig === "SIGHUP" ? this.#hupSig : sig;
|
|
6444
|
-
if (!ret) process$
|
|
5279
|
+
if (!ret) process$3.kill(process$3.pid, s);
|
|
6445
5280
|
}
|
|
6446
5281
|
};
|
|
6447
|
-
this.#originalProcessReallyExit = process$
|
|
6448
|
-
this.#originalProcessEmit = process$
|
|
5282
|
+
this.#originalProcessReallyExit = process$3.reallyExit;
|
|
5283
|
+
this.#originalProcessEmit = process$3.emit;
|
|
6449
5284
|
}
|
|
6450
5285
|
onExit(cb, opts) {
|
|
6451
5286
|
/* c8 ignore start */
|
|
@@ -6466,7 +5301,7 @@ var SignalExit = class extends SignalExitBase {
|
|
|
6466
5301
|
for (const sig of signals) try {
|
|
6467
5302
|
const fn = this.#sigListeners[sig];
|
|
6468
5303
|
if (fn) this.#process.on(sig, fn);
|
|
6469
|
-
} catch (_
|
|
5304
|
+
} catch (_) {}
|
|
6470
5305
|
this.#process.emit = (ev, ...a$1) => {
|
|
6471
5306
|
return this.#processEmit(ev, ...a$1);
|
|
6472
5307
|
};
|
|
@@ -6484,7 +5319,7 @@ var SignalExit = class extends SignalExitBase {
|
|
|
6484
5319
|
/* c8 ignore stop */
|
|
6485
5320
|
try {
|
|
6486
5321
|
this.#process.removeListener(sig, listener);
|
|
6487
|
-
} catch (_
|
|
5322
|
+
} catch (_) {}
|
|
6488
5323
|
/* c8 ignore stop */
|
|
6489
5324
|
});
|
|
6490
5325
|
this.#process.emit = this.#originalProcessEmit;
|
|
@@ -6512,8 +5347,8 @@ var SignalExit = class extends SignalExitBase {
|
|
|
6512
5347
|
} else return og.call(this.#process, ev, ...args);
|
|
6513
5348
|
}
|
|
6514
5349
|
};
|
|
6515
|
-
const process$
|
|
6516
|
-
const { onExit, load, unload } = signalExitWrap(processOk(process$
|
|
5350
|
+
const process$2 = globalThis.process;
|
|
5351
|
+
const { onExit, load, unload } = signalExitWrap(processOk(process$2) ? new SignalExit(process$2) : new SignalExitFallback());
|
|
6517
5352
|
|
|
6518
5353
|
//#endregion
|
|
6519
5354
|
//#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/terminate/cleanup.js
|
|
@@ -6982,7 +5817,7 @@ const waitForSubprocessStream = async ({ stream, fdNumber, encoding, buffer, max
|
|
|
6982
5817
|
|
|
6983
5818
|
//#endregion
|
|
6984
5819
|
//#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/resolve/all-async.js
|
|
6985
|
-
const makeAllStream = ({ stdout
|
|
5820
|
+
const makeAllStream = ({ stdout, stderr }, { all }) => all && (stdout || stderr) ? mergeStreams([stdout, stderr].filter(Boolean)) : void 0;
|
|
6986
5821
|
const waitForAllStream = ({ subprocess, encoding, buffer, maxBuffer, lines, stripFinalNewline: stripFinalNewline$1, verboseInfo, streamInfo }) => waitForSubprocessStream({
|
|
6987
5822
|
...getAllStream(subprocess, buffer),
|
|
6988
5823
|
fdNumber: "all",
|
|
@@ -6994,7 +5829,7 @@ const waitForAllStream = ({ subprocess, encoding, buffer, maxBuffer, lines, stri
|
|
|
6994
5829
|
verboseInfo,
|
|
6995
5830
|
streamInfo
|
|
6996
5831
|
});
|
|
6997
|
-
const getAllStream = ({ stdout
|
|
5832
|
+
const getAllStream = ({ stdout, stderr, all }, [, bufferStdout, bufferStderr]) => {
|
|
6998
5833
|
const buffer = bufferStdout || bufferStderr;
|
|
6999
5834
|
if (!buffer) return {
|
|
7000
5835
|
stream: all,
|
|
@@ -7005,7 +5840,7 @@ const getAllStream = ({ stdout: stdout$1, stderr, all }, [, bufferStdout, buffer
|
|
|
7005
5840
|
buffer
|
|
7006
5841
|
};
|
|
7007
5842
|
if (!bufferStderr) return {
|
|
7008
|
-
stream: stdout
|
|
5843
|
+
stream: stdout,
|
|
7009
5844
|
buffer
|
|
7010
5845
|
};
|
|
7011
5846
|
return {
|
|
@@ -7013,7 +5848,7 @@ const getAllStream = ({ stdout: stdout$1, stderr, all }, [, bufferStdout, buffer
|
|
|
7013
5848
|
buffer
|
|
7014
5849
|
};
|
|
7015
5850
|
};
|
|
7016
|
-
const getAllMixed = ({ all, stdout
|
|
5851
|
+
const getAllMixed = ({ all, stdout, stderr }) => all && stdout && stderr && stdout.readableObjectMode !== stderr.readableObjectMode;
|
|
7017
5852
|
|
|
7018
5853
|
//#endregion
|
|
7019
5854
|
//#region ../../node_modules/.pnpm/execa@9.5.2/node_modules/execa/lib/verbose/ipc.js
|
|
@@ -7796,17 +6631,17 @@ const setEnv = async ({ projectId, storageBucket, build }) => {
|
|
|
7796
6631
|
HOT_UPDATER_FIREBASE_PROJECT_ID: projectId,
|
|
7797
6632
|
HOT_UPDATER_FIREBASE_STORAGE_BUCKET: storageBucket
|
|
7798
6633
|
});
|
|
7799
|
-
|
|
6634
|
+
p.log.success("Firebase credentials have been successfully configured.");
|
|
7800
6635
|
try {
|
|
7801
6636
|
await fs.promises.writeFile("hot-updater.config.ts", getConfigTemplate(build));
|
|
7802
|
-
|
|
6637
|
+
p.log.success("Configuration file 'hot-updater.config.ts' has been created.");
|
|
7803
6638
|
} catch (error) {
|
|
7804
6639
|
console.error("Error writing configuration file:", error.message);
|
|
7805
6640
|
}
|
|
7806
6641
|
};
|
|
7807
6642
|
const handleError = (err) => {
|
|
7808
|
-
if (err instanceof ExecaError)
|
|
7809
|
-
else if (err instanceof Error)
|
|
6643
|
+
if (err instanceof ExecaError) p.log.error(err.stderr || err.stdout || err.message);
|
|
6644
|
+
else if (err instanceof Error) p.log.error(`Error occurred: ${err.message}`);
|
|
7810
6645
|
process.exit(1);
|
|
7811
6646
|
};
|
|
7812
6647
|
const listProjects = async () => {
|
|
@@ -7845,7 +6680,7 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7845
6680
|
}
|
|
7846
6681
|
const projects = await listProjects();
|
|
7847
6682
|
const createKey = `create/${Math.random().toString(36).substring(2, 15)}`;
|
|
7848
|
-
const projectId = await
|
|
6683
|
+
const projectId = await p.select({
|
|
7849
6684
|
message: "Select a Firebase project",
|
|
7850
6685
|
options: [...projects.map((project$1) => ({
|
|
7851
6686
|
label: project$1.displayName,
|
|
@@ -7855,14 +6690,14 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7855
6690
|
label: "Create new Firebase project"
|
|
7856
6691
|
}]
|
|
7857
6692
|
});
|
|
7858
|
-
if (
|
|
7859
|
-
|
|
6693
|
+
if (p.isCancel(projectId)) {
|
|
6694
|
+
p.log.error("Project ID is required");
|
|
7860
6695
|
process.exit(1);
|
|
7861
6696
|
}
|
|
7862
6697
|
if (projectId === createKey) {
|
|
7863
|
-
const newProjectId = await
|
|
7864
|
-
if (
|
|
7865
|
-
|
|
6698
|
+
const newProjectId = await p.text({ message: "Enter the Firebase project ID:" });
|
|
6699
|
+
if (p.isCancel(newProjectId)) {
|
|
6700
|
+
p.log.error("Project ID is required");
|
|
7866
6701
|
process.exit(1);
|
|
7867
6702
|
}
|
|
7868
6703
|
try {
|
|
@@ -7874,16 +6709,16 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7874
6709
|
stdio: "inherit",
|
|
7875
6710
|
shell: true
|
|
7876
6711
|
});
|
|
7877
|
-
|
|
7878
|
-
|
|
7879
|
-
|
|
7880
|
-
|
|
6712
|
+
p.log.success("Firebase project created successfully");
|
|
6713
|
+
p.log.step("Please Go to the following links to enable Firestore and Storage and Billing");
|
|
6714
|
+
p.log.step(link(`https://console.firebase.google.com/project/${newProjectId}/firestore`));
|
|
6715
|
+
p.log.step(link(`https://console.firebase.google.com/project/${newProjectId}/storage`));
|
|
7881
6716
|
} catch (err) {
|
|
7882
6717
|
handleError(err);
|
|
7883
6718
|
}
|
|
7884
6719
|
process.exit(0);
|
|
7885
6720
|
}
|
|
7886
|
-
await
|
|
6721
|
+
await p.tasks([{
|
|
7887
6722
|
title: `Select Firebase project (${projectId})...`,
|
|
7888
6723
|
task: async () => {
|
|
7889
6724
|
try {
|
|
@@ -7897,8 +6732,8 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7897
6732
|
shell: true
|
|
7898
6733
|
});
|
|
7899
6734
|
} catch (error) {
|
|
7900
|
-
if (error instanceof ExecaError)
|
|
7901
|
-
else if (error instanceof Error)
|
|
6735
|
+
if (error instanceof ExecaError) p.log.error(error.stderr || error.stdout || error.message);
|
|
6736
|
+
else if (error instanceof Error) p.log.error(error.message);
|
|
7902
6737
|
process.exit(1);
|
|
7903
6738
|
}
|
|
7904
6739
|
}
|
|
@@ -7915,17 +6750,17 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7915
6750
|
input: "N\n"
|
|
7916
6751
|
});
|
|
7917
6752
|
if (JSON.parse(databases.stdout).length === 0) {
|
|
7918
|
-
|
|
7919
|
-
|
|
7920
|
-
|
|
7921
|
-
|
|
6753
|
+
p.log.warning("Firestore Database not found");
|
|
6754
|
+
p.log.step("Please enable Firestore in the Firebase Console:");
|
|
6755
|
+
p.log.step(link(`https://console.firebase.google.com/project/${projectId}/firestore`));
|
|
6756
|
+
p.log.step("After enabling Firestore, please run 'npx hot-updater init' again.");
|
|
7922
6757
|
process.exit(1);
|
|
7923
6758
|
}
|
|
7924
6759
|
} catch (err) {
|
|
7925
6760
|
handleError(err);
|
|
7926
6761
|
}
|
|
7927
6762
|
let storageBucket = null;
|
|
7928
|
-
await
|
|
6763
|
+
await p.tasks([{
|
|
7929
6764
|
title: "Getting storage bucket...",
|
|
7930
6765
|
task: async () => {
|
|
7931
6766
|
const buckets = await execa("gcloud", [
|
|
@@ -7937,16 +6772,16 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7937
6772
|
], { shell: true });
|
|
7938
6773
|
storageBucket = JSON.parse(buckets.stdout).find((bucket) => bucket.name === `${projectId}.firebasestorage.app` || bucket.name === `${projectId}.appspot.com`)?.name;
|
|
7939
6774
|
if (!storageBucket) {
|
|
7940
|
-
|
|
7941
|
-
|
|
7942
|
-
|
|
6775
|
+
p.log.error("Storage Bucket not found");
|
|
6776
|
+
p.log.step("Please Go to the following links to enable Firestore and Storage and Billing");
|
|
6777
|
+
p.log.step(link(`https://console.firebase.google.com/project/${projectId}/firestore`));
|
|
7943
6778
|
process.exit(1);
|
|
7944
6779
|
}
|
|
7945
6780
|
return `Storage Bucket: ${storageBucket}`;
|
|
7946
6781
|
}
|
|
7947
6782
|
}]);
|
|
7948
6783
|
if (!storageBucket) {
|
|
7949
|
-
|
|
6784
|
+
p.log.error("Storage Bucket not found");
|
|
7950
6785
|
process.exit(1);
|
|
7951
6786
|
}
|
|
7952
6787
|
const project = await execa("gcloud", [
|
|
@@ -7958,7 +6793,7 @@ const initFirebaseUser = async (cwd) => {
|
|
|
7958
6793
|
const projectJson = JSON.parse(project.stdout);
|
|
7959
6794
|
const projectNumber = Number(projectJson.projectNumber);
|
|
7960
6795
|
if (Number.isNaN(projectNumber)) {
|
|
7961
|
-
|
|
6796
|
+
p.log.error("Project Number not found");
|
|
7962
6797
|
process.exit(1);
|
|
7963
6798
|
}
|
|
7964
6799
|
return {
|
|
@@ -8073,7 +6908,7 @@ function normalizeIndex(index) {
|
|
|
8073
6908
|
}
|
|
8074
6909
|
const mergeIndexes = (originalIndexes, newIndexes) => {
|
|
8075
6910
|
return {
|
|
8076
|
-
indexes: uniqWith(originalIndexes.indexes.concat(newIndexes.indexes), (a$1, b
|
|
6911
|
+
indexes: uniqWith(originalIndexes.indexes.concat(newIndexes.indexes), (a$1, b) => isEqual(normalizeIndex(a$1), normalizeIndex(b))),
|
|
8077
6912
|
fieldOverrides: merge(originalIndexes.fieldOverrides, newIndexes.fieldOverrides)
|
|
8078
6913
|
};
|
|
8079
6914
|
};
|
|
@@ -8106,9 +6941,9 @@ const deployFirestore = async (cwd) => {
|
|
|
8106
6941
|
stdio: "inherit",
|
|
8107
6942
|
shell: true
|
|
8108
6943
|
});
|
|
8109
|
-
} catch (e
|
|
8110
|
-
if (e
|
|
8111
|
-
else if (e
|
|
6944
|
+
} catch (e) {
|
|
6945
|
+
if (e instanceof ExecaError) p.log.error(e.stderr || e.stdout || e.message);
|
|
6946
|
+
else if (e instanceof Error) p.log.error(e.message);
|
|
8112
6947
|
process.exit(1);
|
|
8113
6948
|
}
|
|
8114
6949
|
};
|
|
@@ -8124,15 +6959,15 @@ const deployFunctions = async (cwd) => {
|
|
|
8124
6959
|
stdio: "inherit",
|
|
8125
6960
|
shell: true
|
|
8126
6961
|
});
|
|
8127
|
-
} catch (e
|
|
8128
|
-
if (e
|
|
8129
|
-
else if (e
|
|
6962
|
+
} catch (e) {
|
|
6963
|
+
if (e instanceof ExecaError) p.log.error(e.stderr || e.stdout || e.message);
|
|
6964
|
+
else if (e instanceof Error) p.log.error(e.message);
|
|
8130
6965
|
process.exit(1);
|
|
8131
6966
|
}
|
|
8132
6967
|
};
|
|
8133
6968
|
const printTemplate = async (projectId, region) => {
|
|
8134
6969
|
try {
|
|
8135
|
-
const { stdout
|
|
6970
|
+
const { stdout } = await execa("gcloud", [
|
|
8136
6971
|
"functions",
|
|
8137
6972
|
"describe",
|
|
8138
6973
|
"hot-updater",
|
|
@@ -8142,12 +6977,12 @@ const printTemplate = async (projectId, region) => {
|
|
|
8142
6977
|
region,
|
|
8143
6978
|
"--format=json"
|
|
8144
6979
|
], { shell: true });
|
|
8145
|
-
const parsedData = JSON.parse(stdout
|
|
6980
|
+
const parsedData = JSON.parse(stdout);
|
|
8146
6981
|
const functionUrl = `${parsedData?.serviceConfig?.uri ?? parsedData.url}/api/check-update`;
|
|
8147
|
-
|
|
6982
|
+
p.note(transformTemplate(SOURCE_TEMPLATE, { source: functionUrl }));
|
|
8148
6983
|
} catch (error) {
|
|
8149
|
-
if (error instanceof ExecaError)
|
|
8150
|
-
else if (error instanceof Error)
|
|
6984
|
+
if (error instanceof ExecaError) p.log.error(error.stderr || error.stdout || error.message);
|
|
6985
|
+
else if (error instanceof Error) p.log.error(error.message);
|
|
8151
6986
|
process.exit(1);
|
|
8152
6987
|
}
|
|
8153
6988
|
};
|
|
@@ -8161,9 +6996,9 @@ const checkIfGcloudCliInstalled = async () => {
|
|
|
8161
6996
|
};
|
|
8162
6997
|
const runInit = async ({ build }) => {
|
|
8163
6998
|
if (!await checkIfGcloudCliInstalled()) {
|
|
8164
|
-
|
|
8165
|
-
|
|
8166
|
-
|
|
6999
|
+
p.log.error("gcloud CLI is not installed");
|
|
7000
|
+
p.log.step("Please go to the following link to install the gcloud CLI");
|
|
7001
|
+
p.log.step(link("https://cloud.google.com/sdk/docs/install"));
|
|
8167
7002
|
process.exit(1);
|
|
8168
7003
|
}
|
|
8169
7004
|
const { tmpDir, removeTmpDir } = await copyDirToTmp(path$1.dirname(path$1.dirname(__require.resolve("@hot-updater/firebase/functions"))));
|
|
@@ -8177,7 +7012,7 @@ const runInit = async ({ build }) => {
|
|
|
8177
7012
|
storageBucket: initializeVariable.storageBucket,
|
|
8178
7013
|
build
|
|
8179
7014
|
});
|
|
8180
|
-
await
|
|
7015
|
+
await p.tasks([{
|
|
8181
7016
|
title: "Installing dependencies...",
|
|
8182
7017
|
task: async () => {
|
|
8183
7018
|
try {
|
|
@@ -8187,8 +7022,8 @@ const runInit = async ({ build }) => {
|
|
|
8187
7022
|
});
|
|
8188
7023
|
return "Installed dependencies";
|
|
8189
7024
|
} catch (error) {
|
|
8190
|
-
if (error instanceof ExecaError)
|
|
8191
|
-
else if (error instanceof Error)
|
|
7025
|
+
if (error instanceof ExecaError) p.log.error(error.stderr || error.stdout || error.message);
|
|
7026
|
+
else if (error instanceof Error) p.log.error(error.message);
|
|
8192
7027
|
process.exit(1);
|
|
8193
7028
|
}
|
|
8194
7029
|
}
|
|
@@ -8197,7 +7032,7 @@ const runInit = async ({ build }) => {
|
|
|
8197
7032
|
task: async () => {
|
|
8198
7033
|
let isFunctionsExist = false;
|
|
8199
7034
|
try {
|
|
8200
|
-
const { stdout
|
|
7035
|
+
const { stdout } = await execa("npx", [
|
|
8201
7036
|
"firebase",
|
|
8202
7037
|
"functions:list",
|
|
8203
7038
|
"--json"
|
|
@@ -8205,26 +7040,26 @@ const runInit = async ({ build }) => {
|
|
|
8205
7040
|
cwd: tmpDir,
|
|
8206
7041
|
shell: true
|
|
8207
7042
|
});
|
|
8208
|
-
const hotUpdater = (JSON.parse(stdout
|
|
7043
|
+
const hotUpdater = (JSON.parse(stdout).result || []).find((fn) => fn.id === "hot-updater");
|
|
8209
7044
|
if (hotUpdater?.region) {
|
|
8210
7045
|
currentRegion = hotUpdater.region;
|
|
8211
7046
|
isFunctionsExist = true;
|
|
8212
7047
|
}
|
|
8213
7048
|
} catch {}
|
|
8214
7049
|
if (!isFunctionsExist) {
|
|
8215
|
-
const selectedRegion = await
|
|
7050
|
+
const selectedRegion = await p.select({
|
|
8216
7051
|
message: "Select Region",
|
|
8217
7052
|
options: REGIONS,
|
|
8218
7053
|
initialValue: REGIONS[0].value
|
|
8219
7054
|
});
|
|
8220
|
-
if (
|
|
8221
|
-
|
|
7055
|
+
if (p.isCancel(selectedRegion)) {
|
|
7056
|
+
p.cancel("Operation cancelled.");
|
|
8222
7057
|
process.exit(1);
|
|
8223
7058
|
}
|
|
8224
7059
|
currentRegion = selectedRegion;
|
|
8225
7060
|
}
|
|
8226
7061
|
if (!currentRegion) {
|
|
8227
|
-
|
|
7062
|
+
p.log.error("Region is not set");
|
|
8228
7063
|
await removeTmpDir();
|
|
8229
7064
|
process.exit(1);
|
|
8230
7065
|
}
|
|
@@ -8235,7 +7070,7 @@ const runInit = async ({ build }) => {
|
|
|
8235
7070
|
}]);
|
|
8236
7071
|
await deployFirestore(tmpDir);
|
|
8237
7072
|
await deployFunctions(tmpDir);
|
|
8238
|
-
await
|
|
7073
|
+
await p.tasks([{
|
|
8239
7074
|
title: "Check IAM policy",
|
|
8240
7075
|
async task(message) {
|
|
8241
7076
|
const functionsList = await execa("npx", [
|
|
@@ -8248,7 +7083,7 @@ const runInit = async ({ build }) => {
|
|
|
8248
7083
|
});
|
|
8249
7084
|
const account = (JSON.parse(functionsList.stdout).result || []).find((fn) => fn.id === "hot-updater")?.serviceAccount;
|
|
8250
7085
|
if (!account) {
|
|
8251
|
-
|
|
7086
|
+
p.log.error("hot-updater function not found");
|
|
8252
7087
|
await removeTmpDir();
|
|
8253
7088
|
process.exit(1);
|
|
8254
7089
|
}
|
|
@@ -8270,10 +7105,10 @@ const runInit = async ({ build }) => {
|
|
|
8270
7105
|
stdio: "inherit",
|
|
8271
7106
|
shell: true
|
|
8272
7107
|
});
|
|
8273
|
-
|
|
7108
|
+
p.log.success("IAM Service Account Token Creator role has been added to the service account");
|
|
8274
7109
|
} catch {
|
|
8275
|
-
|
|
8276
|
-
|
|
7110
|
+
p.log.error("Please go to the following link to add the IAM Service Account Token Creator role to the service account");
|
|
7111
|
+
p.log.step(link(`https://console.cloud.google.com/iam-admin/iam/project/${initializeVariable.projectId}/serviceaccounts/${account}/edit?inv=1`));
|
|
8277
7112
|
await removeTmpDir();
|
|
8278
7113
|
process.exit(1);
|
|
8279
7114
|
}
|
|
@@ -8281,15 +7116,15 @@ const runInit = async ({ build }) => {
|
|
|
8281
7116
|
}
|
|
8282
7117
|
}]);
|
|
8283
7118
|
if (!currentRegion) {
|
|
8284
|
-
|
|
7119
|
+
p.log.error("Region is not set");
|
|
8285
7120
|
await removeTmpDir();
|
|
8286
7121
|
process.exit(1);
|
|
8287
7122
|
}
|
|
8288
7123
|
await printTemplate(initializeVariable.projectId, currentRegion);
|
|
8289
7124
|
await removeTmpDir();
|
|
8290
|
-
|
|
8291
|
-
|
|
8292
|
-
|
|
7125
|
+
p.log.message(`Next step: ${link("https://hot-updater.dev/docs/managed/firebase#step-3-generated-configurations")}`);
|
|
7126
|
+
p.log.message("Next step: Change GOOGLE_APPLICATION_CREDENTIALS=your-credentials.json in .env file");
|
|
7127
|
+
p.log.success("Done! 🎉");
|
|
8293
7128
|
};
|
|
8294
7129
|
|
|
8295
7130
|
//#endregion
|