forked from ChromeGaming/GameSphere
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGruntfile.js
88 lines (86 loc) · 2.33 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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
module.exports = function(grunt) {
grunt.initConfig({
clean: {
build: {
src: ['build/*', '!build/.gitignore', '!build/index.min.html']
}
},
uglify: {
build: {
options: {
mangle: true,
compress:true
},
files: {
'build/game.min.js': ['build/game.concat.js']
}
}
},
processhtml: {
build: {
options: {
customBlockTypes: ['include-script-file.js'],
process: true
},
files: {
'build/index.min.html': ['src/index.html']
}
}
},
htmlmin: {
build: {
options: {
removeComments: true,
collapseWhitespace: true
},
files: {
'build/index.min.html': 'build/index.min.html'
}
}
},
concat: {
build: {
src: ['src/js/game.js', 'src/**/*.js'],
dest: 'build/game.concat.js',
},
},
cssmin: {
minify: {
files: {
'build/style.min.css': ['src/css/**/*.css']
}
}
},
compress: {
main: {
options: {
archive: 'build/game.zip'
},
files: [
{src: ['build/*'], dest: 'build/'}
]
}
},
copy: {
main: {
expand: true,
cwd: 'src/images/',
src: '**/*',
dest: 'build/images/'
},
}
});
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-htmlmin');
grunt.loadNpmTasks('grunt-processhtml');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks('grunt-contrib-compress');
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.registerTask(
'build',
'Compiles all assets to the build directory',
['concat', 'uglify', 'cssmin', 'processhtml', 'htmlmin', 'clean', 'copy']
);
};