@itera-web/cli 1.1.54

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.
Files changed (61) hide show
  1. package/README.md +56 -0
  2. package/bin/index.js +18 -0
  3. package/dist/commands/app/app-obs.d.ts +14 -0
  4. package/dist/commands/app/app-obs.js +243 -0
  5. package/dist/commands/app/up.d.ts +11 -0
  6. package/dist/commands/app/up.js +103 -0
  7. package/dist/commands/web/buildapp.d.ts +10 -0
  8. package/dist/commands/web/buildapp.js +106 -0
  9. package/dist/commands/web/git.d.ts +3 -0
  10. package/dist/commands/web/git.js +57 -0
  11. package/dist/commands/web/init.d.ts +4 -0
  12. package/dist/commands/web/init.js +129 -0
  13. package/dist/commands/web/packageapp.d.ts +5 -0
  14. package/dist/commands/web/packageapp.js +98 -0
  15. package/dist/commands/web/publish.d.ts +10 -0
  16. package/dist/commands/web/publish.js +104 -0
  17. package/dist/commands/web/pullprojects.d.ts +5 -0
  18. package/dist/commands/web/pullprojects.js +108 -0
  19. package/dist/commands/web/startapp.d.ts +5 -0
  20. package/dist/commands/web/startapp.js +98 -0
  21. package/dist/commands/web/updateprojects.d.ts +17 -0
  22. package/dist/commands/web/updateprojects.js +220 -0
  23. package/dist/config/util.d.ts +14 -0
  24. package/dist/config/util.js +88 -0
  25. package/dist/config/webpack.buildpackage.d.ts +1 -0
  26. package/dist/config/webpack.buildpackage.js +63 -0
  27. package/dist/config/webpack.common.d.ts +1 -0
  28. package/dist/config/webpack.common.js +178 -0
  29. package/dist/config/webpack.dev.d.ts +1 -0
  30. package/dist/config/webpack.dev.js +27 -0
  31. package/dist/config/webpack.pro.d.ts +1 -0
  32. package/dist/config/webpack.pro.js +43 -0
  33. package/dist/plugins/app.exe +0 -0
  34. package/dist/plugins/sortSrciptTag.d.ts +1 -0
  35. package/dist/plugins/sortSrciptTag.js +75 -0
  36. package/dist/plugins/webSocketServer.d.ts +4 -0
  37. package/dist/plugins/webSocketServer.js +53 -0
  38. package/dist/public/git.d.ts +1 -0
  39. package/dist/public/git.js +375 -0
  40. package/dist/public/hook.d.ts +18 -0
  41. package/dist/public/hook.js +93 -0
  42. package/dist/public/log.d.ts +8 -0
  43. package/dist/public/log.js +58 -0
  44. package/dist/public/public.d.ts +19 -0
  45. package/dist/public/public.js +425 -0
  46. package/dist/public/sign.d.ts +2 -0
  47. package/dist/public/sign.js +148 -0
  48. package/dist/public/smartMerge.d.ts +3 -0
  49. package/dist/public/smartMerge.js +31 -0
  50. package/dist/public/update-version.d.ts +2 -0
  51. package/dist/public/update-version.js +130 -0
  52. package/dist/public/upload-obs.d.ts +1 -0
  53. package/dist/public/upload-obs.js +242 -0
  54. package/dist/public/upload-web.d.ts +1 -0
  55. package/dist/public/upload-web.js +154 -0
  56. package/dist/store/index.d.ts +2 -0
  57. package/dist/store/index.js +65 -0
  58. package/dist/store/types.d.ts +53 -0
  59. package/dist/store/types.js +2 -0
  60. package/package.json +110 -0
  61. package/tsconfig.json +30 -0
@@ -0,0 +1,129 @@
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 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["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 (g && (g = 0, op[0] && (_ = 0)), _) 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.handler = exports.builder = exports.describe = exports.command = void 0;
43
+ var child_process_1 = require("child_process");
44
+ var download_git_repo_1 = __importDefault(require("download-git-repo"));
45
+ var fs_1 = __importDefault(require("fs"));
46
+ var inquirer_1 = __importDefault(require("inquirer"));
47
+ var ora_1 = __importDefault(require("ora"));
48
+ var path_1 = __importDefault(require("path"));
49
+ var log_1 = require("../../public/log");
50
+ var public_1 = require("../../public/public");
51
+ exports.command = 'init';
52
+ exports.describe = '初始化项目或组件';
53
+ exports.builder = {};
54
+ var handler = function () { return __awaiter(void 0, void 0, void 0, function () {
55
+ var questions, answers, projectName, targetPath, spinner, templateMap;
56
+ return __generator(this, function (_a) {
57
+ switch (_a.label) {
58
+ case 0: return [4, (0, public_1.onCheckIteraCliVersion)()];
59
+ case 1:
60
+ _a.sent();
61
+ log_1.Console.cyan('描述: 一个基于 yargs 的 CLI,用于快速创建Web项目或Web组件,支持一键发布;同时实现了 Electron 开发到更新的全流程自动化。\n');
62
+ log_1.Console.cyan('Web: 包含拉取模版,本地调试,本地构建,上传GIT,发布到FTP服务器。');
63
+ log_1.Console.cyan('Electron: 包含本地调试,本地构建,electron-forge打包,nsis打包,上传GIT,批量代码签名,Web发布到FTP服务器,更新文件发布到华为云OBS,软件更新(增量更新、全量更新)。');
64
+ log_1.Console.warn('当前脚手架纯个人使用,如有兴趣可以深入研究\n');
65
+ questions = [
66
+ {
67
+ type: 'list',
68
+ name: 'type',
69
+ message: '请选择创建类型:',
70
+ choices: ['项目'],
71
+ },
72
+ {
73
+ type: 'list',
74
+ name: 'template',
75
+ message: '请选择模板:',
76
+ choices: function (ans) {
77
+ return ans.type === '项目' ? ['web-react-template', 'electron-react-template'] : ['component-template'];
78
+ },
79
+ },
80
+ {
81
+ type: 'input',
82
+ name: 'name',
83
+ message: '请输入项目名称:',
84
+ validate: function (input) { return (input ? true : '项目名不能为空'); },
85
+ },
86
+ ];
87
+ return [4, inquirer_1.default.prompt(questions)];
88
+ case 2:
89
+ answers = _a.sent();
90
+ projectName = answers.name;
91
+ targetPath = path_1.default.resolve(process.cwd(), projectName);
92
+ if (fs_1.default.existsSync(targetPath)) {
93
+ log_1.Console.warn("\u76EE\u5F55 ".concat(projectName, " \u5DF2\u5B58\u5728\uFF0C\u8BF7\u66F4\u6362\u540D\u79F0\u6216\u5148\u5220\u9664"));
94
+ process.exit(1);
95
+ }
96
+ spinner = (0, ora_1.default)("\u6B63\u5728\u62C9\u53D6 ".concat(answers.template, " \u6A21\u677F...")).start();
97
+ templateMap = {
98
+ 'web-react-template': 'direct:https://gitee.com/qglove/qg-iterative-react-temp.git',
99
+ 'electron-react-template': 'direct:https://gitee.com/qglove/qg-electron-react-temp.git',
100
+ };
101
+ return [4, new Promise(function (resolve, reject) {
102
+ (0, download_git_repo_1.default)("".concat(templateMap[answers.template], "#master"), projectName, { clone: true }, function (err) {
103
+ if (err) {
104
+ spinner.fail('模板拉取失败');
105
+ reject(err);
106
+ }
107
+ else {
108
+ spinner.succeed('模板拉取成功');
109
+ resolve();
110
+ }
111
+ });
112
+ })];
113
+ case 3:
114
+ _a.sent();
115
+ log_1.Console.cyan('正在安装依赖,请稍候...');
116
+ (0, child_process_1.execSync)('npm install', {
117
+ cwd: targetPath,
118
+ stdio: 'inherit',
119
+ });
120
+ log_1.Console.success('依赖安装完毕,正在启动项目...');
121
+ (0, child_process_1.execSync)('itera-cli serve', {
122
+ cwd: targetPath,
123
+ stdio: 'inherit',
124
+ });
125
+ return [2];
126
+ }
127
+ });
128
+ }); };
129
+ exports.handler = handler;
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { CommandModule } from 'yargs';
3
+ export declare const command = "package";
4
+ export declare const describe = "\u6253\u5305\u7EC4\u4EF6";
5
+ export declare const handler: CommandModule['handler'];
@@ -0,0 +1,98 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ var __generator = (this && this.__generator) || function (thisArg, body) {
24
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
25
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
26
+ function verb(n) { return function (v) { return step([n, v]); }; }
27
+ function step(op) {
28
+ if (f) throw new TypeError("Generator is already executing.");
29
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
30
+ 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;
31
+ if (y = 0, t) op = [op[0] & 2, t.value];
32
+ switch (op[0]) {
33
+ case 0: case 1: t = op; break;
34
+ case 4: _.label++; return { value: op[1], done: false };
35
+ case 5: _.label++; y = op[1]; op = [0]; continue;
36
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
37
+ default:
38
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
39
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
40
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
41
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
42
+ if (t[2]) _.ops.pop();
43
+ _.trys.pop(); continue;
44
+ }
45
+ op = body.call(thisArg, _);
46
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
47
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
48
+ }
49
+ };
50
+ var __importDefault = (this && this.__importDefault) || function (mod) {
51
+ return (mod && mod.__esModule) ? mod : { "default": mod };
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.handler = exports.describe = exports.command = void 0;
55
+ var child_process_1 = require("child_process");
56
+ var path_1 = __importDefault(require("path"));
57
+ var util_1 = __importDefault(require("../../config/util"));
58
+ var log_1 = require("../../public/log");
59
+ var public_1 = require("../../public/public");
60
+ var runtimePath = process.cwd();
61
+ var codePath = __dirname;
62
+ function webpackTask() {
63
+ log_1.Console.cyan('开始打包组件');
64
+ return new Promise(function (resolve) {
65
+ var command = util_1.default.isWin32() ? 'npx.cmd' : 'npx';
66
+ var args = ['webpack', '--config', path_1.default.join(codePath, '../../config/webpack.buildpackage.js')];
67
+ var babelProcess = (0, child_process_1.spawn)(command, args, {
68
+ cwd: runtimePath,
69
+ env: __assign(__assign({}, process.env), { NODE_ENV: 'production', REAP_PATH: 'pro' }),
70
+ shell: true,
71
+ });
72
+ babelProcess.stdout.on('data', function (data) {
73
+ log_1.Console.info(data.toString().trim());
74
+ });
75
+ babelProcess.stderr.on('data', function (data) {
76
+ log_1.Console.warn(data.toString().trim());
77
+ });
78
+ babelProcess.on('close', function () {
79
+ resolve();
80
+ });
81
+ });
82
+ }
83
+ exports.command = 'package';
84
+ exports.describe = '打包组件';
85
+ var handler = function () { return __awaiter(void 0, void 0, void 0, function () {
86
+ return __generator(this, function (_a) {
87
+ switch (_a.label) {
88
+ case 0: return [4, (0, public_1.onCheckIteraCliVersion)()];
89
+ case 1:
90
+ _a.sent();
91
+ return [4, webpackTask()];
92
+ case 2:
93
+ _a.sent();
94
+ return [2];
95
+ }
96
+ });
97
+ }); };
98
+ exports.handler = handler;
@@ -0,0 +1,10 @@
1
+ import { Arguments, CommandBuilder } from 'yargs';
2
+ interface PublishArgs extends Arguments {
3
+ build: boolean;
4
+ upload: boolean;
5
+ }
6
+ export declare const command = "publish";
7
+ export declare const describe = "\u6784\u5EFA\u5E76\u53D1\u5E03\u9879\u76EE";
8
+ export declare const builder: CommandBuilder<{}, PublishArgs>;
9
+ export declare const handler: (argv: PublishArgs) => Promise<void>;
10
+ export {};
@@ -0,0 +1,104 @@
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 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["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 (g && (g = 0, op[0] && (_ = 0)), _) 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.handler = exports.builder = exports.describe = exports.command = void 0;
40
+ var child_process_1 = require("child_process");
41
+ var log_1 = require("../../public/log");
42
+ var public_1 = require("../../public/public");
43
+ var upload_web_1 = require("../../public/upload-web");
44
+ exports.command = 'publish';
45
+ exports.describe = '构建并发布项目';
46
+ var builder = function (yargs) {
47
+ return yargs
48
+ .option('build', {
49
+ describe: '是否只执行构建',
50
+ type: 'boolean',
51
+ default: false,
52
+ })
53
+ .option('upload', {
54
+ describe: '是否执行构建并上传至FTP',
55
+ type: 'boolean',
56
+ default: false,
57
+ })
58
+ .option('del', {
59
+ describe: '是否先删除线上文件再上传',
60
+ type: 'boolean',
61
+ default: false,
62
+ });
63
+ };
64
+ exports.builder = builder;
65
+ var handler = function (argv) { return __awaiter(void 0, void 0, void 0, function () {
66
+ var onlyBuild, doUpload, doDel, err_1;
67
+ return __generator(this, function (_a) {
68
+ switch (_a.label) {
69
+ case 0: return [4, (0, public_1.onCheckIteraCliVersion)()];
70
+ case 1:
71
+ _a.sent();
72
+ onlyBuild = argv.build, doUpload = argv.upload, doDel = argv.del;
73
+ if (!doUpload) return [3, 6];
74
+ _a.label = 2;
75
+ case 2:
76
+ _a.trys.push([2, 4, , 5]);
77
+ return [4, (0, upload_web_1.uploadWeb)(false, !!doDel)];
78
+ case 3:
79
+ _a.sent();
80
+ return [3, 5];
81
+ case 4:
82
+ err_1 = _a.sent();
83
+ log_1.Console.error('上传失败,请检查错误');
84
+ process.exit(1);
85
+ return [3, 5];
86
+ case 5: return [3, 7];
87
+ case 6:
88
+ if (onlyBuild) {
89
+ log_1.Console.cyan('\n正在执行本地构建... \n');
90
+ try {
91
+ (0, child_process_1.execSync)('itera-cli build', { stdio: 'inherit' });
92
+ log_1.Console.success('构建完成 ');
93
+ }
94
+ catch (err) {
95
+ log_1.Console.error('构建失败,请检查错误');
96
+ process.exit(1);
97
+ }
98
+ }
99
+ _a.label = 7;
100
+ case 7: return [2];
101
+ }
102
+ });
103
+ }); };
104
+ exports.handler = handler;
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { CommandModule } from 'yargs';
3
+ export declare const command = "pull-projects";
4
+ export declare const describe = "\u6279\u91CF\u62C9\u53D6\u9879\u76EE";
5
+ export declare const handler: CommandModule['handler'];
@@ -0,0 +1,108 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ var __generator = (this && this.__generator) || function (thisArg, body) {
13
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
14
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
+ function verb(n) { return function (v) { return step([n, v]); }; }
16
+ function step(op) {
17
+ if (f) throw new TypeError("Generator is already executing.");
18
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
19
+ 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;
20
+ if (y = 0, t) op = [op[0] & 2, t.value];
21
+ switch (op[0]) {
22
+ case 0: case 1: t = op; break;
23
+ case 4: _.label++; return { value: op[1], done: false };
24
+ case 5: _.label++; y = op[1]; op = [0]; continue;
25
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
+ default:
27
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
+ if (t[2]) _.ops.pop();
32
+ _.trys.pop(); continue;
33
+ }
34
+ op = body.call(thisArg, _);
35
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
+ }
38
+ };
39
+ var __importDefault = (this && this.__importDefault) || function (mod) {
40
+ return (mod && mod.__esModule) ? mod : { "default": mod };
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.handler = exports.describe = exports.command = void 0;
44
+ var child_process_1 = require("child_process");
45
+ var fs_1 = __importDefault(require("fs"));
46
+ var path_1 = __importDefault(require("path"));
47
+ var log_1 = require("../../public/log");
48
+ var public_1 = require("../../public/public");
49
+ var runtimePath = process.cwd();
50
+ exports.command = 'pull-projects';
51
+ exports.describe = '批量拉取项目';
52
+ var handler = function () { return __awaiter(void 0, void 0, void 0, function () {
53
+ var configPath, defaultConfig, fileContent, config, _i, config_1, project, projectPath, status_1;
54
+ return __generator(this, function (_a) {
55
+ switch (_a.label) {
56
+ case 0: return [4, (0, public_1.onCheckIteraCliVersion)()];
57
+ case 1:
58
+ _a.sent();
59
+ configPath = path_1.default.resolve(runtimePath, 'update_projects_config.js');
60
+ if (!fs_1.default.existsSync(configPath)) {
61
+ log_1.Console.warn('⚠️ 配置文件 [update_projects_config.js] 已初始化,请在 [update_projects_config.js] 内添加项目和需要执行的命令');
62
+ defaultConfig = [
63
+ {
64
+ name: 'D:/Project/项目1根目录',
65
+ commands: [
66
+ 'npm run check',
67
+ 'npm install',
68
+ 'npm run publish',
69
+ 'git add .',
70
+ 'git commit -m "提交描述"',
71
+ 'git push',
72
+ ],
73
+ },
74
+ ];
75
+ fileContent = "module.exports = ".concat(JSON.stringify(defaultConfig, null, 2), ";\n");
76
+ fs_1.default.writeFileSync(configPath, fileContent, 'utf-8');
77
+ process.exit(0);
78
+ }
79
+ config = require(configPath);
80
+ for (_i = 0, config_1 = config; _i < config_1.length; _i++) {
81
+ project = config_1[_i];
82
+ projectPath = path_1.default.resolve(runtimePath, project.name);
83
+ try {
84
+ status_1 = (0, child_process_1.execSync)('git status --porcelain', { cwd: projectPath }).toString().trim();
85
+ if (status_1) {
86
+ log_1.Console.error("\u274C \u9879\u76EE [".concat(project.name, "] \u5B58\u5728\u672A\u63D0\u4EA4\u7684\u5185\u5BB9\uFF0C\u8BF7\u5148\u63D0\u4EA4\u6216\u6682\u5B58\u66F4\u6539: \n").concat(status_1));
87
+ process.exit(1);
88
+ }
89
+ }
90
+ catch (err) {
91
+ log_1.Console.error("\u274C \u65E0\u6CD5\u68C0\u67E5\u9879\u76EE [".concat(project.name, "] \u7684 Git \u72B6\u6001\uFF1A").concat(err.message));
92
+ process.exit(1);
93
+ }
94
+ log_1.Console.cyan("\n\uD83D\uDE80 \u5F00\u59CB\u6267\u884C\u9879\u76EE\u547D\u4EE4: ".concat(project.name));
95
+ log_1.Console.info("\uD83D\uDC49 [".concat(project.name, "] \u6B63\u5728\u6267\u884C\u547D\u4EE4: [git pull]"));
96
+ try {
97
+ (0, child_process_1.execSync)('git pull', { cwd: projectPath, stdio: 'inherit' });
98
+ }
99
+ catch (err) {
100
+ log_1.Console.error("\u274C [".concat(project.name, "] \u6267\u884C [git pull] \u547D\u4EE4\u5931\u8D25: ").concat(err.message));
101
+ process.exit(1);
102
+ }
103
+ }
104
+ return [2];
105
+ }
106
+ });
107
+ }); };
108
+ exports.handler = handler;
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { CommandModule } from 'yargs';
3
+ export declare const command = "serve";
4
+ export declare const describe = "\u672C\u5730\u8FD0\u884C\u9879\u76EE";
5
+ export declare const handler: CommandModule['handler'];
@@ -0,0 +1,98 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ var __generator = (this && this.__generator) || function (thisArg, body) {
24
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
25
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
26
+ function verb(n) { return function (v) { return step([n, v]); }; }
27
+ function step(op) {
28
+ if (f) throw new TypeError("Generator is already executing.");
29
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
30
+ 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;
31
+ if (y = 0, t) op = [op[0] & 2, t.value];
32
+ switch (op[0]) {
33
+ case 0: case 1: t = op; break;
34
+ case 4: _.label++; return { value: op[1], done: false };
35
+ case 5: _.label++; y = op[1]; op = [0]; continue;
36
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
37
+ default:
38
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
39
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
40
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
41
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
42
+ if (t[2]) _.ops.pop();
43
+ _.trys.pop(); continue;
44
+ }
45
+ op = body.call(thisArg, _);
46
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
47
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
48
+ }
49
+ };
50
+ var __importDefault = (this && this.__importDefault) || function (mod) {
51
+ return (mod && mod.__esModule) ? mod : { "default": mod };
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.handler = exports.describe = exports.command = void 0;
55
+ var child_process_1 = require("child_process");
56
+ var path_1 = __importDefault(require("path"));
57
+ var util_1 = __importDefault(require("../../config/util"));
58
+ var log_1 = require("../../public/log");
59
+ var public_1 = require("../../public/public");
60
+ var runtimePath = process.cwd();
61
+ var codePath = __dirname;
62
+ function webpackServiceTask() {
63
+ log_1.Console.cyan('开始运行项目');
64
+ return new Promise(function (resolve) {
65
+ var command = util_1.default.isWin32() ? 'npx.cmd' : 'npx';
66
+ var args = ['webpack-dev-server', '--config', path_1.default.join(codePath, '../../config/webpack.dev.js')];
67
+ var babelProcess = (0, child_process_1.spawn)(command, args, {
68
+ cwd: runtimePath,
69
+ env: __assign(__assign({}, process.env), { NODE_ENV: 'development', REAP_PATH: 'dev' }),
70
+ shell: true,
71
+ });
72
+ babelProcess.stdout.on('data', function (data) {
73
+ log_1.Console.info(data.toString().trim());
74
+ });
75
+ babelProcess.stderr.on('data', function (data) {
76
+ log_1.Console.warn(data.toString().trim());
77
+ });
78
+ babelProcess.on('close', function () {
79
+ resolve();
80
+ });
81
+ });
82
+ }
83
+ exports.command = 'serve';
84
+ exports.describe = '本地运行项目';
85
+ var handler = function () { return __awaiter(void 0, void 0, void 0, function () {
86
+ return __generator(this, function (_a) {
87
+ switch (_a.label) {
88
+ case 0: return [4, (0, public_1.onCheckIteraCliVersion)()];
89
+ case 1:
90
+ _a.sent();
91
+ return [4, webpackServiceTask()];
92
+ case 2:
93
+ _a.sent();
94
+ return [2];
95
+ }
96
+ });
97
+ }); };
98
+ exports.handler = handler;
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+ import { CommandModule } from 'yargs';
3
+ export declare const command = "update-projects";
4
+ export declare const describe = "\u6279\u91CF\u66F4\u65B0\u9879\u76EE\u4F9D\u8D56";
5
+ export declare const builder: {
6
+ parallel: {
7
+ type: string;
8
+ default: boolean;
9
+ describe: string;
10
+ };
11
+ concurrency: {
12
+ type: string;
13
+ default: number;
14
+ describe: string;
15
+ };
16
+ };
17
+ export declare const handler: CommandModule['handler'];