-
Notifications
You must be signed in to change notification settings - Fork 525
/
package-scripts.js
106 lines (105 loc) · 4.35 KB
/
package-scripts.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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
var npsUtils = require("nps-utils");
module.exports = {
scripts: {
server: {
dev: {
ts: "webpack serve --config ./config/webpack/demo/webpack.config.dev-ts.js",
default:
"webpack serve --config ./config/webpack/demo/webpack.config.dev.js --content-base demo/js"
},
hot: "webpack serve --config ./config/webpack/demo/webpack.config.hot.js --inline --hot --content-base demo/js",
test: "webpack serve --config ./config/webpack/webpack.config.test.js"
},
karma: {
ci: "karma start --browsers ChromeHeadlessCustom,Firefox ./config/karma/karma.conf.coverage.js",
cov: "karma start ./config/karma/karma.conf.coverage.js",
watch: "karma start --auto-watch ./config/karma/karma.conf.js",
default: "karma start ./config/karma/karma.conf.js"
},
jest: {
native: "jest --config=jest-native-config.js",
default: "jest --config=jest-native-config.js"
},
test: {
cov: npsUtils.series.nps("build-package-libs", "karma.cov"),
dev: "karma start ./config/karma/karma.conf.dev.js",
watch: npsUtils.series.nps("build-package-libs", "karma.watch"),
default: npsUtils.series.nps("build-package-libs", "karma")
},
storybook: {
server: "start-storybook -p 6006",
default: npsUtils.concurrent.nps("watch", "storybook.server")
},
start: {
ts: npsUtils.concurrent.nps("watch", "server.dev.ts"),
default: npsUtils.concurrent.nps("watch", "server.dev", "server.test")
},
lint: {
src: "lerna exec --stream -- eslint --color --ext .js,.jsx,.ts,.tsx src",
demo: "eslint --color --ext .js,.jsx,.ts,.tsx demo",
docs: "eslint --color --ext .js,.jsx docs",
stories: "eslint --color stories",
test: "eslint --color test",
ts: npsUtils.series.nps("build-package-libs", "compile-ts"),
default: npsUtils.series.nps(
"lint.test",
"lint.stories",
"lint.demo",
"lint.src"
)
},
format: {
default: 'prettier --write "./**/*.{js,jsx,json,ts,tsx}"',
ci: 'prettier --list-different "./**/*.{js,jsx,json,ts,tsx}"'
},
check: {
ci: npsUtils.series.nps(
"format.ci",
"lint",
"build-package-libs",
"build-package-dists",
"karma.ci",
"jest",
"compile-ts"
),
cov: npsUtils.series.nps("lint", "test.cov"),
dev: npsUtils.series.nps("lint", "test.dev"),
default: npsUtils.series.nps("lint", "test")
},
watch: {
es: "lerna exec --parallel -- cross-env BABEL_ENV=es babel src --out-dir es --config-file ../../.babelrc.js --copy-files --watch",
lib: "lerna exec --parallel -- cross-env BABEL_ENV=lib babel src --out-dir lib --config-file ../../.babelrc.js --copy-files --watch",
default: npsUtils.concurrent.nps("watch.es", "watch.lib")
},
clean: {
lib: "rimraf lib",
es: "rimraf es",
dist: "rimraf dist",
default: npsUtils.concurrent.nps("clean.es", "clean.lib", "clean.dist"),
all: "lerna exec --parallel -- nps clean"
},
"compile-ts": "tsc --project tsconfig.json --noEmit",
// Version testing helpers
"lerna-dry-run":
"lerna version --no-git-tag-version --no-push --loglevel silly",
// TODO: organize build scripts once build perf is sorted out
"babel-es": "cross-env BABEL_ENV=es babel src --out-dir es --config-file ../../.babelrc.js --copy-files",
"babel-lib":
"cross-env BABEL_ENV=commonjs babel src --out-dir lib --config-file ../../.babelrc.js --copy-files",
"build-es": npsUtils.series.nps("clean.es", "babel-es"),
"build-lib": npsUtils.series.nps("clean.lib", "babel-lib"),
"build-libs": npsUtils.series.nps("build-lib", "build-es"),
"build-package-libs":
"lerna exec --parallel --ignore victory-native --ignore victory-vendor -- nps build-libs",
"build-dist-dev":
"webpack --bail --config ../../config/webpack/webpack.config.dev.js",
"build-dist-min":
"webpack --bail --config ../../config/webpack/webpack.config.js",
"build-dists": npsUtils.concurrent.nps("build-dist-min", "build-dist-dev"),
"build-dist": npsUtils.series.nps("clean.dist", "build-dists"),
"build-package-dists":
"lerna exec --parallel --ignore victory-native --ignore victory-vendor -- nps build-dists",
bootstrap: "lerna bootstrap",
"link-parent-bin": "link-parent-bin"
}
};