-
Notifications
You must be signed in to change notification settings - Fork 1
/
Gruntfile.js
77 lines (70 loc) · 1.92 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
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
less: {
// compile less files but don't compress
development: {
options: {},
files: {
// target.css file: source.less file
"./css/style.css": "./css/style.less"
}
}
},
postcss: {
options: {
map: {
inline: false, // save all sourcemaps as separate files...
annotation: './css/' // ...to the specified directory
},
processors: [
require('cssgrace'), // IE fallbacks
require('autoprefixer')({
browsers: 'last 3 versions', // add vendor prefixes
remove: false // doesn't strip un-needed prefixes - only use with new code.
}),
require('cssnano')({
zindex: false,
autoprefixer: false
}) // minify the result
]
},
dist: {
src: './css/style.css'
}
},
chokidar: {
options: {
interval: 600,
livereload: true
},
css: {
// Which files to watch (all .less files recursively in the less directory)
files: ['./css/**/*.less'],
tasks: ['less', 'postcss'],
options: {
nospawn: true
}
},
// Page will reload for changes to the following file types too
otherFiles: {
files: ['./**/*.php', './**/*.html', './**/*.htm', '!node_modules/**/*.*'],
tasks: [],
options: {
nospawn: true
}
},
// Force Grunt to restart if the config changes
configFiles: {
files: [ 'Gruntfile.js', 'config/*.js' ],
options: {
reload: true
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-postcss');
grunt.loadNpmTasks('grunt-chokidar');
grunt.registerTask('default', ['chokidar']);
};