-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathgulpfile.js
More file actions
59 lines (48 loc) · 1.46 KB
/
gulpfile.js
File metadata and controls
59 lines (48 loc) · 1.46 KB
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
var plugins = require('gulp-load-plugins')();
var gulp = require('gulp');
var mode = process.env.NODE_ENV;
if (mode !== 'development' && mode !== 'production') {
console.log("NODE_ENV needs to be set to either 'development' or 'production'.");
console.log("Falling back to 'production'");
mode = 'production';
}
var ace = {
folders: {
'development': './node_modules/ace-builds/src/',
'production': './node_modules/ace-builds/src-min/'
},
files: [
'ace.js',
'ext-language_tools.js'
]
}
plugins.help(gulp);
///////////////////////////////////////////////////////////
// Tasks Overview
//
gulp.task("copy", "Copy the files needed for libraries that are not loaded with webpack", cp);
gulp.task("lint", "Lint all typescript files using tslint", lint);
///////////////////////////////////////////////////////////
// Tasks details
//
function cp() {
return gulp.src(ace.files.map(function (file) { return ace.folders[mode] + file; }))
.pipe(plugins.concat('ace-min.js'))
.pipe(gulp.dest('./public/js/'));
}
function lint() {
return gulp.src([
"editor/**/*.ts",
"server/apis/**/*.ts",
"server/config/*.ts",
"server/db/**/*.ts",
"server/server.ts",
"server/resources.ts",
"server/check.ts",
"server/errors/**/*.ts"
])
.pipe(plugins.tslint())
.pipe(plugins.tslint.report("verbose", {
emitError: false
}));
}