-
Notifications
You must be signed in to change notification settings - Fork 107
/
Copy pathGruntfile.js
48 lines (45 loc) · 1.21 KB
/
Gruntfile.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
const appVersion = require("./package.json").version;
module.exports = function (grunt) {
grunt.loadNpmTasks("grunt-ts");
grunt.loadNpmTasks("grunt-webpack");
grunt.loadNpmTasks("grunt-contrib-less");
grunt.loadNpmTasks("grunt-contrib-watch");
grunt.initConfig({
pkg: grunt.file.readJSON("package.json"),
ts: {
server: {
tsconfig: "./server/tsconfig.json"
}
},
webpack: {
options: {
keepalive: false
},
dev: require("./webpack.config.dev"),
prod: require("./webpack.config.prod")
},
less: {
default: {
files: {
["public/css/improved-initiative." + appVersion + ".css"]: [
"lesscss/improved-initiative.less"
]
}
}
},
watch: {
tsserver: {
files: "server/**/*.ts",
tasks: ["ts:server"]
},
lesscss: {
files: "lesscss/**/*.less",
tasks: ["less"]
}
}
});
grunt.registerTask("build_dev", ["webpack:dev", "ts:server", "less"]);
grunt.registerTask("build_min", ["webpack:prod", "ts:server", "less"]);
grunt.registerTask("server_watch", ["ts:server", "watch"]);
grunt.registerTask("default", ["build_dev", "watch"]);
};