forked from tinavas/JumpSeat
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
123 lines (111 loc) · 3.61 KB
/
gulpfile.js
File metadata and controls
123 lines (111 loc) · 3.61 KB
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
// including plugins
var gulp = require('gulp')
, minifyCss = require("gulp-minify-css")
, minifyJs = require("gulp-minify")
, uglify = require("gulp-uglify")
, rename = require("gulp-rename")
, concat = require("gulp-concat");
var cssFiles = ['./assets/css/*.css', '!./assets/css/*.min.css'];
var jsAdminFiles = ['./assets/js/aero/admin/*.js', '!./assets/js/aero/admin/*.min.js'];
var jsUserFiles = ['./assets/js/aero/user/*.js', '!./assets/js/aero/user/*.min.js'];
var jsApiFiles = ['./assets/js/api/*.js', '!./assets/js/api/*.min.js'];
var jsMinAdminFiles = [
'./assets/js/aero/admin/aero-admin.min.js',
'./assets/js/aero/admin/aero-guide.min.js',
'./assets/js/aero/admin/aero-step.min.js',
'./assets/js/aero/admin/aero-pathway.min.js',
'./assets/js/aero/admin/aero-role.min.js',
'./assets/js/aero/admin/aero-picker.min.js',
'./assets/js/aero/admin/aero-quiz.min.js',
'./assets/js/aero/admin/_main.min.js'
];
var jsMinUserFiles = [
'./assets/js/aero/user/aero.min.js',
'./assets/js/aero/user/aero-audit.min.js',
'./assets/js/aero/user/aero-pathway.min.js',
'./assets/js/aero/user/aero-quiz.min.js',
'./assets/js/aero/user/aero-media.min.js',
'./assets/js/aero/user/aero-step.min.js',
'./assets/js/aero/user/aero-tip.min.js',
'./assets/js/aero/user/aero-guide.min.js',
'./assets/js/aero/user/_main.min.js'
];
// Minify CSS Files
gulp.task('minify-css', function () {
gulp.src(cssFiles) // path to your file
.pipe(minifyCss())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest('assets/css'));
});
// Minify admin
gulp.task('minify-admin-js', function () {
gulp.src(jsAdminFiles)
.pipe(uglify())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest('assets/js/aero/admin'));
});
// Minify user
gulp.task('minify-user-js', function () {
gulp.src(jsUserFiles)
.pipe(uglify())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest('assets/js/aero/user'));
});
// Minify api
gulp.task('minify-api-js', function () {
gulp.src(jsApiFiles)
.pipe(uglify())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest('assets/js/api'));
});
// Concat admin
gulp.task('concat-user-js', function () {
gulp.src(jsMinUserFiles)
.pipe(concat('jumpseat.min.js'))
.pipe(gulp.dest('assets/js/aero/user'));
});
// Concat user
gulp.task('concat-admin-js', function () {
gulp.src(jsMinAdminFiles)
.pipe(concat('jumpseat-auth.min.js'))
.pipe(gulp.dest('assets/js/aero/admin'));
});
/**
* Build process
*/
gulp.task('default', function(){
// Min css
gulp.watch("./assets/css/*.css", function(event){
gulp.run('minify-css');
});
// User ugly and concat
gulp.watch("./assets/js/aero/user/*.js", function(event){
gulp.run('gulp minify-user-js');
gulp.run('gulp concat-user-js');
});
// User ugly and concat
gulp.watch("./assets/js/aero/admin/*.js", function(event){
gulp.run('gulp minify-admin-js');
gulp.run('gulp concat-admin-js');
});
// Api ugly
gulp.watch("./assets/js/api/*.js", function(event){
gulp.run('gulp minify-api-js');
});
});
// Development watcher
gulp.task('watch', function () {
gulp.watch(cssFiles, ['minify-css']);
gulp.watch(jsAdminFiles, ['minify-admin-js', 'concat-admin-js']);
gulp.watch(jsUserFiles, ['minify-user-js', 'concat-user-js']);
gulp.watch(jsApiFiles, ['minify-api-js']);
});
// Production build
gulp.task('build', function () {
gulp.run('minify-css');
gulp.run('minify-user-js');
gulp.run('minify-admin-js');
gulp.run('minify-api-js');
gulp.run('concat-user-js');
gulp.run('concat-admin-js');
});