UNPKG

2.56 kBJavaScriptView Raw
1"use strict";
2
3var _path = _interopRequireDefault(require("path"));
4
5var _commander = _interopRequireDefault(require("commander"));
6
7var _yeomanEnvironment = _interopRequireDefault(require("yeoman-environment"));
8
9var _package = _interopRequireDefault(require("../package.json"));
10
11var _dotenv = _interopRequireDefault(require("dotenv"));
12
13function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
15_dotenv.default.config({
16 'path': _path.default.join(__dirname, '..', '.env')
17});
18
19const env = _yeomanEnvironment.default.createEnv().register(require.resolve('../lib/commands/start'), 'start').register(require.resolve('../lib/commands/build'), 'build');
20
21_commander.default.version(_package.default.version, '-v, --version');
22
23_commander.default.command('build [cmd]').option('-o, --output [output]', '构建运形态资源,资源输出路径').option('-s, --source [source]', '组件构建路径').option('-m, --mode [mode]', 'webpack构建资源的模式').option('-p, --port [port]', '端口').option('-t, --project-type [projectType]', '项目的类型,支持: 1.layout 2.component(默认)').option('-bs, --build-styled [buildStyled]', '控制是否打入 styled,默认不打入').option('-bnt, --build-ts-from-modules [buildTsFromModules]', '控制是否转译node_modules中的ts代码').option('-cid, --commit-id [commitId]', 'commitId做为文件后缀,实现唯一文件').description('代码构建命令').action((cmd, opts) => {
24 let {
25 output,
26 mode,
27 source,
28 port,
29 projectType,
30 buildStyled,
31 buildTsFromModules,
32 commitId
33 } = opts;
34 env.run(`build ${cmd}`, {
35 output,
36 mode,
37 source,
38 port,
39 projectType,
40 buildStyled,
41 buildTsFromModules,
42 commitId
43 });
44});
45
46_commander.default.command('start').option('-p, --asset_path [asset_path]', 'webpack构建资源的本机路径').option('-s, --source [source]', '组件构建路径').option('-t, --project-type [projectType]', '项目的类型,支持: 1.layout 2.component(默认)').option('-bs, --build-styled [buildStyled]', '控制是否打入 styled,默认不打入').option('-bnt, --build-ts-from-modules [buildTsFromModules]', '控制是否转译node_modules中的ts代码').description('调试模块').action(opts => {
47 let {
48 asset_path,
49 source,
50 projectType,
51 buildStyled,
52 buildTsFromModules
53 } = opts;
54 env.run(`start default`, {
55 asset_path,
56 source,
57 projectType,
58 buildStyled,
59 buildTsFromModules
60 });
61});
62
63_commander.default.parse(process.argv);
\No newline at end of file