thinkwell 0.4.1 → 0.4.2
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/cli/build.d.ts +21 -0
- package/dist/cli/build.d.ts.map +1 -1
- package/dist/cli/build.js +346 -9
- package/dist/cli/build.js.map +1 -1
- package/dist/cli/main.js +1 -1
- package/dist-pkg/cli-build.cjs +360 -3362
- package/package.json +5 -6
package/dist-pkg/cli-build.cjs
CHANGED
|
@@ -341,7 +341,7 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
341
341
|
let sourceRoot = getFlag(options, keys, "sourceRoot", mustBeString);
|
|
342
342
|
let sourcesContent = getFlag(options, keys, "sourcesContent", mustBeBoolean);
|
|
343
343
|
let target = getFlag(options, keys, "target", mustBeStringOrArrayOfStrings);
|
|
344
|
-
let
|
|
344
|
+
let format = getFlag(options, keys, "format", mustBeString);
|
|
345
345
|
let globalName = getFlag(options, keys, "globalName", mustBeString);
|
|
346
346
|
let mangleProps = getFlag(options, keys, "mangleProps", mustBeRegExp);
|
|
347
347
|
let reserveProps = getFlag(options, keys, "reserveProps", mustBeRegExp);
|
|
@@ -374,7 +374,7 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
374
374
|
if (sourceRoot !== void 0) flags.push(`--source-root=${sourceRoot}`);
|
|
375
375
|
if (sourcesContent !== void 0) flags.push(`--sources-content=${sourcesContent}`);
|
|
376
376
|
if (target) flags.push(`--target=${validateAndJoinStringArray(Array.isArray(target) ? target : [target], "target")}`);
|
|
377
|
-
if (
|
|
377
|
+
if (format) flags.push(`--format=${format}`);
|
|
378
378
|
if (globalName) flags.push(`--global-name=${globalName}`);
|
|
379
379
|
if (platform) flags.push(`--platform=${platform}`);
|
|
380
380
|
if (tsconfigRaw) flags.push(`--tsconfig-raw=${typeof tsconfigRaw === "string" ? tsconfigRaw : JSON.stringify(tsconfigRaw)}`);
|
|
@@ -623,9 +623,9 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
623
623
|
stdoutUsed -= offset;
|
|
624
624
|
}
|
|
625
625
|
}, "readFromStdout");
|
|
626
|
-
let afterClose = /* @__PURE__ */ __name((
|
|
626
|
+
let afterClose = /* @__PURE__ */ __name((error) => {
|
|
627
627
|
closeData.didClose = true;
|
|
628
|
-
if (
|
|
628
|
+
if (error) closeData.reason = ": " + (error.message || error);
|
|
629
629
|
const text = "The service was stopped" + closeData.reason;
|
|
630
630
|
for (let id in responseCallbacks) {
|
|
631
631
|
responseCallbacks[id](text, null);
|
|
@@ -635,9 +635,9 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
635
635
|
let sendRequest = /* @__PURE__ */ __name((refs, value, callback) => {
|
|
636
636
|
if (closeData.didClose) return callback("The service is no longer running" + closeData.reason, null);
|
|
637
637
|
let id = nextRequestID++;
|
|
638
|
-
responseCallbacks[id] = (
|
|
638
|
+
responseCallbacks[id] = (error, response) => {
|
|
639
639
|
try {
|
|
640
|
-
callback(
|
|
640
|
+
callback(error, response);
|
|
641
641
|
} finally {
|
|
642
642
|
if (refs) refs.unref();
|
|
643
643
|
}
|
|
@@ -751,8 +751,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
751
751
|
input: inputPath !== null ? encodeUTF8(inputPath) : typeof input === "string" ? encodeUTF8(input) : input
|
|
752
752
|
};
|
|
753
753
|
if (mangleCache) request.mangleCache = mangleCache;
|
|
754
|
-
sendRequest(refs, request, (
|
|
755
|
-
if (
|
|
754
|
+
sendRequest(refs, request, (error, response) => {
|
|
755
|
+
if (error) return callback(new Error(error), null);
|
|
756
756
|
let errors = replaceDetailsInMessages(response.errors, details);
|
|
757
757
|
let warnings = replaceDetailsInMessages(response.warnings, details);
|
|
758
758
|
let outstanding = 1;
|
|
@@ -801,10 +801,10 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
801
801
|
pushLogFlags(flags, options, {}, isTTY2, transformLogLevelDefault);
|
|
802
802
|
} catch {
|
|
803
803
|
}
|
|
804
|
-
const
|
|
805
|
-
sendRequest(refs, { command: "error", flags, error
|
|
806
|
-
|
|
807
|
-
callback(failureErrorWithLog("Transform failed", [
|
|
804
|
+
const error = extractErrorMessageV8(e, streamIn, details, void 0, "");
|
|
805
|
+
sendRequest(refs, { command: "error", flags, error }, () => {
|
|
806
|
+
error.detail = details.load(error.detail);
|
|
807
|
+
callback(failureErrorWithLog("Transform failed", [error], []), null);
|
|
808
808
|
});
|
|
809
809
|
}
|
|
810
810
|
}, "start");
|
|
@@ -830,8 +830,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
830
830
|
};
|
|
831
831
|
if (color !== void 0) request.color = color;
|
|
832
832
|
if (terminalWidth !== void 0) request.terminalWidth = terminalWidth;
|
|
833
|
-
sendRequest(refs, request, (
|
|
834
|
-
if (
|
|
833
|
+
sendRequest(refs, request, (error, response) => {
|
|
834
|
+
if (error) return callback(new Error(error), null);
|
|
835
835
|
callback(null, response.messages);
|
|
836
836
|
});
|
|
837
837
|
}, "formatMessages2");
|
|
@@ -847,8 +847,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
847
847
|
};
|
|
848
848
|
if (color !== void 0) request.color = color;
|
|
849
849
|
if (verbose !== void 0) request.verbose = verbose;
|
|
850
|
-
sendRequest(refs, request, (
|
|
851
|
-
if (
|
|
850
|
+
sendRequest(refs, request, (error, response) => {
|
|
851
|
+
if (error) return callback(new Error(error), null);
|
|
852
852
|
callback(null, response.result);
|
|
853
853
|
});
|
|
854
854
|
}, "analyzeMetafile2");
|
|
@@ -961,8 +961,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
961
961
|
if (response.writeToStdout !== void 0) console.log(decodeUTF8(response.writeToStdout).replace(/\n$/, ""));
|
|
962
962
|
runOnEndCallbacks(result, (onEndErrors, onEndWarnings) => {
|
|
963
963
|
if (originalErrors.length > 0 || onEndErrors.length > 0) {
|
|
964
|
-
const
|
|
965
|
-
return callback2(
|
|
964
|
+
const error = failureErrorWithLog("Build failed", originalErrors.concat(onEndErrors), originalWarnings.concat(onEndWarnings));
|
|
965
|
+
return callback2(error, null, onEndErrors, onEndWarnings);
|
|
966
966
|
}
|
|
967
967
|
callback2(null, result, onEndErrors, onEndWarnings);
|
|
968
968
|
});
|
|
@@ -983,8 +983,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
983
983
|
resolve2();
|
|
984
984
|
});
|
|
985
985
|
});
|
|
986
|
-
sendRequest(refs, request, (
|
|
987
|
-
if (
|
|
986
|
+
sendRequest(refs, request, (error, response) => {
|
|
987
|
+
if (error) return callback(new Error(error), null);
|
|
988
988
|
if (!isContext) {
|
|
989
989
|
return buildResponseToResult(response, (err, res) => {
|
|
990
990
|
scheduleOnDisposeCallbacks();
|
|
@@ -1007,9 +1007,9 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
1007
1007
|
command: "rebuild",
|
|
1008
1008
|
key: buildKey
|
|
1009
1009
|
};
|
|
1010
|
-
sendRequest(refs, request2, (
|
|
1011
|
-
if (
|
|
1012
|
-
reject(new Error(
|
|
1010
|
+
sendRequest(refs, request2, (error2, response2) => {
|
|
1011
|
+
if (error2) {
|
|
1012
|
+
reject(new Error(error2));
|
|
1013
1013
|
} else if (settlePromise) {
|
|
1014
1014
|
settlePromise();
|
|
1015
1015
|
} else {
|
|
@@ -1031,8 +1031,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
1031
1031
|
key: buildKey
|
|
1032
1032
|
};
|
|
1033
1033
|
if (delay) request2.delay = delay;
|
|
1034
|
-
sendRequest(refs, request2, (
|
|
1035
|
-
if (
|
|
1034
|
+
sendRequest(refs, request2, (error2) => {
|
|
1035
|
+
if (error2) reject(new Error(error2));
|
|
1036
1036
|
else resolve2(void 0);
|
|
1037
1037
|
});
|
|
1038
1038
|
}), "watch"),
|
|
@@ -1066,8 +1066,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
1066
1066
|
if (Array.isArray(origin)) request2.corsOrigin = origin;
|
|
1067
1067
|
else if (origin !== void 0) request2.corsOrigin = [origin];
|
|
1068
1068
|
}
|
|
1069
|
-
sendRequest(refs, request2, (
|
|
1070
|
-
if (
|
|
1069
|
+
sendRequest(refs, request2, (error2, response2) => {
|
|
1070
|
+
if (error2) return reject(new Error(error2));
|
|
1071
1071
|
if (onRequest) {
|
|
1072
1072
|
requestCallbacks["serve-request"] = (id, request3) => {
|
|
1073
1073
|
onRequest(request3.args);
|
|
@@ -1163,8 +1163,8 @@ is not a problem with esbuild. You need to fix your environment instead.
|
|
|
1163
1163
|
else throw new Error(`Must specify "kind" when calling "resolve"`);
|
|
1164
1164
|
if (pluginData != null) request.pluginData = details.store(pluginData);
|
|
1165
1165
|
if (importAttributes != null) request.with = sanitizeStringMap(importAttributes, "with");
|
|
1166
|
-
sendRequest(refs, request, (
|
|
1167
|
-
if (
|
|
1166
|
+
sendRequest(refs, request, (error, response) => {
|
|
1167
|
+
if (error !== null) reject(new Error(error));
|
|
1168
1168
|
else resolve22({
|
|
1169
1169
|
errors: replaceDetailsInMessages(response.errors, details),
|
|
1170
1170
|
warnings: replaceDetailsInMessages(response.warnings, details),
|
|
@@ -1508,20 +1508,20 @@ error: ${e.text}`;
|
|
|
1508
1508
|
return `
|
|
1509
1509
|
${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;
|
|
1510
1510
|
}).join("");
|
|
1511
|
-
let
|
|
1511
|
+
let error = new Error(text);
|
|
1512
1512
|
for (const [key, value] of [["errors", errors], ["warnings", warnings]]) {
|
|
1513
|
-
Object.defineProperty(
|
|
1513
|
+
Object.defineProperty(error, key, {
|
|
1514
1514
|
configurable: true,
|
|
1515
1515
|
enumerable: true,
|
|
1516
1516
|
get: /* @__PURE__ */ __name(() => value, "get"),
|
|
1517
|
-
set: /* @__PURE__ */ __name((value2) => Object.defineProperty(
|
|
1517
|
+
set: /* @__PURE__ */ __name((value2) => Object.defineProperty(error, key, {
|
|
1518
1518
|
configurable: true,
|
|
1519
1519
|
enumerable: true,
|
|
1520
1520
|
value: value2
|
|
1521
1521
|
}), "set")
|
|
1522
1522
|
});
|
|
1523
1523
|
}
|
|
1524
|
-
return
|
|
1524
|
+
return error;
|
|
1525
1525
|
}
|
|
1526
1526
|
__name(failureErrorWithLog, "failureErrorWithLog");
|
|
1527
1527
|
function replaceDetailsInMessages(messages, stash) {
|
|
@@ -1644,7 +1644,7 @@ ${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;
|
|
|
1644
1644
|
}
|
|
1645
1645
|
__name(jsRegExpToGoRegExp, "jsRegExpToGoRegExp");
|
|
1646
1646
|
var fs = require("fs");
|
|
1647
|
-
var
|
|
1647
|
+
var os = require("os");
|
|
1648
1648
|
var path = require("path");
|
|
1649
1649
|
var ESBUILD_BINARY_PATH = process.env.ESBUILD_BINARY_PATH || ESBUILD_BINARY_PATH;
|
|
1650
1650
|
var isValidBinaryPath = /* @__PURE__ */ __name((x) => !!x && x !== "/usr/bin/esbuild", "isValidBinaryPath");
|
|
@@ -1686,7 +1686,7 @@ ${file}:${line}:${column}: ERROR: ${pluginText}${e.text}`;
|
|
|
1686
1686
|
let pkg;
|
|
1687
1687
|
let subpath;
|
|
1688
1688
|
let isWASM = false;
|
|
1689
|
-
let platformKey = `${process.platform} ${
|
|
1689
|
+
let platformKey = `${process.platform} ${os.arch()} ${os.endianness()}`;
|
|
1690
1690
|
if (platformKey in knownWindowsPackages) {
|
|
1691
1691
|
pkg = knownWindowsPackages[platformKey];
|
|
1692
1692
|
subpath = "esbuild.exe";
|
|
@@ -1840,8 +1840,8 @@ for your current platform.`);
|
|
|
1840
1840
|
var crypto = require("crypto");
|
|
1841
1841
|
var path2 = require("path");
|
|
1842
1842
|
var fs2 = require("fs");
|
|
1843
|
-
var
|
|
1844
|
-
var
|
|
1843
|
+
var os2 = require("os");
|
|
1844
|
+
var tty = require("tty");
|
|
1845
1845
|
var worker_threads;
|
|
1846
1846
|
if (process.env.ESBUILD_WORKER_THREADS !== "0") {
|
|
1847
1847
|
try {
|
|
@@ -1877,7 +1877,7 @@ More information: The file containing the code for esbuild's JavaScript API (${_
|
|
|
1877
1877
|
}
|
|
1878
1878
|
}
|
|
1879
1879
|
}, "esbuildCommandAndArgs");
|
|
1880
|
-
var isTTY = /* @__PURE__ */ __name(() =>
|
|
1880
|
+
var isTTY = /* @__PURE__ */ __name(() => tty.isatty(2), "isTTY");
|
|
1881
1881
|
var fsSync = {
|
|
1882
1882
|
readFile(tempFile, callback) {
|
|
1883
1883
|
try {
|
|
@@ -2145,7 +2145,7 @@ More information: The file containing the code for esbuild's JavaScript API (${_
|
|
|
2145
2145
|
afterClose(null);
|
|
2146
2146
|
}, "runServiceSync");
|
|
2147
2147
|
var randomFileName = /* @__PURE__ */ __name(() => {
|
|
2148
|
-
return path2.join(
|
|
2148
|
+
return path2.join(os2.tmpdir(), `esbuild-${crypto.randomBytes(32).toString("hex")}`);
|
|
2149
2149
|
}, "randomFileName");
|
|
2150
2150
|
var workerThreadService = null;
|
|
2151
2151
|
var startWorkerThreadService = /* @__PURE__ */ __name((worker_threads2) => {
|
|
@@ -2166,12 +2166,12 @@ More information: The file containing the code for esbuild's JavaScript API (${_
|
|
|
2166
2166
|
});
|
|
2167
2167
|
let nextID = 0;
|
|
2168
2168
|
let fakeBuildError = /* @__PURE__ */ __name((text) => {
|
|
2169
|
-
let
|
|
2169
|
+
let error = new Error(`Build failed with 1 error:
|
|
2170
2170
|
error: ${text}`);
|
|
2171
2171
|
let errors = [{ id: "", pluginName: "", text, location: null, notes: [], detail: void 0 }];
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
return
|
|
2172
|
+
error.errors = errors;
|
|
2173
|
+
error.warnings = [];
|
|
2174
|
+
return error;
|
|
2175
2175
|
}, "fakeBuildError");
|
|
2176
2176
|
let validateBuildSyncOptions = /* @__PURE__ */ __name((options) => {
|
|
2177
2177
|
if (!options) return;
|
|
@@ -2291,3312 +2291,101 @@ module.exports = __toCommonJS(build_exports);
|
|
|
2291
2291
|
var import_node_fs = require("node:fs");
|
|
2292
2292
|
var import_node_path = require("node:path");
|
|
2293
2293
|
var import_node_url = require("node:url");
|
|
2294
|
-
var
|
|
2295
|
-
var
|
|
2294
|
+
var import_node_util = require("node:util");
|
|
2295
|
+
var import_node_os = require("node:os");
|
|
2296
2296
|
var import_node_crypto = require("node:crypto");
|
|
2297
2297
|
var import_node_child_process = require("node:child_process");
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
var
|
|
2301
|
-
var
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
underline: [4, 24],
|
|
2316
|
-
overline: [53, 55],
|
|
2317
|
-
inverse: [7, 27],
|
|
2318
|
-
hidden: [8, 28],
|
|
2319
|
-
strikethrough: [9, 29]
|
|
2320
|
-
},
|
|
2321
|
-
color: {
|
|
2322
|
-
black: [30, 39],
|
|
2323
|
-
red: [31, 39],
|
|
2324
|
-
green: [32, 39],
|
|
2325
|
-
yellow: [33, 39],
|
|
2326
|
-
blue: [34, 39],
|
|
2327
|
-
magenta: [35, 39],
|
|
2328
|
-
cyan: [36, 39],
|
|
2329
|
-
white: [37, 39],
|
|
2330
|
-
// Bright color
|
|
2331
|
-
blackBright: [90, 39],
|
|
2332
|
-
gray: [90, 39],
|
|
2333
|
-
// Alias of `blackBright`
|
|
2334
|
-
grey: [90, 39],
|
|
2335
|
-
// Alias of `blackBright`
|
|
2336
|
-
redBright: [91, 39],
|
|
2337
|
-
greenBright: [92, 39],
|
|
2338
|
-
yellowBright: [93, 39],
|
|
2339
|
-
blueBright: [94, 39],
|
|
2340
|
-
magentaBright: [95, 39],
|
|
2341
|
-
cyanBright: [96, 39],
|
|
2342
|
-
whiteBright: [97, 39]
|
|
2343
|
-
},
|
|
2344
|
-
bgColor: {
|
|
2345
|
-
bgBlack: [40, 49],
|
|
2346
|
-
bgRed: [41, 49],
|
|
2347
|
-
bgGreen: [42, 49],
|
|
2348
|
-
bgYellow: [43, 49],
|
|
2349
|
-
bgBlue: [44, 49],
|
|
2350
|
-
bgMagenta: [45, 49],
|
|
2351
|
-
bgCyan: [46, 49],
|
|
2352
|
-
bgWhite: [47, 49],
|
|
2353
|
-
// Bright color
|
|
2354
|
-
bgBlackBright: [100, 49],
|
|
2355
|
-
bgGray: [100, 49],
|
|
2356
|
-
// Alias of `bgBlackBright`
|
|
2357
|
-
bgGrey: [100, 49],
|
|
2358
|
-
// Alias of `bgBlackBright`
|
|
2359
|
-
bgRedBright: [101, 49],
|
|
2360
|
-
bgGreenBright: [102, 49],
|
|
2361
|
-
bgYellowBright: [103, 49],
|
|
2362
|
-
bgBlueBright: [104, 49],
|
|
2363
|
-
bgMagentaBright: [105, 49],
|
|
2364
|
-
bgCyanBright: [106, 49],
|
|
2365
|
-
bgWhiteBright: [107, 49]
|
|
2366
|
-
}
|
|
2367
|
-
};
|
|
2368
|
-
var modifierNames = Object.keys(styles.modifier);
|
|
2369
|
-
var foregroundColorNames = Object.keys(styles.color);
|
|
2370
|
-
var backgroundColorNames = Object.keys(styles.bgColor);
|
|
2371
|
-
var colorNames = [...foregroundColorNames, ...backgroundColorNames];
|
|
2372
|
-
function assembleStyles() {
|
|
2373
|
-
const codes = /* @__PURE__ */ new Map();
|
|
2374
|
-
for (const [groupName, group] of Object.entries(styles)) {
|
|
2375
|
-
for (const [styleName, style] of Object.entries(group)) {
|
|
2376
|
-
styles[styleName] = {
|
|
2377
|
-
open: `\x1B[${style[0]}m`,
|
|
2378
|
-
close: `\x1B[${style[1]}m`
|
|
2379
|
-
};
|
|
2380
|
-
group[styleName] = styles[styleName];
|
|
2381
|
-
codes.set(style[0], style[1]);
|
|
2382
|
-
}
|
|
2383
|
-
Object.defineProperty(styles, groupName, {
|
|
2384
|
-
value: group,
|
|
2385
|
-
enumerable: false
|
|
2386
|
-
});
|
|
2387
|
-
}
|
|
2388
|
-
Object.defineProperty(styles, "codes", {
|
|
2389
|
-
value: codes,
|
|
2390
|
-
enumerable: false
|
|
2391
|
-
});
|
|
2392
|
-
styles.color.close = "\x1B[39m";
|
|
2393
|
-
styles.bgColor.close = "\x1B[49m";
|
|
2394
|
-
styles.color.ansi = wrapAnsi16();
|
|
2395
|
-
styles.color.ansi256 = wrapAnsi256();
|
|
2396
|
-
styles.color.ansi16m = wrapAnsi16m();
|
|
2397
|
-
styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
|
|
2398
|
-
styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
|
|
2399
|
-
styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
|
|
2400
|
-
Object.defineProperties(styles, {
|
|
2401
|
-
rgbToAnsi256: {
|
|
2402
|
-
value(red2, green2, blue2) {
|
|
2403
|
-
if (red2 === green2 && green2 === blue2) {
|
|
2404
|
-
if (red2 < 8) {
|
|
2405
|
-
return 16;
|
|
2406
|
-
}
|
|
2407
|
-
if (red2 > 248) {
|
|
2408
|
-
return 231;
|
|
2409
|
-
}
|
|
2410
|
-
return Math.round((red2 - 8) / 247 * 24) + 232;
|
|
2411
|
-
}
|
|
2412
|
-
return 16 + 36 * Math.round(red2 / 255 * 5) + 6 * Math.round(green2 / 255 * 5) + Math.round(blue2 / 255 * 5);
|
|
2413
|
-
},
|
|
2414
|
-
enumerable: false
|
|
2415
|
-
},
|
|
2416
|
-
hexToRgb: {
|
|
2417
|
-
value(hex) {
|
|
2418
|
-
const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
|
|
2419
|
-
if (!matches) {
|
|
2420
|
-
return [0, 0, 0];
|
|
2421
|
-
}
|
|
2422
|
-
let [colorString] = matches;
|
|
2423
|
-
if (colorString.length === 3) {
|
|
2424
|
-
colorString = [...colorString].map((character) => character + character).join("");
|
|
2425
|
-
}
|
|
2426
|
-
const integer = Number.parseInt(colorString, 16);
|
|
2427
|
-
return [
|
|
2428
|
-
/* eslint-disable no-bitwise */
|
|
2429
|
-
integer >> 16 & 255,
|
|
2430
|
-
integer >> 8 & 255,
|
|
2431
|
-
integer & 255
|
|
2432
|
-
/* eslint-enable no-bitwise */
|
|
2433
|
-
];
|
|
2434
|
-
},
|
|
2435
|
-
enumerable: false
|
|
2436
|
-
},
|
|
2437
|
-
hexToAnsi256: {
|
|
2438
|
-
value: /* @__PURE__ */ __name((hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)), "value"),
|
|
2439
|
-
enumerable: false
|
|
2440
|
-
},
|
|
2441
|
-
ansi256ToAnsi: {
|
|
2442
|
-
value(code) {
|
|
2443
|
-
if (code < 8) {
|
|
2444
|
-
return 30 + code;
|
|
2445
|
-
}
|
|
2446
|
-
if (code < 16) {
|
|
2447
|
-
return 90 + (code - 8);
|
|
2448
|
-
}
|
|
2449
|
-
let red2;
|
|
2450
|
-
let green2;
|
|
2451
|
-
let blue2;
|
|
2452
|
-
if (code >= 232) {
|
|
2453
|
-
red2 = ((code - 232) * 10 + 8) / 255;
|
|
2454
|
-
green2 = red2;
|
|
2455
|
-
blue2 = red2;
|
|
2456
|
-
} else {
|
|
2457
|
-
code -= 16;
|
|
2458
|
-
const remainder = code % 36;
|
|
2459
|
-
red2 = Math.floor(code / 36) / 5;
|
|
2460
|
-
green2 = Math.floor(remainder / 6) / 5;
|
|
2461
|
-
blue2 = remainder % 6 / 5;
|
|
2462
|
-
}
|
|
2463
|
-
const value = Math.max(red2, green2, blue2) * 2;
|
|
2464
|
-
if (value === 0) {
|
|
2465
|
-
return 30;
|
|
2466
|
-
}
|
|
2467
|
-
let result = 30 + (Math.round(blue2) << 2 | Math.round(green2) << 1 | Math.round(red2));
|
|
2468
|
-
if (value === 2) {
|
|
2469
|
-
result += 60;
|
|
2470
|
-
}
|
|
2471
|
-
return result;
|
|
2472
|
-
},
|
|
2473
|
-
enumerable: false
|
|
2474
|
-
},
|
|
2475
|
-
rgbToAnsi: {
|
|
2476
|
-
value: /* @__PURE__ */ __name((red2, green2, blue2) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red2, green2, blue2)), "value"),
|
|
2477
|
-
enumerable: false
|
|
2478
|
-
},
|
|
2479
|
-
hexToAnsi: {
|
|
2480
|
-
value: /* @__PURE__ */ __name((hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)), "value"),
|
|
2481
|
-
enumerable: false
|
|
2482
|
-
}
|
|
2483
|
-
});
|
|
2484
|
-
return styles;
|
|
2485
|
-
}
|
|
2486
|
-
__name(assembleStyles, "assembleStyles");
|
|
2487
|
-
var ansiStyles = assembleStyles();
|
|
2488
|
-
var ansi_styles_default = ansiStyles;
|
|
2489
|
-
|
|
2490
|
-
// ../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/index.js
|
|
2491
|
-
var import_node_process = __toESM(require("node:process"), 1);
|
|
2492
|
-
var import_node_os = __toESM(require("node:os"), 1);
|
|
2493
|
-
var import_node_tty = __toESM(require("node:tty"), 1);
|
|
2494
|
-
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : import_node_process.default.argv) {
|
|
2495
|
-
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
2496
|
-
const position = argv.indexOf(prefix + flag);
|
|
2497
|
-
const terminatorPosition = argv.indexOf("--");
|
|
2498
|
-
return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
|
|
2499
|
-
}
|
|
2500
|
-
__name(hasFlag, "hasFlag");
|
|
2501
|
-
var { env } = import_node_process.default;
|
|
2502
|
-
var flagForceColor;
|
|
2503
|
-
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
|
|
2504
|
-
flagForceColor = 0;
|
|
2505
|
-
} else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
|
|
2506
|
-
flagForceColor = 1;
|
|
2507
|
-
}
|
|
2508
|
-
function envForceColor() {
|
|
2509
|
-
if ("FORCE_COLOR" in env) {
|
|
2510
|
-
if (env.FORCE_COLOR === "true") {
|
|
2511
|
-
return 1;
|
|
2512
|
-
}
|
|
2513
|
-
if (env.FORCE_COLOR === "false") {
|
|
2514
|
-
return 0;
|
|
2515
|
-
}
|
|
2516
|
-
return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
|
|
2517
|
-
}
|
|
2518
|
-
}
|
|
2519
|
-
__name(envForceColor, "envForceColor");
|
|
2520
|
-
function translateLevel(level) {
|
|
2521
|
-
if (level === 0) {
|
|
2522
|
-
return false;
|
|
2523
|
-
}
|
|
2524
|
-
return {
|
|
2525
|
-
level,
|
|
2526
|
-
hasBasic: true,
|
|
2527
|
-
has256: level >= 2,
|
|
2528
|
-
has16m: level >= 3
|
|
2529
|
-
};
|
|
2530
|
-
}
|
|
2531
|
-
__name(translateLevel, "translateLevel");
|
|
2532
|
-
function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
2533
|
-
const noFlagForceColor = envForceColor();
|
|
2534
|
-
if (noFlagForceColor !== void 0) {
|
|
2535
|
-
flagForceColor = noFlagForceColor;
|
|
2536
|
-
}
|
|
2537
|
-
const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
|
|
2538
|
-
if (forceColor === 0) {
|
|
2539
|
-
return 0;
|
|
2540
|
-
}
|
|
2541
|
-
if (sniffFlags) {
|
|
2542
|
-
if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
|
|
2543
|
-
return 3;
|
|
2544
|
-
}
|
|
2545
|
-
if (hasFlag("color=256")) {
|
|
2546
|
-
return 2;
|
|
2547
|
-
}
|
|
2548
|
-
}
|
|
2549
|
-
if ("TF_BUILD" in env && "AGENT_NAME" in env) {
|
|
2550
|
-
return 1;
|
|
2551
|
-
}
|
|
2552
|
-
if (haveStream && !streamIsTTY && forceColor === void 0) {
|
|
2553
|
-
return 0;
|
|
2554
|
-
}
|
|
2555
|
-
const min = forceColor || 0;
|
|
2556
|
-
if (env.TERM === "dumb") {
|
|
2557
|
-
return min;
|
|
2558
|
-
}
|
|
2559
|
-
if (import_node_process.default.platform === "win32") {
|
|
2560
|
-
const osRelease = import_node_os.default.release().split(".");
|
|
2561
|
-
if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
|
|
2562
|
-
return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
|
2563
|
-
}
|
|
2564
|
-
return 1;
|
|
2565
|
-
}
|
|
2566
|
-
if ("CI" in env) {
|
|
2567
|
-
if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env)) {
|
|
2568
|
-
return 3;
|
|
2569
|
-
}
|
|
2570
|
-
if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
|
|
2571
|
-
return 1;
|
|
2572
|
-
}
|
|
2573
|
-
return min;
|
|
2574
|
-
}
|
|
2575
|
-
if ("TEAMCITY_VERSION" in env) {
|
|
2576
|
-
return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
|
|
2577
|
-
}
|
|
2578
|
-
if (env.COLORTERM === "truecolor") {
|
|
2579
|
-
return 3;
|
|
2580
|
-
}
|
|
2581
|
-
if (env.TERM === "xterm-kitty") {
|
|
2582
|
-
return 3;
|
|
2583
|
-
}
|
|
2584
|
-
if (env.TERM === "xterm-ghostty") {
|
|
2585
|
-
return 3;
|
|
2586
|
-
}
|
|
2587
|
-
if (env.TERM === "wezterm") {
|
|
2588
|
-
return 3;
|
|
2589
|
-
}
|
|
2590
|
-
if ("TERM_PROGRAM" in env) {
|
|
2591
|
-
const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
2592
|
-
switch (env.TERM_PROGRAM) {
|
|
2593
|
-
case "iTerm.app": {
|
|
2594
|
-
return version >= 3 ? 3 : 2;
|
|
2595
|
-
}
|
|
2596
|
-
case "Apple_Terminal": {
|
|
2597
|
-
return 2;
|
|
2598
|
-
}
|
|
2599
|
-
}
|
|
2600
|
-
}
|
|
2601
|
-
if (/-256(color)?$/i.test(env.TERM)) {
|
|
2602
|
-
return 2;
|
|
2603
|
-
}
|
|
2604
|
-
if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
|
|
2605
|
-
return 1;
|
|
2606
|
-
}
|
|
2607
|
-
if ("COLORTERM" in env) {
|
|
2608
|
-
return 1;
|
|
2609
|
-
}
|
|
2610
|
-
return min;
|
|
2611
|
-
}
|
|
2612
|
-
__name(_supportsColor, "_supportsColor");
|
|
2613
|
-
function createSupportsColor(stream, options = {}) {
|
|
2614
|
-
const level = _supportsColor(stream, {
|
|
2615
|
-
streamIsTTY: stream && stream.isTTY,
|
|
2616
|
-
...options
|
|
2617
|
-
});
|
|
2618
|
-
return translateLevel(level);
|
|
2619
|
-
}
|
|
2620
|
-
__name(createSupportsColor, "createSupportsColor");
|
|
2621
|
-
var supportsColor = {
|
|
2622
|
-
stdout: createSupportsColor({ isTTY: import_node_tty.default.isatty(1) }),
|
|
2623
|
-
stderr: createSupportsColor({ isTTY: import_node_tty.default.isatty(2) })
|
|
2624
|
-
};
|
|
2625
|
-
var supports_color_default = supportsColor;
|
|
2626
|
-
|
|
2627
|
-
// ../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.js
|
|
2628
|
-
function stringReplaceAll(string, substring, replacer) {
|
|
2629
|
-
let index = string.indexOf(substring);
|
|
2630
|
-
if (index === -1) {
|
|
2631
|
-
return string;
|
|
2632
|
-
}
|
|
2633
|
-
const substringLength = substring.length;
|
|
2634
|
-
let endIndex = 0;
|
|
2635
|
-
let returnValue = "";
|
|
2636
|
-
do {
|
|
2637
|
-
returnValue += string.slice(endIndex, index) + substring + replacer;
|
|
2638
|
-
endIndex = index + substringLength;
|
|
2639
|
-
index = string.indexOf(substring, endIndex);
|
|
2640
|
-
} while (index !== -1);
|
|
2641
|
-
returnValue += string.slice(endIndex);
|
|
2642
|
-
return returnValue;
|
|
2643
|
-
}
|
|
2644
|
-
__name(stringReplaceAll, "stringReplaceAll");
|
|
2645
|
-
function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
|
|
2646
|
-
let endIndex = 0;
|
|
2647
|
-
let returnValue = "";
|
|
2648
|
-
do {
|
|
2649
|
-
const gotCR = string[index - 1] === "\r";
|
|
2650
|
-
returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
|
|
2651
|
-
endIndex = index + 1;
|
|
2652
|
-
index = string.indexOf("\n", endIndex);
|
|
2653
|
-
} while (index !== -1);
|
|
2654
|
-
returnValue += string.slice(endIndex);
|
|
2655
|
-
return returnValue;
|
|
2656
|
-
}
|
|
2657
|
-
__name(stringEncaseCRLFWithFirstIndex, "stringEncaseCRLFWithFirstIndex");
|
|
2658
|
-
|
|
2659
|
-
// ../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.js
|
|
2660
|
-
var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default;
|
|
2661
|
-
var GENERATOR = /* @__PURE__ */ Symbol("GENERATOR");
|
|
2662
|
-
var STYLER = /* @__PURE__ */ Symbol("STYLER");
|
|
2663
|
-
var IS_EMPTY = /* @__PURE__ */ Symbol("IS_EMPTY");
|
|
2664
|
-
var levelMapping = [
|
|
2665
|
-
"ansi",
|
|
2666
|
-
"ansi",
|
|
2667
|
-
"ansi256",
|
|
2668
|
-
"ansi16m"
|
|
2669
|
-
];
|
|
2670
|
-
var styles2 = /* @__PURE__ */ Object.create(null);
|
|
2671
|
-
var applyOptions = /* @__PURE__ */ __name((object, options = {}) => {
|
|
2672
|
-
if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
|
|
2673
|
-
throw new Error("The `level` option should be an integer from 0 to 3");
|
|
2674
|
-
}
|
|
2675
|
-
const colorLevel = stdoutColor ? stdoutColor.level : 0;
|
|
2676
|
-
object.level = options.level === void 0 ? colorLevel : options.level;
|
|
2677
|
-
}, "applyOptions");
|
|
2678
|
-
var chalkFactory = /* @__PURE__ */ __name((options) => {
|
|
2679
|
-
const chalk2 = /* @__PURE__ */ __name((...strings) => strings.join(" "), "chalk");
|
|
2680
|
-
applyOptions(chalk2, options);
|
|
2681
|
-
Object.setPrototypeOf(chalk2, createChalk.prototype);
|
|
2682
|
-
return chalk2;
|
|
2683
|
-
}, "chalkFactory");
|
|
2684
|
-
function createChalk(options) {
|
|
2685
|
-
return chalkFactory(options);
|
|
2686
|
-
}
|
|
2687
|
-
__name(createChalk, "createChalk");
|
|
2688
|
-
Object.setPrototypeOf(createChalk.prototype, Function.prototype);
|
|
2689
|
-
for (const [styleName, style] of Object.entries(ansi_styles_default)) {
|
|
2690
|
-
styles2[styleName] = {
|
|
2691
|
-
get() {
|
|
2692
|
-
const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
|
|
2693
|
-
Object.defineProperty(this, styleName, { value: builder });
|
|
2694
|
-
return builder;
|
|
2695
|
-
}
|
|
2696
|
-
};
|
|
2697
|
-
}
|
|
2698
|
-
styles2.visible = {
|
|
2699
|
-
get() {
|
|
2700
|
-
const builder = createBuilder(this, this[STYLER], true);
|
|
2701
|
-
Object.defineProperty(this, "visible", { value: builder });
|
|
2702
|
-
return builder;
|
|
2703
|
-
}
|
|
2704
|
-
};
|
|
2705
|
-
var getModelAnsi = /* @__PURE__ */ __name((model, level, type, ...arguments_) => {
|
|
2706
|
-
if (model === "rgb") {
|
|
2707
|
-
if (level === "ansi16m") {
|
|
2708
|
-
return ansi_styles_default[type].ansi16m(...arguments_);
|
|
2709
|
-
}
|
|
2710
|
-
if (level === "ansi256") {
|
|
2711
|
-
return ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
|
|
2712
|
-
}
|
|
2713
|
-
return ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
|
|
2714
|
-
}
|
|
2715
|
-
if (model === "hex") {
|
|
2716
|
-
return getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_));
|
|
2717
|
-
}
|
|
2718
|
-
return ansi_styles_default[type][model](...arguments_);
|
|
2719
|
-
}, "getModelAnsi");
|
|
2720
|
-
var usedModels = ["rgb", "hex", "ansi256"];
|
|
2721
|
-
for (const model of usedModels) {
|
|
2722
|
-
styles2[model] = {
|
|
2723
|
-
get() {
|
|
2724
|
-
const { level } = this;
|
|
2725
|
-
return function(...arguments_) {
|
|
2726
|
-
const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
|
|
2727
|
-
return createBuilder(this, styler, this[IS_EMPTY]);
|
|
2728
|
-
};
|
|
2729
|
-
}
|
|
2730
|
-
};
|
|
2731
|
-
const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
|
|
2732
|
-
styles2[bgModel] = {
|
|
2733
|
-
get() {
|
|
2734
|
-
const { level } = this;
|
|
2735
|
-
return function(...arguments_) {
|
|
2736
|
-
const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
|
|
2737
|
-
return createBuilder(this, styler, this[IS_EMPTY]);
|
|
2738
|
-
};
|
|
2739
|
-
}
|
|
2740
|
-
};
|
|
2741
|
-
}
|
|
2742
|
-
var proto = Object.defineProperties(() => {
|
|
2743
|
-
}, {
|
|
2744
|
-
...styles2,
|
|
2745
|
-
level: {
|
|
2746
|
-
enumerable: true,
|
|
2747
|
-
get() {
|
|
2748
|
-
return this[GENERATOR].level;
|
|
2749
|
-
},
|
|
2750
|
-
set(level) {
|
|
2751
|
-
this[GENERATOR].level = level;
|
|
2752
|
-
}
|
|
2753
|
-
}
|
|
2754
|
-
});
|
|
2755
|
-
var createStyler = /* @__PURE__ */ __name((open, close, parent) => {
|
|
2756
|
-
let openAll;
|
|
2757
|
-
let closeAll;
|
|
2758
|
-
if (parent === void 0) {
|
|
2759
|
-
openAll = open;
|
|
2760
|
-
closeAll = close;
|
|
2761
|
-
} else {
|
|
2762
|
-
openAll = parent.openAll + open;
|
|
2763
|
-
closeAll = close + parent.closeAll;
|
|
2764
|
-
}
|
|
2765
|
-
return {
|
|
2766
|
-
open,
|
|
2767
|
-
close,
|
|
2768
|
-
openAll,
|
|
2769
|
-
closeAll,
|
|
2770
|
-
parent
|
|
2771
|
-
};
|
|
2772
|
-
}, "createStyler");
|
|
2773
|
-
var createBuilder = /* @__PURE__ */ __name((self, _styler, _isEmpty) => {
|
|
2774
|
-
const builder = /* @__PURE__ */ __name((...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" ")), "builder");
|
|
2775
|
-
Object.setPrototypeOf(builder, proto);
|
|
2776
|
-
builder[GENERATOR] = self;
|
|
2777
|
-
builder[STYLER] = _styler;
|
|
2778
|
-
builder[IS_EMPTY] = _isEmpty;
|
|
2779
|
-
return builder;
|
|
2780
|
-
}, "createBuilder");
|
|
2781
|
-
var applyStyle = /* @__PURE__ */ __name((self, string) => {
|
|
2782
|
-
if (self.level <= 0 || !string) {
|
|
2783
|
-
return self[IS_EMPTY] ? "" : string;
|
|
2784
|
-
}
|
|
2785
|
-
let styler = self[STYLER];
|
|
2786
|
-
if (styler === void 0) {
|
|
2787
|
-
return string;
|
|
2788
|
-
}
|
|
2789
|
-
const { openAll, closeAll } = styler;
|
|
2790
|
-
if (string.includes("\x1B")) {
|
|
2791
|
-
while (styler !== void 0) {
|
|
2792
|
-
string = stringReplaceAll(string, styler.close, styler.open);
|
|
2793
|
-
styler = styler.parent;
|
|
2794
|
-
}
|
|
2795
|
-
}
|
|
2796
|
-
const lfIndex = string.indexOf("\n");
|
|
2797
|
-
if (lfIndex !== -1) {
|
|
2798
|
-
string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
|
|
2799
|
-
}
|
|
2800
|
-
return openAll + string + closeAll;
|
|
2801
|
-
}, "applyStyle");
|
|
2802
|
-
Object.defineProperties(createChalk.prototype, styles2);
|
|
2803
|
-
var chalk = createChalk();
|
|
2804
|
-
var chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
|
|
2805
|
-
var source_default = chalk;
|
|
2806
|
-
|
|
2807
|
-
// ../../node_modules/.pnpm/cli-cursor@5.0.0/node_modules/cli-cursor/index.js
|
|
2808
|
-
var import_node_process3 = __toESM(require("node:process"), 1);
|
|
2809
|
-
|
|
2810
|
-
// ../../node_modules/.pnpm/restore-cursor@5.1.0/node_modules/restore-cursor/index.js
|
|
2811
|
-
var import_node_process2 = __toESM(require("node:process"), 1);
|
|
2812
|
-
|
|
2813
|
-
// ../../node_modules/.pnpm/mimic-function@5.0.1/node_modules/mimic-function/index.js
|
|
2814
|
-
var copyProperty = /* @__PURE__ */ __name((to, from, property, ignoreNonConfigurable) => {
|
|
2815
|
-
if (property === "length" || property === "prototype") {
|
|
2816
|
-
return;
|
|
2817
|
-
}
|
|
2818
|
-
if (property === "arguments" || property === "caller") {
|
|
2819
|
-
return;
|
|
2820
|
-
}
|
|
2821
|
-
const toDescriptor = Object.getOwnPropertyDescriptor(to, property);
|
|
2822
|
-
const fromDescriptor = Object.getOwnPropertyDescriptor(from, property);
|
|
2823
|
-
if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) {
|
|
2824
|
-
return;
|
|
2825
|
-
}
|
|
2826
|
-
Object.defineProperty(to, property, fromDescriptor);
|
|
2827
|
-
}, "copyProperty");
|
|
2828
|
-
var canCopyProperty = /* @__PURE__ */ __name(function(toDescriptor, fromDescriptor) {
|
|
2829
|
-
return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value);
|
|
2830
|
-
}, "canCopyProperty");
|
|
2831
|
-
var changePrototype = /* @__PURE__ */ __name((to, from) => {
|
|
2832
|
-
const fromPrototype = Object.getPrototypeOf(from);
|
|
2833
|
-
if (fromPrototype === Object.getPrototypeOf(to)) {
|
|
2834
|
-
return;
|
|
2835
|
-
}
|
|
2836
|
-
Object.setPrototypeOf(to, fromPrototype);
|
|
2837
|
-
}, "changePrototype");
|
|
2838
|
-
var wrappedToString = /* @__PURE__ */ __name((withName, fromBody) => `/* Wrapped ${withName}*/
|
|
2839
|
-
${fromBody}`, "wrappedToString");
|
|
2840
|
-
var toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString");
|
|
2841
|
-
var toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name");
|
|
2842
|
-
var changeToString = /* @__PURE__ */ __name((to, from, name) => {
|
|
2843
|
-
const withName = name === "" ? "" : `with ${name.trim()}() `;
|
|
2844
|
-
const newToString = wrappedToString.bind(null, withName, from.toString());
|
|
2845
|
-
Object.defineProperty(newToString, "name", toStringName);
|
|
2846
|
-
const { writable, enumerable, configurable } = toStringDescriptor;
|
|
2847
|
-
Object.defineProperty(to, "toString", { value: newToString, writable, enumerable, configurable });
|
|
2848
|
-
}, "changeToString");
|
|
2849
|
-
function mimicFunction(to, from, { ignoreNonConfigurable = false } = {}) {
|
|
2850
|
-
const { name } = to;
|
|
2851
|
-
for (const property of Reflect.ownKeys(from)) {
|
|
2852
|
-
copyProperty(to, from, property, ignoreNonConfigurable);
|
|
2853
|
-
}
|
|
2854
|
-
changePrototype(to, from);
|
|
2855
|
-
changeToString(to, from, name);
|
|
2856
|
-
return to;
|
|
2857
|
-
}
|
|
2858
|
-
__name(mimicFunction, "mimicFunction");
|
|
2859
|
-
|
|
2860
|
-
// ../../node_modules/.pnpm/onetime@7.0.0/node_modules/onetime/index.js
|
|
2861
|
-
var calledFunctions = /* @__PURE__ */ new WeakMap();
|
|
2862
|
-
var onetime = /* @__PURE__ */ __name((function_, options = {}) => {
|
|
2863
|
-
if (typeof function_ !== "function") {
|
|
2864
|
-
throw new TypeError("Expected a function");
|
|
2865
|
-
}
|
|
2866
|
-
let returnValue;
|
|
2867
|
-
let callCount = 0;
|
|
2868
|
-
const functionName = function_.displayName || function_.name || "<anonymous>";
|
|
2869
|
-
const onetime2 = /* @__PURE__ */ __name(function(...arguments_) {
|
|
2870
|
-
calledFunctions.set(onetime2, ++callCount);
|
|
2871
|
-
if (callCount === 1) {
|
|
2872
|
-
returnValue = function_.apply(this, arguments_);
|
|
2873
|
-
function_ = void 0;
|
|
2874
|
-
} else if (options.throw === true) {
|
|
2875
|
-
throw new Error(`Function \`${functionName}\` can only be called once`);
|
|
2876
|
-
}
|
|
2877
|
-
return returnValue;
|
|
2878
|
-
}, "onetime");
|
|
2879
|
-
mimicFunction(onetime2, function_);
|
|
2880
|
-
calledFunctions.set(onetime2, callCount);
|
|
2881
|
-
return onetime2;
|
|
2882
|
-
}, "onetime");
|
|
2883
|
-
onetime.callCount = (function_) => {
|
|
2884
|
-
if (!calledFunctions.has(function_)) {
|
|
2885
|
-
throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
|
|
2886
|
-
}
|
|
2887
|
-
return calledFunctions.get(function_);
|
|
2888
|
-
};
|
|
2889
|
-
var onetime_default = onetime;
|
|
2890
|
-
|
|
2891
|
-
// ../../node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/signals.js
|
|
2892
|
-
var signals = [];
|
|
2893
|
-
signals.push("SIGHUP", "SIGINT", "SIGTERM");
|
|
2894
|
-
if (process.platform !== "win32") {
|
|
2895
|
-
signals.push(
|
|
2896
|
-
"SIGALRM",
|
|
2897
|
-
"SIGABRT",
|
|
2898
|
-
"SIGVTALRM",
|
|
2899
|
-
"SIGXCPU",
|
|
2900
|
-
"SIGXFSZ",
|
|
2901
|
-
"SIGUSR2",
|
|
2902
|
-
"SIGTRAP",
|
|
2903
|
-
"SIGSYS",
|
|
2904
|
-
"SIGQUIT",
|
|
2905
|
-
"SIGIOT"
|
|
2906
|
-
// should detect profiler and enable/disable accordingly.
|
|
2907
|
-
// see #21
|
|
2908
|
-
// 'SIGPROF'
|
|
2909
|
-
);
|
|
2910
|
-
}
|
|
2911
|
-
if (process.platform === "linux") {
|
|
2912
|
-
signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
|
|
2913
|
-
}
|
|
2914
|
-
|
|
2915
|
-
// ../../node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/index.js
|
|
2916
|
-
var processOk = /* @__PURE__ */ __name((process9) => !!process9 && typeof process9 === "object" && typeof process9.removeListener === "function" && typeof process9.emit === "function" && typeof process9.reallyExit === "function" && typeof process9.listeners === "function" && typeof process9.kill === "function" && typeof process9.pid === "number" && typeof process9.on === "function", "processOk");
|
|
2917
|
-
var kExitEmitter = /* @__PURE__ */ Symbol.for("signal-exit emitter");
|
|
2918
|
-
var global = globalThis;
|
|
2919
|
-
var ObjectDefineProperty = Object.defineProperty.bind(Object);
|
|
2920
|
-
var Emitter = class {
|
|
2921
|
-
static {
|
|
2922
|
-
__name(this, "Emitter");
|
|
2923
|
-
}
|
|
2924
|
-
emitted = {
|
|
2925
|
-
afterExit: false,
|
|
2926
|
-
exit: false
|
|
2927
|
-
};
|
|
2928
|
-
listeners = {
|
|
2929
|
-
afterExit: [],
|
|
2930
|
-
exit: []
|
|
2931
|
-
};
|
|
2932
|
-
count = 0;
|
|
2933
|
-
id = Math.random();
|
|
2934
|
-
constructor() {
|
|
2935
|
-
if (global[kExitEmitter]) {
|
|
2936
|
-
return global[kExitEmitter];
|
|
2937
|
-
}
|
|
2938
|
-
ObjectDefineProperty(global, kExitEmitter, {
|
|
2939
|
-
value: this,
|
|
2940
|
-
writable: false,
|
|
2941
|
-
enumerable: false,
|
|
2942
|
-
configurable: false
|
|
2943
|
-
});
|
|
2944
|
-
}
|
|
2945
|
-
on(ev, fn) {
|
|
2946
|
-
this.listeners[ev].push(fn);
|
|
2947
|
-
}
|
|
2948
|
-
removeListener(ev, fn) {
|
|
2949
|
-
const list = this.listeners[ev];
|
|
2950
|
-
const i = list.indexOf(fn);
|
|
2951
|
-
if (i === -1) {
|
|
2298
|
+
var esbuild = __toESM(require_main(), 1);
|
|
2299
|
+
var import_meta = {};
|
|
2300
|
+
var SPINNER_FRAMES = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"];
|
|
2301
|
+
var SPINNER_INTERVAL = 80;
|
|
2302
|
+
function createSpinnerImpl(options) {
|
|
2303
|
+
let text = options.text;
|
|
2304
|
+
let interval;
|
|
2305
|
+
let frameIndex = 0;
|
|
2306
|
+
const isSilent = options.isSilent ?? false;
|
|
2307
|
+
const isTTY = /* @__PURE__ */ __name(() => process.stderr.isTTY === true, "isTTY");
|
|
2308
|
+
const clearLine = /* @__PURE__ */ __name(() => {
|
|
2309
|
+
if (isTTY()) {
|
|
2310
|
+
process.stderr.write("\r\x1B[K");
|
|
2311
|
+
}
|
|
2312
|
+
}, "clearLine");
|
|
2313
|
+
const render = /* @__PURE__ */ __name(() => {
|
|
2314
|
+
if (isSilent)
|
|
2952
2315
|
return;
|
|
2953
|
-
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
|
-
|
|
2962
|
-
return false;
|
|
2963
|
-
}
|
|
2964
|
-
this.emitted[ev] = true;
|
|
2965
|
-
let ret = false;
|
|
2966
|
-
for (const fn of this.listeners[ev]) {
|
|
2967
|
-
ret = fn(code, signal) === true || ret;
|
|
2968
|
-
}
|
|
2969
|
-
if (ev === "exit") {
|
|
2970
|
-
ret = this.emit("afterExit", code, signal) || ret;
|
|
2971
|
-
}
|
|
2972
|
-
return ret;
|
|
2973
|
-
}
|
|
2974
|
-
};
|
|
2975
|
-
var SignalExitBase = class {
|
|
2976
|
-
static {
|
|
2977
|
-
__name(this, "SignalExitBase");
|
|
2978
|
-
}
|
|
2979
|
-
};
|
|
2980
|
-
var signalExitWrap = /* @__PURE__ */ __name((handler) => {
|
|
2981
|
-
return {
|
|
2982
|
-
onExit(cb, opts) {
|
|
2983
|
-
return handler.onExit(cb, opts);
|
|
2316
|
+
if (isTTY()) {
|
|
2317
|
+
const frame = SPINNER_FRAMES[frameIndex % SPINNER_FRAMES.length];
|
|
2318
|
+
process.stderr.write(`\r${frame} ${text}`);
|
|
2319
|
+
frameIndex++;
|
|
2320
|
+
}
|
|
2321
|
+
}, "render");
|
|
2322
|
+
const spinner = {
|
|
2323
|
+
get text() {
|
|
2324
|
+
return text;
|
|
2984
2325
|
},
|
|
2985
|
-
|
|
2986
|
-
|
|
2326
|
+
set text(value) {
|
|
2327
|
+
text = value;
|
|
2987
2328
|
},
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
|
|
2999
|
-
};
|
|
3000
|
-
}
|
|
3001
|
-
load() {
|
|
3002
|
-
}
|
|
3003
|
-
unload() {
|
|
3004
|
-
}
|
|
3005
|
-
};
|
|
3006
|
-
var SignalExit = class extends SignalExitBase {
|
|
3007
|
-
static {
|
|
3008
|
-
__name(this, "SignalExit");
|
|
3009
|
-
}
|
|
3010
|
-
// "SIGHUP" throws an `ENOSYS` error on Windows,
|
|
3011
|
-
// so use a supported signal instead
|
|
3012
|
-
/* c8 ignore start */
|
|
3013
|
-
#hupSig = process3.platform === "win32" ? "SIGINT" : "SIGHUP";
|
|
3014
|
-
/* c8 ignore stop */
|
|
3015
|
-
#emitter = new Emitter();
|
|
3016
|
-
#process;
|
|
3017
|
-
#originalProcessEmit;
|
|
3018
|
-
#originalProcessReallyExit;
|
|
3019
|
-
#sigListeners = {};
|
|
3020
|
-
#loaded = false;
|
|
3021
|
-
constructor(process9) {
|
|
3022
|
-
super();
|
|
3023
|
-
this.#process = process9;
|
|
3024
|
-
this.#sigListeners = {};
|
|
3025
|
-
for (const sig of signals) {
|
|
3026
|
-
this.#sigListeners[sig] = () => {
|
|
3027
|
-
const listeners = this.#process.listeners(sig);
|
|
3028
|
-
let { count } = this.#emitter;
|
|
3029
|
-
const p = process9;
|
|
3030
|
-
if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
|
|
3031
|
-
count += p.__signal_exit_emitter__.count;
|
|
3032
|
-
}
|
|
3033
|
-
if (listeners.length === count) {
|
|
3034
|
-
this.unload();
|
|
3035
|
-
const ret = this.#emitter.emit("exit", null, sig);
|
|
3036
|
-
const s = sig === "SIGHUP" ? this.#hupSig : sig;
|
|
3037
|
-
if (!ret)
|
|
3038
|
-
process9.kill(process9.pid, s);
|
|
3039
|
-
}
|
|
3040
|
-
};
|
|
3041
|
-
}
|
|
3042
|
-
this.#originalProcessReallyExit = process9.reallyExit;
|
|
3043
|
-
this.#originalProcessEmit = process9.emit;
|
|
3044
|
-
}
|
|
3045
|
-
onExit(cb, opts) {
|
|
3046
|
-
if (!processOk(this.#process)) {
|
|
3047
|
-
return () => {
|
|
3048
|
-
};
|
|
3049
|
-
}
|
|
3050
|
-
if (this.#loaded === false) {
|
|
3051
|
-
this.load();
|
|
3052
|
-
}
|
|
3053
|
-
const ev = opts?.alwaysLast ? "afterExit" : "exit";
|
|
3054
|
-
this.#emitter.on(ev, cb);
|
|
3055
|
-
return () => {
|
|
3056
|
-
this.#emitter.removeListener(ev, cb);
|
|
3057
|
-
if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) {
|
|
3058
|
-
this.unload();
|
|
3059
|
-
}
|
|
3060
|
-
};
|
|
3061
|
-
}
|
|
3062
|
-
load() {
|
|
3063
|
-
if (this.#loaded) {
|
|
3064
|
-
return;
|
|
3065
|
-
}
|
|
3066
|
-
this.#loaded = true;
|
|
3067
|
-
this.#emitter.count += 1;
|
|
3068
|
-
for (const sig of signals) {
|
|
3069
|
-
try {
|
|
3070
|
-
const fn = this.#sigListeners[sig];
|
|
3071
|
-
if (fn)
|
|
3072
|
-
this.#process.on(sig, fn);
|
|
3073
|
-
} catch (_) {
|
|
3074
|
-
}
|
|
3075
|
-
}
|
|
3076
|
-
this.#process.emit = (ev, ...a) => {
|
|
3077
|
-
return this.#processEmit(ev, ...a);
|
|
3078
|
-
};
|
|
3079
|
-
this.#process.reallyExit = (code) => {
|
|
3080
|
-
return this.#processReallyExit(code);
|
|
3081
|
-
};
|
|
3082
|
-
}
|
|
3083
|
-
unload() {
|
|
3084
|
-
if (!this.#loaded) {
|
|
3085
|
-
return;
|
|
3086
|
-
}
|
|
3087
|
-
this.#loaded = false;
|
|
3088
|
-
signals.forEach((sig) => {
|
|
3089
|
-
const listener = this.#sigListeners[sig];
|
|
3090
|
-
if (!listener) {
|
|
3091
|
-
throw new Error("Listener not defined for signal: " + sig);
|
|
3092
|
-
}
|
|
3093
|
-
try {
|
|
3094
|
-
this.#process.removeListener(sig, listener);
|
|
3095
|
-
} catch (_) {
|
|
3096
|
-
}
|
|
3097
|
-
});
|
|
3098
|
-
this.#process.emit = this.#originalProcessEmit;
|
|
3099
|
-
this.#process.reallyExit = this.#originalProcessReallyExit;
|
|
3100
|
-
this.#emitter.count -= 1;
|
|
3101
|
-
}
|
|
3102
|
-
#processReallyExit(code) {
|
|
3103
|
-
if (!processOk(this.#process)) {
|
|
3104
|
-
return 0;
|
|
3105
|
-
}
|
|
3106
|
-
this.#process.exitCode = code || 0;
|
|
3107
|
-
this.#emitter.emit("exit", this.#process.exitCode, null);
|
|
3108
|
-
return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode);
|
|
3109
|
-
}
|
|
3110
|
-
#processEmit(ev, ...args) {
|
|
3111
|
-
const og = this.#originalProcessEmit;
|
|
3112
|
-
if (ev === "exit" && processOk(this.#process)) {
|
|
3113
|
-
if (typeof args[0] === "number") {
|
|
3114
|
-
this.#process.exitCode = args[0];
|
|
3115
|
-
}
|
|
3116
|
-
const ret = og.call(this.#process, ev, ...args);
|
|
3117
|
-
this.#emitter.emit("exit", this.#process.exitCode, null);
|
|
3118
|
-
return ret;
|
|
3119
|
-
} else {
|
|
3120
|
-
return og.call(this.#process, ev, ...args);
|
|
3121
|
-
}
|
|
3122
|
-
}
|
|
3123
|
-
};
|
|
3124
|
-
var process3 = globalThis.process;
|
|
3125
|
-
var {
|
|
3126
|
-
/**
|
|
3127
|
-
* Called when the process is exiting, whether via signal, explicit
|
|
3128
|
-
* exit, or running out of stuff to do.
|
|
3129
|
-
*
|
|
3130
|
-
* If the global process object is not suitable for instrumentation,
|
|
3131
|
-
* then this will be a no-op.
|
|
3132
|
-
*
|
|
3133
|
-
* Returns a function that may be used to unload signal-exit.
|
|
3134
|
-
*/
|
|
3135
|
-
onExit,
|
|
3136
|
-
/**
|
|
3137
|
-
* Load the listeners. Likely you never need to call this, unless
|
|
3138
|
-
* doing a rather deep integration with signal-exit functionality.
|
|
3139
|
-
* Mostly exposed for the benefit of testing.
|
|
3140
|
-
*
|
|
3141
|
-
* @internal
|
|
3142
|
-
*/
|
|
3143
|
-
load,
|
|
3144
|
-
/**
|
|
3145
|
-
* Unload the listeners. Likely you never need to call this, unless
|
|
3146
|
-
* doing a rather deep integration with signal-exit functionality.
|
|
3147
|
-
* Mostly exposed for the benefit of testing.
|
|
3148
|
-
*
|
|
3149
|
-
* @internal
|
|
3150
|
-
*/
|
|
3151
|
-
unload
|
|
3152
|
-
} = signalExitWrap(processOk(process3) ? new SignalExit(process3) : new SignalExitFallback());
|
|
3153
|
-
|
|
3154
|
-
// ../../node_modules/.pnpm/restore-cursor@5.1.0/node_modules/restore-cursor/index.js
|
|
3155
|
-
var terminal = import_node_process2.default.stderr.isTTY ? import_node_process2.default.stderr : import_node_process2.default.stdout.isTTY ? import_node_process2.default.stdout : void 0;
|
|
3156
|
-
var restoreCursor = terminal ? onetime_default(() => {
|
|
3157
|
-
onExit(() => {
|
|
3158
|
-
terminal.write("\x1B[?25h");
|
|
3159
|
-
}, { alwaysLast: true });
|
|
3160
|
-
}) : () => {
|
|
3161
|
-
};
|
|
3162
|
-
var restore_cursor_default = restoreCursor;
|
|
3163
|
-
|
|
3164
|
-
// ../../node_modules/.pnpm/cli-cursor@5.0.0/node_modules/cli-cursor/index.js
|
|
3165
|
-
var isHidden = false;
|
|
3166
|
-
var cliCursor = {};
|
|
3167
|
-
cliCursor.show = (writableStream = import_node_process3.default.stderr) => {
|
|
3168
|
-
if (!writableStream.isTTY) {
|
|
3169
|
-
return;
|
|
3170
|
-
}
|
|
3171
|
-
isHidden = false;
|
|
3172
|
-
writableStream.write("\x1B[?25h");
|
|
3173
|
-
};
|
|
3174
|
-
cliCursor.hide = (writableStream = import_node_process3.default.stderr) => {
|
|
3175
|
-
if (!writableStream.isTTY) {
|
|
3176
|
-
return;
|
|
3177
|
-
}
|
|
3178
|
-
restore_cursor_default();
|
|
3179
|
-
isHidden = true;
|
|
3180
|
-
writableStream.write("\x1B[?25l");
|
|
3181
|
-
};
|
|
3182
|
-
cliCursor.toggle = (force, writableStream) => {
|
|
3183
|
-
if (force !== void 0) {
|
|
3184
|
-
isHidden = force;
|
|
3185
|
-
}
|
|
3186
|
-
if (isHidden) {
|
|
3187
|
-
cliCursor.show(writableStream);
|
|
3188
|
-
} else {
|
|
3189
|
-
cliCursor.hide(writableStream);
|
|
3190
|
-
}
|
|
3191
|
-
};
|
|
3192
|
-
var cli_cursor_default = cliCursor;
|
|
3193
|
-
|
|
3194
|
-
// ../../node_modules/.pnpm/cli-spinners@3.4.0/node_modules/cli-spinners/spinners.json
|
|
3195
|
-
var spinners_default = {
|
|
3196
|
-
dots: {
|
|
3197
|
-
interval: 80,
|
|
3198
|
-
frames: [
|
|
3199
|
-
"\u280B",
|
|
3200
|
-
"\u2819",
|
|
3201
|
-
"\u2839",
|
|
3202
|
-
"\u2838",
|
|
3203
|
-
"\u283C",
|
|
3204
|
-
"\u2834",
|
|
3205
|
-
"\u2826",
|
|
3206
|
-
"\u2827",
|
|
3207
|
-
"\u2807",
|
|
3208
|
-
"\u280F"
|
|
3209
|
-
]
|
|
3210
|
-
},
|
|
3211
|
-
dots2: {
|
|
3212
|
-
interval: 80,
|
|
3213
|
-
frames: [
|
|
3214
|
-
"\u28FE",
|
|
3215
|
-
"\u28FD",
|
|
3216
|
-
"\u28FB",
|
|
3217
|
-
"\u28BF",
|
|
3218
|
-
"\u287F",
|
|
3219
|
-
"\u28DF",
|
|
3220
|
-
"\u28EF",
|
|
3221
|
-
"\u28F7"
|
|
3222
|
-
]
|
|
3223
|
-
},
|
|
3224
|
-
dots3: {
|
|
3225
|
-
interval: 80,
|
|
3226
|
-
frames: [
|
|
3227
|
-
"\u280B",
|
|
3228
|
-
"\u2819",
|
|
3229
|
-
"\u281A",
|
|
3230
|
-
"\u281E",
|
|
3231
|
-
"\u2816",
|
|
3232
|
-
"\u2826",
|
|
3233
|
-
"\u2834",
|
|
3234
|
-
"\u2832",
|
|
3235
|
-
"\u2833",
|
|
3236
|
-
"\u2813"
|
|
3237
|
-
]
|
|
3238
|
-
},
|
|
3239
|
-
dots4: {
|
|
3240
|
-
interval: 80,
|
|
3241
|
-
frames: [
|
|
3242
|
-
"\u2804",
|
|
3243
|
-
"\u2806",
|
|
3244
|
-
"\u2807",
|
|
3245
|
-
"\u280B",
|
|
3246
|
-
"\u2819",
|
|
3247
|
-
"\u2838",
|
|
3248
|
-
"\u2830",
|
|
3249
|
-
"\u2820",
|
|
3250
|
-
"\u2830",
|
|
3251
|
-
"\u2838",
|
|
3252
|
-
"\u2819",
|
|
3253
|
-
"\u280B",
|
|
3254
|
-
"\u2807",
|
|
3255
|
-
"\u2806"
|
|
3256
|
-
]
|
|
3257
|
-
},
|
|
3258
|
-
dots5: {
|
|
3259
|
-
interval: 80,
|
|
3260
|
-
frames: [
|
|
3261
|
-
"\u280B",
|
|
3262
|
-
"\u2819",
|
|
3263
|
-
"\u281A",
|
|
3264
|
-
"\u2812",
|
|
3265
|
-
"\u2802",
|
|
3266
|
-
"\u2802",
|
|
3267
|
-
"\u2812",
|
|
3268
|
-
"\u2832",
|
|
3269
|
-
"\u2834",
|
|
3270
|
-
"\u2826",
|
|
3271
|
-
"\u2816",
|
|
3272
|
-
"\u2812",
|
|
3273
|
-
"\u2810",
|
|
3274
|
-
"\u2810",
|
|
3275
|
-
"\u2812",
|
|
3276
|
-
"\u2813",
|
|
3277
|
-
"\u280B"
|
|
3278
|
-
]
|
|
3279
|
-
},
|
|
3280
|
-
dots6: {
|
|
3281
|
-
interval: 80,
|
|
3282
|
-
frames: [
|
|
3283
|
-
"\u2801",
|
|
3284
|
-
"\u2809",
|
|
3285
|
-
"\u2819",
|
|
3286
|
-
"\u281A",
|
|
3287
|
-
"\u2812",
|
|
3288
|
-
"\u2802",
|
|
3289
|
-
"\u2802",
|
|
3290
|
-
"\u2812",
|
|
3291
|
-
"\u2832",
|
|
3292
|
-
"\u2834",
|
|
3293
|
-
"\u2824",
|
|
3294
|
-
"\u2804",
|
|
3295
|
-
"\u2804",
|
|
3296
|
-
"\u2824",
|
|
3297
|
-
"\u2834",
|
|
3298
|
-
"\u2832",
|
|
3299
|
-
"\u2812",
|
|
3300
|
-
"\u2802",
|
|
3301
|
-
"\u2802",
|
|
3302
|
-
"\u2812",
|
|
3303
|
-
"\u281A",
|
|
3304
|
-
"\u2819",
|
|
3305
|
-
"\u2809",
|
|
3306
|
-
"\u2801"
|
|
3307
|
-
]
|
|
3308
|
-
},
|
|
3309
|
-
dots7: {
|
|
3310
|
-
interval: 80,
|
|
3311
|
-
frames: [
|
|
3312
|
-
"\u2808",
|
|
3313
|
-
"\u2809",
|
|
3314
|
-
"\u280B",
|
|
3315
|
-
"\u2813",
|
|
3316
|
-
"\u2812",
|
|
3317
|
-
"\u2810",
|
|
3318
|
-
"\u2810",
|
|
3319
|
-
"\u2812",
|
|
3320
|
-
"\u2816",
|
|
3321
|
-
"\u2826",
|
|
3322
|
-
"\u2824",
|
|
3323
|
-
"\u2820",
|
|
3324
|
-
"\u2820",
|
|
3325
|
-
"\u2824",
|
|
3326
|
-
"\u2826",
|
|
3327
|
-
"\u2816",
|
|
3328
|
-
"\u2812",
|
|
3329
|
-
"\u2810",
|
|
3330
|
-
"\u2810",
|
|
3331
|
-
"\u2812",
|
|
3332
|
-
"\u2813",
|
|
3333
|
-
"\u280B",
|
|
3334
|
-
"\u2809",
|
|
3335
|
-
"\u2808"
|
|
3336
|
-
]
|
|
3337
|
-
},
|
|
3338
|
-
dots8: {
|
|
3339
|
-
interval: 80,
|
|
3340
|
-
frames: [
|
|
3341
|
-
"\u2801",
|
|
3342
|
-
"\u2801",
|
|
3343
|
-
"\u2809",
|
|
3344
|
-
"\u2819",
|
|
3345
|
-
"\u281A",
|
|
3346
|
-
"\u2812",
|
|
3347
|
-
"\u2802",
|
|
3348
|
-
"\u2802",
|
|
3349
|
-
"\u2812",
|
|
3350
|
-
"\u2832",
|
|
3351
|
-
"\u2834",
|
|
3352
|
-
"\u2824",
|
|
3353
|
-
"\u2804",
|
|
3354
|
-
"\u2804",
|
|
3355
|
-
"\u2824",
|
|
3356
|
-
"\u2820",
|
|
3357
|
-
"\u2820",
|
|
3358
|
-
"\u2824",
|
|
3359
|
-
"\u2826",
|
|
3360
|
-
"\u2816",
|
|
3361
|
-
"\u2812",
|
|
3362
|
-
"\u2810",
|
|
3363
|
-
"\u2810",
|
|
3364
|
-
"\u2812",
|
|
3365
|
-
"\u2813",
|
|
3366
|
-
"\u280B",
|
|
3367
|
-
"\u2809",
|
|
3368
|
-
"\u2808",
|
|
3369
|
-
"\u2808"
|
|
3370
|
-
]
|
|
3371
|
-
},
|
|
3372
|
-
dots9: {
|
|
3373
|
-
interval: 80,
|
|
3374
|
-
frames: [
|
|
3375
|
-
"\u28B9",
|
|
3376
|
-
"\u28BA",
|
|
3377
|
-
"\u28BC",
|
|
3378
|
-
"\u28F8",
|
|
3379
|
-
"\u28C7",
|
|
3380
|
-
"\u2867",
|
|
3381
|
-
"\u2857",
|
|
3382
|
-
"\u284F"
|
|
3383
|
-
]
|
|
3384
|
-
},
|
|
3385
|
-
dots10: {
|
|
3386
|
-
interval: 80,
|
|
3387
|
-
frames: [
|
|
3388
|
-
"\u2884",
|
|
3389
|
-
"\u2882",
|
|
3390
|
-
"\u2881",
|
|
3391
|
-
"\u2841",
|
|
3392
|
-
"\u2848",
|
|
3393
|
-
"\u2850",
|
|
3394
|
-
"\u2860"
|
|
3395
|
-
]
|
|
3396
|
-
},
|
|
3397
|
-
dots11: {
|
|
3398
|
-
interval: 100,
|
|
3399
|
-
frames: [
|
|
3400
|
-
"\u2801",
|
|
3401
|
-
"\u2802",
|
|
3402
|
-
"\u2804",
|
|
3403
|
-
"\u2840",
|
|
3404
|
-
"\u2880",
|
|
3405
|
-
"\u2820",
|
|
3406
|
-
"\u2810",
|
|
3407
|
-
"\u2808"
|
|
3408
|
-
]
|
|
3409
|
-
},
|
|
3410
|
-
dots12: {
|
|
3411
|
-
interval: 80,
|
|
3412
|
-
frames: [
|
|
3413
|
-
"\u2880\u2800",
|
|
3414
|
-
"\u2840\u2800",
|
|
3415
|
-
"\u2804\u2800",
|
|
3416
|
-
"\u2882\u2800",
|
|
3417
|
-
"\u2842\u2800",
|
|
3418
|
-
"\u2805\u2800",
|
|
3419
|
-
"\u2883\u2800",
|
|
3420
|
-
"\u2843\u2800",
|
|
3421
|
-
"\u280D\u2800",
|
|
3422
|
-
"\u288B\u2800",
|
|
3423
|
-
"\u284B\u2800",
|
|
3424
|
-
"\u280D\u2801",
|
|
3425
|
-
"\u288B\u2801",
|
|
3426
|
-
"\u284B\u2801",
|
|
3427
|
-
"\u280D\u2809",
|
|
3428
|
-
"\u280B\u2809",
|
|
3429
|
-
"\u280B\u2809",
|
|
3430
|
-
"\u2809\u2819",
|
|
3431
|
-
"\u2809\u2819",
|
|
3432
|
-
"\u2809\u2829",
|
|
3433
|
-
"\u2808\u2899",
|
|
3434
|
-
"\u2808\u2859",
|
|
3435
|
-
"\u2888\u2829",
|
|
3436
|
-
"\u2840\u2899",
|
|
3437
|
-
"\u2804\u2859",
|
|
3438
|
-
"\u2882\u2829",
|
|
3439
|
-
"\u2842\u2898",
|
|
3440
|
-
"\u2805\u2858",
|
|
3441
|
-
"\u2883\u2828",
|
|
3442
|
-
"\u2843\u2890",
|
|
3443
|
-
"\u280D\u2850",
|
|
3444
|
-
"\u288B\u2820",
|
|
3445
|
-
"\u284B\u2880",
|
|
3446
|
-
"\u280D\u2841",
|
|
3447
|
-
"\u288B\u2801",
|
|
3448
|
-
"\u284B\u2801",
|
|
3449
|
-
"\u280D\u2809",
|
|
3450
|
-
"\u280B\u2809",
|
|
3451
|
-
"\u280B\u2809",
|
|
3452
|
-
"\u2809\u2819",
|
|
3453
|
-
"\u2809\u2819",
|
|
3454
|
-
"\u2809\u2829",
|
|
3455
|
-
"\u2808\u2899",
|
|
3456
|
-
"\u2808\u2859",
|
|
3457
|
-
"\u2808\u2829",
|
|
3458
|
-
"\u2800\u2899",
|
|
3459
|
-
"\u2800\u2859",
|
|
3460
|
-
"\u2800\u2829",
|
|
3461
|
-
"\u2800\u2898",
|
|
3462
|
-
"\u2800\u2858",
|
|
3463
|
-
"\u2800\u2828",
|
|
3464
|
-
"\u2800\u2890",
|
|
3465
|
-
"\u2800\u2850",
|
|
3466
|
-
"\u2800\u2820",
|
|
3467
|
-
"\u2800\u2880",
|
|
3468
|
-
"\u2800\u2840"
|
|
3469
|
-
]
|
|
3470
|
-
},
|
|
3471
|
-
dots13: {
|
|
3472
|
-
interval: 80,
|
|
3473
|
-
frames: [
|
|
3474
|
-
"\u28FC",
|
|
3475
|
-
"\u28F9",
|
|
3476
|
-
"\u28BB",
|
|
3477
|
-
"\u283F",
|
|
3478
|
-
"\u285F",
|
|
3479
|
-
"\u28CF",
|
|
3480
|
-
"\u28E7",
|
|
3481
|
-
"\u28F6"
|
|
3482
|
-
]
|
|
3483
|
-
},
|
|
3484
|
-
dots14: {
|
|
3485
|
-
interval: 80,
|
|
3486
|
-
frames: [
|
|
3487
|
-
"\u2809\u2809",
|
|
3488
|
-
"\u2808\u2819",
|
|
3489
|
-
"\u2800\u2839",
|
|
3490
|
-
"\u2800\u28B8",
|
|
3491
|
-
"\u2800\u28F0",
|
|
3492
|
-
"\u2880\u28E0",
|
|
3493
|
-
"\u28C0\u28C0",
|
|
3494
|
-
"\u28C4\u2840",
|
|
3495
|
-
"\u28C6\u2800",
|
|
3496
|
-
"\u2847\u2800",
|
|
3497
|
-
"\u280F\u2800",
|
|
3498
|
-
"\u280B\u2801"
|
|
3499
|
-
]
|
|
3500
|
-
},
|
|
3501
|
-
dots8Bit: {
|
|
3502
|
-
interval: 80,
|
|
3503
|
-
frames: [
|
|
3504
|
-
"\u2800",
|
|
3505
|
-
"\u2801",
|
|
3506
|
-
"\u2802",
|
|
3507
|
-
"\u2803",
|
|
3508
|
-
"\u2804",
|
|
3509
|
-
"\u2805",
|
|
3510
|
-
"\u2806",
|
|
3511
|
-
"\u2807",
|
|
3512
|
-
"\u2840",
|
|
3513
|
-
"\u2841",
|
|
3514
|
-
"\u2842",
|
|
3515
|
-
"\u2843",
|
|
3516
|
-
"\u2844",
|
|
3517
|
-
"\u2845",
|
|
3518
|
-
"\u2846",
|
|
3519
|
-
"\u2847",
|
|
3520
|
-
"\u2808",
|
|
3521
|
-
"\u2809",
|
|
3522
|
-
"\u280A",
|
|
3523
|
-
"\u280B",
|
|
3524
|
-
"\u280C",
|
|
3525
|
-
"\u280D",
|
|
3526
|
-
"\u280E",
|
|
3527
|
-
"\u280F",
|
|
3528
|
-
"\u2848",
|
|
3529
|
-
"\u2849",
|
|
3530
|
-
"\u284A",
|
|
3531
|
-
"\u284B",
|
|
3532
|
-
"\u284C",
|
|
3533
|
-
"\u284D",
|
|
3534
|
-
"\u284E",
|
|
3535
|
-
"\u284F",
|
|
3536
|
-
"\u2810",
|
|
3537
|
-
"\u2811",
|
|
3538
|
-
"\u2812",
|
|
3539
|
-
"\u2813",
|
|
3540
|
-
"\u2814",
|
|
3541
|
-
"\u2815",
|
|
3542
|
-
"\u2816",
|
|
3543
|
-
"\u2817",
|
|
3544
|
-
"\u2850",
|
|
3545
|
-
"\u2851",
|
|
3546
|
-
"\u2852",
|
|
3547
|
-
"\u2853",
|
|
3548
|
-
"\u2854",
|
|
3549
|
-
"\u2855",
|
|
3550
|
-
"\u2856",
|
|
3551
|
-
"\u2857",
|
|
3552
|
-
"\u2818",
|
|
3553
|
-
"\u2819",
|
|
3554
|
-
"\u281A",
|
|
3555
|
-
"\u281B",
|
|
3556
|
-
"\u281C",
|
|
3557
|
-
"\u281D",
|
|
3558
|
-
"\u281E",
|
|
3559
|
-
"\u281F",
|
|
3560
|
-
"\u2858",
|
|
3561
|
-
"\u2859",
|
|
3562
|
-
"\u285A",
|
|
3563
|
-
"\u285B",
|
|
3564
|
-
"\u285C",
|
|
3565
|
-
"\u285D",
|
|
3566
|
-
"\u285E",
|
|
3567
|
-
"\u285F",
|
|
3568
|
-
"\u2820",
|
|
3569
|
-
"\u2821",
|
|
3570
|
-
"\u2822",
|
|
3571
|
-
"\u2823",
|
|
3572
|
-
"\u2824",
|
|
3573
|
-
"\u2825",
|
|
3574
|
-
"\u2826",
|
|
3575
|
-
"\u2827",
|
|
3576
|
-
"\u2860",
|
|
3577
|
-
"\u2861",
|
|
3578
|
-
"\u2862",
|
|
3579
|
-
"\u2863",
|
|
3580
|
-
"\u2864",
|
|
3581
|
-
"\u2865",
|
|
3582
|
-
"\u2866",
|
|
3583
|
-
"\u2867",
|
|
3584
|
-
"\u2828",
|
|
3585
|
-
"\u2829",
|
|
3586
|
-
"\u282A",
|
|
3587
|
-
"\u282B",
|
|
3588
|
-
"\u282C",
|
|
3589
|
-
"\u282D",
|
|
3590
|
-
"\u282E",
|
|
3591
|
-
"\u282F",
|
|
3592
|
-
"\u2868",
|
|
3593
|
-
"\u2869",
|
|
3594
|
-
"\u286A",
|
|
3595
|
-
"\u286B",
|
|
3596
|
-
"\u286C",
|
|
3597
|
-
"\u286D",
|
|
3598
|
-
"\u286E",
|
|
3599
|
-
"\u286F",
|
|
3600
|
-
"\u2830",
|
|
3601
|
-
"\u2831",
|
|
3602
|
-
"\u2832",
|
|
3603
|
-
"\u2833",
|
|
3604
|
-
"\u2834",
|
|
3605
|
-
"\u2835",
|
|
3606
|
-
"\u2836",
|
|
3607
|
-
"\u2837",
|
|
3608
|
-
"\u2870",
|
|
3609
|
-
"\u2871",
|
|
3610
|
-
"\u2872",
|
|
3611
|
-
"\u2873",
|
|
3612
|
-
"\u2874",
|
|
3613
|
-
"\u2875",
|
|
3614
|
-
"\u2876",
|
|
3615
|
-
"\u2877",
|
|
3616
|
-
"\u2838",
|
|
3617
|
-
"\u2839",
|
|
3618
|
-
"\u283A",
|
|
3619
|
-
"\u283B",
|
|
3620
|
-
"\u283C",
|
|
3621
|
-
"\u283D",
|
|
3622
|
-
"\u283E",
|
|
3623
|
-
"\u283F",
|
|
3624
|
-
"\u2878",
|
|
3625
|
-
"\u2879",
|
|
3626
|
-
"\u287A",
|
|
3627
|
-
"\u287B",
|
|
3628
|
-
"\u287C",
|
|
3629
|
-
"\u287D",
|
|
3630
|
-
"\u287E",
|
|
3631
|
-
"\u287F",
|
|
3632
|
-
"\u2880",
|
|
3633
|
-
"\u2881",
|
|
3634
|
-
"\u2882",
|
|
3635
|
-
"\u2883",
|
|
3636
|
-
"\u2884",
|
|
3637
|
-
"\u2885",
|
|
3638
|
-
"\u2886",
|
|
3639
|
-
"\u2887",
|
|
3640
|
-
"\u28C0",
|
|
3641
|
-
"\u28C1",
|
|
3642
|
-
"\u28C2",
|
|
3643
|
-
"\u28C3",
|
|
3644
|
-
"\u28C4",
|
|
3645
|
-
"\u28C5",
|
|
3646
|
-
"\u28C6",
|
|
3647
|
-
"\u28C7",
|
|
3648
|
-
"\u2888",
|
|
3649
|
-
"\u2889",
|
|
3650
|
-
"\u288A",
|
|
3651
|
-
"\u288B",
|
|
3652
|
-
"\u288C",
|
|
3653
|
-
"\u288D",
|
|
3654
|
-
"\u288E",
|
|
3655
|
-
"\u288F",
|
|
3656
|
-
"\u28C8",
|
|
3657
|
-
"\u28C9",
|
|
3658
|
-
"\u28CA",
|
|
3659
|
-
"\u28CB",
|
|
3660
|
-
"\u28CC",
|
|
3661
|
-
"\u28CD",
|
|
3662
|
-
"\u28CE",
|
|
3663
|
-
"\u28CF",
|
|
3664
|
-
"\u2890",
|
|
3665
|
-
"\u2891",
|
|
3666
|
-
"\u2892",
|
|
3667
|
-
"\u2893",
|
|
3668
|
-
"\u2894",
|
|
3669
|
-
"\u2895",
|
|
3670
|
-
"\u2896",
|
|
3671
|
-
"\u2897",
|
|
3672
|
-
"\u28D0",
|
|
3673
|
-
"\u28D1",
|
|
3674
|
-
"\u28D2",
|
|
3675
|
-
"\u28D3",
|
|
3676
|
-
"\u28D4",
|
|
3677
|
-
"\u28D5",
|
|
3678
|
-
"\u28D6",
|
|
3679
|
-
"\u28D7",
|
|
3680
|
-
"\u2898",
|
|
3681
|
-
"\u2899",
|
|
3682
|
-
"\u289A",
|
|
3683
|
-
"\u289B",
|
|
3684
|
-
"\u289C",
|
|
3685
|
-
"\u289D",
|
|
3686
|
-
"\u289E",
|
|
3687
|
-
"\u289F",
|
|
3688
|
-
"\u28D8",
|
|
3689
|
-
"\u28D9",
|
|
3690
|
-
"\u28DA",
|
|
3691
|
-
"\u28DB",
|
|
3692
|
-
"\u28DC",
|
|
3693
|
-
"\u28DD",
|
|
3694
|
-
"\u28DE",
|
|
3695
|
-
"\u28DF",
|
|
3696
|
-
"\u28A0",
|
|
3697
|
-
"\u28A1",
|
|
3698
|
-
"\u28A2",
|
|
3699
|
-
"\u28A3",
|
|
3700
|
-
"\u28A4",
|
|
3701
|
-
"\u28A5",
|
|
3702
|
-
"\u28A6",
|
|
3703
|
-
"\u28A7",
|
|
3704
|
-
"\u28E0",
|
|
3705
|
-
"\u28E1",
|
|
3706
|
-
"\u28E2",
|
|
3707
|
-
"\u28E3",
|
|
3708
|
-
"\u28E4",
|
|
3709
|
-
"\u28E5",
|
|
3710
|
-
"\u28E6",
|
|
3711
|
-
"\u28E7",
|
|
3712
|
-
"\u28A8",
|
|
3713
|
-
"\u28A9",
|
|
3714
|
-
"\u28AA",
|
|
3715
|
-
"\u28AB",
|
|
3716
|
-
"\u28AC",
|
|
3717
|
-
"\u28AD",
|
|
3718
|
-
"\u28AE",
|
|
3719
|
-
"\u28AF",
|
|
3720
|
-
"\u28E8",
|
|
3721
|
-
"\u28E9",
|
|
3722
|
-
"\u28EA",
|
|
3723
|
-
"\u28EB",
|
|
3724
|
-
"\u28EC",
|
|
3725
|
-
"\u28ED",
|
|
3726
|
-
"\u28EE",
|
|
3727
|
-
"\u28EF",
|
|
3728
|
-
"\u28B0",
|
|
3729
|
-
"\u28B1",
|
|
3730
|
-
"\u28B2",
|
|
3731
|
-
"\u28B3",
|
|
3732
|
-
"\u28B4",
|
|
3733
|
-
"\u28B5",
|
|
3734
|
-
"\u28B6",
|
|
3735
|
-
"\u28B7",
|
|
3736
|
-
"\u28F0",
|
|
3737
|
-
"\u28F1",
|
|
3738
|
-
"\u28F2",
|
|
3739
|
-
"\u28F3",
|
|
3740
|
-
"\u28F4",
|
|
3741
|
-
"\u28F5",
|
|
3742
|
-
"\u28F6",
|
|
3743
|
-
"\u28F7",
|
|
3744
|
-
"\u28B8",
|
|
3745
|
-
"\u28B9",
|
|
3746
|
-
"\u28BA",
|
|
3747
|
-
"\u28BB",
|
|
3748
|
-
"\u28BC",
|
|
3749
|
-
"\u28BD",
|
|
3750
|
-
"\u28BE",
|
|
3751
|
-
"\u28BF",
|
|
3752
|
-
"\u28F8",
|
|
3753
|
-
"\u28F9",
|
|
3754
|
-
"\u28FA",
|
|
3755
|
-
"\u28FB",
|
|
3756
|
-
"\u28FC",
|
|
3757
|
-
"\u28FD",
|
|
3758
|
-
"\u28FE",
|
|
3759
|
-
"\u28FF"
|
|
3760
|
-
]
|
|
3761
|
-
},
|
|
3762
|
-
dotsCircle: {
|
|
3763
|
-
interval: 80,
|
|
3764
|
-
frames: [
|
|
3765
|
-
"\u288E ",
|
|
3766
|
-
"\u280E\u2801",
|
|
3767
|
-
"\u280A\u2811",
|
|
3768
|
-
"\u2808\u2831",
|
|
3769
|
-
" \u2871",
|
|
3770
|
-
"\u2880\u2870",
|
|
3771
|
-
"\u2884\u2860",
|
|
3772
|
-
"\u2886\u2840"
|
|
3773
|
-
]
|
|
3774
|
-
},
|
|
3775
|
-
sand: {
|
|
3776
|
-
interval: 80,
|
|
3777
|
-
frames: [
|
|
3778
|
-
"\u2801",
|
|
3779
|
-
"\u2802",
|
|
3780
|
-
"\u2804",
|
|
3781
|
-
"\u2840",
|
|
3782
|
-
"\u2848",
|
|
3783
|
-
"\u2850",
|
|
3784
|
-
"\u2860",
|
|
3785
|
-
"\u28C0",
|
|
3786
|
-
"\u28C1",
|
|
3787
|
-
"\u28C2",
|
|
3788
|
-
"\u28C4",
|
|
3789
|
-
"\u28CC",
|
|
3790
|
-
"\u28D4",
|
|
3791
|
-
"\u28E4",
|
|
3792
|
-
"\u28E5",
|
|
3793
|
-
"\u28E6",
|
|
3794
|
-
"\u28EE",
|
|
3795
|
-
"\u28F6",
|
|
3796
|
-
"\u28F7",
|
|
3797
|
-
"\u28FF",
|
|
3798
|
-
"\u287F",
|
|
3799
|
-
"\u283F",
|
|
3800
|
-
"\u289F",
|
|
3801
|
-
"\u281F",
|
|
3802
|
-
"\u285B",
|
|
3803
|
-
"\u281B",
|
|
3804
|
-
"\u282B",
|
|
3805
|
-
"\u288B",
|
|
3806
|
-
"\u280B",
|
|
3807
|
-
"\u280D",
|
|
3808
|
-
"\u2849",
|
|
3809
|
-
"\u2809",
|
|
3810
|
-
"\u2811",
|
|
3811
|
-
"\u2821",
|
|
3812
|
-
"\u2881"
|
|
3813
|
-
]
|
|
3814
|
-
},
|
|
3815
|
-
line: {
|
|
3816
|
-
interval: 130,
|
|
3817
|
-
frames: [
|
|
3818
|
-
"-",
|
|
3819
|
-
"\\",
|
|
3820
|
-
"|",
|
|
3821
|
-
"/"
|
|
3822
|
-
]
|
|
3823
|
-
},
|
|
3824
|
-
line2: {
|
|
3825
|
-
interval: 100,
|
|
3826
|
-
frames: [
|
|
3827
|
-
"\u2802",
|
|
3828
|
-
"-",
|
|
3829
|
-
"\u2013",
|
|
3830
|
-
"\u2014",
|
|
3831
|
-
"\u2013",
|
|
3832
|
-
"-"
|
|
3833
|
-
]
|
|
3834
|
-
},
|
|
3835
|
-
rollingLine: {
|
|
3836
|
-
interval: 80,
|
|
3837
|
-
frames: [
|
|
3838
|
-
"/ ",
|
|
3839
|
-
" - ",
|
|
3840
|
-
" \\ ",
|
|
3841
|
-
" |",
|
|
3842
|
-
" |",
|
|
3843
|
-
" \\ ",
|
|
3844
|
-
" - ",
|
|
3845
|
-
"/ "
|
|
3846
|
-
]
|
|
3847
|
-
},
|
|
3848
|
-
pipe: {
|
|
3849
|
-
interval: 100,
|
|
3850
|
-
frames: [
|
|
3851
|
-
"\u2524",
|
|
3852
|
-
"\u2518",
|
|
3853
|
-
"\u2534",
|
|
3854
|
-
"\u2514",
|
|
3855
|
-
"\u251C",
|
|
3856
|
-
"\u250C",
|
|
3857
|
-
"\u252C",
|
|
3858
|
-
"\u2510"
|
|
3859
|
-
]
|
|
3860
|
-
},
|
|
3861
|
-
simpleDots: {
|
|
3862
|
-
interval: 400,
|
|
3863
|
-
frames: [
|
|
3864
|
-
". ",
|
|
3865
|
-
".. ",
|
|
3866
|
-
"...",
|
|
3867
|
-
" "
|
|
3868
|
-
]
|
|
3869
|
-
},
|
|
3870
|
-
simpleDotsScrolling: {
|
|
3871
|
-
interval: 200,
|
|
3872
|
-
frames: [
|
|
3873
|
-
". ",
|
|
3874
|
-
".. ",
|
|
3875
|
-
"...",
|
|
3876
|
-
" ..",
|
|
3877
|
-
" .",
|
|
3878
|
-
" "
|
|
3879
|
-
]
|
|
3880
|
-
},
|
|
3881
|
-
star: {
|
|
3882
|
-
interval: 70,
|
|
3883
|
-
frames: [
|
|
3884
|
-
"\u2736",
|
|
3885
|
-
"\u2738",
|
|
3886
|
-
"\u2739",
|
|
3887
|
-
"\u273A",
|
|
3888
|
-
"\u2739",
|
|
3889
|
-
"\u2737"
|
|
3890
|
-
]
|
|
3891
|
-
},
|
|
3892
|
-
star2: {
|
|
3893
|
-
interval: 80,
|
|
3894
|
-
frames: [
|
|
3895
|
-
"+",
|
|
3896
|
-
"x",
|
|
3897
|
-
"*"
|
|
3898
|
-
]
|
|
3899
|
-
},
|
|
3900
|
-
flip: {
|
|
3901
|
-
interval: 70,
|
|
3902
|
-
frames: [
|
|
3903
|
-
"_",
|
|
3904
|
-
"_",
|
|
3905
|
-
"_",
|
|
3906
|
-
"-",
|
|
3907
|
-
"`",
|
|
3908
|
-
"`",
|
|
3909
|
-
"'",
|
|
3910
|
-
"\xB4",
|
|
3911
|
-
"-",
|
|
3912
|
-
"_",
|
|
3913
|
-
"_",
|
|
3914
|
-
"_"
|
|
3915
|
-
]
|
|
3916
|
-
},
|
|
3917
|
-
hamburger: {
|
|
3918
|
-
interval: 100,
|
|
3919
|
-
frames: [
|
|
3920
|
-
"\u2631",
|
|
3921
|
-
"\u2632",
|
|
3922
|
-
"\u2634"
|
|
3923
|
-
]
|
|
3924
|
-
},
|
|
3925
|
-
growVertical: {
|
|
3926
|
-
interval: 120,
|
|
3927
|
-
frames: [
|
|
3928
|
-
"\u2581",
|
|
3929
|
-
"\u2583",
|
|
3930
|
-
"\u2584",
|
|
3931
|
-
"\u2585",
|
|
3932
|
-
"\u2586",
|
|
3933
|
-
"\u2587",
|
|
3934
|
-
"\u2586",
|
|
3935
|
-
"\u2585",
|
|
3936
|
-
"\u2584",
|
|
3937
|
-
"\u2583"
|
|
3938
|
-
]
|
|
3939
|
-
},
|
|
3940
|
-
growHorizontal: {
|
|
3941
|
-
interval: 120,
|
|
3942
|
-
frames: [
|
|
3943
|
-
"\u258F",
|
|
3944
|
-
"\u258E",
|
|
3945
|
-
"\u258D",
|
|
3946
|
-
"\u258C",
|
|
3947
|
-
"\u258B",
|
|
3948
|
-
"\u258A",
|
|
3949
|
-
"\u2589",
|
|
3950
|
-
"\u258A",
|
|
3951
|
-
"\u258B",
|
|
3952
|
-
"\u258C",
|
|
3953
|
-
"\u258D",
|
|
3954
|
-
"\u258E"
|
|
3955
|
-
]
|
|
3956
|
-
},
|
|
3957
|
-
balloon: {
|
|
3958
|
-
interval: 140,
|
|
3959
|
-
frames: [
|
|
3960
|
-
" ",
|
|
3961
|
-
".",
|
|
3962
|
-
"o",
|
|
3963
|
-
"O",
|
|
3964
|
-
"@",
|
|
3965
|
-
"*",
|
|
3966
|
-
" "
|
|
3967
|
-
]
|
|
3968
|
-
},
|
|
3969
|
-
balloon2: {
|
|
3970
|
-
interval: 120,
|
|
3971
|
-
frames: [
|
|
3972
|
-
".",
|
|
3973
|
-
"o",
|
|
3974
|
-
"O",
|
|
3975
|
-
"\xB0",
|
|
3976
|
-
"O",
|
|
3977
|
-
"o",
|
|
3978
|
-
"."
|
|
3979
|
-
]
|
|
3980
|
-
},
|
|
3981
|
-
noise: {
|
|
3982
|
-
interval: 100,
|
|
3983
|
-
frames: [
|
|
3984
|
-
"\u2593",
|
|
3985
|
-
"\u2592",
|
|
3986
|
-
"\u2591"
|
|
3987
|
-
]
|
|
3988
|
-
},
|
|
3989
|
-
bounce: {
|
|
3990
|
-
interval: 120,
|
|
3991
|
-
frames: [
|
|
3992
|
-
"\u2801",
|
|
3993
|
-
"\u2802",
|
|
3994
|
-
"\u2804",
|
|
3995
|
-
"\u2802"
|
|
3996
|
-
]
|
|
3997
|
-
},
|
|
3998
|
-
boxBounce: {
|
|
3999
|
-
interval: 120,
|
|
4000
|
-
frames: [
|
|
4001
|
-
"\u2596",
|
|
4002
|
-
"\u2598",
|
|
4003
|
-
"\u259D",
|
|
4004
|
-
"\u2597"
|
|
4005
|
-
]
|
|
4006
|
-
},
|
|
4007
|
-
boxBounce2: {
|
|
4008
|
-
interval: 100,
|
|
4009
|
-
frames: [
|
|
4010
|
-
"\u258C",
|
|
4011
|
-
"\u2580",
|
|
4012
|
-
"\u2590",
|
|
4013
|
-
"\u2584"
|
|
4014
|
-
]
|
|
4015
|
-
},
|
|
4016
|
-
triangle: {
|
|
4017
|
-
interval: 50,
|
|
4018
|
-
frames: [
|
|
4019
|
-
"\u25E2",
|
|
4020
|
-
"\u25E3",
|
|
4021
|
-
"\u25E4",
|
|
4022
|
-
"\u25E5"
|
|
4023
|
-
]
|
|
4024
|
-
},
|
|
4025
|
-
binary: {
|
|
4026
|
-
interval: 80,
|
|
4027
|
-
frames: [
|
|
4028
|
-
"010010",
|
|
4029
|
-
"001100",
|
|
4030
|
-
"100101",
|
|
4031
|
-
"111010",
|
|
4032
|
-
"111101",
|
|
4033
|
-
"010111",
|
|
4034
|
-
"101011",
|
|
4035
|
-
"111000",
|
|
4036
|
-
"110011",
|
|
4037
|
-
"110101"
|
|
4038
|
-
]
|
|
4039
|
-
},
|
|
4040
|
-
arc: {
|
|
4041
|
-
interval: 100,
|
|
4042
|
-
frames: [
|
|
4043
|
-
"\u25DC",
|
|
4044
|
-
"\u25E0",
|
|
4045
|
-
"\u25DD",
|
|
4046
|
-
"\u25DE",
|
|
4047
|
-
"\u25E1",
|
|
4048
|
-
"\u25DF"
|
|
4049
|
-
]
|
|
4050
|
-
},
|
|
4051
|
-
circle: {
|
|
4052
|
-
interval: 120,
|
|
4053
|
-
frames: [
|
|
4054
|
-
"\u25E1",
|
|
4055
|
-
"\u2299",
|
|
4056
|
-
"\u25E0"
|
|
4057
|
-
]
|
|
4058
|
-
},
|
|
4059
|
-
squareCorners: {
|
|
4060
|
-
interval: 180,
|
|
4061
|
-
frames: [
|
|
4062
|
-
"\u25F0",
|
|
4063
|
-
"\u25F3",
|
|
4064
|
-
"\u25F2",
|
|
4065
|
-
"\u25F1"
|
|
4066
|
-
]
|
|
4067
|
-
},
|
|
4068
|
-
circleQuarters: {
|
|
4069
|
-
interval: 120,
|
|
4070
|
-
frames: [
|
|
4071
|
-
"\u25F4",
|
|
4072
|
-
"\u25F7",
|
|
4073
|
-
"\u25F6",
|
|
4074
|
-
"\u25F5"
|
|
4075
|
-
]
|
|
4076
|
-
},
|
|
4077
|
-
circleHalves: {
|
|
4078
|
-
interval: 50,
|
|
4079
|
-
frames: [
|
|
4080
|
-
"\u25D0",
|
|
4081
|
-
"\u25D3",
|
|
4082
|
-
"\u25D1",
|
|
4083
|
-
"\u25D2"
|
|
4084
|
-
]
|
|
4085
|
-
},
|
|
4086
|
-
squish: {
|
|
4087
|
-
interval: 100,
|
|
4088
|
-
frames: [
|
|
4089
|
-
"\u256B",
|
|
4090
|
-
"\u256A"
|
|
4091
|
-
]
|
|
4092
|
-
},
|
|
4093
|
-
toggle: {
|
|
4094
|
-
interval: 250,
|
|
4095
|
-
frames: [
|
|
4096
|
-
"\u22B6",
|
|
4097
|
-
"\u22B7"
|
|
4098
|
-
]
|
|
4099
|
-
},
|
|
4100
|
-
toggle2: {
|
|
4101
|
-
interval: 80,
|
|
4102
|
-
frames: [
|
|
4103
|
-
"\u25AB",
|
|
4104
|
-
"\u25AA"
|
|
4105
|
-
]
|
|
4106
|
-
},
|
|
4107
|
-
toggle3: {
|
|
4108
|
-
interval: 120,
|
|
4109
|
-
frames: [
|
|
4110
|
-
"\u25A1",
|
|
4111
|
-
"\u25A0"
|
|
4112
|
-
]
|
|
4113
|
-
},
|
|
4114
|
-
toggle4: {
|
|
4115
|
-
interval: 100,
|
|
4116
|
-
frames: [
|
|
4117
|
-
"\u25A0",
|
|
4118
|
-
"\u25A1",
|
|
4119
|
-
"\u25AA",
|
|
4120
|
-
"\u25AB"
|
|
4121
|
-
]
|
|
4122
|
-
},
|
|
4123
|
-
toggle5: {
|
|
4124
|
-
interval: 100,
|
|
4125
|
-
frames: [
|
|
4126
|
-
"\u25AE",
|
|
4127
|
-
"\u25AF"
|
|
4128
|
-
]
|
|
4129
|
-
},
|
|
4130
|
-
toggle6: {
|
|
4131
|
-
interval: 300,
|
|
4132
|
-
frames: [
|
|
4133
|
-
"\u101D",
|
|
4134
|
-
"\u1040"
|
|
4135
|
-
]
|
|
4136
|
-
},
|
|
4137
|
-
toggle7: {
|
|
4138
|
-
interval: 80,
|
|
4139
|
-
frames: [
|
|
4140
|
-
"\u29BE",
|
|
4141
|
-
"\u29BF"
|
|
4142
|
-
]
|
|
4143
|
-
},
|
|
4144
|
-
toggle8: {
|
|
4145
|
-
interval: 100,
|
|
4146
|
-
frames: [
|
|
4147
|
-
"\u25CD",
|
|
4148
|
-
"\u25CC"
|
|
4149
|
-
]
|
|
4150
|
-
},
|
|
4151
|
-
toggle9: {
|
|
4152
|
-
interval: 100,
|
|
4153
|
-
frames: [
|
|
4154
|
-
"\u25C9",
|
|
4155
|
-
"\u25CE"
|
|
4156
|
-
]
|
|
4157
|
-
},
|
|
4158
|
-
toggle10: {
|
|
4159
|
-
interval: 100,
|
|
4160
|
-
frames: [
|
|
4161
|
-
"\u3282",
|
|
4162
|
-
"\u3280",
|
|
4163
|
-
"\u3281"
|
|
4164
|
-
]
|
|
4165
|
-
},
|
|
4166
|
-
toggle11: {
|
|
4167
|
-
interval: 50,
|
|
4168
|
-
frames: [
|
|
4169
|
-
"\u29C7",
|
|
4170
|
-
"\u29C6"
|
|
4171
|
-
]
|
|
4172
|
-
},
|
|
4173
|
-
toggle12: {
|
|
4174
|
-
interval: 120,
|
|
4175
|
-
frames: [
|
|
4176
|
-
"\u2617",
|
|
4177
|
-
"\u2616"
|
|
4178
|
-
]
|
|
4179
|
-
},
|
|
4180
|
-
toggle13: {
|
|
4181
|
-
interval: 80,
|
|
4182
|
-
frames: [
|
|
4183
|
-
"=",
|
|
4184
|
-
"*",
|
|
4185
|
-
"-"
|
|
4186
|
-
]
|
|
4187
|
-
},
|
|
4188
|
-
arrow: {
|
|
4189
|
-
interval: 100,
|
|
4190
|
-
frames: [
|
|
4191
|
-
"\u2190",
|
|
4192
|
-
"\u2196",
|
|
4193
|
-
"\u2191",
|
|
4194
|
-
"\u2197",
|
|
4195
|
-
"\u2192",
|
|
4196
|
-
"\u2198",
|
|
4197
|
-
"\u2193",
|
|
4198
|
-
"\u2199"
|
|
4199
|
-
]
|
|
4200
|
-
},
|
|
4201
|
-
arrow2: {
|
|
4202
|
-
interval: 80,
|
|
4203
|
-
frames: [
|
|
4204
|
-
"\u2B06\uFE0F ",
|
|
4205
|
-
"\u2197\uFE0F ",
|
|
4206
|
-
"\u27A1\uFE0F ",
|
|
4207
|
-
"\u2198\uFE0F ",
|
|
4208
|
-
"\u2B07\uFE0F ",
|
|
4209
|
-
"\u2199\uFE0F ",
|
|
4210
|
-
"\u2B05\uFE0F ",
|
|
4211
|
-
"\u2196\uFE0F "
|
|
4212
|
-
]
|
|
4213
|
-
},
|
|
4214
|
-
arrow3: {
|
|
4215
|
-
interval: 120,
|
|
4216
|
-
frames: [
|
|
4217
|
-
"\u25B9\u25B9\u25B9\u25B9\u25B9",
|
|
4218
|
-
"\u25B8\u25B9\u25B9\u25B9\u25B9",
|
|
4219
|
-
"\u25B9\u25B8\u25B9\u25B9\u25B9",
|
|
4220
|
-
"\u25B9\u25B9\u25B8\u25B9\u25B9",
|
|
4221
|
-
"\u25B9\u25B9\u25B9\u25B8\u25B9",
|
|
4222
|
-
"\u25B9\u25B9\u25B9\u25B9\u25B8"
|
|
4223
|
-
]
|
|
4224
|
-
},
|
|
4225
|
-
bouncingBar: {
|
|
4226
|
-
interval: 80,
|
|
4227
|
-
frames: [
|
|
4228
|
-
"[ ]",
|
|
4229
|
-
"[= ]",
|
|
4230
|
-
"[== ]",
|
|
4231
|
-
"[=== ]",
|
|
4232
|
-
"[====]",
|
|
4233
|
-
"[ ===]",
|
|
4234
|
-
"[ ==]",
|
|
4235
|
-
"[ =]",
|
|
4236
|
-
"[ ]",
|
|
4237
|
-
"[ =]",
|
|
4238
|
-
"[ ==]",
|
|
4239
|
-
"[ ===]",
|
|
4240
|
-
"[====]",
|
|
4241
|
-
"[=== ]",
|
|
4242
|
-
"[== ]",
|
|
4243
|
-
"[= ]"
|
|
4244
|
-
]
|
|
4245
|
-
},
|
|
4246
|
-
bouncingBall: {
|
|
4247
|
-
interval: 80,
|
|
4248
|
-
frames: [
|
|
4249
|
-
"( \u25CF )",
|
|
4250
|
-
"( \u25CF )",
|
|
4251
|
-
"( \u25CF )",
|
|
4252
|
-
"( \u25CF )",
|
|
4253
|
-
"( \u25CF)",
|
|
4254
|
-
"( \u25CF )",
|
|
4255
|
-
"( \u25CF )",
|
|
4256
|
-
"( \u25CF )",
|
|
4257
|
-
"( \u25CF )",
|
|
4258
|
-
"(\u25CF )"
|
|
4259
|
-
]
|
|
4260
|
-
},
|
|
4261
|
-
smiley: {
|
|
4262
|
-
interval: 200,
|
|
4263
|
-
frames: [
|
|
4264
|
-
"\u{1F604} ",
|
|
4265
|
-
"\u{1F61D} "
|
|
4266
|
-
]
|
|
4267
|
-
},
|
|
4268
|
-
monkey: {
|
|
4269
|
-
interval: 300,
|
|
4270
|
-
frames: [
|
|
4271
|
-
"\u{1F648} ",
|
|
4272
|
-
"\u{1F648} ",
|
|
4273
|
-
"\u{1F649} ",
|
|
4274
|
-
"\u{1F64A} "
|
|
4275
|
-
]
|
|
4276
|
-
},
|
|
4277
|
-
hearts: {
|
|
4278
|
-
interval: 100,
|
|
4279
|
-
frames: [
|
|
4280
|
-
"\u{1F49B} ",
|
|
4281
|
-
"\u{1F499} ",
|
|
4282
|
-
"\u{1F49C} ",
|
|
4283
|
-
"\u{1F49A} ",
|
|
4284
|
-
"\u{1F497} "
|
|
4285
|
-
]
|
|
4286
|
-
},
|
|
4287
|
-
clock: {
|
|
4288
|
-
interval: 100,
|
|
4289
|
-
frames: [
|
|
4290
|
-
"\u{1F55B} ",
|
|
4291
|
-
"\u{1F550} ",
|
|
4292
|
-
"\u{1F551} ",
|
|
4293
|
-
"\u{1F552} ",
|
|
4294
|
-
"\u{1F553} ",
|
|
4295
|
-
"\u{1F554} ",
|
|
4296
|
-
"\u{1F555} ",
|
|
4297
|
-
"\u{1F556} ",
|
|
4298
|
-
"\u{1F557} ",
|
|
4299
|
-
"\u{1F558} ",
|
|
4300
|
-
"\u{1F559} ",
|
|
4301
|
-
"\u{1F55A} "
|
|
4302
|
-
]
|
|
4303
|
-
},
|
|
4304
|
-
earth: {
|
|
4305
|
-
interval: 180,
|
|
4306
|
-
frames: [
|
|
4307
|
-
"\u{1F30D} ",
|
|
4308
|
-
"\u{1F30E} ",
|
|
4309
|
-
"\u{1F30F} "
|
|
4310
|
-
]
|
|
4311
|
-
},
|
|
4312
|
-
material: {
|
|
4313
|
-
interval: 17,
|
|
4314
|
-
frames: [
|
|
4315
|
-
"\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4316
|
-
"\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4317
|
-
"\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4318
|
-
"\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4319
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4320
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4321
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4322
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4323
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4324
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4325
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4326
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4327
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4328
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4329
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4330
|
-
"\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
|
|
4331
|
-
"\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
|
|
4332
|
-
"\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
|
|
4333
|
-
"\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581",
|
|
4334
|
-
"\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4335
|
-
"\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4336
|
-
"\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
|
|
4337
|
-
"\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
|
|
4338
|
-
"\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4339
|
-
"\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4340
|
-
"\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4341
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4342
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4343
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4344
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4345
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4346
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4347
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4348
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4349
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4350
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4351
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4352
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4353
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4354
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
|
|
4355
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
|
|
4356
|
-
"\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
|
|
4357
|
-
"\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
|
|
4358
|
-
"\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
|
|
4359
|
-
"\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
|
|
4360
|
-
"\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
|
|
4361
|
-
"\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4362
|
-
"\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4363
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4364
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4365
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4366
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4367
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4368
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4369
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4370
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4371
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4372
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4373
|
-
"\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4374
|
-
"\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
|
|
4375
|
-
"\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
|
|
4376
|
-
"\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581",
|
|
4377
|
-
"\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4378
|
-
"\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4379
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4380
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4381
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
|
|
4382
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
|
|
4383
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
|
|
4384
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4385
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4386
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4387
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4388
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
|
|
4389
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4390
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
|
|
4391
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
|
|
4392
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
|
|
4393
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
|
|
4394
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
|
|
4395
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
|
|
4396
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
|
|
4397
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
|
|
4398
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
|
|
4399
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
|
|
4400
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4401
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4402
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
|
|
4403
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4404
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4405
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
|
|
4406
|
-
"\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"
|
|
4407
|
-
]
|
|
4408
|
-
},
|
|
4409
|
-
moon: {
|
|
4410
|
-
interval: 80,
|
|
4411
|
-
frames: [
|
|
4412
|
-
"\u{1F311} ",
|
|
4413
|
-
"\u{1F312} ",
|
|
4414
|
-
"\u{1F313} ",
|
|
4415
|
-
"\u{1F314} ",
|
|
4416
|
-
"\u{1F315} ",
|
|
4417
|
-
"\u{1F316} ",
|
|
4418
|
-
"\u{1F317} ",
|
|
4419
|
-
"\u{1F318} "
|
|
4420
|
-
]
|
|
4421
|
-
},
|
|
4422
|
-
runner: {
|
|
4423
|
-
interval: 140,
|
|
4424
|
-
frames: [
|
|
4425
|
-
"\u{1F6B6} ",
|
|
4426
|
-
"\u{1F3C3} "
|
|
4427
|
-
]
|
|
4428
|
-
},
|
|
4429
|
-
pong: {
|
|
4430
|
-
interval: 80,
|
|
4431
|
-
frames: [
|
|
4432
|
-
"\u2590\u2802 \u258C",
|
|
4433
|
-
"\u2590\u2808 \u258C",
|
|
4434
|
-
"\u2590 \u2802 \u258C",
|
|
4435
|
-
"\u2590 \u2820 \u258C",
|
|
4436
|
-
"\u2590 \u2840 \u258C",
|
|
4437
|
-
"\u2590 \u2820 \u258C",
|
|
4438
|
-
"\u2590 \u2802 \u258C",
|
|
4439
|
-
"\u2590 \u2808 \u258C",
|
|
4440
|
-
"\u2590 \u2802 \u258C",
|
|
4441
|
-
"\u2590 \u2820 \u258C",
|
|
4442
|
-
"\u2590 \u2840 \u258C",
|
|
4443
|
-
"\u2590 \u2820 \u258C",
|
|
4444
|
-
"\u2590 \u2802 \u258C",
|
|
4445
|
-
"\u2590 \u2808 \u258C",
|
|
4446
|
-
"\u2590 \u2802\u258C",
|
|
4447
|
-
"\u2590 \u2820\u258C",
|
|
4448
|
-
"\u2590 \u2840\u258C",
|
|
4449
|
-
"\u2590 \u2820 \u258C",
|
|
4450
|
-
"\u2590 \u2802 \u258C",
|
|
4451
|
-
"\u2590 \u2808 \u258C",
|
|
4452
|
-
"\u2590 \u2802 \u258C",
|
|
4453
|
-
"\u2590 \u2820 \u258C",
|
|
4454
|
-
"\u2590 \u2840 \u258C",
|
|
4455
|
-
"\u2590 \u2820 \u258C",
|
|
4456
|
-
"\u2590 \u2802 \u258C",
|
|
4457
|
-
"\u2590 \u2808 \u258C",
|
|
4458
|
-
"\u2590 \u2802 \u258C",
|
|
4459
|
-
"\u2590 \u2820 \u258C",
|
|
4460
|
-
"\u2590 \u2840 \u258C",
|
|
4461
|
-
"\u2590\u2820 \u258C"
|
|
4462
|
-
]
|
|
4463
|
-
},
|
|
4464
|
-
shark: {
|
|
4465
|
-
interval: 120,
|
|
4466
|
-
frames: [
|
|
4467
|
-
"\u2590|\\____________\u258C",
|
|
4468
|
-
"\u2590_|\\___________\u258C",
|
|
4469
|
-
"\u2590__|\\__________\u258C",
|
|
4470
|
-
"\u2590___|\\_________\u258C",
|
|
4471
|
-
"\u2590____|\\________\u258C",
|
|
4472
|
-
"\u2590_____|\\_______\u258C",
|
|
4473
|
-
"\u2590______|\\______\u258C",
|
|
4474
|
-
"\u2590_______|\\_____\u258C",
|
|
4475
|
-
"\u2590________|\\____\u258C",
|
|
4476
|
-
"\u2590_________|\\___\u258C",
|
|
4477
|
-
"\u2590__________|\\__\u258C",
|
|
4478
|
-
"\u2590___________|\\_\u258C",
|
|
4479
|
-
"\u2590____________|\\\u258C",
|
|
4480
|
-
"\u2590____________/|\u258C",
|
|
4481
|
-
"\u2590___________/|_\u258C",
|
|
4482
|
-
"\u2590__________/|__\u258C",
|
|
4483
|
-
"\u2590_________/|___\u258C",
|
|
4484
|
-
"\u2590________/|____\u258C",
|
|
4485
|
-
"\u2590_______/|_____\u258C",
|
|
4486
|
-
"\u2590______/|______\u258C",
|
|
4487
|
-
"\u2590_____/|_______\u258C",
|
|
4488
|
-
"\u2590____/|________\u258C",
|
|
4489
|
-
"\u2590___/|_________\u258C",
|
|
4490
|
-
"\u2590__/|__________\u258C",
|
|
4491
|
-
"\u2590_/|___________\u258C",
|
|
4492
|
-
"\u2590/|____________\u258C"
|
|
4493
|
-
]
|
|
4494
|
-
},
|
|
4495
|
-
dqpb: {
|
|
4496
|
-
interval: 100,
|
|
4497
|
-
frames: [
|
|
4498
|
-
"d",
|
|
4499
|
-
"q",
|
|
4500
|
-
"p",
|
|
4501
|
-
"b"
|
|
4502
|
-
]
|
|
4503
|
-
},
|
|
4504
|
-
weather: {
|
|
4505
|
-
interval: 100,
|
|
4506
|
-
frames: [
|
|
4507
|
-
"\u2600\uFE0F ",
|
|
4508
|
-
"\u2600\uFE0F ",
|
|
4509
|
-
"\u2600\uFE0F ",
|
|
4510
|
-
"\u{1F324} ",
|
|
4511
|
-
"\u26C5\uFE0F ",
|
|
4512
|
-
"\u{1F325} ",
|
|
4513
|
-
"\u2601\uFE0F ",
|
|
4514
|
-
"\u{1F327} ",
|
|
4515
|
-
"\u{1F328} ",
|
|
4516
|
-
"\u{1F327} ",
|
|
4517
|
-
"\u{1F328} ",
|
|
4518
|
-
"\u{1F327} ",
|
|
4519
|
-
"\u{1F328} ",
|
|
4520
|
-
"\u26C8 ",
|
|
4521
|
-
"\u{1F328} ",
|
|
4522
|
-
"\u{1F327} ",
|
|
4523
|
-
"\u{1F328} ",
|
|
4524
|
-
"\u2601\uFE0F ",
|
|
4525
|
-
"\u{1F325} ",
|
|
4526
|
-
"\u26C5\uFE0F ",
|
|
4527
|
-
"\u{1F324} ",
|
|
4528
|
-
"\u2600\uFE0F ",
|
|
4529
|
-
"\u2600\uFE0F "
|
|
4530
|
-
]
|
|
4531
|
-
},
|
|
4532
|
-
christmas: {
|
|
4533
|
-
interval: 400,
|
|
4534
|
-
frames: [
|
|
4535
|
-
"\u{1F332}",
|
|
4536
|
-
"\u{1F384}"
|
|
4537
|
-
]
|
|
4538
|
-
},
|
|
4539
|
-
grenade: {
|
|
4540
|
-
interval: 80,
|
|
4541
|
-
frames: [
|
|
4542
|
-
"\u060C ",
|
|
4543
|
-
"\u2032 ",
|
|
4544
|
-
" \xB4 ",
|
|
4545
|
-
" \u203E ",
|
|
4546
|
-
" \u2E0C",
|
|
4547
|
-
" \u2E0A",
|
|
4548
|
-
" |",
|
|
4549
|
-
" \u204E",
|
|
4550
|
-
" \u2055",
|
|
4551
|
-
" \u0DF4 ",
|
|
4552
|
-
" \u2053",
|
|
4553
|
-
" ",
|
|
4554
|
-
" ",
|
|
4555
|
-
" "
|
|
4556
|
-
]
|
|
4557
|
-
},
|
|
4558
|
-
point: {
|
|
4559
|
-
interval: 125,
|
|
4560
|
-
frames: [
|
|
4561
|
-
"\u2219\u2219\u2219",
|
|
4562
|
-
"\u25CF\u2219\u2219",
|
|
4563
|
-
"\u2219\u25CF\u2219",
|
|
4564
|
-
"\u2219\u2219\u25CF",
|
|
4565
|
-
"\u2219\u2219\u2219"
|
|
4566
|
-
]
|
|
4567
|
-
},
|
|
4568
|
-
layer: {
|
|
4569
|
-
interval: 150,
|
|
4570
|
-
frames: [
|
|
4571
|
-
"-",
|
|
4572
|
-
"=",
|
|
4573
|
-
"\u2261"
|
|
4574
|
-
]
|
|
4575
|
-
},
|
|
4576
|
-
betaWave: {
|
|
4577
|
-
interval: 80,
|
|
4578
|
-
frames: [
|
|
4579
|
-
"\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2",
|
|
4580
|
-
"\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2",
|
|
4581
|
-
"\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2",
|
|
4582
|
-
"\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2",
|
|
4583
|
-
"\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2",
|
|
4584
|
-
"\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2",
|
|
4585
|
-
"\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"
|
|
4586
|
-
]
|
|
4587
|
-
},
|
|
4588
|
-
fingerDance: {
|
|
4589
|
-
interval: 160,
|
|
4590
|
-
frames: [
|
|
4591
|
-
"\u{1F918} ",
|
|
4592
|
-
"\u{1F91F} ",
|
|
4593
|
-
"\u{1F596} ",
|
|
4594
|
-
"\u270B ",
|
|
4595
|
-
"\u{1F91A} ",
|
|
4596
|
-
"\u{1F446} "
|
|
4597
|
-
]
|
|
4598
|
-
},
|
|
4599
|
-
fistBump: {
|
|
4600
|
-
interval: 80,
|
|
4601
|
-
frames: [
|
|
4602
|
-
"\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
|
|
4603
|
-
"\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
|
|
4604
|
-
"\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
|
|
4605
|
-
"\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ",
|
|
4606
|
-
"\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ",
|
|
4607
|
-
"\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ",
|
|
4608
|
-
"\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "
|
|
4609
|
-
]
|
|
4610
|
-
},
|
|
4611
|
-
soccerHeader: {
|
|
4612
|
-
interval: 80,
|
|
4613
|
-
frames: [
|
|
4614
|
-
" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ",
|
|
4615
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4616
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4617
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4618
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4619
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4620
|
-
"\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ",
|
|
4621
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4622
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4623
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4624
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
|
|
4625
|
-
"\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "
|
|
4626
|
-
]
|
|
4627
|
-
},
|
|
4628
|
-
mindblown: {
|
|
4629
|
-
interval: 160,
|
|
4630
|
-
frames: [
|
|
4631
|
-
"\u{1F610} ",
|
|
4632
|
-
"\u{1F610} ",
|
|
4633
|
-
"\u{1F62E} ",
|
|
4634
|
-
"\u{1F62E} ",
|
|
4635
|
-
"\u{1F626} ",
|
|
4636
|
-
"\u{1F626} ",
|
|
4637
|
-
"\u{1F627} ",
|
|
4638
|
-
"\u{1F627} ",
|
|
4639
|
-
"\u{1F92F} ",
|
|
4640
|
-
"\u{1F4A5} ",
|
|
4641
|
-
"\u2728 ",
|
|
4642
|
-
"\u3000 ",
|
|
4643
|
-
"\u3000 ",
|
|
4644
|
-
"\u3000 "
|
|
4645
|
-
]
|
|
4646
|
-
},
|
|
4647
|
-
speaker: {
|
|
4648
|
-
interval: 160,
|
|
4649
|
-
frames: [
|
|
4650
|
-
"\u{1F508} ",
|
|
4651
|
-
"\u{1F509} ",
|
|
4652
|
-
"\u{1F50A} ",
|
|
4653
|
-
"\u{1F509} "
|
|
4654
|
-
]
|
|
4655
|
-
},
|
|
4656
|
-
orangePulse: {
|
|
4657
|
-
interval: 100,
|
|
4658
|
-
frames: [
|
|
4659
|
-
"\u{1F538} ",
|
|
4660
|
-
"\u{1F536} ",
|
|
4661
|
-
"\u{1F7E0} ",
|
|
4662
|
-
"\u{1F7E0} ",
|
|
4663
|
-
"\u{1F536} "
|
|
4664
|
-
]
|
|
4665
|
-
},
|
|
4666
|
-
bluePulse: {
|
|
4667
|
-
interval: 100,
|
|
4668
|
-
frames: [
|
|
4669
|
-
"\u{1F539} ",
|
|
4670
|
-
"\u{1F537} ",
|
|
4671
|
-
"\u{1F535} ",
|
|
4672
|
-
"\u{1F535} ",
|
|
4673
|
-
"\u{1F537} "
|
|
4674
|
-
]
|
|
4675
|
-
},
|
|
4676
|
-
orangeBluePulse: {
|
|
4677
|
-
interval: 100,
|
|
4678
|
-
frames: [
|
|
4679
|
-
"\u{1F538} ",
|
|
4680
|
-
"\u{1F536} ",
|
|
4681
|
-
"\u{1F7E0} ",
|
|
4682
|
-
"\u{1F7E0} ",
|
|
4683
|
-
"\u{1F536} ",
|
|
4684
|
-
"\u{1F539} ",
|
|
4685
|
-
"\u{1F537} ",
|
|
4686
|
-
"\u{1F535} ",
|
|
4687
|
-
"\u{1F535} ",
|
|
4688
|
-
"\u{1F537} "
|
|
4689
|
-
]
|
|
4690
|
-
},
|
|
4691
|
-
timeTravel: {
|
|
4692
|
-
interval: 100,
|
|
4693
|
-
frames: [
|
|
4694
|
-
"\u{1F55B} ",
|
|
4695
|
-
"\u{1F55A} ",
|
|
4696
|
-
"\u{1F559} ",
|
|
4697
|
-
"\u{1F558} ",
|
|
4698
|
-
"\u{1F557} ",
|
|
4699
|
-
"\u{1F556} ",
|
|
4700
|
-
"\u{1F555} ",
|
|
4701
|
-
"\u{1F554} ",
|
|
4702
|
-
"\u{1F553} ",
|
|
4703
|
-
"\u{1F552} ",
|
|
4704
|
-
"\u{1F551} ",
|
|
4705
|
-
"\u{1F550} "
|
|
4706
|
-
]
|
|
4707
|
-
},
|
|
4708
|
-
aesthetic: {
|
|
4709
|
-
interval: 80,
|
|
4710
|
-
frames: [
|
|
4711
|
-
"\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1",
|
|
4712
|
-
"\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1",
|
|
4713
|
-
"\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1",
|
|
4714
|
-
"\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1",
|
|
4715
|
-
"\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1",
|
|
4716
|
-
"\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1",
|
|
4717
|
-
"\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0",
|
|
4718
|
-
"\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"
|
|
4719
|
-
]
|
|
4720
|
-
},
|
|
4721
|
-
dwarfFortress: {
|
|
4722
|
-
interval: 80,
|
|
4723
|
-
frames: [
|
|
4724
|
-
" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4725
|
-
"\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4726
|
-
"\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4727
|
-
"\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4728
|
-
"\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4729
|
-
"\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4730
|
-
"\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4731
|
-
"\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4732
|
-
"\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4733
|
-
"\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4734
|
-
" \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4735
|
-
" \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4736
|
-
" \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4737
|
-
" \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4738
|
-
" \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4739
|
-
" \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4740
|
-
" \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4741
|
-
" \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4742
|
-
" \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4743
|
-
" \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4744
|
-
" \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4745
|
-
" \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4746
|
-
" \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4747
|
-
" \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4748
|
-
" \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4749
|
-
" \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4750
|
-
" \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4751
|
-
" \u263A \u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4752
|
-
" \u263A\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4753
|
-
" \u263A\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4754
|
-
" \u263A\u2593\u2588\u2588\xA3\xA3\xA3 ",
|
|
4755
|
-
" \u263A\u2593\u2588\u2588\xA3\xA3\xA3 ",
|
|
4756
|
-
" \u263A\u2592\u2588\u2588\xA3\xA3\xA3 ",
|
|
4757
|
-
" \u263A\u2592\u2588\u2588\xA3\xA3\xA3 ",
|
|
4758
|
-
" \u263A\u2591\u2588\u2588\xA3\xA3\xA3 ",
|
|
4759
|
-
" \u263A\u2591\u2588\u2588\xA3\xA3\xA3 ",
|
|
4760
|
-
" \u263A \u2588\u2588\xA3\xA3\xA3 ",
|
|
4761
|
-
" \u263A\u2588\u2588\xA3\xA3\xA3 ",
|
|
4762
|
-
" \u263A\u2588\u2588\xA3\xA3\xA3 ",
|
|
4763
|
-
" \u263A\u2593\u2588\xA3\xA3\xA3 ",
|
|
4764
|
-
" \u263A\u2593\u2588\xA3\xA3\xA3 ",
|
|
4765
|
-
" \u263A\u2592\u2588\xA3\xA3\xA3 ",
|
|
4766
|
-
" \u263A\u2592\u2588\xA3\xA3\xA3 ",
|
|
4767
|
-
" \u263A\u2591\u2588\xA3\xA3\xA3 ",
|
|
4768
|
-
" \u263A\u2591\u2588\xA3\xA3\xA3 ",
|
|
4769
|
-
" \u263A \u2588\xA3\xA3\xA3 ",
|
|
4770
|
-
" \u263A\u2588\xA3\xA3\xA3 ",
|
|
4771
|
-
" \u263A\u2588\xA3\xA3\xA3 ",
|
|
4772
|
-
" \u263A\u2593\xA3\xA3\xA3 ",
|
|
4773
|
-
" \u263A\u2593\xA3\xA3\xA3 ",
|
|
4774
|
-
" \u263A\u2592\xA3\xA3\xA3 ",
|
|
4775
|
-
" \u263A\u2592\xA3\xA3\xA3 ",
|
|
4776
|
-
" \u263A\u2591\xA3\xA3\xA3 ",
|
|
4777
|
-
" \u263A\u2591\xA3\xA3\xA3 ",
|
|
4778
|
-
" \u263A \xA3\xA3\xA3 ",
|
|
4779
|
-
" \u263A\xA3\xA3\xA3 ",
|
|
4780
|
-
" \u263A\xA3\xA3\xA3 ",
|
|
4781
|
-
" \u263A\u2593\xA3\xA3 ",
|
|
4782
|
-
" \u263A\u2593\xA3\xA3 ",
|
|
4783
|
-
" \u263A\u2592\xA3\xA3 ",
|
|
4784
|
-
" \u263A\u2592\xA3\xA3 ",
|
|
4785
|
-
" \u263A\u2591\xA3\xA3 ",
|
|
4786
|
-
" \u263A\u2591\xA3\xA3 ",
|
|
4787
|
-
" \u263A \xA3\xA3 ",
|
|
4788
|
-
" \u263A\xA3\xA3 ",
|
|
4789
|
-
" \u263A\xA3\xA3 ",
|
|
4790
|
-
" \u263A\u2593\xA3 ",
|
|
4791
|
-
" \u263A\u2593\xA3 ",
|
|
4792
|
-
" \u263A\u2592\xA3 ",
|
|
4793
|
-
" \u263A\u2592\xA3 ",
|
|
4794
|
-
" \u263A\u2591\xA3 ",
|
|
4795
|
-
" \u263A\u2591\xA3 ",
|
|
4796
|
-
" \u263A \xA3 ",
|
|
4797
|
-
" \u263A\xA3 ",
|
|
4798
|
-
" \u263A\xA3 ",
|
|
4799
|
-
" \u263A\u2593 ",
|
|
4800
|
-
" \u263A\u2593 ",
|
|
4801
|
-
" \u263A\u2592 ",
|
|
4802
|
-
" \u263A\u2592 ",
|
|
4803
|
-
" \u263A\u2591 ",
|
|
4804
|
-
" \u263A\u2591 ",
|
|
4805
|
-
" \u263A ",
|
|
4806
|
-
" \u263A &",
|
|
4807
|
-
" \u263A \u263C&",
|
|
4808
|
-
" \u263A \u263C &",
|
|
4809
|
-
" \u263A\u263C &",
|
|
4810
|
-
" \u263A\u263C & ",
|
|
4811
|
-
" \u203C & ",
|
|
4812
|
-
" \u263A & ",
|
|
4813
|
-
" \u203C & ",
|
|
4814
|
-
" \u263A & ",
|
|
4815
|
-
" \u203C & ",
|
|
4816
|
-
" \u263A & ",
|
|
4817
|
-
"\u203C & ",
|
|
4818
|
-
" & ",
|
|
4819
|
-
" & ",
|
|
4820
|
-
" & \u2591 ",
|
|
4821
|
-
" & \u2592 ",
|
|
4822
|
-
" & \u2593 ",
|
|
4823
|
-
" & \xA3 ",
|
|
4824
|
-
" & \u2591\xA3 ",
|
|
4825
|
-
" & \u2592\xA3 ",
|
|
4826
|
-
" & \u2593\xA3 ",
|
|
4827
|
-
" & \xA3\xA3 ",
|
|
4828
|
-
" & \u2591\xA3\xA3 ",
|
|
4829
|
-
" & \u2592\xA3\xA3 ",
|
|
4830
|
-
"& \u2593\xA3\xA3 ",
|
|
4831
|
-
"& \xA3\xA3\xA3 ",
|
|
4832
|
-
" \u2591\xA3\xA3\xA3 ",
|
|
4833
|
-
" \u2592\xA3\xA3\xA3 ",
|
|
4834
|
-
" \u2593\xA3\xA3\xA3 ",
|
|
4835
|
-
" \u2588\xA3\xA3\xA3 ",
|
|
4836
|
-
" \u2591\u2588\xA3\xA3\xA3 ",
|
|
4837
|
-
" \u2592\u2588\xA3\xA3\xA3 ",
|
|
4838
|
-
" \u2593\u2588\xA3\xA3\xA3 ",
|
|
4839
|
-
" \u2588\u2588\xA3\xA3\xA3 ",
|
|
4840
|
-
" \u2591\u2588\u2588\xA3\xA3\xA3 ",
|
|
4841
|
-
" \u2592\u2588\u2588\xA3\xA3\xA3 ",
|
|
4842
|
-
" \u2593\u2588\u2588\xA3\xA3\xA3 ",
|
|
4843
|
-
" \u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4844
|
-
" \u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4845
|
-
" \u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4846
|
-
" \u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4847
|
-
" \u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4848
|
-
" \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4849
|
-
" \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4850
|
-
" \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4851
|
-
" \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4852
|
-
" \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4853
|
-
" \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4854
|
-
" \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4855
|
-
" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
|
|
4856
|
-
" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "
|
|
4857
|
-
]
|
|
4858
|
-
},
|
|
4859
|
-
fish: {
|
|
4860
|
-
interval: 80,
|
|
4861
|
-
frames: [
|
|
4862
|
-
"~~~~~~~~~~~~~~~~~~~~",
|
|
4863
|
-
"> ~~~~~~~~~~~~~~~~~~",
|
|
4864
|
-
"\xBA> ~~~~~~~~~~~~~~~~~",
|
|
4865
|
-
"(\xBA> ~~~~~~~~~~~~~~~~",
|
|
4866
|
-
"((\xBA> ~~~~~~~~~~~~~~~",
|
|
4867
|
-
"<((\xBA> ~~~~~~~~~~~~~~",
|
|
4868
|
-
"><((\xBA> ~~~~~~~~~~~~~",
|
|
4869
|
-
" ><((\xBA> ~~~~~~~~~~~~",
|
|
4870
|
-
"~ ><((\xBA> ~~~~~~~~~~~",
|
|
4871
|
-
"~~ <>((\xBA> ~~~~~~~~~~",
|
|
4872
|
-
"~~~ ><((\xBA> ~~~~~~~~~",
|
|
4873
|
-
"~~~~ <>((\xBA> ~~~~~~~~",
|
|
4874
|
-
"~~~~~ ><((\xBA> ~~~~~~~",
|
|
4875
|
-
"~~~~~~ <>((\xBA> ~~~~~~",
|
|
4876
|
-
"~~~~~~~ ><((\xBA> ~~~~~",
|
|
4877
|
-
"~~~~~~~~ <>((\xBA> ~~~~",
|
|
4878
|
-
"~~~~~~~~~ ><((\xBA> ~~~",
|
|
4879
|
-
"~~~~~~~~~~ <>((\xBA> ~~",
|
|
4880
|
-
"~~~~~~~~~~~ ><((\xBA> ~",
|
|
4881
|
-
"~~~~~~~~~~~~ <>((\xBA> ",
|
|
4882
|
-
"~~~~~~~~~~~~~ ><((\xBA>",
|
|
4883
|
-
"~~~~~~~~~~~~~~ <>((\xBA",
|
|
4884
|
-
"~~~~~~~~~~~~~~~ ><((",
|
|
4885
|
-
"~~~~~~~~~~~~~~~~ <>(",
|
|
4886
|
-
"~~~~~~~~~~~~~~~~~ ><",
|
|
4887
|
-
"~~~~~~~~~~~~~~~~~~ <",
|
|
4888
|
-
"~~~~~~~~~~~~~~~~~~~~"
|
|
4889
|
-
]
|
|
4890
|
-
}
|
|
4891
|
-
};
|
|
4892
|
-
|
|
4893
|
-
// ../../node_modules/.pnpm/cli-spinners@3.4.0/node_modules/cli-spinners/index.js
|
|
4894
|
-
var cli_spinners_default = spinners_default;
|
|
4895
|
-
var spinnersList = Object.keys(spinners_default);
|
|
4896
|
-
|
|
4897
|
-
// ../../node_modules/.pnpm/log-symbols@7.0.1/node_modules/log-symbols/symbols.js
|
|
4898
|
-
var symbols_exports = {};
|
|
4899
|
-
__export(symbols_exports, {
|
|
4900
|
-
error: () => error,
|
|
4901
|
-
info: () => info,
|
|
4902
|
-
success: () => success,
|
|
4903
|
-
warning: () => warning
|
|
4904
|
-
});
|
|
4905
|
-
|
|
4906
|
-
// ../../node_modules/.pnpm/yoctocolors@2.1.2/node_modules/yoctocolors/base.js
|
|
4907
|
-
var import_node_tty2 = __toESM(require("node:tty"), 1);
|
|
4908
|
-
var hasColors = import_node_tty2.default?.WriteStream?.prototype?.hasColors?.() ?? false;
|
|
4909
|
-
var format = /* @__PURE__ */ __name((open, close) => {
|
|
4910
|
-
if (!hasColors) {
|
|
4911
|
-
return (input) => input;
|
|
4912
|
-
}
|
|
4913
|
-
const openCode = `\x1B[${open}m`;
|
|
4914
|
-
const closeCode = `\x1B[${close}m`;
|
|
4915
|
-
return (input) => {
|
|
4916
|
-
const string = input + "";
|
|
4917
|
-
let index = string.indexOf(closeCode);
|
|
4918
|
-
if (index === -1) {
|
|
4919
|
-
return openCode + string + closeCode;
|
|
4920
|
-
}
|
|
4921
|
-
let result = openCode;
|
|
4922
|
-
let lastIndex = 0;
|
|
4923
|
-
const reopenOnNestedClose = close === 22;
|
|
4924
|
-
const replaceCode = (reopenOnNestedClose ? closeCode : "") + openCode;
|
|
4925
|
-
while (index !== -1) {
|
|
4926
|
-
result += string.slice(lastIndex, index) + replaceCode;
|
|
4927
|
-
lastIndex = index + closeCode.length;
|
|
4928
|
-
index = string.indexOf(closeCode, lastIndex);
|
|
4929
|
-
}
|
|
4930
|
-
result += string.slice(lastIndex) + closeCode;
|
|
4931
|
-
return result;
|
|
4932
|
-
};
|
|
4933
|
-
}, "format");
|
|
4934
|
-
var reset = format(0, 0);
|
|
4935
|
-
var bold = format(1, 22);
|
|
4936
|
-
var dim = format(2, 22);
|
|
4937
|
-
var italic = format(3, 23);
|
|
4938
|
-
var underline = format(4, 24);
|
|
4939
|
-
var overline = format(53, 55);
|
|
4940
|
-
var inverse = format(7, 27);
|
|
4941
|
-
var hidden = format(8, 28);
|
|
4942
|
-
var strikethrough = format(9, 29);
|
|
4943
|
-
var black = format(30, 39);
|
|
4944
|
-
var red = format(31, 39);
|
|
4945
|
-
var green = format(32, 39);
|
|
4946
|
-
var yellow = format(33, 39);
|
|
4947
|
-
var blue = format(34, 39);
|
|
4948
|
-
var magenta = format(35, 39);
|
|
4949
|
-
var cyan = format(36, 39);
|
|
4950
|
-
var white = format(37, 39);
|
|
4951
|
-
var gray = format(90, 39);
|
|
4952
|
-
var bgBlack = format(40, 49);
|
|
4953
|
-
var bgRed = format(41, 49);
|
|
4954
|
-
var bgGreen = format(42, 49);
|
|
4955
|
-
var bgYellow = format(43, 49);
|
|
4956
|
-
var bgBlue = format(44, 49);
|
|
4957
|
-
var bgMagenta = format(45, 49);
|
|
4958
|
-
var bgCyan = format(46, 49);
|
|
4959
|
-
var bgWhite = format(47, 49);
|
|
4960
|
-
var bgGray = format(100, 49);
|
|
4961
|
-
var redBright = format(91, 39);
|
|
4962
|
-
var greenBright = format(92, 39);
|
|
4963
|
-
var yellowBright = format(93, 39);
|
|
4964
|
-
var blueBright = format(94, 39);
|
|
4965
|
-
var magentaBright = format(95, 39);
|
|
4966
|
-
var cyanBright = format(96, 39);
|
|
4967
|
-
var whiteBright = format(97, 39);
|
|
4968
|
-
var bgRedBright = format(101, 49);
|
|
4969
|
-
var bgGreenBright = format(102, 49);
|
|
4970
|
-
var bgYellowBright = format(103, 49);
|
|
4971
|
-
var bgBlueBright = format(104, 49);
|
|
4972
|
-
var bgMagentaBright = format(105, 49);
|
|
4973
|
-
var bgCyanBright = format(106, 49);
|
|
4974
|
-
var bgWhiteBright = format(107, 49);
|
|
4975
|
-
|
|
4976
|
-
// ../../node_modules/.pnpm/is-unicode-supported@2.1.0/node_modules/is-unicode-supported/index.js
|
|
4977
|
-
var import_node_process4 = __toESM(require("node:process"), 1);
|
|
4978
|
-
function isUnicodeSupported() {
|
|
4979
|
-
const { env: env2 } = import_node_process4.default;
|
|
4980
|
-
const { TERM, TERM_PROGRAM } = env2;
|
|
4981
|
-
if (import_node_process4.default.platform !== "win32") {
|
|
4982
|
-
return TERM !== "linux";
|
|
4983
|
-
}
|
|
4984
|
-
return Boolean(env2.WT_SESSION) || Boolean(env2.TERMINUS_SUBLIME) || env2.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env2.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
4985
|
-
}
|
|
4986
|
-
__name(isUnicodeSupported, "isUnicodeSupported");
|
|
4987
|
-
|
|
4988
|
-
// ../../node_modules/.pnpm/log-symbols@7.0.1/node_modules/log-symbols/symbols.js
|
|
4989
|
-
var _isUnicodeSupported = isUnicodeSupported();
|
|
4990
|
-
var info = blue(_isUnicodeSupported ? "\u2139" : "i");
|
|
4991
|
-
var success = green(_isUnicodeSupported ? "\u2714" : "\u221A");
|
|
4992
|
-
var warning = yellow(_isUnicodeSupported ? "\u26A0" : "\u203C");
|
|
4993
|
-
var error = red(_isUnicodeSupported ? "\u2716" : "\xD7");
|
|
4994
|
-
|
|
4995
|
-
// ../../node_modules/.pnpm/ansi-regex@6.2.2/node_modules/ansi-regex/index.js
|
|
4996
|
-
function ansiRegex({ onlyFirst = false } = {}) {
|
|
4997
|
-
const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
|
|
4998
|
-
const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
|
|
4999
|
-
const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
|
|
5000
|
-
const pattern = `${osc}|${csi}`;
|
|
5001
|
-
return new RegExp(pattern, onlyFirst ? void 0 : "g");
|
|
5002
|
-
}
|
|
5003
|
-
__name(ansiRegex, "ansiRegex");
|
|
5004
|
-
|
|
5005
|
-
// ../../node_modules/.pnpm/strip-ansi@7.1.2/node_modules/strip-ansi/index.js
|
|
5006
|
-
var regex = ansiRegex();
|
|
5007
|
-
function stripAnsi(string) {
|
|
5008
|
-
if (typeof string !== "string") {
|
|
5009
|
-
throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
|
|
5010
|
-
}
|
|
5011
|
-
return string.replace(regex, "");
|
|
5012
|
-
}
|
|
5013
|
-
__name(stripAnsi, "stripAnsi");
|
|
5014
|
-
|
|
5015
|
-
// ../../node_modules/.pnpm/get-east-asian-width@1.4.0/node_modules/get-east-asian-width/lookup.js
|
|
5016
|
-
function isAmbiguous(x) {
|
|
5017
|
-
return x === 161 || x === 164 || x === 167 || x === 168 || x === 170 || x === 173 || x === 174 || x >= 176 && x <= 180 || x >= 182 && x <= 186 || x >= 188 && x <= 191 || x === 198 || x === 208 || x === 215 || x === 216 || x >= 222 && x <= 225 || x === 230 || x >= 232 && x <= 234 || x === 236 || x === 237 || x === 240 || x === 242 || x === 243 || x >= 247 && x <= 250 || x === 252 || x === 254 || x === 257 || x === 273 || x === 275 || x === 283 || x === 294 || x === 295 || x === 299 || x >= 305 && x <= 307 || x === 312 || x >= 319 && x <= 322 || x === 324 || x >= 328 && x <= 331 || x === 333 || x === 338 || x === 339 || x === 358 || x === 359 || x === 363 || x === 462 || x === 464 || x === 466 || x === 468 || x === 470 || x === 472 || x === 474 || x === 476 || x === 593 || x === 609 || x === 708 || x === 711 || x >= 713 && x <= 715 || x === 717 || x === 720 || x >= 728 && x <= 731 || x === 733 || x === 735 || x >= 768 && x <= 879 || x >= 913 && x <= 929 || x >= 931 && x <= 937 || x >= 945 && x <= 961 || x >= 963 && x <= 969 || x === 1025 || x >= 1040 && x <= 1103 || x === 1105 || x === 8208 || x >= 8211 && x <= 8214 || x === 8216 || x === 8217 || x === 8220 || x === 8221 || x >= 8224 && x <= 8226 || x >= 8228 && x <= 8231 || x === 8240 || x === 8242 || x === 8243 || x === 8245 || x === 8251 || x === 8254 || x === 8308 || x === 8319 || x >= 8321 && x <= 8324 || x === 8364 || x === 8451 || x === 8453 || x === 8457 || x === 8467 || x === 8470 || x === 8481 || x === 8482 || x === 8486 || x === 8491 || x === 8531 || x === 8532 || x >= 8539 && x <= 8542 || x >= 8544 && x <= 8555 || x >= 8560 && x <= 8569 || x === 8585 || x >= 8592 && x <= 8601 || x === 8632 || x === 8633 || x === 8658 || x === 8660 || x === 8679 || x === 8704 || x === 8706 || x === 8707 || x === 8711 || x === 8712 || x === 8715 || x === 8719 || x === 8721 || x === 8725 || x === 8730 || x >= 8733 && x <= 8736 || x === 8739 || x === 8741 || x >= 8743 && x <= 8748 || x === 8750 || x >= 8756 && x <= 8759 || x === 8764 || x === 8765 || x === 8776 || x === 8780 || x === 8786 || x === 8800 || x === 8801 || x >= 8804 && x <= 8807 || x === 8810 || x === 8811 || x === 8814 || x === 8815 || x === 8834 || x === 8835 || x === 8838 || x === 8839 || x === 8853 || x === 8857 || x === 8869 || x === 8895 || x === 8978 || x >= 9312 && x <= 9449 || x >= 9451 && x <= 9547 || x >= 9552 && x <= 9587 || x >= 9600 && x <= 9615 || x >= 9618 && x <= 9621 || x === 9632 || x === 9633 || x >= 9635 && x <= 9641 || x === 9650 || x === 9651 || x === 9654 || x === 9655 || x === 9660 || x === 9661 || x === 9664 || x === 9665 || x >= 9670 && x <= 9672 || x === 9675 || x >= 9678 && x <= 9681 || x >= 9698 && x <= 9701 || x === 9711 || x === 9733 || x === 9734 || x === 9737 || x === 9742 || x === 9743 || x === 9756 || x === 9758 || x === 9792 || x === 9794 || x === 9824 || x === 9825 || x >= 9827 && x <= 9829 || x >= 9831 && x <= 9834 || x === 9836 || x === 9837 || x === 9839 || x === 9886 || x === 9887 || x === 9919 || x >= 9926 && x <= 9933 || x >= 9935 && x <= 9939 || x >= 9941 && x <= 9953 || x === 9955 || x === 9960 || x === 9961 || x >= 9963 && x <= 9969 || x === 9972 || x >= 9974 && x <= 9977 || x === 9979 || x === 9980 || x === 9982 || x === 9983 || x === 10045 || x >= 10102 && x <= 10111 || x >= 11094 && x <= 11097 || x >= 12872 && x <= 12879 || x >= 57344 && x <= 63743 || x >= 65024 && x <= 65039 || x === 65533 || x >= 127232 && x <= 127242 || x >= 127248 && x <= 127277 || x >= 127280 && x <= 127337 || x >= 127344 && x <= 127373 || x === 127375 || x === 127376 || x >= 127387 && x <= 127404 || x >= 917760 && x <= 917999 || x >= 983040 && x <= 1048573 || x >= 1048576 && x <= 1114109;
|
|
5018
|
-
}
|
|
5019
|
-
__name(isAmbiguous, "isAmbiguous");
|
|
5020
|
-
function isFullWidth(x) {
|
|
5021
|
-
return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
|
|
5022
|
-
}
|
|
5023
|
-
__name(isFullWidth, "isFullWidth");
|
|
5024
|
-
function isWide(x) {
|
|
5025
|
-
return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x >= 94192 && x <= 94198 || x >= 94208 && x <= 101589 || x >= 101631 && x <= 101662 || x >= 101760 && x <= 101874 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128728 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129674 || x >= 129678 && x <= 129734 || x === 129736 || x >= 129741 && x <= 129756 || x >= 129759 && x <= 129770 || x >= 129775 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
|
|
5026
|
-
}
|
|
5027
|
-
__name(isWide, "isWide");
|
|
5028
|
-
|
|
5029
|
-
// ../../node_modules/.pnpm/get-east-asian-width@1.4.0/node_modules/get-east-asian-width/index.js
|
|
5030
|
-
function validate(codePoint) {
|
|
5031
|
-
if (!Number.isSafeInteger(codePoint)) {
|
|
5032
|
-
throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
|
|
5033
|
-
}
|
|
5034
|
-
}
|
|
5035
|
-
__name(validate, "validate");
|
|
5036
|
-
function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
|
|
5037
|
-
validate(codePoint);
|
|
5038
|
-
if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
|
|
5039
|
-
return 2;
|
|
5040
|
-
}
|
|
5041
|
-
return 1;
|
|
5042
|
-
}
|
|
5043
|
-
__name(eastAsianWidth, "eastAsianWidth");
|
|
5044
|
-
|
|
5045
|
-
// ../../node_modules/.pnpm/string-width@8.1.1/node_modules/string-width/index.js
|
|
5046
|
-
var segmenter = new Intl.Segmenter();
|
|
5047
|
-
var zeroWidthClusterRegex = new RegExp("^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Mark}|\\p{Surrogate})+$", "v");
|
|
5048
|
-
var leadingNonPrintingRegex = new RegExp("^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Mark}\\p{Surrogate}]+", "v");
|
|
5049
|
-
var rgiEmojiRegex = new RegExp("^\\p{RGI_Emoji}$", "v");
|
|
5050
|
-
function baseVisible(segment) {
|
|
5051
|
-
return segment.replace(leadingNonPrintingRegex, "");
|
|
5052
|
-
}
|
|
5053
|
-
__name(baseVisible, "baseVisible");
|
|
5054
|
-
function isZeroWidthCluster(segment) {
|
|
5055
|
-
return zeroWidthClusterRegex.test(segment);
|
|
5056
|
-
}
|
|
5057
|
-
__name(isZeroWidthCluster, "isZeroWidthCluster");
|
|
5058
|
-
function trailingHalfwidthWidth(segment, eastAsianWidthOptions) {
|
|
5059
|
-
let extra = 0;
|
|
5060
|
-
if (segment.length > 1) {
|
|
5061
|
-
for (const char of segment.slice(1)) {
|
|
5062
|
-
if (char >= "\uFF00" && char <= "\uFFEF") {
|
|
5063
|
-
extra += eastAsianWidth(char.codePointAt(0), eastAsianWidthOptions);
|
|
5064
|
-
}
|
|
5065
|
-
}
|
|
5066
|
-
}
|
|
5067
|
-
return extra;
|
|
5068
|
-
}
|
|
5069
|
-
__name(trailingHalfwidthWidth, "trailingHalfwidthWidth");
|
|
5070
|
-
function stringWidth(input, options = {}) {
|
|
5071
|
-
if (typeof input !== "string" || input.length === 0) {
|
|
5072
|
-
return 0;
|
|
5073
|
-
}
|
|
5074
|
-
const {
|
|
5075
|
-
ambiguousIsNarrow = true,
|
|
5076
|
-
countAnsiEscapeCodes = false
|
|
5077
|
-
} = options;
|
|
5078
|
-
let string = input;
|
|
5079
|
-
if (!countAnsiEscapeCodes) {
|
|
5080
|
-
string = stripAnsi(string);
|
|
5081
|
-
}
|
|
5082
|
-
if (string.length === 0) {
|
|
5083
|
-
return 0;
|
|
5084
|
-
}
|
|
5085
|
-
let width = 0;
|
|
5086
|
-
const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
|
|
5087
|
-
for (const { segment } of segmenter.segment(string)) {
|
|
5088
|
-
if (isZeroWidthCluster(segment)) {
|
|
5089
|
-
continue;
|
|
5090
|
-
}
|
|
5091
|
-
if (rgiEmojiRegex.test(segment)) {
|
|
5092
|
-
width += 2;
|
|
5093
|
-
continue;
|
|
5094
|
-
}
|
|
5095
|
-
const codePoint = baseVisible(segment).codePointAt(0);
|
|
5096
|
-
width += eastAsianWidth(codePoint, eastAsianWidthOptions);
|
|
5097
|
-
width += trailingHalfwidthWidth(segment, eastAsianWidthOptions);
|
|
5098
|
-
}
|
|
5099
|
-
return width;
|
|
5100
|
-
}
|
|
5101
|
-
__name(stringWidth, "stringWidth");
|
|
5102
|
-
|
|
5103
|
-
// ../../node_modules/.pnpm/is-interactive@2.0.0/node_modules/is-interactive/index.js
|
|
5104
|
-
function isInteractive({ stream = process.stdout } = {}) {
|
|
5105
|
-
return Boolean(
|
|
5106
|
-
stream && stream.isTTY && process.env.TERM !== "dumb" && !("CI" in process.env)
|
|
5107
|
-
);
|
|
5108
|
-
}
|
|
5109
|
-
__name(isInteractive, "isInteractive");
|
|
5110
|
-
|
|
5111
|
-
// ../../node_modules/.pnpm/stdin-discarder@0.2.2/node_modules/stdin-discarder/index.js
|
|
5112
|
-
var import_node_process5 = __toESM(require("node:process"), 1);
|
|
5113
|
-
var ASCII_ETX_CODE = 3;
|
|
5114
|
-
var StdinDiscarder = class {
|
|
5115
|
-
static {
|
|
5116
|
-
__name(this, "StdinDiscarder");
|
|
5117
|
-
}
|
|
5118
|
-
#activeCount = 0;
|
|
5119
|
-
start() {
|
|
5120
|
-
this.#activeCount++;
|
|
5121
|
-
if (this.#activeCount === 1) {
|
|
5122
|
-
this.#realStart();
|
|
5123
|
-
}
|
|
5124
|
-
}
|
|
5125
|
-
stop() {
|
|
5126
|
-
if (this.#activeCount <= 0) {
|
|
5127
|
-
throw new Error("`stop` called more times than `start`");
|
|
5128
|
-
}
|
|
5129
|
-
this.#activeCount--;
|
|
5130
|
-
if (this.#activeCount === 0) {
|
|
5131
|
-
this.#realStop();
|
|
5132
|
-
}
|
|
5133
|
-
}
|
|
5134
|
-
#realStart() {
|
|
5135
|
-
if (import_node_process5.default.platform === "win32" || !import_node_process5.default.stdin.isTTY) {
|
|
5136
|
-
return;
|
|
5137
|
-
}
|
|
5138
|
-
import_node_process5.default.stdin.setRawMode(true);
|
|
5139
|
-
import_node_process5.default.stdin.on("data", this.#handleInput);
|
|
5140
|
-
import_node_process5.default.stdin.resume();
|
|
5141
|
-
}
|
|
5142
|
-
#realStop() {
|
|
5143
|
-
if (!import_node_process5.default.stdin.isTTY) {
|
|
5144
|
-
return;
|
|
5145
|
-
}
|
|
5146
|
-
import_node_process5.default.stdin.off("data", this.#handleInput);
|
|
5147
|
-
import_node_process5.default.stdin.pause();
|
|
5148
|
-
import_node_process5.default.stdin.setRawMode(false);
|
|
5149
|
-
}
|
|
5150
|
-
#handleInput(chunk) {
|
|
5151
|
-
if (chunk[0] === ASCII_ETX_CODE) {
|
|
5152
|
-
import_node_process5.default.emit("SIGINT");
|
|
5153
|
-
}
|
|
5154
|
-
}
|
|
5155
|
-
};
|
|
5156
|
-
var stdinDiscarder = new StdinDiscarder();
|
|
5157
|
-
var stdin_discarder_default = stdinDiscarder;
|
|
5158
|
-
|
|
5159
|
-
// ../../node_modules/.pnpm/ora@9.1.0/node_modules/ora/index.js
|
|
5160
|
-
var RENDER_DEFERRAL_TIMEOUT = 200;
|
|
5161
|
-
var activeHooksPerStream = /* @__PURE__ */ new Map();
|
|
5162
|
-
var Ora = class {
|
|
5163
|
-
static {
|
|
5164
|
-
__name(this, "Ora");
|
|
5165
|
-
}
|
|
5166
|
-
#linesToClear = 0;
|
|
5167
|
-
#frameIndex = -1;
|
|
5168
|
-
#lastFrameTime = 0;
|
|
5169
|
-
#options;
|
|
5170
|
-
#spinner;
|
|
5171
|
-
#stream;
|
|
5172
|
-
#id;
|
|
5173
|
-
#hookedStreams = /* @__PURE__ */ new Map();
|
|
5174
|
-
#isInternalWrite = false;
|
|
5175
|
-
#drainHandler;
|
|
5176
|
-
#deferRenderTimer;
|
|
5177
|
-
#isDiscardingStdin = false;
|
|
5178
|
-
color;
|
|
5179
|
-
// Helper to execute writes while preventing hook recursion
|
|
5180
|
-
#internalWrite(fn) {
|
|
5181
|
-
this.#isInternalWrite = true;
|
|
5182
|
-
try {
|
|
5183
|
-
return fn();
|
|
5184
|
-
} finally {
|
|
5185
|
-
this.#isInternalWrite = false;
|
|
5186
|
-
}
|
|
5187
|
-
}
|
|
5188
|
-
// Helper to render if still spinning
|
|
5189
|
-
#tryRender() {
|
|
5190
|
-
if (this.isSpinning) {
|
|
5191
|
-
this.render();
|
|
5192
|
-
}
|
|
5193
|
-
}
|
|
5194
|
-
#stringifyChunk(chunk, encoding) {
|
|
5195
|
-
if (chunk === void 0 || chunk === null) {
|
|
5196
|
-
return "";
|
|
5197
|
-
}
|
|
5198
|
-
if (typeof chunk === "string") {
|
|
5199
|
-
return chunk;
|
|
5200
|
-
}
|
|
5201
|
-
if (Buffer.isBuffer(chunk) || ArrayBuffer.isView(chunk)) {
|
|
5202
|
-
const normalizedEncoding = typeof encoding === "string" && encoding && encoding !== "buffer" ? encoding : "utf8";
|
|
5203
|
-
return Buffer.from(chunk).toString(normalizedEncoding);
|
|
5204
|
-
}
|
|
5205
|
-
return String(chunk);
|
|
5206
|
-
}
|
|
5207
|
-
#chunkTerminatesLine(chunkString) {
|
|
5208
|
-
if (!chunkString) {
|
|
5209
|
-
return false;
|
|
5210
|
-
}
|
|
5211
|
-
const lastCharacter = chunkString.at(-1);
|
|
5212
|
-
return lastCharacter === "\n" || lastCharacter === "\r";
|
|
5213
|
-
}
|
|
5214
|
-
#scheduleRenderDeferral() {
|
|
5215
|
-
if (this.#deferRenderTimer) {
|
|
5216
|
-
return;
|
|
5217
|
-
}
|
|
5218
|
-
this.#deferRenderTimer = setTimeout(() => {
|
|
5219
|
-
this.#deferRenderTimer = void 0;
|
|
5220
|
-
if (this.isSpinning) {
|
|
5221
|
-
this.#tryRender();
|
|
5222
|
-
}
|
|
5223
|
-
}, RENDER_DEFERRAL_TIMEOUT);
|
|
5224
|
-
if (typeof this.#deferRenderTimer?.unref === "function") {
|
|
5225
|
-
this.#deferRenderTimer.unref();
|
|
5226
|
-
}
|
|
5227
|
-
}
|
|
5228
|
-
#clearRenderDeferral() {
|
|
5229
|
-
if (this.#deferRenderTimer) {
|
|
5230
|
-
clearTimeout(this.#deferRenderTimer);
|
|
5231
|
-
this.#deferRenderTimer = void 0;
|
|
5232
|
-
}
|
|
5233
|
-
}
|
|
5234
|
-
// Helper to build complete line with symbol, text, prefix, and suffix
|
|
5235
|
-
#buildOutputLine(symbol, text, prefixText, suffixText) {
|
|
5236
|
-
const fullPrefixText = this.#getFullPrefixText(prefixText, " ");
|
|
5237
|
-
const separatorText = symbol ? " " : "";
|
|
5238
|
-
const fullText = typeof text === "string" ? separatorText + text : "";
|
|
5239
|
-
const fullSuffixText = this.#getFullSuffixText(suffixText, " ");
|
|
5240
|
-
return fullPrefixText + symbol + fullText + fullSuffixText;
|
|
5241
|
-
}
|
|
5242
|
-
constructor(options) {
|
|
5243
|
-
if (typeof options === "string") {
|
|
5244
|
-
options = {
|
|
5245
|
-
text: options
|
|
5246
|
-
};
|
|
5247
|
-
}
|
|
5248
|
-
this.#options = {
|
|
5249
|
-
color: "cyan",
|
|
5250
|
-
stream: import_node_process6.default.stderr,
|
|
5251
|
-
discardStdin: true,
|
|
5252
|
-
hideCursor: true,
|
|
5253
|
-
...options
|
|
5254
|
-
};
|
|
5255
|
-
this.color = this.#options.color;
|
|
5256
|
-
this.#stream = this.#options.stream;
|
|
5257
|
-
if (typeof this.#options.isEnabled !== "boolean") {
|
|
5258
|
-
this.#options.isEnabled = isInteractive({ stream: this.#stream });
|
|
5259
|
-
}
|
|
5260
|
-
if (typeof this.#options.isSilent !== "boolean") {
|
|
5261
|
-
this.#options.isSilent = false;
|
|
5262
|
-
}
|
|
5263
|
-
const userInterval = this.#options.interval;
|
|
5264
|
-
this.spinner = this.#options.spinner;
|
|
5265
|
-
this.#options.interval = userInterval;
|
|
5266
|
-
this.text = this.#options.text;
|
|
5267
|
-
this.prefixText = this.#options.prefixText;
|
|
5268
|
-
this.suffixText = this.#options.suffixText;
|
|
5269
|
-
this.indent = this.#options.indent;
|
|
5270
|
-
if (import_node_process6.default.env.NODE_ENV === "test") {
|
|
5271
|
-
this._stream = this.#stream;
|
|
5272
|
-
this._isEnabled = this.#options.isEnabled;
|
|
5273
|
-
Object.defineProperty(this, "_linesToClear", {
|
|
5274
|
-
get() {
|
|
5275
|
-
return this.#linesToClear;
|
|
5276
|
-
},
|
|
5277
|
-
set(newValue) {
|
|
5278
|
-
this.#linesToClear = newValue;
|
|
5279
|
-
}
|
|
5280
|
-
});
|
|
5281
|
-
Object.defineProperty(this, "_frameIndex", {
|
|
5282
|
-
get() {
|
|
5283
|
-
return this.#frameIndex;
|
|
5284
|
-
}
|
|
5285
|
-
});
|
|
5286
|
-
Object.defineProperty(this, "_lineCount", {
|
|
5287
|
-
get() {
|
|
5288
|
-
const columns = this.#stream.columns ?? 80;
|
|
5289
|
-
const prefixText = typeof this.#options.prefixText === "function" ? "" : this.#options.prefixText;
|
|
5290
|
-
const suffixText = typeof this.#options.suffixText === "function" ? "" : this.#options.suffixText;
|
|
5291
|
-
const fullPrefixText = typeof prefixText === "string" && prefixText !== "" ? prefixText + " " : "";
|
|
5292
|
-
const fullSuffixText = typeof suffixText === "string" && suffixText !== "" ? " " + suffixText : "";
|
|
5293
|
-
const spinnerChar = "-";
|
|
5294
|
-
const fullText = " ".repeat(this.#options.indent) + fullPrefixText + spinnerChar + (typeof this.#options.text === "string" ? " " + this.#options.text : "") + fullSuffixText;
|
|
5295
|
-
return this.#computeLineCountFrom(fullText, columns);
|
|
5296
|
-
}
|
|
5297
|
-
});
|
|
5298
|
-
}
|
|
5299
|
-
}
|
|
5300
|
-
get indent() {
|
|
5301
|
-
return this.#options.indent;
|
|
5302
|
-
}
|
|
5303
|
-
set indent(indent = 0) {
|
|
5304
|
-
if (!(indent >= 0 && Number.isInteger(indent))) {
|
|
5305
|
-
throw new Error("The `indent` option must be an integer from 0 and up");
|
|
5306
|
-
}
|
|
5307
|
-
this.#options.indent = indent;
|
|
5308
|
-
}
|
|
5309
|
-
get interval() {
|
|
5310
|
-
return this.#options.interval ?? this.#spinner.interval ?? 100;
|
|
5311
|
-
}
|
|
5312
|
-
get spinner() {
|
|
5313
|
-
return this.#spinner;
|
|
5314
|
-
}
|
|
5315
|
-
set spinner(spinner) {
|
|
5316
|
-
this.#frameIndex = -1;
|
|
5317
|
-
this.#options.interval = void 0;
|
|
5318
|
-
if (typeof spinner === "object") {
|
|
5319
|
-
if (!Array.isArray(spinner.frames) || spinner.frames.length === 0 || spinner.frames.some((frame) => typeof frame !== "string")) {
|
|
5320
|
-
throw new Error("The given spinner must have a non-empty `frames` array of strings");
|
|
5321
|
-
}
|
|
5322
|
-
if (spinner.interval !== void 0 && !(Number.isInteger(spinner.interval) && spinner.interval > 0)) {
|
|
5323
|
-
throw new Error("`spinner.interval` must be a positive integer if provided");
|
|
2329
|
+
start(newText) {
|
|
2330
|
+
if (newText)
|
|
2331
|
+
text = newText;
|
|
2332
|
+
if (isSilent)
|
|
2333
|
+
return this;
|
|
2334
|
+
if (isTTY()) {
|
|
2335
|
+
render();
|
|
2336
|
+
interval = setInterval(render, SPINNER_INTERVAL);
|
|
2337
|
+
} else {
|
|
2338
|
+
process.stderr.write(`- ${text}
|
|
2339
|
+
`);
|
|
5324
2340
|
}
|
|
5325
|
-
this.#spinner = spinner;
|
|
5326
|
-
} else if (!isUnicodeSupported()) {
|
|
5327
|
-
this.#spinner = cli_spinners_default.line;
|
|
5328
|
-
} else if (spinner === void 0) {
|
|
5329
|
-
this.#spinner = cli_spinners_default.dots;
|
|
5330
|
-
} else if (spinner !== "default" && cli_spinners_default[spinner]) {
|
|
5331
|
-
this.#spinner = cli_spinners_default[spinner];
|
|
5332
|
-
} else {
|
|
5333
|
-
throw new Error(`There is no built-in spinner named '${spinner}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);
|
|
5334
|
-
}
|
|
5335
|
-
}
|
|
5336
|
-
get text() {
|
|
5337
|
-
return this.#options.text;
|
|
5338
|
-
}
|
|
5339
|
-
set text(value = "") {
|
|
5340
|
-
this.#options.text = value;
|
|
5341
|
-
}
|
|
5342
|
-
get prefixText() {
|
|
5343
|
-
return this.#options.prefixText;
|
|
5344
|
-
}
|
|
5345
|
-
set prefixText(value = "") {
|
|
5346
|
-
this.#options.prefixText = value;
|
|
5347
|
-
}
|
|
5348
|
-
get suffixText() {
|
|
5349
|
-
return this.#options.suffixText;
|
|
5350
|
-
}
|
|
5351
|
-
set suffixText(value = "") {
|
|
5352
|
-
this.#options.suffixText = value;
|
|
5353
|
-
}
|
|
5354
|
-
get isSpinning() {
|
|
5355
|
-
return this.#id !== void 0;
|
|
5356
|
-
}
|
|
5357
|
-
#formatAffix(value, separator, placeBefore = false) {
|
|
5358
|
-
const resolved = typeof value === "function" ? value() : value;
|
|
5359
|
-
if (typeof resolved === "string" && resolved !== "") {
|
|
5360
|
-
return placeBefore ? separator + resolved : resolved + separator;
|
|
5361
|
-
}
|
|
5362
|
-
return "";
|
|
5363
|
-
}
|
|
5364
|
-
#getFullPrefixText(prefixText = this.#options.prefixText, postfix = " ") {
|
|
5365
|
-
return this.#formatAffix(prefixText, postfix, false);
|
|
5366
|
-
}
|
|
5367
|
-
#getFullSuffixText(suffixText = this.#options.suffixText, prefix = " ") {
|
|
5368
|
-
return this.#formatAffix(suffixText, prefix, true);
|
|
5369
|
-
}
|
|
5370
|
-
#computeLineCountFrom(text, columns) {
|
|
5371
|
-
let count = 0;
|
|
5372
|
-
for (const line of (0, import_node_util.stripVTControlCharacters)(text).split("\n")) {
|
|
5373
|
-
count += Math.max(1, Math.ceil(stringWidth(line) / columns));
|
|
5374
|
-
}
|
|
5375
|
-
return count;
|
|
5376
|
-
}
|
|
5377
|
-
get isEnabled() {
|
|
5378
|
-
return this.#options.isEnabled && !this.#options.isSilent;
|
|
5379
|
-
}
|
|
5380
|
-
set isEnabled(value) {
|
|
5381
|
-
if (typeof value !== "boolean") {
|
|
5382
|
-
throw new TypeError("The `isEnabled` option must be a boolean");
|
|
5383
|
-
}
|
|
5384
|
-
this.#options.isEnabled = value;
|
|
5385
|
-
}
|
|
5386
|
-
get isSilent() {
|
|
5387
|
-
return this.#options.isSilent;
|
|
5388
|
-
}
|
|
5389
|
-
set isSilent(value) {
|
|
5390
|
-
if (typeof value !== "boolean") {
|
|
5391
|
-
throw new TypeError("The `isSilent` option must be a boolean");
|
|
5392
|
-
}
|
|
5393
|
-
this.#options.isSilent = value;
|
|
5394
|
-
}
|
|
5395
|
-
frame() {
|
|
5396
|
-
const now = Date.now();
|
|
5397
|
-
if (this.#frameIndex === -1 || now - this.#lastFrameTime >= this.interval) {
|
|
5398
|
-
this.#frameIndex = (this.#frameIndex + 1) % this.#spinner.frames.length;
|
|
5399
|
-
this.#lastFrameTime = now;
|
|
5400
|
-
}
|
|
5401
|
-
const { frames } = this.#spinner;
|
|
5402
|
-
let frame = frames[this.#frameIndex];
|
|
5403
|
-
if (this.color) {
|
|
5404
|
-
frame = source_default[this.color](frame);
|
|
5405
|
-
}
|
|
5406
|
-
const fullPrefixText = this.#getFullPrefixText(this.#options.prefixText, " ");
|
|
5407
|
-
const fullText = typeof this.text === "string" ? " " + this.text : "";
|
|
5408
|
-
const fullSuffixText = this.#getFullSuffixText(this.#options.suffixText, " ");
|
|
5409
|
-
return fullPrefixText + frame + fullText + fullSuffixText;
|
|
5410
|
-
}
|
|
5411
|
-
clear() {
|
|
5412
|
-
if (!this.isEnabled || !this.#stream.isTTY) {
|
|
5413
2341
|
return this;
|
|
5414
|
-
}
|
|
5415
|
-
|
|
5416
|
-
|
|
5417
|
-
|
|
5418
|
-
|
|
5419
|
-
this.#stream.moveCursor(0, -1);
|
|
5420
|
-
}
|
|
5421
|
-
this.#stream.clearLine(1);
|
|
5422
|
-
}
|
|
5423
|
-
if (this.#options.indent) {
|
|
5424
|
-
this.#stream.cursorTo(this.#options.indent);
|
|
5425
|
-
}
|
|
5426
|
-
});
|
|
5427
|
-
this.#linesToClear = 0;
|
|
5428
|
-
return this;
|
|
5429
|
-
}
|
|
5430
|
-
// Helper to hook a single stream
|
|
5431
|
-
#hookStream(stream) {
|
|
5432
|
-
if (!stream || this.#hookedStreams.has(stream) || !stream.isTTY || typeof stream.write !== "function") {
|
|
5433
|
-
return;
|
|
5434
|
-
}
|
|
5435
|
-
if (activeHooksPerStream.has(stream)) {
|
|
5436
|
-
console.warn("[ora] Multiple concurrent spinners detected. This may cause visual corruption. Use one spinner at a time.");
|
|
5437
|
-
}
|
|
5438
|
-
const originalWrite = stream.write;
|
|
5439
|
-
this.#hookedStreams.set(stream, originalWrite);
|
|
5440
|
-
activeHooksPerStream.set(stream, this);
|
|
5441
|
-
stream.write = (chunk, encoding, callback) => this.#hookedWrite(stream, originalWrite, chunk, encoding, callback);
|
|
5442
|
-
}
|
|
5443
|
-
/**
|
|
5444
|
-
Intercept stream writes while spinner is active to handle external writes cleanly without visual corruption.
|
|
5445
|
-
Hooks process stdio streams and the active spinner stream so console.log(), console.error(), and direct writes stay tidy.
|
|
5446
|
-
*/
|
|
5447
|
-
#installHook() {
|
|
5448
|
-
if (!this.isEnabled || this.#hookedStreams.size > 0) {
|
|
5449
|
-
return;
|
|
5450
|
-
}
|
|
5451
|
-
const streamsToHook = /* @__PURE__ */ new Set([this.#stream, import_node_process6.default.stdout, import_node_process6.default.stderr]);
|
|
5452
|
-
for (const stream of streamsToHook) {
|
|
5453
|
-
this.#hookStream(stream);
|
|
5454
|
-
}
|
|
5455
|
-
}
|
|
5456
|
-
#uninstallHook() {
|
|
5457
|
-
for (const [stream, originalWrite] of this.#hookedStreams) {
|
|
5458
|
-
stream.write = originalWrite;
|
|
5459
|
-
if (activeHooksPerStream.get(stream) === this) {
|
|
5460
|
-
activeHooksPerStream.delete(stream);
|
|
2342
|
+
},
|
|
2343
|
+
stop() {
|
|
2344
|
+
if (interval) {
|
|
2345
|
+
clearInterval(interval);
|
|
2346
|
+
interval = void 0;
|
|
5461
2347
|
}
|
|
5462
|
-
|
|
5463
|
-
this.#hookedStreams.clear();
|
|
5464
|
-
}
|
|
5465
|
-
// eslint-disable-next-line max-params -- Need stream and originalWrite for multi-stream support
|
|
5466
|
-
#hookedWrite(stream, originalWrite, chunk, encoding, callback) {
|
|
5467
|
-
if (typeof encoding === "function") {
|
|
5468
|
-
callback = encoding;
|
|
5469
|
-
encoding = void 0;
|
|
5470
|
-
}
|
|
5471
|
-
if (this.#isInternalWrite) {
|
|
5472
|
-
return originalWrite.call(stream, chunk, encoding, callback);
|
|
5473
|
-
}
|
|
5474
|
-
this.clear();
|
|
5475
|
-
const chunkString = this.#stringifyChunk(chunk, encoding);
|
|
5476
|
-
const chunkTerminatesLine = this.#chunkTerminatesLine(chunkString);
|
|
5477
|
-
const writeResult = originalWrite.call(stream, chunk, encoding, callback);
|
|
5478
|
-
if (chunkTerminatesLine) {
|
|
5479
|
-
this.#clearRenderDeferral();
|
|
5480
|
-
} else if (chunkString.length > 0) {
|
|
5481
|
-
this.#scheduleRenderDeferral();
|
|
5482
|
-
}
|
|
5483
|
-
if (this.isSpinning && !this.#deferRenderTimer) {
|
|
5484
|
-
this.render();
|
|
5485
|
-
}
|
|
5486
|
-
return writeResult;
|
|
5487
|
-
}
|
|
5488
|
-
render() {
|
|
5489
|
-
if (!this.isEnabled || this.#drainHandler || this.#deferRenderTimer) {
|
|
5490
|
-
return this;
|
|
5491
|
-
}
|
|
5492
|
-
this.clear();
|
|
5493
|
-
let frameContent = this.frame();
|
|
5494
|
-
const columns = this.#stream.columns ?? 80;
|
|
5495
|
-
const actualLineCount = this.#computeLineCountFrom(frameContent, columns);
|
|
5496
|
-
const consoleHeight = this.#stream.rows;
|
|
5497
|
-
if (consoleHeight && consoleHeight > 1 && actualLineCount > consoleHeight) {
|
|
5498
|
-
const lines = frameContent.split("\n");
|
|
5499
|
-
const maxLines = consoleHeight - 1;
|
|
5500
|
-
frameContent = [...lines.slice(0, maxLines), "... (content truncated to fit terminal)"].join("\n");
|
|
5501
|
-
}
|
|
5502
|
-
const canContinue = this.#internalWrite(() => this.#stream.write(frameContent));
|
|
5503
|
-
if (canContinue === false && this.#stream.isTTY) {
|
|
5504
|
-
this.#drainHandler = () => {
|
|
5505
|
-
this.#drainHandler = void 0;
|
|
5506
|
-
this.#tryRender();
|
|
5507
|
-
};
|
|
5508
|
-
this.#stream.once("drain", this.#drainHandler);
|
|
5509
|
-
}
|
|
5510
|
-
this.#linesToClear = this.#computeLineCountFrom(frameContent, columns);
|
|
5511
|
-
return this;
|
|
5512
|
-
}
|
|
5513
|
-
start(text) {
|
|
5514
|
-
if (text) {
|
|
5515
|
-
this.text = text;
|
|
5516
|
-
}
|
|
5517
|
-
if (this.isSilent) {
|
|
2348
|
+
clearLine();
|
|
5518
2349
|
return this;
|
|
5519
|
-
}
|
|
5520
|
-
|
|
5521
|
-
|
|
5522
|
-
|
|
5523
|
-
|
|
5524
|
-
|
|
2350
|
+
},
|
|
2351
|
+
succeed(successText) {
|
|
2352
|
+
if (interval) {
|
|
2353
|
+
clearInterval(interval);
|
|
2354
|
+
interval = void 0;
|
|
2355
|
+
}
|
|
2356
|
+
if (isSilent)
|
|
2357
|
+
return this;
|
|
2358
|
+
const finalText = successText ?? text;
|
|
2359
|
+
if (isTTY()) {
|
|
2360
|
+
process.stderr.write(`\r\x1B[K\u2714 ${finalText}
|
|
2361
|
+
`);
|
|
2362
|
+
} else {
|
|
2363
|
+
process.stderr.write(`\u2714 ${finalText}
|
|
2364
|
+
`);
|
|
5525
2365
|
}
|
|
5526
2366
|
return this;
|
|
5527
|
-
}
|
|
5528
|
-
|
|
5529
|
-
|
|
5530
|
-
|
|
5531
|
-
|
|
5532
|
-
|
|
5533
|
-
|
|
5534
|
-
|
|
5535
|
-
|
|
5536
|
-
|
|
5537
|
-
|
|
5538
|
-
|
|
5539
|
-
|
|
5540
|
-
|
|
5541
|
-
|
|
5542
|
-
}
|
|
5543
|
-
stop() {
|
|
5544
|
-
clearInterval(this.#id);
|
|
5545
|
-
this.#id = void 0;
|
|
5546
|
-
this.#frameIndex = -1;
|
|
5547
|
-
this.#lastFrameTime = 0;
|
|
5548
|
-
this.#clearRenderDeferral();
|
|
5549
|
-
this.#uninstallHook();
|
|
5550
|
-
if (this.#drainHandler) {
|
|
5551
|
-
this.#stream.removeListener("drain", this.#drainHandler);
|
|
5552
|
-
this.#drainHandler = void 0;
|
|
5553
|
-
}
|
|
5554
|
-
if (this.isEnabled) {
|
|
5555
|
-
this.clear();
|
|
5556
|
-
if (this.#options.hideCursor) {
|
|
5557
|
-
cli_cursor_default.show(this.#stream);
|
|
2367
|
+
},
|
|
2368
|
+
fail(failText) {
|
|
2369
|
+
if (interval) {
|
|
2370
|
+
clearInterval(interval);
|
|
2371
|
+
interval = void 0;
|
|
2372
|
+
}
|
|
2373
|
+
if (isSilent)
|
|
2374
|
+
return this;
|
|
2375
|
+
const finalText = failText ?? text;
|
|
2376
|
+
if (isTTY()) {
|
|
2377
|
+
process.stderr.write(`\r\x1B[K\u2716 ${finalText}
|
|
2378
|
+
`);
|
|
2379
|
+
} else {
|
|
2380
|
+
process.stderr.write(`\u2716 ${finalText}
|
|
2381
|
+
`);
|
|
5558
2382
|
}
|
|
5559
|
-
}
|
|
5560
|
-
if (this.#isDiscardingStdin) {
|
|
5561
|
-
this.#isDiscardingStdin = false;
|
|
5562
|
-
stdin_discarder_default.stop();
|
|
5563
|
-
}
|
|
5564
|
-
return this;
|
|
5565
|
-
}
|
|
5566
|
-
succeed(text) {
|
|
5567
|
-
return this.stopAndPersist({ symbol: symbols_exports.success, text });
|
|
5568
|
-
}
|
|
5569
|
-
fail(text) {
|
|
5570
|
-
return this.stopAndPersist({ symbol: symbols_exports.error, text });
|
|
5571
|
-
}
|
|
5572
|
-
warn(text) {
|
|
5573
|
-
return this.stopAndPersist({ symbol: symbols_exports.warning, text });
|
|
5574
|
-
}
|
|
5575
|
-
info(text) {
|
|
5576
|
-
return this.stopAndPersist({ symbol: symbols_exports.info, text });
|
|
5577
|
-
}
|
|
5578
|
-
stopAndPersist(options = {}) {
|
|
5579
|
-
if (this.isSilent) {
|
|
5580
2383
|
return this;
|
|
5581
2384
|
}
|
|
5582
|
-
|
|
5583
|
-
|
|
5584
|
-
const prefixText = options.prefixText ?? this.#options.prefixText;
|
|
5585
|
-
const suffixText = options.suffixText ?? this.#options.suffixText;
|
|
5586
|
-
const textToWrite = this.#buildOutputLine(symbol, text, prefixText, suffixText) + "\n";
|
|
5587
|
-
this.stop();
|
|
5588
|
-
this.#internalWrite(() => this.#stream.write(textToWrite));
|
|
5589
|
-
return this;
|
|
5590
|
-
}
|
|
5591
|
-
};
|
|
5592
|
-
function ora(options) {
|
|
5593
|
-
return new Ora(options);
|
|
2385
|
+
};
|
|
2386
|
+
return spinner;
|
|
5594
2387
|
}
|
|
5595
|
-
__name(
|
|
5596
|
-
|
|
5597
|
-
// dist/cli/build.js
|
|
5598
|
-
var esbuild = __toESM(require_main(), 1);
|
|
5599
|
-
var import_meta = {};
|
|
2388
|
+
__name(createSpinnerImpl, "createSpinnerImpl");
|
|
5600
2389
|
var __dirname2 = typeof import_meta?.url === "string" ? (0, import_node_path.dirname)((0, import_node_url.fileURLToPath)(import_meta.url)) : globalThis.__dirname || (0, import_node_path.dirname)(process.argv[1]);
|
|
5601
2390
|
var TARGET_MAP = {
|
|
5602
2391
|
"darwin-arm64": "node24-macos-arm64",
|
|
@@ -5618,11 +2407,68 @@ function detectHostTarget() {
|
|
|
5618
2407
|
throw new Error(`Unsupported platform: ${platform}-${arch}. Supported platforms: darwin-arm64, darwin-x64, linux-x64, linux-arm64`);
|
|
5619
2408
|
}
|
|
5620
2409
|
__name(detectHostTarget, "detectHostTarget");
|
|
2410
|
+
function readPackageJsonConfig(dir) {
|
|
2411
|
+
const pkgPath = (0, import_node_path.join)(dir, "package.json");
|
|
2412
|
+
if (!(0, import_node_fs.existsSync)(pkgPath)) {
|
|
2413
|
+
return void 0;
|
|
2414
|
+
}
|
|
2415
|
+
try {
|
|
2416
|
+
const content = (0, import_node_fs.readFileSync)(pkgPath, "utf-8");
|
|
2417
|
+
const pkg = JSON.parse(content);
|
|
2418
|
+
const config = pkg?.thinkwell?.build;
|
|
2419
|
+
if (!config || typeof config !== "object") {
|
|
2420
|
+
return void 0;
|
|
2421
|
+
}
|
|
2422
|
+
const result = {};
|
|
2423
|
+
if (typeof config.output === "string") {
|
|
2424
|
+
result.output = config.output;
|
|
2425
|
+
}
|
|
2426
|
+
if (Array.isArray(config.targets)) {
|
|
2427
|
+
const validTargets = ["darwin-arm64", "darwin-x64", "linux-x64", "linux-arm64", "host"];
|
|
2428
|
+
result.targets = config.targets.filter((t) => typeof t === "string" && validTargets.includes(t));
|
|
2429
|
+
}
|
|
2430
|
+
if (Array.isArray(config.include)) {
|
|
2431
|
+
result.include = config.include.filter((i) => typeof i === "string");
|
|
2432
|
+
}
|
|
2433
|
+
if (Array.isArray(config.external)) {
|
|
2434
|
+
result.external = config.external.filter((e) => typeof e === "string");
|
|
2435
|
+
}
|
|
2436
|
+
if (typeof config.minify === "boolean") {
|
|
2437
|
+
result.minify = config.minify;
|
|
2438
|
+
}
|
|
2439
|
+
return result;
|
|
2440
|
+
} catch {
|
|
2441
|
+
return void 0;
|
|
2442
|
+
}
|
|
2443
|
+
}
|
|
2444
|
+
__name(readPackageJsonConfig, "readPackageJsonConfig");
|
|
2445
|
+
function mergeWithPackageConfig(options, entryDir) {
|
|
2446
|
+
const pkgConfig = readPackageJsonConfig(entryDir);
|
|
2447
|
+
if (!pkgConfig) {
|
|
2448
|
+
return options;
|
|
2449
|
+
}
|
|
2450
|
+
return {
|
|
2451
|
+
...options,
|
|
2452
|
+
output: options.output ?? pkgConfig.output,
|
|
2453
|
+
targets: options.targets && options.targets.length > 0 ? options.targets : pkgConfig.targets ?? options.targets,
|
|
2454
|
+
include: [
|
|
2455
|
+
...pkgConfig.include || [],
|
|
2456
|
+
...options.include || []
|
|
2457
|
+
],
|
|
2458
|
+
external: [
|
|
2459
|
+
...pkgConfig.external || [],
|
|
2460
|
+
...options.external || []
|
|
2461
|
+
],
|
|
2462
|
+
minify: options.minify ?? pkgConfig.minify
|
|
2463
|
+
};
|
|
2464
|
+
}
|
|
2465
|
+
__name(mergeWithPackageConfig, "mergeWithPackageConfig");
|
|
5621
2466
|
function parseBuildArgs(args) {
|
|
5622
2467
|
const options = {
|
|
5623
2468
|
entry: "",
|
|
5624
2469
|
targets: [],
|
|
5625
|
-
include: []
|
|
2470
|
+
include: [],
|
|
2471
|
+
external: []
|
|
5626
2472
|
};
|
|
5627
2473
|
let i = 0;
|
|
5628
2474
|
while (i < args.length) {
|
|
@@ -5650,12 +2496,22 @@ function parseBuildArgs(args) {
|
|
|
5650
2496
|
throw new Error("Missing value for --include");
|
|
5651
2497
|
}
|
|
5652
2498
|
options.include.push(args[i]);
|
|
2499
|
+
} else if (arg === "--external" || arg === "-e") {
|
|
2500
|
+
i++;
|
|
2501
|
+
if (i >= args.length) {
|
|
2502
|
+
throw new Error("Missing value for --external");
|
|
2503
|
+
}
|
|
2504
|
+
options.external.push(args[i]);
|
|
5653
2505
|
} else if (arg === "--verbose" || arg === "-v") {
|
|
5654
2506
|
options.verbose = true;
|
|
5655
2507
|
} else if (arg === "--quiet" || arg === "-q") {
|
|
5656
2508
|
options.quiet = true;
|
|
5657
2509
|
} else if (arg === "--dry-run" || arg === "-n") {
|
|
5658
2510
|
options.dryRun = true;
|
|
2511
|
+
} else if (arg === "--minify" || arg === "-m") {
|
|
2512
|
+
options.minify = true;
|
|
2513
|
+
} else if (arg === "--watch" || arg === "-w") {
|
|
2514
|
+
options.watch = true;
|
|
5659
2515
|
} else if (arg.startsWith("-")) {
|
|
5660
2516
|
throw new Error(`Unknown option: ${arg}`);
|
|
5661
2517
|
} else {
|
|
@@ -5684,6 +2540,10 @@ function initBuildContext(options) {
|
|
|
5684
2540
|
}
|
|
5685
2541
|
const entryBasename = (0, import_node_path.basename)(entryPath).replace(/\.(ts|js|mts|mjs|cts|cjs)$/, "");
|
|
5686
2542
|
const entryDir = (0, import_node_path.dirname)(entryPath);
|
|
2543
|
+
let mergedOptions = mergeWithPackageConfig(options, entryDir);
|
|
2544
|
+
if (entryDir !== process.cwd()) {
|
|
2545
|
+
mergedOptions = mergeWithPackageConfig(mergedOptions, process.cwd());
|
|
2546
|
+
}
|
|
5687
2547
|
const buildDir = (0, import_node_path.join)(entryDir, ".thinkwell-build");
|
|
5688
2548
|
const thinkwellDistPkg = (0, import_node_path.resolve)(__dirname2, "../../dist-pkg");
|
|
5689
2549
|
if (!(0, import_node_fs.existsSync)(thinkwellDistPkg)) {
|
|
@@ -5691,7 +2551,7 @@ function initBuildContext(options) {
|
|
|
5691
2551
|
This may indicate a corrupted installation.
|
|
5692
2552
|
Try reinstalling thinkwell: npm install thinkwell`);
|
|
5693
2553
|
}
|
|
5694
|
-
const resolvedTargets =
|
|
2554
|
+
const resolvedTargets = mergedOptions.targets.map((t) => t === "host" ? detectHostTarget() : t);
|
|
5695
2555
|
const uniqueTargets = [...new Set(resolvedTargets)];
|
|
5696
2556
|
return {
|
|
5697
2557
|
entryPath,
|
|
@@ -5700,7 +2560,7 @@ function initBuildContext(options) {
|
|
|
5700
2560
|
buildDir,
|
|
5701
2561
|
thinkwellDistPkg,
|
|
5702
2562
|
resolvedTargets: uniqueTargets,
|
|
5703
|
-
options
|
|
2563
|
+
options: mergedOptions
|
|
5704
2564
|
};
|
|
5705
2565
|
}
|
|
5706
2566
|
__name(initBuildContext, "initBuildContext");
|
|
@@ -5746,14 +2606,15 @@ async function bundleUserScript(ctx) {
|
|
|
5746
2606
|
console.log(` Bundling ${ctx.entryPath}...`);
|
|
5747
2607
|
}
|
|
5748
2608
|
try {
|
|
2609
|
+
const externalPackages = ["node:*", ...ctx.options.external || []];
|
|
5749
2610
|
await esbuild.build({
|
|
5750
2611
|
entryPoints: [ctx.entryPath],
|
|
5751
2612
|
bundle: true,
|
|
5752
2613
|
platform: "node",
|
|
5753
2614
|
format: "cjs",
|
|
5754
2615
|
outfile: outputFile,
|
|
5755
|
-
// External: Node built-ins
|
|
5756
|
-
external:
|
|
2616
|
+
// External: Node built-ins and user-specified packages
|
|
2617
|
+
external: externalPackages,
|
|
5757
2618
|
// Mark thinkwell packages as external - they're provided via global.__bundled__
|
|
5758
2619
|
// But actually, we need to transform the imports, so let's bundle them
|
|
5759
2620
|
// and use a banner to set up the module aliases
|
|
@@ -5805,13 +2666,14 @@ require.main = __origRequire.main;
|
|
|
5805
2666
|
}
|
|
5806
2667
|
],
|
|
5807
2668
|
sourcemap: false,
|
|
5808
|
-
minify: false,
|
|
5809
|
-
keepNames:
|
|
2669
|
+
minify: ctx.options.minify ?? false,
|
|
2670
|
+
keepNames: !ctx.options.minify,
|
|
2671
|
+
// Keep names unless minifying
|
|
5810
2672
|
target: "node24",
|
|
5811
2673
|
logLevel: ctx.options.verbose ? "info" : "silent"
|
|
5812
2674
|
});
|
|
5813
|
-
} catch (
|
|
5814
|
-
const message =
|
|
2675
|
+
} catch (error) {
|
|
2676
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
5815
2677
|
if (message.includes("Could not resolve")) {
|
|
5816
2678
|
const match = message.match(/Could not resolve "([^"]+)"/);
|
|
5817
2679
|
const moduleName = match ? match[1] : "unknown module";
|
|
@@ -5824,7 +2686,7 @@ require.main = __origRequire.main;
|
|
|
5824
2686
|
esbuild cannot bundle this file type by default.
|
|
5825
2687
|
Consider using --include to embed the file as an asset instead.`);
|
|
5826
2688
|
}
|
|
5827
|
-
throw
|
|
2689
|
+
throw error;
|
|
5828
2690
|
}
|
|
5829
2691
|
return outputFile;
|
|
5830
2692
|
}
|
|
@@ -5851,7 +2713,7 @@ function isRunningFromCompiledBinary() {
|
|
|
5851
2713
|
__name(isRunningFromCompiledBinary, "isRunningFromCompiledBinary");
|
|
5852
2714
|
var PORTABLE_NODE_VERSION = "24.1.0";
|
|
5853
2715
|
function getCacheDir() {
|
|
5854
|
-
return process.env.THINKWELL_CACHE_DIR || (0, import_node_path.join)((0,
|
|
2716
|
+
return process.env.THINKWELL_CACHE_DIR || (0, import_node_path.join)((0, import_node_os.homedir)(), ".cache", "thinkwell");
|
|
5855
2717
|
}
|
|
5856
2718
|
__name(getCacheDir, "getCacheDir");
|
|
5857
2719
|
function getThinkwellVersion() {
|
|
@@ -5973,9 +2835,9 @@ Please retry or report this issue.`);
|
|
|
5973
2835
|
(0, import_node_fs.rmSync)(archivePath, { force: true });
|
|
5974
2836
|
spinner?.succeed(`Node.js v${version} cached to ${cacheDir}`);
|
|
5975
2837
|
return nodePath;
|
|
5976
|
-
} catch (
|
|
2838
|
+
} catch (error) {
|
|
5977
2839
|
(0, import_node_fs.rmSync)(cacheDir, { recursive: true, force: true });
|
|
5978
|
-
const message =
|
|
2840
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
5979
2841
|
if (message.includes("ETIMEDOUT") || message.includes("ENOTFOUND")) {
|
|
5980
2842
|
throw new Error(`Failed to download Node.js runtime.
|
|
5981
2843
|
|
|
@@ -5985,7 +2847,7 @@ Please retry or report this issue.`);
|
|
|
5985
2847
|
Check your network connection and try again.
|
|
5986
2848
|
If behind a proxy, set HTTPS_PROXY environment variable.`);
|
|
5987
2849
|
}
|
|
5988
|
-
throw
|
|
2850
|
+
throw error;
|
|
5989
2851
|
}
|
|
5990
2852
|
}
|
|
5991
2853
|
__name(ensurePortableNode, "ensurePortableNode");
|
|
@@ -6059,11 +2921,11 @@ function spawnAsync(command, args, options = {}) {
|
|
|
6059
2921
|
stderr
|
|
6060
2922
|
});
|
|
6061
2923
|
});
|
|
6062
|
-
proc.on("error", (
|
|
2924
|
+
proc.on("error", (error) => {
|
|
6063
2925
|
resolve2({
|
|
6064
2926
|
exitCode: 1,
|
|
6065
2927
|
stdout,
|
|
6066
|
-
stderr:
|
|
2928
|
+
stderr: error.message
|
|
6067
2929
|
});
|
|
6068
2930
|
});
|
|
6069
2931
|
});
|
|
@@ -6201,31 +3063,42 @@ function log(ctx, message) {
|
|
|
6201
3063
|
}
|
|
6202
3064
|
__name(log, "log");
|
|
6203
3065
|
function createSpinner(ctx, text) {
|
|
6204
|
-
return
|
|
3066
|
+
return createSpinnerImpl({
|
|
6205
3067
|
text,
|
|
6206
3068
|
isSilent: ctx.options.quiet
|
|
6207
3069
|
});
|
|
6208
3070
|
}
|
|
6209
3071
|
__name(createSpinner, "createSpinner");
|
|
6210
3072
|
function runDryRun(ctx) {
|
|
6211
|
-
console.log((0,
|
|
6212
|
-
console.log((0,
|
|
3073
|
+
console.log((0, import_node_util.styleText)("bold", "Dry run mode - no files will be created\n"));
|
|
3074
|
+
console.log((0, import_node_util.styleText)("bold", "Entry point:"));
|
|
6213
3075
|
console.log(` ${ctx.entryPath}
|
|
6214
3076
|
`);
|
|
6215
|
-
console.log((0,
|
|
3077
|
+
console.log((0, import_node_util.styleText)("bold", "Targets:"));
|
|
6216
3078
|
for (const target of ctx.resolvedTargets) {
|
|
6217
3079
|
const outputPath = getOutputPath(ctx, target);
|
|
6218
3080
|
console.log(` ${target} \u2192 ${outputPath}`);
|
|
6219
3081
|
}
|
|
6220
3082
|
console.log();
|
|
6221
3083
|
if (ctx.options.include && ctx.options.include.length > 0) {
|
|
6222
|
-
console.log((0,
|
|
3084
|
+
console.log((0, import_node_util.styleText)("bold", "Assets to include:"));
|
|
6223
3085
|
for (const pattern of ctx.options.include) {
|
|
6224
3086
|
console.log(` ${pattern}`);
|
|
6225
3087
|
}
|
|
6226
3088
|
console.log();
|
|
6227
3089
|
}
|
|
6228
|
-
|
|
3090
|
+
if (ctx.options.external && ctx.options.external.length > 0) {
|
|
3091
|
+
console.log((0, import_node_util.styleText)("bold", "External packages (not bundled):"));
|
|
3092
|
+
for (const pkg of ctx.options.external) {
|
|
3093
|
+
console.log(` ${pkg}`);
|
|
3094
|
+
}
|
|
3095
|
+
console.log();
|
|
3096
|
+
}
|
|
3097
|
+
if (ctx.options.minify) {
|
|
3098
|
+
console.log((0, import_node_util.styleText)("bold", "Minification:"), "enabled");
|
|
3099
|
+
console.log();
|
|
3100
|
+
}
|
|
3101
|
+
console.log((0, import_node_util.styleText)("bold", "Build steps:"));
|
|
6229
3102
|
console.log(" 1. Bundle user script with esbuild");
|
|
6230
3103
|
console.log(" 2. Copy thinkwell packages");
|
|
6231
3104
|
console.log(" 3. Generate wrapper entry point");
|
|
@@ -6233,19 +3106,23 @@ function runDryRun(ctx) {
|
|
|
6233
3106
|
console.log();
|
|
6234
3107
|
const topLevelAwaits = detectTopLevelAwait(ctx.entryPath);
|
|
6235
3108
|
if (topLevelAwaits.length > 0) {
|
|
6236
|
-
console.log((0,
|
|
3109
|
+
console.log((0, import_node_util.styleText)("yellow", "Warning: Top-level await detected"));
|
|
6237
3110
|
console.log(" Top-level await is not supported in compiled binaries.");
|
|
6238
3111
|
console.log(` Found at line(s): ${topLevelAwaits.join(", ")}`);
|
|
6239
3112
|
console.log(" Wrap async code in an async main() function instead.\n");
|
|
6240
3113
|
}
|
|
6241
|
-
console.log((0,
|
|
3114
|
+
console.log((0, import_node_util.styleText)("dim", "Run without --dry-run to build."));
|
|
6242
3115
|
}
|
|
6243
3116
|
__name(runDryRun, "runDryRun");
|
|
6244
3117
|
async function runBuild(options) {
|
|
3118
|
+
if (options.watch) {
|
|
3119
|
+
await runWatchMode(options);
|
|
3120
|
+
return;
|
|
3121
|
+
}
|
|
6245
3122
|
const ctx = initBuildContext(options);
|
|
6246
3123
|
const topLevelAwaits = detectTopLevelAwait(ctx.entryPath);
|
|
6247
3124
|
if (topLevelAwaits.length > 0) {
|
|
6248
|
-
console.log((0,
|
|
3125
|
+
console.log((0, import_node_util.styleText)("yellow", "Warning: Top-level await detected"));
|
|
6249
3126
|
console.log(" Top-level await is not supported in compiled binaries.");
|
|
6250
3127
|
console.log(` Found at line(s): ${topLevelAwaits.join(", ")}`);
|
|
6251
3128
|
console.log(" Wrap async code in an async main() function instead.\n");
|
|
@@ -6254,7 +3131,7 @@ async function runBuild(options) {
|
|
|
6254
3131
|
runDryRun(ctx);
|
|
6255
3132
|
return;
|
|
6256
3133
|
}
|
|
6257
|
-
log(ctx, `Building ${(0,
|
|
3134
|
+
log(ctx, `Building ${(0, import_node_util.styleText)("bold", ctx.entryBasename)}...
|
|
6258
3135
|
`);
|
|
6259
3136
|
if ((0, import_node_fs.existsSync)(ctx.buildDir)) {
|
|
6260
3137
|
(0, import_node_fs.rmSync)(ctx.buildDir, { recursive: true });
|
|
@@ -6285,9 +3162,9 @@ async function runBuild(options) {
|
|
|
6285
3162
|
spinner.succeed(`Built ${(0, import_node_path.basename)(outputPath)}`);
|
|
6286
3163
|
}
|
|
6287
3164
|
log(ctx, "");
|
|
6288
|
-
log(ctx, (0,
|
|
3165
|
+
log(ctx, (0, import_node_util.styleText)("green", "Build complete!"));
|
|
6289
3166
|
log(ctx, "");
|
|
6290
|
-
log(ctx, (0,
|
|
3167
|
+
log(ctx, (0, import_node_util.styleText)("bold", "Output:"));
|
|
6291
3168
|
for (const output of outputs) {
|
|
6292
3169
|
log(ctx, ` ${output}`);
|
|
6293
3170
|
}
|
|
@@ -6304,6 +3181,104 @@ Build artifacts preserved in: ${ctx.buildDir}`);
|
|
|
6304
3181
|
}
|
|
6305
3182
|
}
|
|
6306
3183
|
__name(runBuild, "runBuild");
|
|
3184
|
+
async function runWatchMode(options) {
|
|
3185
|
+
const ctx = initBuildContext(options);
|
|
3186
|
+
console.log((0, import_node_util.styleText)("bold", `Watching ${ctx.entryBasename} for changes...`));
|
|
3187
|
+
console.log((0, import_node_util.styleText)("dim", "Press Ctrl+C to stop.\n"));
|
|
3188
|
+
let buildInProgress = false;
|
|
3189
|
+
let rebuildQueued = false;
|
|
3190
|
+
let debounceTimer = null;
|
|
3191
|
+
const DEBOUNCE_MS = 100;
|
|
3192
|
+
async function doBuild() {
|
|
3193
|
+
if (buildInProgress) {
|
|
3194
|
+
rebuildQueued = true;
|
|
3195
|
+
return;
|
|
3196
|
+
}
|
|
3197
|
+
buildInProgress = true;
|
|
3198
|
+
rebuildQueued = false;
|
|
3199
|
+
const startTime = Date.now();
|
|
3200
|
+
console.log((0, import_node_util.styleText)("dim", `[${(/* @__PURE__ */ new Date()).toLocaleTimeString()}] Building...`));
|
|
3201
|
+
try {
|
|
3202
|
+
const freshCtx = initBuildContext(options);
|
|
3203
|
+
if ((0, import_node_fs.existsSync)(freshCtx.buildDir)) {
|
|
3204
|
+
(0, import_node_fs.rmSync)(freshCtx.buildDir, { recursive: true });
|
|
3205
|
+
}
|
|
3206
|
+
(0, import_node_fs.mkdirSync)(freshCtx.buildDir, { recursive: true });
|
|
3207
|
+
const userBundlePath = await bundleUserScript(freshCtx);
|
|
3208
|
+
copyThinkwellBundles(freshCtx);
|
|
3209
|
+
const wrapperPath = (0, import_node_path.join)(freshCtx.buildDir, "wrapper.cjs");
|
|
3210
|
+
const wrapperSource = generateWrapperSource(userBundlePath);
|
|
3211
|
+
(0, import_node_fs.writeFileSync)(wrapperPath, wrapperSource);
|
|
3212
|
+
const outputs = [];
|
|
3213
|
+
for (const target of freshCtx.resolvedTargets) {
|
|
3214
|
+
const outputPath = getOutputPath(freshCtx, target);
|
|
3215
|
+
await compileWithPkg(freshCtx, wrapperPath, target, outputPath);
|
|
3216
|
+
outputs.push(outputPath);
|
|
3217
|
+
}
|
|
3218
|
+
if (!freshCtx.options.verbose) {
|
|
3219
|
+
try {
|
|
3220
|
+
(0, import_node_fs.rmSync)(freshCtx.buildDir, { recursive: true });
|
|
3221
|
+
} catch {
|
|
3222
|
+
}
|
|
3223
|
+
}
|
|
3224
|
+
const elapsed = Date.now() - startTime;
|
|
3225
|
+
console.log((0, import_node_util.styleText)("green", `\u2713 Built in ${elapsed}ms`));
|
|
3226
|
+
for (const output of outputs) {
|
|
3227
|
+
console.log((0, import_node_util.styleText)("dim", ` ${(0, import_node_path.basename)(output)}`));
|
|
3228
|
+
}
|
|
3229
|
+
console.log();
|
|
3230
|
+
} catch (error) {
|
|
3231
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
3232
|
+
console.log((0, import_node_util.styleText)("red", `\u2717 Build failed: ${message}`));
|
|
3233
|
+
console.log();
|
|
3234
|
+
} finally {
|
|
3235
|
+
buildInProgress = false;
|
|
3236
|
+
if (rebuildQueued) {
|
|
3237
|
+
doBuild();
|
|
3238
|
+
}
|
|
3239
|
+
}
|
|
3240
|
+
}
|
|
3241
|
+
__name(doBuild, "doBuild");
|
|
3242
|
+
function scheduleRebuild() {
|
|
3243
|
+
if (debounceTimer) {
|
|
3244
|
+
clearTimeout(debounceTimer);
|
|
3245
|
+
}
|
|
3246
|
+
debounceTimer = setTimeout(() => {
|
|
3247
|
+
debounceTimer = null;
|
|
3248
|
+
doBuild();
|
|
3249
|
+
}, DEBOUNCE_MS);
|
|
3250
|
+
}
|
|
3251
|
+
__name(scheduleRebuild, "scheduleRebuild");
|
|
3252
|
+
await doBuild();
|
|
3253
|
+
const watchDir = ctx.entryDir;
|
|
3254
|
+
const watcher = (0, import_node_fs.watch)(watchDir, { recursive: true }, (_eventType, filename) => {
|
|
3255
|
+
if (!filename)
|
|
3256
|
+
return;
|
|
3257
|
+
if (filename.includes(".thinkwell-build") || filename.includes("node_modules") || filename.startsWith(".") || filename.endsWith(".d.ts")) {
|
|
3258
|
+
return;
|
|
3259
|
+
}
|
|
3260
|
+
if (!/\.(ts|tsx|js|jsx|mts|mjs|cts|cjs|json)$/.test(filename)) {
|
|
3261
|
+
return;
|
|
3262
|
+
}
|
|
3263
|
+
if (ctx.options.verbose) {
|
|
3264
|
+
console.log((0, import_node_util.styleText)("dim", ` Changed: ${filename}`));
|
|
3265
|
+
}
|
|
3266
|
+
scheduleRebuild();
|
|
3267
|
+
});
|
|
3268
|
+
const cleanup = /* @__PURE__ */ __name(() => {
|
|
3269
|
+
watcher.close();
|
|
3270
|
+
if (debounceTimer) {
|
|
3271
|
+
clearTimeout(debounceTimer);
|
|
3272
|
+
}
|
|
3273
|
+
console.log("\nStopped watching.");
|
|
3274
|
+
process.exit(0);
|
|
3275
|
+
}, "cleanup");
|
|
3276
|
+
process.on("SIGINT", cleanup);
|
|
3277
|
+
process.on("SIGTERM", cleanup);
|
|
3278
|
+
await new Promise(() => {
|
|
3279
|
+
});
|
|
3280
|
+
}
|
|
3281
|
+
__name(runWatchMode, "runWatchMode");
|
|
6307
3282
|
function showBuildHelp() {
|
|
6308
3283
|
console.log(`
|
|
6309
3284
|
thinkwell build - Compile TypeScript scripts into standalone executables
|
|
@@ -6318,6 +3293,9 @@ Options:
|
|
|
6318
3293
|
-o, --output <path> Output file path (default: ./<name>-<target>)
|
|
6319
3294
|
-t, --target <target> Target platform (can be specified multiple times)
|
|
6320
3295
|
--include <glob> Additional files to embed as assets
|
|
3296
|
+
-e, --external <pkg> Exclude package from bundling (can be repeated)
|
|
3297
|
+
-m, --minify Minify the bundled code for smaller output
|
|
3298
|
+
-w, --watch Watch for changes and rebuild automatically
|
|
6321
3299
|
-n, --dry-run Show what would be built without building
|
|
6322
3300
|
-q, --quiet Suppress all output except errors (for CI)
|
|
6323
3301
|
-v, --verbose Show detailed build output
|
|
@@ -6336,13 +3314,33 @@ Examples:
|
|
|
6336
3314
|
thinkwell build src/agent.ts --target linux-x64 Build for Linux
|
|
6337
3315
|
thinkwell build src/agent.ts -t darwin-arm64 -t linux-x64 Multi-platform
|
|
6338
3316
|
thinkwell build src/agent.ts --dry-run Preview build without executing
|
|
3317
|
+
thinkwell build src/agent.ts -e sqlite3 Keep sqlite3 as external
|
|
3318
|
+
thinkwell build src/agent.ts --minify Minify for smaller binary
|
|
3319
|
+
thinkwell build src/agent.ts --watch Rebuild on file changes
|
|
6339
3320
|
|
|
6340
3321
|
The resulting binary is self-contained and includes:
|
|
6341
3322
|
- Node.js 24 runtime with TypeScript support
|
|
6342
3323
|
- All thinkwell packages
|
|
6343
3324
|
- Your bundled application code
|
|
6344
3325
|
|
|
3326
|
+
Configuration via package.json:
|
|
3327
|
+
Add a "thinkwell" key to your package.json to set defaults:
|
|
3328
|
+
|
|
3329
|
+
{
|
|
3330
|
+
"thinkwell": {
|
|
3331
|
+
"build": {
|
|
3332
|
+
"output": "dist/my-agent",
|
|
3333
|
+
"targets": ["darwin-arm64", "linux-x64"],
|
|
3334
|
+
"external": ["sqlite3"],
|
|
3335
|
+
"minify": true
|
|
3336
|
+
}
|
|
3337
|
+
}
|
|
3338
|
+
}
|
|
3339
|
+
|
|
3340
|
+
CLI options override package.json settings.
|
|
3341
|
+
|
|
6345
3342
|
Note: Binaries are ~70-90 MB due to the embedded Node.js runtime.
|
|
3343
|
+
Use --minify to reduce bundle size (though Node.js runtime dominates).
|
|
6346
3344
|
`);
|
|
6347
3345
|
}
|
|
6348
3346
|
__name(showBuildHelp, "showBuildHelp");
|