UNPKG

1.84 kBPlain TextView Raw
1import * as yargs from "yargs";
2import {build} from "./commands/build";
3import {localUpdate} from "./commands/localUpdate";
4import {publish} from "./commands/publish";
5
6yargs
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;