agmd 0.3.3 → 0.3.5-beta1
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/README.md +1 -0
- package/bin/bin.js +71 -71
- package/bin/bin.js.map +3 -3
- package/lib/index.cjs.js +58 -46
- package/lib/index.cjs.js.map +3 -3
- package/lib/index.esm.js +58 -46
- package/lib/index.esm.js.map +3 -3
- package/package.json +1 -1
package/lib/index.cjs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* agmd v0.3.
|
|
2
|
+
* agmd v0.3.4
|
|
3
3
|
* author:kakajun <253495832@qq.com>
|
|
4
|
-
*
|
|
4
|
+
* Fri May 06 2022 09:01:26 GMT+0800 (中国标准时间)
|
|
5
5
|
*/
|
|
6
6
|
var __create = Object.create;
|
|
7
7
|
var __defProp = Object.defineProperty;
|
|
@@ -27,9 +27,9 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
27
27
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
|
|
30
|
-
// node_modules/ms/index.js
|
|
31
|
-
var
|
|
32
|
-
"node_modules/ms/index.js"(exports, module2) {
|
|
30
|
+
// node_modules/_ms@2.1.2@ms/index.js
|
|
31
|
+
var require_ms_2_1 = __commonJS({
|
|
32
|
+
"node_modules/_ms@2.1.2@ms/index.js"(exports, module2) {
|
|
33
33
|
var s = 1e3;
|
|
34
34
|
var m = s * 60;
|
|
35
35
|
var h = m * 60;
|
|
@@ -139,9 +139,9 @@ var require_ms = __commonJS({
|
|
|
139
139
|
}
|
|
140
140
|
});
|
|
141
141
|
|
|
142
|
-
// node_modules/debug/src/common.js
|
|
142
|
+
// node_modules/_debug@4.3.4@debug/src/common.js
|
|
143
143
|
var require_common = __commonJS({
|
|
144
|
-
"node_modules/debug/src/common.js"(exports, module2) {
|
|
144
|
+
"node_modules/_debug@4.3.4@debug/src/common.js"(exports, module2) {
|
|
145
145
|
function setup(env2) {
|
|
146
146
|
createDebug.debug = createDebug;
|
|
147
147
|
createDebug.default = createDebug;
|
|
@@ -149,7 +149,7 @@ var require_common = __commonJS({
|
|
|
149
149
|
createDebug.disable = disable;
|
|
150
150
|
createDebug.enable = enable;
|
|
151
151
|
createDebug.enabled = enabled2;
|
|
152
|
-
createDebug.humanize =
|
|
152
|
+
createDebug.humanize = require_ms_2_1();
|
|
153
153
|
createDebug.destroy = destroy;
|
|
154
154
|
Object.keys(env2).forEach((key) => {
|
|
155
155
|
createDebug[key] = env2[key];
|
|
@@ -302,9 +302,9 @@ var require_common = __commonJS({
|
|
|
302
302
|
}
|
|
303
303
|
});
|
|
304
304
|
|
|
305
|
-
// node_modules/debug/src/browser.js
|
|
305
|
+
// node_modules/_debug@4.3.4@debug/src/browser.js
|
|
306
306
|
var require_browser = __commonJS({
|
|
307
|
-
"node_modules/debug/src/browser.js"(exports, module2) {
|
|
307
|
+
"node_modules/_debug@4.3.4@debug/src/browser.js"(exports, module2) {
|
|
308
308
|
exports.formatArgs = formatArgs;
|
|
309
309
|
exports.save = save;
|
|
310
310
|
exports.load = load;
|
|
@@ -467,9 +467,9 @@ var require_browser = __commonJS({
|
|
|
467
467
|
}
|
|
468
468
|
});
|
|
469
469
|
|
|
470
|
-
// node_modules/has-flag/index.js
|
|
471
|
-
var
|
|
472
|
-
"node_modules/has-flag/index.js"(exports, module2) {
|
|
470
|
+
// node_modules/_has-flag@4.0.0@has-flag/index.js
|
|
471
|
+
var require_has_flag_4_0 = __commonJS({
|
|
472
|
+
"node_modules/_has-flag@4.0.0@has-flag/index.js"(exports, module2) {
|
|
473
473
|
"use strict";
|
|
474
474
|
module2.exports = (flag, argv = process.argv) => {
|
|
475
475
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
@@ -480,27 +480,29 @@ var require_has_flag = __commonJS({
|
|
|
480
480
|
}
|
|
481
481
|
});
|
|
482
482
|
|
|
483
|
-
// node_modules/supports-color/index.js
|
|
484
|
-
var
|
|
485
|
-
"node_modules/supports-color/index.js"(exports, module2) {
|
|
483
|
+
// node_modules/_supports-color@8.1.1@supports-color/index.js
|
|
484
|
+
var require_supports_color_8_1 = __commonJS({
|
|
485
|
+
"node_modules/_supports-color@8.1.1@supports-color/index.js"(exports, module2) {
|
|
486
486
|
"use strict";
|
|
487
487
|
var os = require("os");
|
|
488
488
|
var tty = require("tty");
|
|
489
|
-
var hasFlag =
|
|
489
|
+
var hasFlag = require_has_flag_4_0();
|
|
490
490
|
var { env: env2 } = process;
|
|
491
|
-
var
|
|
491
|
+
var flagForceColor;
|
|
492
492
|
if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
|
|
493
|
-
|
|
493
|
+
flagForceColor = 0;
|
|
494
494
|
} else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
|
|
495
|
-
|
|
495
|
+
flagForceColor = 1;
|
|
496
496
|
}
|
|
497
|
-
|
|
498
|
-
if (
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
497
|
+
function envForceColor() {
|
|
498
|
+
if ("FORCE_COLOR" in env2) {
|
|
499
|
+
if (env2.FORCE_COLOR === "true") {
|
|
500
|
+
return 1;
|
|
501
|
+
}
|
|
502
|
+
if (env2.FORCE_COLOR === "false") {
|
|
503
|
+
return 0;
|
|
504
|
+
}
|
|
505
|
+
return env2.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env2.FORCE_COLOR, 10), 3);
|
|
504
506
|
}
|
|
505
507
|
}
|
|
506
508
|
function translateLevel(level) {
|
|
@@ -514,15 +516,22 @@ var require_supports_color = __commonJS({
|
|
|
514
516
|
has16m: level >= 3
|
|
515
517
|
};
|
|
516
518
|
}
|
|
517
|
-
function supportsColor(haveStream, streamIsTTY) {
|
|
519
|
+
function supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
520
|
+
const noFlagForceColor = envForceColor();
|
|
521
|
+
if (noFlagForceColor !== void 0) {
|
|
522
|
+
flagForceColor = noFlagForceColor;
|
|
523
|
+
}
|
|
524
|
+
const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
|
|
518
525
|
if (forceColor === 0) {
|
|
519
526
|
return 0;
|
|
520
527
|
}
|
|
521
|
-
if (
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
528
|
+
if (sniffFlags) {
|
|
529
|
+
if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
|
|
530
|
+
return 3;
|
|
531
|
+
}
|
|
532
|
+
if (hasFlag("color=256")) {
|
|
533
|
+
return 2;
|
|
534
|
+
}
|
|
526
535
|
}
|
|
527
536
|
if (haveStream && !streamIsTTY && forceColor === void 0) {
|
|
528
537
|
return 0;
|
|
@@ -539,7 +548,7 @@ var require_supports_color = __commonJS({
|
|
|
539
548
|
return 1;
|
|
540
549
|
}
|
|
541
550
|
if ("CI" in env2) {
|
|
542
|
-
if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env2) || env2.CI_NAME === "codeship") {
|
|
551
|
+
if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE", "DRONE"].some((sign) => sign in env2) || env2.CI_NAME === "codeship") {
|
|
543
552
|
return 1;
|
|
544
553
|
}
|
|
545
554
|
return min;
|
|
@@ -551,7 +560,7 @@ var require_supports_color = __commonJS({
|
|
|
551
560
|
return 3;
|
|
552
561
|
}
|
|
553
562
|
if ("TERM_PROGRAM" in env2) {
|
|
554
|
-
const version = parseInt((env2.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
563
|
+
const version = Number.parseInt((env2.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
555
564
|
switch (env2.TERM_PROGRAM) {
|
|
556
565
|
case "iTerm.app":
|
|
557
566
|
return version >= 3 ? 3 : 2;
|
|
@@ -570,21 +579,24 @@ var require_supports_color = __commonJS({
|
|
|
570
579
|
}
|
|
571
580
|
return min;
|
|
572
581
|
}
|
|
573
|
-
function getSupportLevel(stream) {
|
|
574
|
-
const level = supportsColor(stream,
|
|
582
|
+
function getSupportLevel(stream, options2 = {}) {
|
|
583
|
+
const level = supportsColor(stream, {
|
|
584
|
+
streamIsTTY: stream && stream.isTTY,
|
|
585
|
+
...options2
|
|
586
|
+
});
|
|
575
587
|
return translateLevel(level);
|
|
576
588
|
}
|
|
577
589
|
module2.exports = {
|
|
578
590
|
supportsColor: getSupportLevel,
|
|
579
|
-
stdout:
|
|
580
|
-
stderr:
|
|
591
|
+
stdout: getSupportLevel({ isTTY: tty.isatty(1) }),
|
|
592
|
+
stderr: getSupportLevel({ isTTY: tty.isatty(2) })
|
|
581
593
|
};
|
|
582
594
|
}
|
|
583
595
|
});
|
|
584
596
|
|
|
585
|
-
// node_modules/debug/src/node.js
|
|
597
|
+
// node_modules/_debug@4.3.4@debug/src/node.js
|
|
586
598
|
var require_node = __commonJS({
|
|
587
|
-
"node_modules/debug/src/node.js"(exports, module2) {
|
|
599
|
+
"node_modules/_debug@4.3.4@debug/src/node.js"(exports, module2) {
|
|
588
600
|
var tty = require("tty");
|
|
589
601
|
var util = require("util");
|
|
590
602
|
exports.init = init;
|
|
@@ -597,7 +609,7 @@ var require_node = __commonJS({
|
|
|
597
609
|
}, "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
|
|
598
610
|
exports.colors = [6, 2, 3, 4, 5, 1];
|
|
599
611
|
try {
|
|
600
|
-
const supportsColor =
|
|
612
|
+
const supportsColor = require_supports_color_8_1();
|
|
601
613
|
if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
|
|
602
614
|
exports.colors = [
|
|
603
615
|
20,
|
|
@@ -753,9 +765,9 @@ var require_node = __commonJS({
|
|
|
753
765
|
}
|
|
754
766
|
});
|
|
755
767
|
|
|
756
|
-
// node_modules/debug/src/index.js
|
|
768
|
+
// node_modules/_debug@4.3.4@debug/src/index.js
|
|
757
769
|
var require_src = __commonJS({
|
|
758
|
-
"node_modules/debug/src/index.js"(exports, module2) {
|
|
770
|
+
"node_modules/_debug@4.3.4@debug/src/index.js"(exports, module2) {
|
|
759
771
|
if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) {
|
|
760
772
|
module2.exports = require_browser();
|
|
761
773
|
} else {
|
|
@@ -849,7 +861,7 @@ var import_debug2 = __toESM(require_src());
|
|
|
849
861
|
var import_fs = __toESM(require("fs"));
|
|
850
862
|
var import_path = __toESM(require("path"));
|
|
851
863
|
|
|
852
|
-
// node_modules/kolorist/dist/esm/index.mjs
|
|
864
|
+
// node_modules/_kolorist@1.5.1@kolorist/dist/esm/index.mjs
|
|
853
865
|
var enabled = true;
|
|
854
866
|
var globalVar = typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {};
|
|
855
867
|
var supportLevel = 0;
|
|
@@ -1038,7 +1050,7 @@ function getFile(fullPath) {
|
|
|
1038
1050
|
const imports = getImport(sarr, fullPath);
|
|
1039
1051
|
const f = sarr[0].indexOf("eslint") === -1 && (sarr[0].indexOf("-->") > -1 || sarr[0].indexOf("*/") > -1 || sarr[0].indexOf("//") > -1) ? sarr[0] : "";
|
|
1040
1052
|
return {
|
|
1041
|
-
note: f,
|
|
1053
|
+
note: f.replace(/<\/?[^>]*>|(\n|\r)/g, ""),
|
|
1042
1054
|
size,
|
|
1043
1055
|
rowSize,
|
|
1044
1056
|
imports
|
package/lib/index.cjs.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../node_modules/ms/index.js", "../node_modules/debug/src/common.js", "../node_modules/debug/src/browser.js", "../node_modules/has-flag/index.js", "../node_modules/supports-color/index.js", "../node_modules/debug/src/node.js", "../node_modules/debug/src/index.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/compare-aliases.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/modes.enum.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/inspector.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/index.js", "../src/index.ts", "../src/commands/get-file.ts", "../src/commands/change-path.ts", "../node_modules/kolorist/src/index.ts", "../src/shared/logger.ts", "../src/commands/wirte-md.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n", "\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n", "/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n", "'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n", "'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n", "/**\n * Module dependencies.\n */\n\nconst tty = require('tty');\nconst util = require('util');\n\n/**\n * This is the Node.js implementation of `debug()`.\n */\n\nexports.init = init;\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.destroy = util.deprecate(\n\t() => {},\n\t'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'\n);\n\n/**\n * Colors.\n */\n\nexports.colors = [6, 2, 3, 4, 5, 1];\n\ntry {\n\t// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)\n\t// eslint-disable-next-line import/no-extraneous-dependencies\n\tconst supportsColor = require('supports-color');\n\n\tif (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {\n\t\texports.colors = [\n\t\t\t20,\n\t\t\t21,\n\t\t\t26,\n\t\t\t27,\n\t\t\t32,\n\t\t\t33,\n\t\t\t38,\n\t\t\t39,\n\t\t\t40,\n\t\t\t41,\n\t\t\t42,\n\t\t\t43,\n\t\t\t44,\n\t\t\t45,\n\t\t\t56,\n\t\t\t57,\n\t\t\t62,\n\t\t\t63,\n\t\t\t68,\n\t\t\t69,\n\t\t\t74,\n\t\t\t75,\n\t\t\t76,\n\t\t\t77,\n\t\t\t78,\n\t\t\t79,\n\t\t\t80,\n\t\t\t81,\n\t\t\t92,\n\t\t\t93,\n\t\t\t98,\n\t\t\t99,\n\t\t\t112,\n\t\t\t113,\n\t\t\t128,\n\t\t\t129,\n\t\t\t134,\n\t\t\t135,\n\t\t\t148,\n\t\t\t149,\n\t\t\t160,\n\t\t\t161,\n\t\t\t162,\n\t\t\t163,\n\t\t\t164,\n\t\t\t165,\n\t\t\t166,\n\t\t\t167,\n\t\t\t168,\n\t\t\t169,\n\t\t\t170,\n\t\t\t171,\n\t\t\t172,\n\t\t\t173,\n\t\t\t178,\n\t\t\t179,\n\t\t\t184,\n\t\t\t185,\n\t\t\t196,\n\t\t\t197,\n\t\t\t198,\n\t\t\t199,\n\t\t\t200,\n\t\t\t201,\n\t\t\t202,\n\t\t\t203,\n\t\t\t204,\n\t\t\t205,\n\t\t\t206,\n\t\t\t207,\n\t\t\t208,\n\t\t\t209,\n\t\t\t214,\n\t\t\t215,\n\t\t\t220,\n\t\t\t221\n\t\t];\n\t}\n} catch (error) {\n\t// Swallow - we only care if `supports-color` is available; it doesn't have to be.\n}\n\n/**\n * Build up the default `inspectOpts` object from the environment variables.\n *\n * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js\n */\n\nexports.inspectOpts = Object.keys(process.env).filter(key => {\n\treturn /^debug_/i.test(key);\n}).reduce((obj, key) => {\n\t// Camel-case\n\tconst prop = key\n\t\t.substring(6)\n\t\t.toLowerCase()\n\t\t.replace(/_([a-z])/g, (_, k) => {\n\t\t\treturn k.toUpperCase();\n\t\t});\n\n\t// Coerce string value into JS value\n\tlet val = process.env[key];\n\tif (/^(yes|on|true|enabled)$/i.test(val)) {\n\t\tval = true;\n\t} else if (/^(no|off|false|disabled)$/i.test(val)) {\n\t\tval = false;\n\t} else if (val === 'null') {\n\t\tval = null;\n\t} else {\n\t\tval = Number(val);\n\t}\n\n\tobj[prop] = val;\n\treturn obj;\n}, {});\n\n/**\n * Is stdout a TTY? Colored output is enabled when `true`.\n */\n\nfunction useColors() {\n\treturn 'colors' in exports.inspectOpts ?\n\t\tBoolean(exports.inspectOpts.colors) :\n\t\ttty.isatty(process.stderr.fd);\n}\n\n/**\n * Adds ANSI color escape codes if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\tconst {namespace: name, useColors} = this;\n\n\tif (useColors) {\n\t\tconst c = this.color;\n\t\tconst colorCode = '\\u001B[3' + (c < 8 ? c : '8;5;' + c);\n\t\tconst prefix = ` ${colorCode};1m${name} \\u001B[0m`;\n\n\t\targs[0] = prefix + args[0].split('\\n').join('\\n' + prefix);\n\t\targs.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\\u001B[0m');\n\t} else {\n\t\targs[0] = getDate() + name + ' ' + args[0];\n\t}\n}\n\nfunction getDate() {\n\tif (exports.inspectOpts.hideDate) {\n\t\treturn '';\n\t}\n\treturn new Date().toISOString() + ' ';\n}\n\n/**\n * Invokes `util.format()` with the specified arguments and writes to stderr.\n */\n\nfunction log(...args) {\n\treturn process.stderr.write(util.format(...args) + '\\n');\n}\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\tif (namespaces) {\n\t\tprocess.env.DEBUG = namespaces;\n\t} else {\n\t\t// If you set a process.env field to null or undefined, it gets cast to the\n\t\t// string 'null' or 'undefined'. Just delete instead.\n\t\tdelete process.env.DEBUG;\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\nfunction load() {\n\treturn process.env.DEBUG;\n}\n\n/**\n * Init logic for `debug` instances.\n *\n * Create a new `inspectOpts` object in case `useColors` is set\n * differently for a particular `debug` instance.\n */\n\nfunction init(debug) {\n\tdebug.inspectOpts = {};\n\n\tconst keys = Object.keys(exports.inspectOpts);\n\tfor (let i = 0; i < keys.length; i++) {\n\t\tdebug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %o to `util.inspect()`, all on a single line.\n */\n\nformatters.o = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts)\n\t\t.split('\\n')\n\t\t.map(str => str.trim())\n\t\t.join(' ');\n};\n\n/**\n * Map %O to `util.inspect()`, allowing multiple lines if needed.\n */\n\nformatters.O = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts);\n};\n", "/**\n * Detect Electron renderer / nwjs process, which is node, but we should\n * treat as a browser.\n */\n\nif (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {\n\tmodule.exports = require('./browser.js');\n} else {\n\tmodule.exports = require('./node.js');\n}\n", "/**\n * Compare a list of case insensitive aliases for a given environment value\n *\n * @param {string} env value to be test\n * @param {string[]} aliases aliases to be compared to\n * @return {boolean}\n */\nmodule.exports = function compareAliases(env, ...aliases) {\n return aliases.some((alias) => alias.toLowerCase() === env.toLowerCase())\n}\n", "const Development = {\n dev: 'dev',\n development: 'development',\n}\n\nconst Production = {\n prod: 'prod',\n production: 'production',\n}\n\nmodule.exports = {\n Production,\n Development,\n}\n", "const compare = require('./compare-aliases')\nconst modes = require('./modes.enum')\n\n/**\n * Given an env value, checks whether NODE_ENV correspond to that value\n *\n * Inspector has two modes of operation, with a given argument or not. Given a\n * argument, the value is compared to a known environment values (dev, prod,...)\n * then a exact insensitive case match is made with the value. If there's no\n * given value, then compare the raw value of NODE_ENV is returned\n *\n * @example <caption>with NODE_ENV=\"dev\"</caption>\n * \t inspector() // \"dev\"\n * \t inspector(\"test\") // false\n * \t inspector(\"development\") // true\n * \t inspector(\"staging\", \"production\") // false\n * \t inspector(\"dev\") // true\n *\n * @param {string[] | undefined} [envs] environment to be tested\n * @return {boolean | string}\n */\nfunction inspector(...envs) {\n const nodeEnv = process.env.NODE_ENV ?? 'development'\n\n if (envs.length === 0) {\n return nodeEnv\n }\n\n return envs.reduce((prev, env) => {\n if (isKnownMode(env, nodeEnv)) {\n return true\n }\n\n return prev || compare(env, nodeEnv)\n }, false)\n}\n\n/**\n * Compare for a known env mode\n * @param {string} env\n * @param {string} nodeEnv\n * @return {boolean}\n */\nfunction isKnownMode(env, nodeEnv) {\n for (const mode of Object.values(modes)) {\n if (compareKnownMode(env, nodeEnv, Object.values(mode))) {\n return true\n }\n }\n\n return false\n}\n\n/**\n *\n * @param {string} env\n * @param {string} nodeEnv\n * @param {string[]} possibleValues\n * @return {boolean}\n */\nfunction compareKnownMode(env, nodeEnv, possibleValues) {\n return compare(env, ...possibleValues) && compare(nodeEnv, ...possibleValues)\n}\n\nmodule.exports = inspector\n", "module.exports = {\n env: require('./inspector'),\n}\n", "/* \u8FD9\u91CC\u629B\u51FA\u4E00\u4E9B\u9AD8\u7EA7\u64CD\u4F5C\u65B9\u6CD5 */\r\nimport { getMd } from './commands/wirte-md'\r\nimport { getFileNodes } from './commands/get-file'\r\nexport { getMd, getFileNodes }\r\n", "/* \u83B7\u53D6\u6587\u4EF6\u76F8\u5173\u65B9\u6CD5 */\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport createDebugger from 'debug'\r\nimport { changeImport } from './change-path';\r\nconst debug = createDebugger('get-file')\r\ndebug.enabled = false\r\nimport { env } from 'node-environment'\r\nconst isDev = env() === 'development'\r\n/**\r\n * @description:Gets the header comment of the file \u83B7\u53D6\u6587\u4EF6\u7684\u5934\u90E8\u6CE8\u91CA\r\n * @param {*} fullPath\r\n * @return {*}\r\n */\r\nexport function getFile(fullPath: string) {\r\n const str = fs.readFileSync(fullPath, 'utf-8')\r\n const size = str.length\r\n const sarr = str.split(/[\\n]/g)\r\n const rowSize = sarr.length\r\n const imports = getImport(sarr, fullPath)\r\n const f =\r\n sarr[0].indexOf('eslint') === -1 &&\r\n (sarr[0].indexOf('-->') > -1 || sarr[0].indexOf('*/') > -1 || sarr[0].indexOf('//') > -1)\r\n ? sarr[0]\r\n : ''\r\n return {\r\n note: f,\r\n size,\r\n rowSize,\r\n imports\r\n }\r\n}\r\n\r\n/**\r\n * @desc: \u8FD9\u662F\u521D\u59CB\u5316\u65F6\u5C31\u83B7\u53D6\u6BCF\u4E2A\u6587\u4EF6\u4F9D\u8D56\u7684\u65B9\u6CD5, \u4F46\u8981\u6C42\u5148\u8865\u5168\u540E\u7F00,\u5426\u5219\u4E0D\u7075\r\n * @author: majun\r\n * @param {any} sarr\r\n * @param {string} fullPath\r\n */\r\nexport function getImport(sarr: any[], fullPath: string) {\r\n // \u8FD9\u91CC\u83B7\u53D6\u6BCF\u4E2A\u6587\u4EF6\u7684import\u8DEF\u5F84\r\n const imports: string[] = []\r\n sarr.forEach((ele: string) => {\r\n if (ele.indexOf('from') > -1) {\r\n const { absoluteImport } = changeImport(ele, fullPath)\r\n if (absoluteImport) {\r\n imports.push(absoluteImport)\r\n }\r\n\r\n }\r\n })\r\n return imports\r\n}\r\n\r\nexport type ItemType = {\r\n name: string\r\n copyed?: boolean\r\n isDir: boolean\r\n level: number\r\n note: string\r\n size?: number\r\n suffix?: string\r\n rowSize?: number\r\n fullPath: string\r\n belongTo: string[] // \u6807\u8BB0\u5F52\u5C5E\u8BBE\u7F6E \u5206\u7C7B\u7528\r\n imports: string[] // \u4F9D\u8D56\u6536\u96C6\r\n children?: ItemType[]\r\n}\r\n\r\n/**\r\n * @description:Generate node information for all files \u751F\u6210\u6240\u6709\u6587\u4EF6\u7684node\u4FE1\u606F\r\n * @param {*} dir \u8981\u89E3\u6790\u7684\u8DEF\u5F84\r\n * @param {Array} nodes\r\n * @param {Number} level\r\n * @return {*}\r\n */\r\nexport function getFileNodes(\r\n dir = process.cwd(),\r\n option?: { ignore: string[] | undefined; include: string[] | undefined } | undefined,\r\n nodes: ItemType[] = [],\r\n level = 0\r\n): ItemType[] {\r\n //File filtering -- full name with suffix required \u6587\u4EF6\u8FC7\u6EE4--\u9700\u8981\u5168\u79F0\u5E26\u540E\u7F00\r\n let ignore = [\r\n // 'api',\r\n // 'src',\r\n 'bin',\r\n 'lib',\r\n 'jest.config.js',\r\n 'router',\r\n 'img',\r\n 'styles',\r\n 'node_modules',\r\n 'LICENSE',\r\n '.git',\r\n '.github',\r\n 'dist',\r\n '.husky',\r\n '.vscode',\r\n '.eslintrc.js',\r\n 'readme-file.js',\r\n 'readme-md.js'\r\n ]\r\n //File suffix contains only \u6587\u4EF6\u540E\u7F00\u53EA\u5305\u542B\r\n let include = isDev?['.js', '.vue']:['.js', '.vue', '.ts']\r\n if (option) {\r\n ignore = option.ignore || ignore\r\n include = option.include || include\r\n }\r\n\r\n const files = fs\r\n .readdirSync(dir)\r\n .map((item) => {\r\n let fullPath = path.join(dir, item)\r\n const isDir = fs.lstatSync(fullPath).isDirectory()\r\n return {\r\n name: item,\r\n isDir,\r\n level,\r\n note: '',\r\n imports: new Array(),\r\n belongTo: new Array()\r\n } as ItemType\r\n })\r\n //Sort folders and files, otherwise the generated will not correspond to the opening order of the editor \u5BF9\u6587\u4EF6\u5939\u548C\u6587\u4EF6\u8FDB\u884C\u6392\u5E8F,\u8981\u4E0D\u7136\u751F\u6210\u7684\u548C\u7F16\u8F91\u5668\u6253\u5F00\u7684\u987A\u5E8F\u4E0D\u5BF9\u5E94\r\n .sort((a, b) => {\r\n if (!a.isDir && b.isDir) return 1\r\n if (a.isDir && !b.isDir) return -1\r\n if ((a.isDir && b.isDir) || (!a.isDir && !b.isDir)) return 0\r\n return 0\r\n })\r\n for (let index = 0; index < files.length; index += 1) {\r\n const item = files[index]\r\n //Folder filtering is handled here \u8FD9\u91CC\u5904\u7406\u6587\u4EF6\u5939\u8FC7\u6EE4\r\n const foldFlag = ignore.findIndex((obj: string) => obj === item.name)\r\n if (foldFlag === -1) {\r\n const fullPath = path.join(dir, item.name)\r\n const isDir = fs.lstatSync(fullPath).isDirectory()\r\n if (isDir) {\r\n //recursion \u9012\u5F52\r\n getFileNodes(fullPath, option, (item.children = []), level + 1)\r\n item.fullPath = fullPath.replace(/\\\\/g, '/')\r\n nodes.push(item)\r\n } else {\r\n const i = fullPath.lastIndexOf('.')\r\n const lastName = fullPath.substring(i)\r\n //File filtering is handled here \u8FD9\u91CC\u5904\u7406\u6587\u4EF6\u8FC7\u6EE4\r\n if (include.includes(lastName)) {\r\n const obj = getFile(fullPath)\r\n Object.assign(item, obj)\r\n item.suffix = lastName\r\n item.fullPath = fullPath.replace(/\\\\/g, '/')\r\n nodes.push(item)\r\n }\r\n }\r\n }\r\n }\r\n return nodes\r\n}\r\n\r\n/**\r\n * @description:Recursive file name + note \u9012\u5F52\u5F97\u5230\u6587\u4EF6\u540D+note\r\n * @param {Array} datas\r\n * @param {string} keys\r\n * @return {*}\r\n */\r\nexport function getNote(datas: ItemType[], keys?: string[]) {\r\n const nodes = keys || []\r\n datas.forEach((obj: ItemType, index: Number) => {\r\n const last = index === datas.length - 1\r\n if (obj.children) {\r\n //fold\r\n getNote(obj.children, nodes)\r\n }\r\n const md = setMd(obj, last)\r\n nodes.push(md)\r\n })\r\n return nodes\r\n}\r\n\r\n/**\r\n * @description:One obj generates one line of text \u4E00\u4E2Aobj\u751F\u6210\u4E00\u4E2A\u4E00\u884C\u6587\u5B57\r\n * @param {ItemType} obj\r\n * @param {Boolean} last Is it the last one \u662F\u4E0D\u662F\u6700\u540E\u4E00\u4E2A\r\n * @return {*}\r\n */\r\n function setMd(obj: ItemType, last: Boolean): string {\r\n let filesString = ''\r\n const blank = '\u2502 '.repeat(obj.level) // \u91CD\u590D\u7A7A\u767D\r\n const pre = `${blank}${last ? '\u2514\u2500\u2500' : '\u251C\u2500\u2500'} ${obj.name}`\r\n if (obj.isDir) {\r\n filesString += `${pre}\\n`\r\n } else {\r\n filesString += `${pre} ${obj.note}\\n`\r\n }\r\n return filesString\r\n}\r\n", "/* \u6574\u4E2A\u6587\u4EF6\u4E3B\u8981\u628A\u7EDD\u5BF9\u8DEF\u5F84\u4FEE\u6539\u4E3A\u76F8\u5BF9\u8DEF\u5F84 */\r\nimport { ItemType } from './get-file'\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport logger from '../shared/logger'\r\nimport createDebugger from 'debug'\r\nconst debug = createDebugger('change-path')\r\ndebug.enabled = false\r\n/**\r\n * @desc: \u9012\u5F52\u5FAA\u73AF\u6240\u6709\u6587\u4EF6\r\n * @author: majun\r\n * @param {Array} nodes \u6574\u4E2A\u6587\u4EF6\u7684nodes\r\n */\r\nexport async function changePath(nodes: ItemType[]) {\r\n async function getNode(nodes: ItemType[]) {\r\n for (let index = 0; index < nodes.length; index++) {\r\n const ele = nodes[index]\r\n if (ele.children) {\r\n await getNode(ele.children)\r\n } else {\r\n // TODO \u8FD9\u91CC\u5148\u5199\u6B7B\u7EDD\u5BF9\u8F6C\u76F8\u5BF9, \u540E\u9762\u5982\u679C\u60F3\u76F8\u5BF9\u90FD\u8F6C\u7EDD\u5BF9, \u53EF\u4EE5\u6539\u8FD9\u91CC\r\n witeFile(ele, true)\r\n }\r\n }\r\n }\r\n await getNode(nodes)\r\n}\r\n/**\r\n * @desc: \u8FD9\u91CC\u8FD4\u56DE\u6CA1\u6709@ \u7B26\u53F7\u7684\u8DEF\u5F84\r\n * @author: majun\r\n * @param {string} absoluteImport \u4F9D\u8D56\u672C\u8EAB\u540D\u5B57\r\n * @param {string} fullPath \u6587\u4EF6\u672C\u8EAB\u7EDD\u5BF9\u5730\u5740\r\n */\r\nexport function getRelatPath(absoluteImport: string, fullPath: string) {\r\n let relatPath = path.relative(path.dirname(fullPath), absoluteImport) // \u8F6C\u56DE\u76F8\u5BF9\u8DEF\u5F84\r\n relatPath = relatPath.replace(/\\\\/g, '/')\r\n if (relatPath.indexOf('.') !== 0) {\r\n relatPath = './' + relatPath\r\n }\r\n return relatPath\r\n}\r\n\r\n/**\r\n * @desc: \u8865\u540E\u7F00\u7684\u65B9\u6CD5+\u66FF\u6362\u524D\u7F00\r\n * @author: majun\r\n * @param {string} filePath \u6B63\u5219\u5339\u914D\u5230\u7684\u4F9D\u8D56\u8DEF\u5F84\r\n * @param {string} fullPath \u672C\u8EAB\u6587\u4EF6\u540D\u8DEF\u5F84\r\n * @param {string} impName \u6B63\u786E\u7684\u540D\u5B57\r\n */\r\nexport function makeSuffix(filePath: string, fullPath: string) {\r\n let absoluteImport = ''\r\n // \u5982\u679C\u6709@\u7B26\u53F7\u7684\r\n if (filePath.indexOf('@') > -1) {\r\n debug('!!!!!!!!!filePath: ', filePath)\r\n absoluteImport = filePath.replace('@', process.cwd())\r\n } else {\r\n absoluteImport = path.resolve(path.dirname(fullPath), filePath)\r\n }\r\n debug('makeSuffix \u5165\u53C2: absoluteImport', absoluteImport)\r\n const lastName = path.extname(absoluteImport)\r\n debug('lastName', lastName)\r\n // \u5047\u5982\u6CA1\u6709\u540E\u7F00,\u8865\u4E0A\r\n if (!lastName) {\r\n debug('!!!!!!!!!!!\u7F3A\u540E\u7F00\u6587\u4EF6: ', absoluteImport)\r\n // \u83B7\u53D6\u7EDD\u5BF9\u8DEF\u5F84\r\n const suffix = ['.js', '.ts', '.vue', '/index.js', '/index.vue']\r\n for (let j = 0; j < suffix.length; j++) {\r\n const fixStr = suffix[j]\r\n if (fs.existsSync(absoluteImport + fixStr)) {\r\n // \u628A\u6539\u597D\u7684\u66FF\u6362\u56DE\u53BB\r\n debug('\u8865\u5168\u7684\u6587\u4EF6: ', absoluteImport + fixStr)\r\n absoluteImport = absoluteImport + fixStr\r\n break\r\n }\r\n }\r\n }\r\n return absoluteImport.replace(/\\\\/g, '/')\r\n}\r\n\r\n/**\r\n * @desc: \u6839\u636E\u4E00\u884C\u4EE3\u7801\u5339\u914Dimport\u7684\u8BE6\u7EC6\u5185\u5BB9 TODO \u8FD9\u91CC\u8FD8\u5F97\u4F18\u5316\r\n * @author: majun\r\n */\r\nexport function getImportName(ele: string) {\r\n let str=''\r\n // \u6CE8\u91CA\u7684\u4E0D\u8F6C,\u5176\u4ED6\u516C\u5171\u4E5F\u4E0D\u8F6C\r\n const ignore = [\r\n 'xiwicloud',\r\n 'bpmn-js',\r\n 'element-ui',\r\n 'lodash',\r\n 'handsontable',\r\n 'nprogress',\r\n 'quill',\r\n 'qrcodejs2',\r\n 'echarts'\r\n ]\r\n const flag = ignore.some((item) => ele.indexOf(item) > -1)\r\n // const reg = /import.*[\\\"|\\'](.*)[\\'|\\\"]/\r\n const reg = / from [\\\"|\\'](.*)[\\'|\\\"]/\r\n // if (fullPath == 'D:/gitwork/auto-generate-md/unuse/App.vue') {\r\n // debug(!flag, ele.indexOf('/') > -1, \"000000000000000000000000\")\r\n // debug(ele.match(reg), '11111111111111')\r\n // }\r\n // \u8FD9\u91CC\u53EA\u6536\u96C6\u7EC4\u4EF6\u4F9D\u8D56, \u63D2\u4EF6\u4F9D\u8D56\u6392\u9664\u6389\r\n if (!flag && ele.indexOf('/') > -1 && ele.indexOf('//') !== 0) {\r\n const impStr = ele.match(reg);\r\n // \u6CA1\u6709import\u7684\u4E0D\u8F6C\r\n if (impStr && impStr[1]) str = impStr[1];\r\n }\r\n return str\r\n}\r\n\r\n/**\r\n * @desc: \u627E\u5230import\u5E76\u8FD4\u56DE\u5168\u8DEF\u5F84\u548C\u539F\u59CB\u8DEF\u5F84\r\n * @author: majun\r\n * @param {string} ele \u627E\u5230\u7684\u884C\u5F15\u5165\r\n * @param {string} fullPath \u6587\u4EF6\u7684\u5168\u8DEF\u5F84\r\n */\r\nexport function changeImport(ele: string, fullPath: string) {\r\n let obj = {\r\n impName: '',\r\n filePath: '',\r\n absoluteImport:''\r\n }\r\n const impName = getImportName(ele)\r\n if (impName) {\r\n // \u4F9D\u8D56\u7684\u5177\u4F53\u540D\u5B57\r\n obj.filePath = impName\r\n debug('!!!!!!!!!\u5339\u914Dimp: ', impName)\r\n // \u5148\u8865\u540E\u7F00\r\n obj.absoluteImport = makeSuffix(obj.filePath, fullPath)\r\n debug('\u8865\u8FC7\u540E', obj.absoluteImport)\r\n // \u540E\u6539\u76F8\u5BF9\u8DEF\u5F84\r\n obj.impName = getRelatPath(obj.absoluteImport, fullPath)\r\n debug('\u76F8\u5BF9\u8DEF\u5F84: ', obj.impName)\r\n }\r\n return obj\r\n}\r\n/**\r\n * @desc: \u5199\u6587\u4EF6\r\n * @author: majun\r\n\r\n * @param {string} file \u76EE\u6807\u5730\u5740\r\n */\r\nexport function witeFile(node: ItemType, isRelative?: Boolean) {\r\n const { fullPath} = node\r\n try {\r\n let writeFlag = false // \u5982\u679C\u5565\u90FD\u6CA1\u6539, \u4E0D\u66F4\u65B0\u6587\u4EF6\r\n let fileStr = fs.readFileSync(fullPath, 'utf-8')\r\n const sarr = fileStr.split(/[\\n]/g)\r\n for (let index = 0; index < sarr.length; index++) {\r\n const ele = sarr[index]\r\n if (ele.indexOf('from') > -1 && isRelative) {\r\n const obj = changeImport(ele, fullPath)\r\n // if (node.name === '***') {\r\n // debug(obj,\"bbbnnn\")\r\n // }\r\n if (obj.impName) {\r\n sarr[index] = ele.replace(obj.filePath, obj.impName)\r\n debug('node: ', node)\r\n writeFlag = true\r\n }\r\n }\r\n }\r\n if (writeFlag) {\r\n fileStr = sarr.join('\\n')\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFileSync(fullPath, fileStr, { encoding: 'utf8' })\r\n logger.success(`Write file successful: ${fullPath}`)\r\n }\r\n } catch (error) {\r\n logger.error(`\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25,\u6587\u4EF6\u540D: ${fullPath} `)\r\n }\r\n}\r\n\r\n/**\r\n * @description: Write the result to JS file \u628A\u7ED3\u679C\u5199\u5165\u5230js\u6587\u4EF6\r\n * @param {data} \u8981\u5199\u7684\u6570\u636E\r\n * @return {fileName} \u8981\u5199\u5165\u6587\u4EF6\u5730\u5740\r\n */\r\nexport function wirteJsNodes(data: string, filePath: string) {\r\n const file = path.resolve(process.cwd(), filePath)\r\n const pre = 'export default'\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFileSync(file, pre + data, { encoding: 'utf8' })\r\n logger.success(`Write file successful: ${filePath}`)\r\n}\r\n", null, "/* \u6253\u4E2A\u6F02\u4EAE\u65E5\u5FD7 */\r\nimport { lightBlue, lightGreen, lightRed, lightYellow } from 'kolorist';\r\n\r\nconst logger = {\r\n info(text: string) {\r\n console.log(lightBlue(`\u2708 - ${text}`));\r\n },\r\n success(text: string) {\r\n console.log(lightGreen(`\u2714 - ${text}`));\r\n },\r\n warn(text: string) {\r\n console.log(lightYellow(`\u25B6 - ${text}`));\r\n },\r\n error(text: string) {\r\n console.log(lightRed(`\u2716 - ${text}`));\r\n }\r\n};\r\n\r\nexport default logger;\r\n", "/* \u751F\u6210md\u8BF4\u660E\u6587\u6863 */\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport { getFileNodes, getNote } from './get-file'\r\nimport { ItemType } from './get-file'\r\nimport logger from '../shared/logger'\r\nimport createDebugger from 'debug'\r\nconst rootPath = process.cwd().replace(/\\\\/g, '/')\r\nconst debug = createDebugger('wirte-md')\r\ndebug.enabled = false\r\ntype secoutType = { rowTotleNumber: number; sizeTotleNumber: number; coutObj: { [key: string]: number } }\r\n/**\r\n * @description:Write the result to JS file \u628A\u7ED3\u679C\u5199\u5165\u5230js\u6587\u4EF6\r\n * @param {data} \u8981\u5199\u7684\u6570\u636E\r\n * @return {fileName} \u8981\u5199\u5165\u6587\u4EF6\u5730\u5740\r\n */\r\nexport function wirteMd(data: string, filePath: string) {\r\n const file = path.resolve(rootPath, filePath)\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFile(file, data, { encoding: 'utf8' }, () => {\r\n logger.success('Write successful')\r\n })\r\n}\r\n\r\n/**\r\n * @description: Get statistics \u5F97\u5230\u7EDF\u8BA1\r\n * @param {Array} nodes\r\n * @return {*}\r\n */\r\nfunction getCountMd(datas: ItemType[]) {\r\n let rowTotleNumber = 0\r\n let sizeTotleNumber = 0\r\n const coutObj: { [key: string]: number } = {}\r\n function getDeatle(nodes: ItemType[]) {\r\n nodes.forEach((obj: ItemType) => {\r\n if (obj.children) getDeatle(obj.children)\r\n else if (obj.suffix && obj.rowSize && obj.size) {\r\n if (!coutObj.hasOwnProperty(obj.suffix)) coutObj[obj.suffix] = 0\r\n coutObj[obj.suffix]++\r\n rowTotleNumber += obj.rowSize\r\n sizeTotleNumber += obj.size\r\n }\r\n })\r\n }\r\n getDeatle(datas)\r\n return {\r\n rowTotleNumber,\r\n sizeTotleNumber,\r\n coutObj\r\n }\r\n}\r\n\r\n/**\r\n * @description:Thousands format \u5343\u5206\u4F4D\u683C\u5F0F\u5316\r\n * @param {num} To format a number \u8981\u683C\u5F0F\u5316\u6570\u5B57\r\n * @return {string}\r\n */\r\nfunction format(num: number) {\r\n var reg = /\\d{1,3}(?=(\\d{3})+$)/g\r\n return (num + '').replace(reg, '$&,')\r\n}\r\n\r\n/**\r\n * @description: Generate statistics MD \u751F\u6210\u7EDF\u8BA1md\r\n * @param {object} option\r\n * @return {*}\r\n */\r\nfunction setCountMd(obj: secoutType) {\r\n const { rowTotleNumber, sizeTotleNumber, coutObj } = obj\r\n let countMd = ''\r\n let totle = 0\r\n for (const key in coutObj) {\r\n const ele = coutObj[key]\r\n totle += ele\r\n countMd += `The suffix is ${key} has ${ele} files\\n`\r\n }\r\n countMd += `The totle has ${totle} files\\n`\r\n let md = `Total number of file lines: ${format(rowTotleNumber)},\r\nTotal number of codes: ${format(sizeTotleNumber)} \\n`\r\n md = countMd + md\r\n return md\r\n}\r\n/**\r\n * @description: Generate MD \u751F\u6210md\r\n * @param {object} option\r\n * @return {*}\r\n */\r\nexport function getMd(\r\n option?: { ignore: string[] | undefined; include: string[] | undefined } | undefined\r\n) {\r\n logger.success('*** run location: '+process.cwd() + '\\n')\r\n const nodes = getFileNodes(rootPath,option)\r\n const countMdObj = getCountMd(nodes)\r\n const coutMd = setCountMd(countMdObj)\r\n logger.success(coutMd)\r\n const note = getNote(nodes) // \u5F97\u5230\u6240\u6709note\u7684\u6570\u7EC4\r\n const md = note.join('') + '\\n' // \u6570\u7EC4\u8F6C\u5B57\u7B26\u4E32\r\n if (md.length > 0) {\r\n logger.success('*** Automatic generation completed !')\r\n }\r\n return { md: md + coutMd, nodes }\r\n}\r\n"],
|
|
5
|
-
"mappings": "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",
|
|
3
|
+
"sources": ["../node_modules/_ms@2.1.2@ms/index.js", "../node_modules/_debug@4.3.4@debug/src/common.js", "../node_modules/_debug@4.3.4@debug/src/browser.js", "../node_modules/_has-flag@4.0.0@has-flag/index.js", "../node_modules/_supports-color@8.1.1@supports-color/index.js", "../node_modules/_debug@4.3.4@debug/src/node.js", "../node_modules/_debug@4.3.4@debug/src/index.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/compare-aliases.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/modes.enum.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/inspector.js", "../node_modules/_node-environment@0.5.1@node-environment/lib/index.js", "../src/index.ts", "../src/commands/get-file.ts", "../src/commands/change-path.ts", "../node_modules/_kolorist@1.5.1@kolorist/src/index.ts", "../src/shared/logger.ts", "../src/commands/wirte-md.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n", "\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n", "/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n", "'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n", "'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet flagForceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tflagForceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tflagForceColor = 1;\n}\n\nfunction envForceColor() {\n\tif ('FORCE_COLOR' in env) {\n\t\tif (env.FORCE_COLOR === 'true') {\n\t\t\treturn 1;\n\t\t}\n\n\t\tif (env.FORCE_COLOR === 'false') {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {\n\tconst noFlagForceColor = envForceColor();\n\tif (noFlagForceColor !== undefined) {\n\t\tflagForceColor = noFlagForceColor;\n\t}\n\n\tconst forceColor = sniffFlags ? flagForceColor : noFlagForceColor;\n\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (sniffFlags) {\n\t\tif (hasFlag('color=16m') ||\n\t\t\thasFlag('color=full') ||\n\t\t\thasFlag('color=truecolor')) {\n\t\t\treturn 3;\n\t\t}\n\n\t\tif (hasFlag('color=256')) {\n\t\t\treturn 2;\n\t\t}\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = Number.parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream, options = {}) {\n\tconst level = supportsColor(stream, {\n\t\tstreamIsTTY: stream && stream.isTTY,\n\t\t...options\n\t});\n\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: getSupportLevel({isTTY: tty.isatty(1)}),\n\tstderr: getSupportLevel({isTTY: tty.isatty(2)})\n};\n", "/**\n * Module dependencies.\n */\n\nconst tty = require('tty');\nconst util = require('util');\n\n/**\n * This is the Node.js implementation of `debug()`.\n */\n\nexports.init = init;\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.destroy = util.deprecate(\n\t() => {},\n\t'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'\n);\n\n/**\n * Colors.\n */\n\nexports.colors = [6, 2, 3, 4, 5, 1];\n\ntry {\n\t// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)\n\t// eslint-disable-next-line import/no-extraneous-dependencies\n\tconst supportsColor = require('supports-color');\n\n\tif (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {\n\t\texports.colors = [\n\t\t\t20,\n\t\t\t21,\n\t\t\t26,\n\t\t\t27,\n\t\t\t32,\n\t\t\t33,\n\t\t\t38,\n\t\t\t39,\n\t\t\t40,\n\t\t\t41,\n\t\t\t42,\n\t\t\t43,\n\t\t\t44,\n\t\t\t45,\n\t\t\t56,\n\t\t\t57,\n\t\t\t62,\n\t\t\t63,\n\t\t\t68,\n\t\t\t69,\n\t\t\t74,\n\t\t\t75,\n\t\t\t76,\n\t\t\t77,\n\t\t\t78,\n\t\t\t79,\n\t\t\t80,\n\t\t\t81,\n\t\t\t92,\n\t\t\t93,\n\t\t\t98,\n\t\t\t99,\n\t\t\t112,\n\t\t\t113,\n\t\t\t128,\n\t\t\t129,\n\t\t\t134,\n\t\t\t135,\n\t\t\t148,\n\t\t\t149,\n\t\t\t160,\n\t\t\t161,\n\t\t\t162,\n\t\t\t163,\n\t\t\t164,\n\t\t\t165,\n\t\t\t166,\n\t\t\t167,\n\t\t\t168,\n\t\t\t169,\n\t\t\t170,\n\t\t\t171,\n\t\t\t172,\n\t\t\t173,\n\t\t\t178,\n\t\t\t179,\n\t\t\t184,\n\t\t\t185,\n\t\t\t196,\n\t\t\t197,\n\t\t\t198,\n\t\t\t199,\n\t\t\t200,\n\t\t\t201,\n\t\t\t202,\n\t\t\t203,\n\t\t\t204,\n\t\t\t205,\n\t\t\t206,\n\t\t\t207,\n\t\t\t208,\n\t\t\t209,\n\t\t\t214,\n\t\t\t215,\n\t\t\t220,\n\t\t\t221\n\t\t];\n\t}\n} catch (error) {\n\t// Swallow - we only care if `supports-color` is available; it doesn't have to be.\n}\n\n/**\n * Build up the default `inspectOpts` object from the environment variables.\n *\n * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js\n */\n\nexports.inspectOpts = Object.keys(process.env).filter(key => {\n\treturn /^debug_/i.test(key);\n}).reduce((obj, key) => {\n\t// Camel-case\n\tconst prop = key\n\t\t.substring(6)\n\t\t.toLowerCase()\n\t\t.replace(/_([a-z])/g, (_, k) => {\n\t\t\treturn k.toUpperCase();\n\t\t});\n\n\t// Coerce string value into JS value\n\tlet val = process.env[key];\n\tif (/^(yes|on|true|enabled)$/i.test(val)) {\n\t\tval = true;\n\t} else if (/^(no|off|false|disabled)$/i.test(val)) {\n\t\tval = false;\n\t} else if (val === 'null') {\n\t\tval = null;\n\t} else {\n\t\tval = Number(val);\n\t}\n\n\tobj[prop] = val;\n\treturn obj;\n}, {});\n\n/**\n * Is stdout a TTY? Colored output is enabled when `true`.\n */\n\nfunction useColors() {\n\treturn 'colors' in exports.inspectOpts ?\n\t\tBoolean(exports.inspectOpts.colors) :\n\t\ttty.isatty(process.stderr.fd);\n}\n\n/**\n * Adds ANSI color escape codes if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\tconst {namespace: name, useColors} = this;\n\n\tif (useColors) {\n\t\tconst c = this.color;\n\t\tconst colorCode = '\\u001B[3' + (c < 8 ? c : '8;5;' + c);\n\t\tconst prefix = ` ${colorCode};1m${name} \\u001B[0m`;\n\n\t\targs[0] = prefix + args[0].split('\\n').join('\\n' + prefix);\n\t\targs.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\\u001B[0m');\n\t} else {\n\t\targs[0] = getDate() + name + ' ' + args[0];\n\t}\n}\n\nfunction getDate() {\n\tif (exports.inspectOpts.hideDate) {\n\t\treturn '';\n\t}\n\treturn new Date().toISOString() + ' ';\n}\n\n/**\n * Invokes `util.format()` with the specified arguments and writes to stderr.\n */\n\nfunction log(...args) {\n\treturn process.stderr.write(util.format(...args) + '\\n');\n}\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\tif (namespaces) {\n\t\tprocess.env.DEBUG = namespaces;\n\t} else {\n\t\t// If you set a process.env field to null or undefined, it gets cast to the\n\t\t// string 'null' or 'undefined'. Just delete instead.\n\t\tdelete process.env.DEBUG;\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\nfunction load() {\n\treturn process.env.DEBUG;\n}\n\n/**\n * Init logic for `debug` instances.\n *\n * Create a new `inspectOpts` object in case `useColors` is set\n * differently for a particular `debug` instance.\n */\n\nfunction init(debug) {\n\tdebug.inspectOpts = {};\n\n\tconst keys = Object.keys(exports.inspectOpts);\n\tfor (let i = 0; i < keys.length; i++) {\n\t\tdebug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %o to `util.inspect()`, all on a single line.\n */\n\nformatters.o = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts)\n\t\t.split('\\n')\n\t\t.map(str => str.trim())\n\t\t.join(' ');\n};\n\n/**\n * Map %O to `util.inspect()`, allowing multiple lines if needed.\n */\n\nformatters.O = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts);\n};\n", "/**\n * Detect Electron renderer / nwjs process, which is node, but we should\n * treat as a browser.\n */\n\nif (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {\n\tmodule.exports = require('./browser.js');\n} else {\n\tmodule.exports = require('./node.js');\n}\n", "/**\n * Compare a list of case insensitive aliases for a given environment value\n *\n * @param {string} env value to be test\n * @param {string[]} aliases aliases to be compared to\n * @return {boolean}\n */\nmodule.exports = function compareAliases(env, ...aliases) {\n return aliases.some((alias) => alias.toLowerCase() === env.toLowerCase())\n}\n", "const Development = {\n dev: 'dev',\n development: 'development',\n}\n\nconst Production = {\n prod: 'prod',\n production: 'production',\n}\n\nmodule.exports = {\n Production,\n Development,\n}\n", "const compare = require('./compare-aliases')\nconst modes = require('./modes.enum')\n\n/**\n * Given an env value, checks whether NODE_ENV correspond to that value\n *\n * Inspector has two modes of operation, with a given argument or not. Given a\n * argument, the value is compared to a known environment values (dev, prod,...)\n * then a exact insensitive case match is made with the value. If there's no\n * given value, then compare the raw value of NODE_ENV is returned\n *\n * @example <caption>with NODE_ENV=\"dev\"</caption>\n * \t inspector() // \"dev\"\n * \t inspector(\"test\") // false\n * \t inspector(\"development\") // true\n * \t inspector(\"staging\", \"production\") // false\n * \t inspector(\"dev\") // true\n *\n * @param {string[] | undefined} [envs] environment to be tested\n * @return {boolean | string}\n */\nfunction inspector(...envs) {\n const nodeEnv = process.env.NODE_ENV ?? 'development'\n\n if (envs.length === 0) {\n return nodeEnv\n }\n\n return envs.reduce((prev, env) => {\n if (isKnownMode(env, nodeEnv)) {\n return true\n }\n\n return prev || compare(env, nodeEnv)\n }, false)\n}\n\n/**\n * Compare for a known env mode\n * @param {string} env\n * @param {string} nodeEnv\n * @return {boolean}\n */\nfunction isKnownMode(env, nodeEnv) {\n for (const mode of Object.values(modes)) {\n if (compareKnownMode(env, nodeEnv, Object.values(mode))) {\n return true\n }\n }\n\n return false\n}\n\n/**\n *\n * @param {string} env\n * @param {string} nodeEnv\n * @param {string[]} possibleValues\n * @return {boolean}\n */\nfunction compareKnownMode(env, nodeEnv, possibleValues) {\n return compare(env, ...possibleValues) && compare(nodeEnv, ...possibleValues)\n}\n\nmodule.exports = inspector\n", "module.exports = {\n env: require('./inspector'),\n}\n", "/* \u8FD9\u91CC\u629B\u51FA\u4E00\u4E9B\u9AD8\u7EA7\u64CD\u4F5C\u65B9\u6CD5 */\r\nimport { getMd } from './commands/wirte-md'\r\nimport { getFileNodes } from './commands/get-file'\r\nexport { getMd, getFileNodes }\r\n", "/* \u83B7\u53D6\u6587\u4EF6\u76F8\u5173\u65B9\u6CD5 */\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport createDebugger from 'debug'\r\nimport { changeImport } from './change-path';\r\nconst debug = createDebugger('get-file')\r\ndebug.enabled = false\r\nimport { env } from 'node-environment'\r\nconst isDev = env() === 'development'\r\n/**\r\n * @description:Gets the header comment of the file \u83B7\u53D6\u6587\u4EF6\u7684\u5934\u90E8\u6CE8\u91CA\r\n * @param {*} fullPath\r\n * @return {*}\r\n */\r\nexport function getFile(fullPath: string) {\r\n const str = fs.readFileSync(fullPath, 'utf-8')\r\n const size = str.length\r\n const sarr = str.split(/[\\n]/g)\r\n const rowSize = sarr.length\r\n const imports = getImport(sarr, fullPath)\r\n const f =\r\n sarr[0].indexOf('eslint') === -1 &&\r\n (sarr[0].indexOf('-->') > -1 || sarr[0].indexOf('*/') > -1 || sarr[0].indexOf('//') > -1)\r\n ? sarr[0]\r\n : ''\r\n return {\r\n note: f.replace(/<\\/?[^>]*>|(\\n|\\r)/g, ''), // \u53BB\u6389\u5C3E\u5DF4\u6362\u884C\u7B26\u53F7\r\n size,\r\n rowSize,\r\n imports\r\n }\r\n}\r\n\r\n/**\r\n * @desc: \u8FD9\u662F\u521D\u59CB\u5316\u65F6\u5C31\u83B7\u53D6\u6BCF\u4E2A\u6587\u4EF6\u4F9D\u8D56\u7684\u65B9\u6CD5, \u4F46\u8981\u6C42\u5148\u8865\u5168\u540E\u7F00,\u5426\u5219\u4E0D\u7075\r\n * @author: majun\r\n * @param {any} sarr\r\n * @param {string} fullPath\r\n */\r\nexport function getImport(sarr: any[], fullPath: string) {\r\n // \u8FD9\u91CC\u83B7\u53D6\u6BCF\u4E2A\u6587\u4EF6\u7684import\u8DEF\u5F84\r\n const imports: string[] = []\r\n sarr.forEach((ele: string) => {\r\n if (ele.indexOf('from') > -1) {\r\n const { absoluteImport } = changeImport(ele, fullPath)\r\n if (absoluteImport) {\r\n imports.push(absoluteImport)\r\n }\r\n\r\n }\r\n })\r\n return imports\r\n}\r\n\r\nexport type ItemType = {\r\n name: string\r\n copyed?: boolean\r\n isDir: boolean\r\n level: number\r\n note: string\r\n size?: number\r\n suffix?: string\r\n rowSize?: number\r\n fullPath: string\r\n belongTo: string[] // \u6807\u8BB0\u5F52\u5C5E\u8BBE\u7F6E \u5206\u7C7B\u7528\r\n imports: string[] // \u4F9D\u8D56\u6536\u96C6\r\n children?: ItemType[]\r\n}\r\n\r\n/**\r\n * @description:Generate node information for all files \u751F\u6210\u6240\u6709\u6587\u4EF6\u7684node\u4FE1\u606F\r\n * @param {*} dir \u8981\u89E3\u6790\u7684\u8DEF\u5F84\r\n * @param {Array} nodes\r\n * @param {Number} level\r\n * @return {*}\r\n */\r\nexport function getFileNodes(\r\n dir = process.cwd(),\r\n option?: { ignore: string[] | undefined; include: string[] | undefined } | undefined,\r\n nodes: ItemType[] = [],\r\n level = 0\r\n): ItemType[] {\r\n //File filtering -- full name with suffix required \u6587\u4EF6\u8FC7\u6EE4--\u9700\u8981\u5168\u79F0\u5E26\u540E\u7F00\r\n let ignore = [\r\n // 'api',\r\n // 'src',\r\n 'bin',\r\n 'lib',\r\n 'jest.config.js',\r\n 'router',\r\n 'img',\r\n 'styles',\r\n 'node_modules',\r\n 'LICENSE',\r\n '.git',\r\n '.github',\r\n 'dist',\r\n '.husky',\r\n '.vscode',\r\n '.eslintrc.js',\r\n 'readme-file.js',\r\n 'readme-md.js'\r\n ]\r\n //File suffix contains only \u6587\u4EF6\u540E\u7F00\u53EA\u5305\u542B\r\n let include = isDev?['.js', '.vue']:['.js', '.vue', '.ts']\r\n if (option) {\r\n ignore = option.ignore || ignore\r\n include = option.include || include\r\n }\r\n\r\n const files = fs\r\n .readdirSync(dir)\r\n .map((item) => {\r\n let fullPath = path.join(dir, item)\r\n const isDir = fs.lstatSync(fullPath).isDirectory()\r\n return {\r\n name: item,\r\n isDir,\r\n level,\r\n note: '',\r\n imports: new Array(),\r\n belongTo: new Array()\r\n } as ItemType\r\n })\r\n //Sort folders and files, otherwise the generated will not correspond to the opening order of the editor \u5BF9\u6587\u4EF6\u5939\u548C\u6587\u4EF6\u8FDB\u884C\u6392\u5E8F,\u8981\u4E0D\u7136\u751F\u6210\u7684\u548C\u7F16\u8F91\u5668\u6253\u5F00\u7684\u987A\u5E8F\u4E0D\u5BF9\u5E94\r\n .sort((a, b) => {\r\n if (!a.isDir && b.isDir) return 1\r\n if (a.isDir && !b.isDir) return -1\r\n if ((a.isDir && b.isDir) || (!a.isDir && !b.isDir)) return 0\r\n return 0\r\n })\r\n for (let index = 0; index < files.length; index += 1) {\r\n const item = files[index]\r\n //Folder filtering is handled here \u8FD9\u91CC\u5904\u7406\u6587\u4EF6\u5939\u8FC7\u6EE4\r\n const foldFlag = ignore.findIndex((obj: string) => obj === item.name)\r\n if (foldFlag === -1) {\r\n const fullPath = path.join(dir, item.name)\r\n const isDir = fs.lstatSync(fullPath).isDirectory()\r\n if (isDir) {\r\n //recursion \u9012\u5F52\r\n getFileNodes(fullPath, option, (item.children = []), level + 1)\r\n item.fullPath = fullPath.replace(/\\\\/g, '/')\r\n nodes.push(item)\r\n } else {\r\n const i = fullPath.lastIndexOf('.')\r\n const lastName = fullPath.substring(i)\r\n //File filtering is handled here \u8FD9\u91CC\u5904\u7406\u6587\u4EF6\u8FC7\u6EE4\r\n if (include.includes(lastName)) {\r\n const obj = getFile(fullPath)\r\n Object.assign(item, obj)\r\n item.suffix = lastName\r\n item.fullPath = fullPath.replace(/\\\\/g, '/')\r\n nodes.push(item)\r\n }\r\n }\r\n }\r\n }\r\n return nodes\r\n}\r\n\r\n/**\r\n * @description:Recursive file name + note \u9012\u5F52\u5F97\u5230\u6587\u4EF6\u540D+note\r\n * @param {Array} datas\r\n * @param {string} keys\r\n * @return {*}\r\n */\r\nexport function getNote(datas: ItemType[], keys?: string[]) {\r\n const nodes = keys || []\r\n datas.forEach((obj: ItemType, index: Number) => {\r\n const last = index === datas.length - 1\r\n if (obj.children) {\r\n //fold\r\n getNote(obj.children, nodes)\r\n }\r\n const md = setMd(obj, last)\r\n nodes.push(md)\r\n })\r\n return nodes\r\n}\r\n\r\n/**\r\n * @description:One obj generates one line of text \u4E00\u4E2Aobj\u751F\u6210\u4E00\u4E2A\u4E00\u884C\u6587\u5B57\r\n * @param {ItemType} obj\r\n * @param {Boolean} last Is it the last one \u662F\u4E0D\u662F\u6700\u540E\u4E00\u4E2A\r\n * @return {*}\r\n */\r\n function setMd(obj: ItemType, last: Boolean): string {\r\n let filesString = ''\r\n const blank = '\u2502 '.repeat(obj.level) // \u91CD\u590D\u7A7A\u767D\r\n const pre = `${blank}${last ? '\u2514\u2500\u2500' : '\u251C\u2500\u2500'} ${obj.name}`\r\n if (obj.isDir) {\r\n filesString += `${pre}\\n`\r\n } else {\r\n filesString += `${pre} ${obj.note}\\n`\r\n }\r\n return filesString\r\n}\r\n", "/* \u6574\u4E2A\u6587\u4EF6\u4E3B\u8981\u628A\u7EDD\u5BF9\u8DEF\u5F84\u4FEE\u6539\u4E3A\u76F8\u5BF9\u8DEF\u5F84 */\r\nimport { ItemType } from './get-file'\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport logger from '../shared/logger'\r\nimport createDebugger from 'debug'\r\nconst debug = createDebugger('change-path')\r\ndebug.enabled = false\r\n/**\r\n * @desc: \u9012\u5F52\u5FAA\u73AF\u6240\u6709\u6587\u4EF6\r\n * @author: majun\r\n * @param {Array} nodes \u6574\u4E2A\u6587\u4EF6\u7684nodes\r\n */\r\nexport async function changePath(nodes: ItemType[]) {\r\n async function getNode(nodes: ItemType[]) {\r\n for (let index = 0; index < nodes.length; index++) {\r\n const ele = nodes[index]\r\n if (ele.children) {\r\n await getNode(ele.children)\r\n } else {\r\n // TODO \u8FD9\u91CC\u5148\u5199\u6B7B\u7EDD\u5BF9\u8F6C\u76F8\u5BF9, \u540E\u9762\u5982\u679C\u60F3\u76F8\u5BF9\u90FD\u8F6C\u7EDD\u5BF9, \u53EF\u4EE5\u6539\u8FD9\u91CC\r\n witeFile(ele, true)\r\n }\r\n }\r\n }\r\n await getNode(nodes)\r\n}\r\n/**\r\n * @desc: \u8FD9\u91CC\u8FD4\u56DE\u6CA1\u6709@ \u7B26\u53F7\u7684\u8DEF\u5F84\r\n * @author: majun\r\n * @param {string} absoluteImport \u4F9D\u8D56\u672C\u8EAB\u540D\u5B57\r\n * @param {string} fullPath \u6587\u4EF6\u672C\u8EAB\u7EDD\u5BF9\u5730\u5740\r\n */\r\nexport function getRelatPath(absoluteImport: string, fullPath: string) {\r\n let relatPath = path.relative(path.dirname(fullPath), absoluteImport) // \u8F6C\u56DE\u76F8\u5BF9\u8DEF\u5F84\r\n relatPath = relatPath.replace(/\\\\/g, '/')\r\n if (relatPath.indexOf('.') !== 0) {\r\n relatPath = './' + relatPath\r\n }\r\n return relatPath\r\n}\r\n\r\n/**\r\n * @desc: \u8865\u540E\u7F00\u7684\u65B9\u6CD5+\u66FF\u6362\u524D\u7F00\r\n * @author: majun\r\n * @param {string} filePath \u6B63\u5219\u5339\u914D\u5230\u7684\u4F9D\u8D56\u8DEF\u5F84\r\n * @param {string} fullPath \u672C\u8EAB\u6587\u4EF6\u540D\u8DEF\u5F84\r\n * @param {string} impName \u6B63\u786E\u7684\u540D\u5B57\r\n */\r\nexport function makeSuffix(filePath: string, fullPath: string) {\r\n let absoluteImport = ''\r\n // \u5982\u679C\u6709@\u7B26\u53F7\u7684\r\n if (filePath.indexOf('@') > -1) {\r\n debug('!!!!!!!!!filePath: ', filePath)\r\n absoluteImport = filePath.replace('@', process.cwd())\r\n } else {\r\n absoluteImport = path.resolve(path.dirname(fullPath), filePath)\r\n }\r\n debug('makeSuffix \u5165\u53C2: absoluteImport', absoluteImport)\r\n const lastName = path.extname(absoluteImport)\r\n debug('lastName', lastName)\r\n // \u5047\u5982\u6CA1\u6709\u540E\u7F00,\u8865\u4E0A\r\n if (!lastName) {\r\n debug('!!!!!!!!!!!\u7F3A\u540E\u7F00\u6587\u4EF6: ', absoluteImport)\r\n // \u83B7\u53D6\u7EDD\u5BF9\u8DEF\u5F84\r\n const suffix = ['.js', '.ts', '.vue', '/index.js', '/index.vue']\r\n for (let j = 0; j < suffix.length; j++) {\r\n const fixStr = suffix[j]\r\n if (fs.existsSync(absoluteImport + fixStr)) {\r\n // \u628A\u6539\u597D\u7684\u66FF\u6362\u56DE\u53BB\r\n debug('\u8865\u5168\u7684\u6587\u4EF6: ', absoluteImport + fixStr)\r\n absoluteImport = absoluteImport + fixStr\r\n break\r\n }\r\n }\r\n }\r\n return absoluteImport.replace(/\\\\/g, '/')\r\n}\r\n\r\n/**\r\n * @desc: \u6839\u636E\u4E00\u884C\u4EE3\u7801\u5339\u914Dimport\u7684\u8BE6\u7EC6\u5185\u5BB9 TODO \u8FD9\u91CC\u8FD8\u5F97\u4F18\u5316\r\n * @author: majun\r\n */\r\nexport function getImportName(ele: string) {\r\n let str=''\r\n // \u6CE8\u91CA\u7684\u4E0D\u8F6C,\u5176\u4ED6\u516C\u5171\u4E5F\u4E0D\u8F6C\r\n const ignore = [\r\n 'xiwicloud',\r\n 'bpmn-js',\r\n 'element-ui',\r\n 'lodash',\r\n 'handsontable',\r\n 'nprogress',\r\n 'quill',\r\n 'qrcodejs2',\r\n 'echarts'\r\n ]\r\n const flag = ignore.some((item) => ele.indexOf(item) > -1)\r\n // const reg = /import.*[\\\"|\\'](.*)[\\'|\\\"]/\r\n const reg = / from [\\\"|\\'](.*)[\\'|\\\"]/\r\n // if (fullPath == 'D:/gitwork/auto-generate-md/unuse/App.vue') {\r\n // debug(!flag, ele.indexOf('/') > -1, \"000000000000000000000000\")\r\n // debug(ele.match(reg), '11111111111111')\r\n // }\r\n // \u8FD9\u91CC\u53EA\u6536\u96C6\u7EC4\u4EF6\u4F9D\u8D56, \u63D2\u4EF6\u4F9D\u8D56\u6392\u9664\u6389\r\n if (!flag && ele.indexOf('/') > -1 && ele.indexOf('//') !== 0) {\r\n const impStr = ele.match(reg);\r\n // \u6CA1\u6709import\u7684\u4E0D\u8F6C\r\n if (impStr && impStr[1]) str = impStr[1];\r\n }\r\n return str\r\n}\r\n\r\n/**\r\n * @desc: \u627E\u5230import\u5E76\u8FD4\u56DE\u5168\u8DEF\u5F84\u548C\u539F\u59CB\u8DEF\u5F84\r\n * @author: majun\r\n * @param {string} ele \u627E\u5230\u7684\u884C\u5F15\u5165\r\n * @param {string} fullPath \u6587\u4EF6\u7684\u5168\u8DEF\u5F84\r\n */\r\nexport function changeImport(ele: string, fullPath: string) {\r\n let obj = {\r\n impName: '',\r\n filePath: '',\r\n absoluteImport:''\r\n }\r\n const impName = getImportName(ele)\r\n if (impName) {\r\n // \u4F9D\u8D56\u7684\u5177\u4F53\u540D\u5B57\r\n obj.filePath = impName\r\n debug('!!!!!!!!!\u5339\u914Dimp: ', impName)\r\n // \u5148\u8865\u540E\u7F00\r\n obj.absoluteImport = makeSuffix(obj.filePath, fullPath)\r\n debug('\u8865\u8FC7\u540E', obj.absoluteImport)\r\n // \u540E\u6539\u76F8\u5BF9\u8DEF\u5F84\r\n obj.impName = getRelatPath(obj.absoluteImport, fullPath)\r\n debug('\u76F8\u5BF9\u8DEF\u5F84: ', obj.impName)\r\n }\r\n return obj\r\n}\r\n/**\r\n * @desc: \u5199\u6587\u4EF6\r\n * @author: majun\r\n\r\n * @param {string} file \u76EE\u6807\u5730\u5740\r\n */\r\nexport function witeFile(node: ItemType, isRelative?: Boolean) {\r\n const { fullPath} = node\r\n try {\r\n let writeFlag = false // \u5982\u679C\u5565\u90FD\u6CA1\u6539, \u4E0D\u66F4\u65B0\u6587\u4EF6\r\n let fileStr = fs.readFileSync(fullPath, 'utf-8')\r\n const sarr = fileStr.split(/[\\n]/g)\r\n for (let index = 0; index < sarr.length; index++) {\r\n const ele = sarr[index]\r\n if (ele.indexOf('from') > -1 && isRelative) {\r\n const obj = changeImport(ele, fullPath)\r\n // if (node.name === '***') {\r\n // debug(obj,\"bbbnnn\")\r\n // }\r\n if (obj.impName) {\r\n sarr[index] = ele.replace(obj.filePath, obj.impName)\r\n debug('node: ', node)\r\n writeFlag = true\r\n }\r\n }\r\n }\r\n if (writeFlag) {\r\n fileStr = sarr.join('\\n')\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFileSync(fullPath, fileStr, { encoding: 'utf8' })\r\n logger.success(`Write file successful: ${fullPath}`)\r\n }\r\n } catch (error) {\r\n logger.error(`\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25,\u6587\u4EF6\u540D: ${fullPath} `)\r\n }\r\n}\r\n\r\n/**\r\n * @description: Write the result to JS file \u628A\u7ED3\u679C\u5199\u5165\u5230js\u6587\u4EF6\r\n * @param {data} \u8981\u5199\u7684\u6570\u636E\r\n * @return {fileName} \u8981\u5199\u5165\u6587\u4EF6\u5730\u5740\r\n */\r\nexport function wirteJsNodes(data: string, filePath: string) {\r\n const file = path.resolve(process.cwd(), filePath)\r\n const pre = 'export default'\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFileSync(file, pre + data, { encoding: 'utf8' })\r\n logger.success(`Write file successful: ${filePath}`)\r\n}\r\n", null, "/* \u6253\u4E2A\u6F02\u4EAE\u65E5\u5FD7 */\r\nimport { lightBlue, lightGreen, lightRed, lightYellow } from 'kolorist';\r\n\r\nconst logger = {\r\n info(text: string) {\r\n console.log(lightBlue(`\u2708 - ${text}`));\r\n },\r\n success(text: string) {\r\n console.log(lightGreen(`\u2714 - ${text}`));\r\n },\r\n warn(text: string) {\r\n console.log(lightYellow(`\u25B6 - ${text}`));\r\n },\r\n error(text: string) {\r\n console.log(lightRed(`\u2716 - ${text}`));\r\n }\r\n};\r\n\r\nexport default logger;\r\n", "/* \u751F\u6210md\u8BF4\u660E\u6587\u6863 */\r\nimport fs from 'fs'\r\nimport path from 'path'\r\nimport { getFileNodes, getNote } from './get-file'\r\nimport { ItemType } from './get-file'\r\nimport logger from '../shared/logger'\r\nimport createDebugger from 'debug'\r\nconst rootPath = process.cwd().replace(/\\\\/g, '/')\r\nconst debug = createDebugger('wirte-md')\r\ndebug.enabled = false\r\ntype secoutType = { rowTotleNumber: number; sizeTotleNumber: number; coutObj: { [key: string]: number } }\r\n/**\r\n * @description:Write the result to JS file \u628A\u7ED3\u679C\u5199\u5165\u5230js\u6587\u4EF6\r\n * @param {data} \u8981\u5199\u7684\u6570\u636E\r\n * @return {fileName} \u8981\u5199\u5165\u6587\u4EF6\u5730\u5740\r\n */\r\nexport function wirteMd(data: string, filePath: string) {\r\n const file = path.resolve(rootPath, filePath)\r\n // \u5F02\u6B65\u5199\u5165\u6570\u636E\u5230\u6587\u4EF6\r\n fs.writeFile(file, data, { encoding: 'utf8' }, () => {\r\n logger.success('Write successful')\r\n })\r\n}\r\n\r\n/**\r\n * @description: Get statistics \u5F97\u5230\u7EDF\u8BA1\r\n * @param {Array} nodes\r\n * @return {*}\r\n */\r\nfunction getCountMd(datas: ItemType[]) {\r\n let rowTotleNumber = 0\r\n let sizeTotleNumber = 0\r\n const coutObj: { [key: string]: number } = {}\r\n function getDeatle(nodes: ItemType[]) {\r\n nodes.forEach((obj: ItemType) => {\r\n if (obj.children) getDeatle(obj.children)\r\n else if (obj.suffix && obj.rowSize && obj.size) {\r\n if (!coutObj.hasOwnProperty(obj.suffix)) coutObj[obj.suffix] = 0\r\n coutObj[obj.suffix]++\r\n rowTotleNumber += obj.rowSize\r\n sizeTotleNumber += obj.size\r\n }\r\n })\r\n }\r\n getDeatle(datas)\r\n return {\r\n rowTotleNumber,\r\n sizeTotleNumber,\r\n coutObj\r\n }\r\n}\r\n\r\n/**\r\n * @description:Thousands format \u5343\u5206\u4F4D\u683C\u5F0F\u5316\r\n * @param {num} To format a number \u8981\u683C\u5F0F\u5316\u6570\u5B57\r\n * @return {string}\r\n */\r\nfunction format(num: number) {\r\n var reg = /\\d{1,3}(?=(\\d{3})+$)/g\r\n return (num + '').replace(reg, '$&,')\r\n}\r\n\r\n/**\r\n * @description: Generate statistics MD \u751F\u6210\u7EDF\u8BA1md\r\n * @param {object} option\r\n * @return {*}\r\n */\r\nfunction setCountMd(obj: secoutType) {\r\n const { rowTotleNumber, sizeTotleNumber, coutObj } = obj\r\n let countMd = ''\r\n let totle = 0\r\n for (const key in coutObj) {\r\n const ele = coutObj[key]\r\n totle += ele\r\n countMd += `The suffix is ${key} has ${ele} files\\n`\r\n }\r\n countMd += `The totle has ${totle} files\\n`\r\n let md = `Total number of file lines: ${format(rowTotleNumber)},\r\nTotal number of codes: ${format(sizeTotleNumber)} \\n`\r\n md = countMd + md\r\n return md\r\n}\r\n/**\r\n * @description: Generate MD \u751F\u6210md\r\n * @param {object} option\r\n * @return {*}\r\n */\r\nexport function getMd(\r\n option?: { ignore: string[] | undefined; include: string[] | undefined } | undefined\r\n) {\r\n logger.success('*** run location: '+process.cwd() + '\\n')\r\n const nodes = getFileNodes(rootPath,option)\r\n const countMdObj = getCountMd(nodes)\r\n const coutMd = setCountMd(countMdObj)\r\n logger.success(coutMd)\r\n const note = getNote(nodes) // \u5F97\u5230\u6240\u6709note\u7684\u6570\u7EC4\r\n const md = note.join('') + '\\n' // \u6570\u7EC4\u8F6C\u5B57\u7B26\u4E32\r\n if (md.length > 0) {\r\n logger.success('*** Automatic generation completed !')\r\n }\r\n return { md: md + coutMd, nodes }\r\n}\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|