-
Notifications
You must be signed in to change notification settings - Fork 0
/
Gruntfile.js
70 lines (61 loc) · 2.04 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
module.exports = function(grunt) {
var appGruntConfig = grunt.file.readJSON('grunt/config/appGruntConfig.json');
grunt.initConfig({
concat:{
dist:{
src: [
appGruntConfig.path.common,
appGruntConfig.path.initFile,
appGruntConfig.path.modules,
appGruntConfig.path.Ender
],
dest: appGruntConfig.path.destination
}
},
uglify: {
dist:{
files:{
'Torn_City_Mosh_Mods.user.js': [appGruntConfig.path.destination]
}
}
},
jshint: {
files: [
'Gruntfile.js',
'<%= config.path.modules %>/*.js'
],
options: {
globals: {
jQuery: true
}
}
}
});
grunt.registerTask('addUserScript','Adds required user.js string to built file', function() {
var pkg = grunt.file.readJSON('package.json');
var userModFile = grunt.file.read(appGruntConfig.path.userModFile);
userModFile = userModFile.replace(/;version;/g,pkg.version).replace(/;description;/g,pkg.description);
var builtFile = grunt.file.read(appGruntConfig.path.destination);
grunt.file.write(appGruntConfig.path.destination,userModFile +'\n\r'+ builtFile);
grunt.log.writeln('File ' + appGruntConfig.path.destination + ' user scripted');
});
grunt.registerTask('stamp','Stamps version number at the end of the file', function() {
var pkg = grunt.file.readJSON('package.json');
var builtFile = grunt.file.read(appGruntConfig.path.destination);
var stamp = '\n\n/*\n * '+pkg.name + '\n * v'+ pkg.version+'\n * '+grunt.template.today("yyyy-mm-dd")+'\n */' + '\n' + 'console.log("TC - Easy Mode v'+pkg.version+'");';
var stampedFile = builtFile +' '+ stamp;
grunt.file.write(appGruntConfig.path.destination,stampedFile);
grunt.log.writeln('File ' + appGruntConfig.path.destination + ' stamped.');
});
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('default', ['jshint']);
grunt.registerTask('build',[
'concat',
'uglify',
'stamp',
'addUserScript'
]);
};