/
gulpfile.js
30 lines (26 loc) · 926 Bytes
/
gulpfile.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
(function () {
var SCRIPTS = {
'dev': 'npm run dev',
'dtos': 'npm run dtos',
'webpack-build': 'npm run build',
'webpack-build-prod': 'npm run build-prod',
'webpack-build-vendor': 'npm run build-vendor',
'publish': 'npm run publish',
'tests-run': 'npm run test',
'tests-watch': 'npm run test-watch',
'tests-coverage': 'npm run test-coverage'
};
var gulp = require('gulp');
var exec = require('child_process').exec;
function runScript(script, done) {
process.env.FORCE_COLOR = 1;
var proc = exec(script + (script.startsWith("npm") ? " --silent" : ""));
proc.stdout.pipe(process.stdout);
proc.stderr.pipe(process.stderr);
proc.on('exit', () => done());
}
// Tasks
Object.keys(SCRIPTS).forEach(name => {
gulp.task(name, done => runScript(SCRIPTS[name], done));
});
})();