-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathindex.js
executable file
·55 lines (48 loc) · 1.53 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env node
const shell = require("shelljs");
const colors = require("colors");
const jsTask = require("./tasks/javascript");
const iosTask = require("./tasks/ios");
const androidTask = require("./tasks/android");
const nodeModulesTask = require("./tasks/modules");
const podsTask = require("./tasks/pods");
const jestTask = require("./tasks/jest");
const PKG = require("./package.json");
const program = require("commander");
/**
* Color theme
*/
colors.setTheme({
javascript: "yellow",
ios: "cyan",
android: "green",
modules: "blue",
pods: "magenta",
jest: "magenta"
});
/**
* ShellJs configuration
*/
shell.config.verbose = true;
program
.version(PKG.version, "-v, --version")
.option("-o, --ios", "Clear iOS")
.option("-a, --android", "Clear Android")
.option("-j, --javascript", "Clear Javascript")
.option("-m, --modules", "Clear and install fresh node modules")
.option("-p, --pods", "Clear and install fresh pods")
.option("-c, --jest", "Clear jest cache")
.option("--all", "Clear everything")
.option("--no-install", "Disable node modules & pods installation")
.parse(process.argv);
if (process.argv.length === 2) {
console.log("You must specify one argument.");
console.log("For help, use --help");
}
const { ios, android, javascript, modules, pods, jest, all, install } = program;
if (all || javascript) jsTask();
if (all || ios) iosTask();
if (all || android) androidTask();
if (all || modules) nodeModulesTask({ install });
if (all || pods) podsTask({ install });
if (all || jest) jestTask();