-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathGruntfile.js
79 lines (71 loc) · 2.05 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
module.exports = function (grunt) {
grunt.initConfig({
shell: {
server: { /* Подзадача */
// command: 'bem server -r public_html'
command: 'node server.js'
/* запуск сервера */
}
} /* grunt-shell */
,
fest: {
templates: {
files: [{
expand: true,
cwd: 'templates',
src: '*.xml',
dest: 'public_html/js/tmpl'
}],
options: {
template: function (data) {
return grunt.template.process(
'define(function () { return <%= contents %> ; });',
{data: data}
);
}
}
}
},
sass: {
options: {
sourceMap: false
},
dist: {
files: [
{'public_html/css/main.css': 'public_html/css/main.scss' }
],
}
},
watch: {
fest: {
files: ['templates/*.xml'],
tasks: ['fest'],
options: {
interrupt: true,
atBegin: true
}
},
server: {
files: [
'public_html/js/**/*.js',
'public_html/css/**/*.css'
],
options: {
livereload: true
}
}
},
concurrent: {
target: ['watch', 'shell'],
options: {
logConcurrentOutput: true
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-concurrent');
grunt.loadNpmTasks('grunt-shell');
grunt.loadNpmTasks('grunt-fest');
grunt.loadNpmTasks('grunt-sass');
grunt.registerTask('default', ['concurrent']);
};