1 | import * as yargs from "yargs";
|
2 | import {build} from "./commands/build";
|
3 | import {localUpdate} from "./commands/localUpdate";
|
4 | import {publish} from "./commands/publish";
|
5 |
|
6 | yargs
|
7 | .version(false)
|
8 | .help("help", "도움말")
|
9 | .alias("help", "h")
|
10 | .command("build", "프로젝트를 빌드합니다.",
|
11 | (cmd) => cmd.version(false)
|
12 | .options({
|
13 | watch: {
|
14 | type: "boolean" as yargs.PositionalOptionsType,
|
15 | describe: "변경을 감지하여 자동으로 다시 빌드합니다.",
|
16 | default: false
|
17 | },
|
18 | env: {
|
19 | describe: "환경변수를 등록합니다.",
|
20 | default: {}
|
21 | },
|
22 | production: {
|
23 | type: "boolean" as yargs.PositionalOptionsType,
|
24 | describe: "배포버전으로 빌드합니다.",
|
25 | default: false
|
26 | }
|
27 | }),
|
28 | (argv) => {
|
29 | Object.assign(process.env, argv.env);
|
30 | eval(`process.env.NODE_ENV = argv.production ? "production" : "development"`);
|
31 | return build(argv as any);
|
32 | }
|
33 | )
|
34 | .command("publish", "배포합니다.",
|
35 | (cmd) => cmd.version(false),
|
36 | () => publish())
|
37 | .command("local-update", "로컬에 있는 simplism 패키지로 의존성 모듈을 덮어씁니다. (고급)",
|
38 | (cmd) => cmd.version(false)
|
39 | .options({
|
40 | watch: {
|
41 | type: "boolean" as yargs.PositionalOptionsType,
|
42 | describe: "변경을 감지하여 자동으로 업데이트합니다.",
|
43 | default: false
|
44 | }
|
45 | }),
|
46 | (argv) => localUpdate(argv as any))
|
47 | .argv;
|