@qingtian/qtcli 1.0.0
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 +193 -0
- package/dist/bin/cli.js +11 -0
- package/dist/package.json +209 -0
- package/dist/qt.conf.js +101 -0
- package/dist/src/App.js +10 -0
- package/dist/src/commands/build.js +74 -0
- package/dist/src/commands/dev.js +68 -0
- package/dist/src/commands/index.js +83 -0
- package/dist/src/commands/init.js +128 -0
- package/dist/src/cores/context.js +123 -0
- package/dist/src/index.js +29 -0
- package/dist/src/processEnv/index.js +23 -0
- package/dist/src/processEnv/injector.js +39 -0
- package/dist/src/processEnv/loader.js +201 -0
- package/dist/src/processEnv/manager.js +122 -0
- package/dist/src/processEnv/types.js +2 -0
- package/dist/src/proxys/build/index.js +225 -0
- package/dist/src/proxys/dev/index.js +284 -0
- package/dist/src/proxys/init/index.js +90 -0
- package/dist/src/servers/server.js +46 -0
- package/dist/src/types/baseInterface.js +46 -0
- package/dist/src/types/contextModel.js +21 -0
- package/dist/src/utils/childProcess.js +134 -0
- package/dist/src/utils/env.js +56 -0
- package/dist/src/utils/fileUtils.js +121 -0
- package/dist/src/utils/format.js +23 -0
- package/dist/src/utils/formatOutput.js +242 -0
- package/dist/src/utils/logger.js +70 -0
- package/dist/src/utils/printer.js +148 -0
- package/dist/src/utils/sleep.js +11 -0
- package/dist/src/utils/url.js +42 -0
- package/dist/src/webpack/npm/es.js +127 -0
- package/dist/src/webpack/npm/index.js +100 -0
- package/dist/src/webpack/npm/lib.js +128 -0
- package/dist/src/webpack/npm/webpack.base.js +221 -0
- package/dist/src/webpack/npm/webpack.prod.js +76 -0
- package/dist/src/webpack/plugins/DonePlugin.js +14 -0
- package/dist/src/webpack/plugins/FileListPlugin.js +28 -0
- package/dist/src/webpack/plugins/InjectScriptPlugin.js +33 -0
- package/dist/src/webpack/web/index.js +130 -0
- package/dist/src/webpack/web/webpack.analy.js +10 -0
- package/dist/src/webpack/web/webpack.base.js +419 -0
- package/dist/src/webpack/web/webpack.dev.js +38 -0
- package/dist/src/webpack/web/webpack.prod.js +82 -0
- package/package.json +209 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var printer_1 = require("../../utils/printer");
|
|
43
|
+
var childProcess_1 = require("../../utils/childProcess");
|
|
44
|
+
var fileUtils_1 = require("../../utils/fileUtils");
|
|
45
|
+
var path_1 = __importDefault(require("path"));
|
|
46
|
+
var fun = function (opts) { return __awaiter(void 0, void 0, void 0, function () {
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(void 0, void 0, void 0, function () {
|
|
49
|
+
var _a, template, name_1, zipPath, targetPath, c, err_1;
|
|
50
|
+
return __generator(this, function (_b) {
|
|
51
|
+
switch (_b.label) {
|
|
52
|
+
case 0:
|
|
53
|
+
if (opts.config) {
|
|
54
|
+
printer_1.printer.error("\u5F53\u524D\u76EE\u5F55\u4E0D\u53EF\u6267\u884C\u300Cinit\u300D\uFF08".concat(process.cwd(), "\uFF09"));
|
|
55
|
+
reject(new Error("\u5F53\u524D\u76EE\u5F55\u4E0D\u53EF\u6267\u884C\u300Cinit\u300D(".concat(process.cwd(), ")")));
|
|
56
|
+
}
|
|
57
|
+
_b.label = 1;
|
|
58
|
+
case 1:
|
|
59
|
+
_b.trys.push([1, 5, , 6]);
|
|
60
|
+
_a = opts === null || opts === void 0 ? void 0 : opts.argsCmd, template = _a.template, name_1 = _a.name;
|
|
61
|
+
printer_1.printer.info("\u6B63\u5728\u521B\u5EFA\u4EE5\u300C".concat(template, "\u300D\u4E3A\u6A21\u677F\u7684\u9879\u76EE\u300C").concat(name_1, "\u300D..."));
|
|
62
|
+
zipPath = "".concat(path_1.default.join(__dirname, "../../statics/".concat(template, ".zip")));
|
|
63
|
+
targetPath = "".concat(path_1.default.join(opts.rootDir, "./".concat(name_1)));
|
|
64
|
+
return [4 /*yield*/, (0, fileUtils_1.unzip)(zipPath, targetPath)];
|
|
65
|
+
case 2:
|
|
66
|
+
_b.sent();
|
|
67
|
+
printer_1.printer.info('创建完成!');
|
|
68
|
+
printer_1.printer.info("\u521D\u59CB\u5316...");
|
|
69
|
+
return [4 /*yield*/, (0, childProcess_1.execPromise)("which npm ", {}, false)];
|
|
70
|
+
case 3:
|
|
71
|
+
c = _b.sent();
|
|
72
|
+
return [4 /*yield*/, (0, childProcess_1.forkPromise)("".concat(path_1.default.resolve(c, '../npm')), ['i'], {
|
|
73
|
+
cwd: path_1.default.resolve(targetPath, './'),
|
|
74
|
+
})];
|
|
75
|
+
case 4:
|
|
76
|
+
_b.sent();
|
|
77
|
+
printer_1.printer.info('初始化完成!');
|
|
78
|
+
resolve(true);
|
|
79
|
+
return [3 /*break*/, 6];
|
|
80
|
+
case 5:
|
|
81
|
+
err_1 = _b.sent();
|
|
82
|
+
reject(err_1);
|
|
83
|
+
return [3 /*break*/, 6];
|
|
84
|
+
case 6: return [2 /*return*/];
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}); })];
|
|
88
|
+
});
|
|
89
|
+
}); };
|
|
90
|
+
exports.default = fun;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var fun = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
+
return __generator(this, function (_a) {
|
|
41
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
42
|
+
resolve(true);
|
|
43
|
+
})];
|
|
44
|
+
});
|
|
45
|
+
}); };
|
|
46
|
+
exports.default = fun;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var fun = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
+
return __generator(this, function (_a) {
|
|
41
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
42
|
+
resolve(true);
|
|
43
|
+
})];
|
|
44
|
+
});
|
|
45
|
+
}); };
|
|
46
|
+
exports.default = fun;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContextModel = void 0;
|
|
4
|
+
var ContextModel = /** @class */ (function () {
|
|
5
|
+
function ContextModel() {
|
|
6
|
+
this.arrInstall = [];
|
|
7
|
+
this.arrDownload = [];
|
|
8
|
+
this.wpConfig = null;
|
|
9
|
+
this.pipeConfig = [];
|
|
10
|
+
this.argsProcess = [];
|
|
11
|
+
this.rootDir = './';
|
|
12
|
+
this.argsInjection = [];
|
|
13
|
+
this.argsCmd = {};
|
|
14
|
+
this.cmd = '';
|
|
15
|
+
this.proxy = '';
|
|
16
|
+
this.config = null;
|
|
17
|
+
this.debug = false;
|
|
18
|
+
}
|
|
19
|
+
return ContextModel;
|
|
20
|
+
}());
|
|
21
|
+
exports.ContextModel = ContextModel;
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.forkPromise = exports.spawnPromise = exports.execPromise = void 0;
|
|
40
|
+
var _a = require('child_process'), spawn = _a.spawn, exec = _a.exec, fork = _a.fork;
|
|
41
|
+
var execPromise = function (cmd, opts, isLog) {
|
|
42
|
+
if (opts === void 0) { opts = {}; }
|
|
43
|
+
if (isLog === void 0) { isLog = true; }
|
|
44
|
+
return new Promise(function (resolve, reject) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
var ls = exec(cmd, opts);
|
|
47
|
+
var result = '';
|
|
48
|
+
var err = '';
|
|
49
|
+
(_a = ls.stdout) === null || _a === void 0 ? void 0 : _a.on('data', function (data) {
|
|
50
|
+
result += data.toString();
|
|
51
|
+
if (isLog) {
|
|
52
|
+
console.log(result);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
(_b = ls.stderr) === null || _b === void 0 ? void 0 : _b.on('data', function (data) {
|
|
56
|
+
err += data.toString();
|
|
57
|
+
if (isLog) {
|
|
58
|
+
console.log(err);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
ls.on('error', function (err2) {
|
|
62
|
+
err += err2.toString();
|
|
63
|
+
reject(err);
|
|
64
|
+
});
|
|
65
|
+
ls.on('close', function (code) {
|
|
66
|
+
if (code == 0)
|
|
67
|
+
resolve(result);
|
|
68
|
+
else
|
|
69
|
+
reject(result);
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
exports.execPromise = execPromise;
|
|
74
|
+
var spawnPromise = function (cmd, args, opts, isLog) {
|
|
75
|
+
if (args === void 0) { args = []; }
|
|
76
|
+
if (opts === void 0) { opts = {}; }
|
|
77
|
+
if (isLog === void 0) { isLog = true; }
|
|
78
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
79
|
+
return __generator(this, function (_a) {
|
|
80
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
81
|
+
var ls = spawn(cmd, args, opts);
|
|
82
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.stdio) !== 'inherit') {
|
|
83
|
+
if (isLog) {
|
|
84
|
+
ls.stdout.pipe(process.stdout);
|
|
85
|
+
}
|
|
86
|
+
var result_1 = '';
|
|
87
|
+
ls.stdout.on('data', function (data) {
|
|
88
|
+
result_1 = data.toString();
|
|
89
|
+
});
|
|
90
|
+
ls.stderr.on('data', function (data) {
|
|
91
|
+
result_1 = data.toString();
|
|
92
|
+
});
|
|
93
|
+
ls.on('error', function (err) {
|
|
94
|
+
result_1 = err.toString();
|
|
95
|
+
});
|
|
96
|
+
ls.on('close', function (code) {
|
|
97
|
+
if (code == 0)
|
|
98
|
+
resolve(result_1);
|
|
99
|
+
else
|
|
100
|
+
reject(result_1);
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
})];
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
};
|
|
107
|
+
exports.spawnPromise = spawnPromise;
|
|
108
|
+
var forkPromise = function (cmd, args, opts, messageCallBack) {
|
|
109
|
+
if (args === void 0) { args = []; }
|
|
110
|
+
if (opts === void 0) { opts = {}; }
|
|
111
|
+
if (messageCallBack === void 0) { messageCallBack = null; }
|
|
112
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
113
|
+
return __generator(this, function (_a) {
|
|
114
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
115
|
+
var ls = fork("".concat(cmd), args, opts);
|
|
116
|
+
var result = '';
|
|
117
|
+
ls.on('message', function (m) {
|
|
118
|
+
messageCallBack && messageCallBack(m);
|
|
119
|
+
});
|
|
120
|
+
ls.on('error', function (err) {
|
|
121
|
+
result = err.toString();
|
|
122
|
+
});
|
|
123
|
+
ls.on('close', function (code) {
|
|
124
|
+
if (code == 0)
|
|
125
|
+
resolve(result);
|
|
126
|
+
else
|
|
127
|
+
reject(result);
|
|
128
|
+
});
|
|
129
|
+
return ls;
|
|
130
|
+
})];
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
exports.forkPromise = forkPromise;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.env = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* 环境变量工具类
|
|
6
|
+
*/
|
|
7
|
+
exports.env = {
|
|
8
|
+
/**
|
|
9
|
+
* 获取当前环境
|
|
10
|
+
*/
|
|
11
|
+
get currentEnv() {
|
|
12
|
+
return process.env.REACT_APP_ENV || process.env.NODE_ENV;
|
|
13
|
+
},
|
|
14
|
+
/**
|
|
15
|
+
* 是否为开发环境
|
|
16
|
+
*/
|
|
17
|
+
get isDev() {
|
|
18
|
+
return this.currentEnv === 'development';
|
|
19
|
+
},
|
|
20
|
+
/**
|
|
21
|
+
* 是否为生产环境
|
|
22
|
+
*/
|
|
23
|
+
get isProd() {
|
|
24
|
+
return this.currentEnv === 'production';
|
|
25
|
+
},
|
|
26
|
+
/**
|
|
27
|
+
* 是否为测试环境
|
|
28
|
+
*/
|
|
29
|
+
get isTest() {
|
|
30
|
+
return this.currentEnv === 'test';
|
|
31
|
+
},
|
|
32
|
+
/**
|
|
33
|
+
* 获取 API URL
|
|
34
|
+
*/
|
|
35
|
+
get apiUrl() {
|
|
36
|
+
return process.env.REACT_APP_API_URL;
|
|
37
|
+
},
|
|
38
|
+
/**
|
|
39
|
+
* 获取 API 超时时间
|
|
40
|
+
*/
|
|
41
|
+
get apiTimeout() {
|
|
42
|
+
return parseInt(process.env.REACT_APP_API_TIMEOUT || '30000', 10);
|
|
43
|
+
},
|
|
44
|
+
/**
|
|
45
|
+
* 获取应用版本
|
|
46
|
+
*/
|
|
47
|
+
get version() {
|
|
48
|
+
return process.env.REACT_APP_VERSION;
|
|
49
|
+
},
|
|
50
|
+
/**
|
|
51
|
+
* 获取构建时间
|
|
52
|
+
*/
|
|
53
|
+
get buildTime() {
|
|
54
|
+
return process.env.REACT_APP_BUILD_TIME;
|
|
55
|
+
},
|
|
56
|
+
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.unzip = exports.download = void 0;
|
|
43
|
+
/* eslint-disable no-async-promise-executor */
|
|
44
|
+
var printer_1 = require("./printer");
|
|
45
|
+
var extract_zip_1 = __importDefault(require("extract-zip"));
|
|
46
|
+
// 下载参数
|
|
47
|
+
var http = require('http');
|
|
48
|
+
var fs = require('fs');
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
50
|
+
var downFlag = false;
|
|
51
|
+
var printer = printer_1.printer;
|
|
52
|
+
var download = function (url, dir, fileName) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
|
+
return __generator(this, function (_a) {
|
|
54
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
55
|
+
printer.info("\u5F00\u59CB\u4E0B\u8F7D: ".concat(url).concat(fileName));
|
|
56
|
+
var req = http.request(url + fileName, function (res) {
|
|
57
|
+
var contentLength = parseInt(res.headers['content-length'] ? res.headers['content-length'] : '');
|
|
58
|
+
var downLength = 0;
|
|
59
|
+
var out = fs.createWriteStream("".concat(dir, "/").concat(fileName));
|
|
60
|
+
res.on('data', function (chunk) {
|
|
61
|
+
downLength += chunk.length;
|
|
62
|
+
var progress = Math.floor((downLength * 100) / contentLength);
|
|
63
|
+
var str = "\u4E0B\u8F7D\u8FDB\u5EA6\uFF1A".concat(progress, "%");
|
|
64
|
+
printer.data(str);
|
|
65
|
+
// 写文件
|
|
66
|
+
out.write(chunk, function () { });
|
|
67
|
+
});
|
|
68
|
+
res.on('end', function () {
|
|
69
|
+
downFlag = false;
|
|
70
|
+
if (isNaN(contentLength)) {
|
|
71
|
+
printer.error('下载异常');
|
|
72
|
+
reject(false);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (downLength < contentLength) {
|
|
76
|
+
printer.error('下载异常');
|
|
77
|
+
reject(false);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
req.end();
|
|
81
|
+
resolve(true);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
req.on('error', function () {
|
|
85
|
+
printer.error("download error: ".concat(url));
|
|
86
|
+
reject(false);
|
|
87
|
+
});
|
|
88
|
+
req.end();
|
|
89
|
+
})];
|
|
90
|
+
});
|
|
91
|
+
}); };
|
|
92
|
+
exports.download = download;
|
|
93
|
+
var unzip = function (zip_path, taget_path) { return __awaiter(void 0, void 0, void 0, function () {
|
|
94
|
+
return __generator(this, function (_a) {
|
|
95
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(void 0, void 0, void 0, function () {
|
|
96
|
+
return __generator(this, function (_a) {
|
|
97
|
+
switch (_a.label) {
|
|
98
|
+
case 0:
|
|
99
|
+
// 判断压缩文件是否存在
|
|
100
|
+
if (!fs.existsSync(zip_path)) {
|
|
101
|
+
printer.error('unzip error');
|
|
102
|
+
process.exit(1);
|
|
103
|
+
}
|
|
104
|
+
if (!!fs.existsSync(taget_path)) return [3 /*break*/, 2];
|
|
105
|
+
return [4 /*yield*/, fs.mkdirSync(taget_path)];
|
|
106
|
+
case 1:
|
|
107
|
+
_a.sent();
|
|
108
|
+
_a.label = 2;
|
|
109
|
+
case 2:
|
|
110
|
+
(0, extract_zip_1.default)(zip_path, { dir: taget_path }).then(function () {
|
|
111
|
+
resolve(true);
|
|
112
|
+
}, function (err) {
|
|
113
|
+
reject(err);
|
|
114
|
+
});
|
|
115
|
+
return [2 /*return*/];
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
}); })];
|
|
119
|
+
});
|
|
120
|
+
}); };
|
|
121
|
+
exports.unzip = unzip;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatNode = void 0;
|
|
4
|
+
var colors = {
|
|
5
|
+
start: '\x1b[36m',
|
|
6
|
+
success: '\x1b[32m',
|
|
7
|
+
error: '\x1b[31m',
|
|
8
|
+
info: '\x1b[34m',
|
|
9
|
+
reset: '\x1b[0m', // reset
|
|
10
|
+
};
|
|
11
|
+
var icons = {
|
|
12
|
+
start: '🚀',
|
|
13
|
+
success: '✅',
|
|
14
|
+
error: '❌',
|
|
15
|
+
info: 'ℹ️',
|
|
16
|
+
};
|
|
17
|
+
var formatNode = function (_a) {
|
|
18
|
+
var type = _a.type, title = _a.title, content = _a.content;
|
|
19
|
+
var color = colors[type];
|
|
20
|
+
var icon = icons[type];
|
|
21
|
+
return "".concat(color).concat(icon, " ").concat(title).concat(content ? "\n".concat(content) : '').concat(colors.reset);
|
|
22
|
+
};
|
|
23
|
+
exports.formatNode = formatNode;
|