-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
115 lines (109 loc) · 5.34 KB
/
gulpfile.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
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
var gulp = require('gulp');
var gulpif = require('gulp-if');
var urlAdjuster = require('gulp-css-url-adjuster');
var concat = require('gulp-concat');
var concatCss = require('gulp-concat-css');
var csso = require('gulp-csso');
var uglify = require('gulp-uglify');
var rev = require('gulp-rev');
var copy = require('copy');
var args = require('yargs')
.default('production',false)
.alias('p','production')
.argv;
var isProduction = args.production;
// Ajustando path
gulp.task("css-adjust:adminlte-plugin-icheck",function(){
return gulp.src('resources/assets/bower_components/AdminLTE/plugins/iCheck/flat/blue.css')
.pipe(urlAdjuster({
prepend: 'img/'
}))
.pipe(gulp.dest('resources/assets/adjusted'));
});
gulp.task("css-adjust:imgareaselect-animated",function(){
return gulp.src('resources/assets/plugins/imgareaselect/imgareaselect-animated.css')
.pipe(urlAdjuster({
replace: [ "../", ""]
}))
.pipe(gulp.dest('resources/assets/adjusted'));
});
gulp.task("css-adjust",["css-adjust:adminlte-plugin-icheck","css-adjust:imgareaselect-animated"]);
// Concatenando CSS
gulp.task("styles:admin",["css-adjust"],function(){
var src = [
"resources/assets/bower_components/AdminLTE/bootstrap/css/bootstrap.css",
"resources/assets/bower_components/AdminLTE/dist/css/skins/skin-blue.css",
"resources/assets/bower_components/AdminLTE/plugins/datepicker/datepicker3.css",
"resources/assets/bower_components/AdminLTE/plugins/timepicker/bootstrap-timepicker.min.css",
"resources/assets/bower_components/AdminLTE/plugins/select2/select2.min.css",
"resources/assets/bower_components/AdminLTE/dist/css/AdminLTE.css",
"resources/assets/adjusted/blue.css",
"resources/assets/adjusted/imgareaselect-animated.css",
"resources/assets/plugins/dropzone/dropzone.css",
"resources/assets/admin/app.css"
];
return gulp.src(src)
.pipe(concatCss("all.css",{rebaseUrls : false}))
.pipe(gulpif(isProduction,csso()))
.pipe(gulp.dest('resources/assets/merged/admin'));
});
gulp.task('styles',["styles:admin"]);
// Concatenando JS
gulp.task('scripts:admin', function() {
var src = [
"resources/assets/bower_components/AdminLTE/plugins/jQuery/jQuery-2.2.0.min.js",
"resources/assets/bower_components/AdminLTE/bootstrap/js/bootstrap.min.js",
"resources/assets/bower_components/AdminLTE/plugins/slimScroll/jquery.slimscroll.min.js",
"resources/assets/bower_components/AdminLTE/plugins/iCheck/icheck.min.js",
"resources/assets/bower_components/AdminLTE/plugins/datepicker/bootstrap-datepicker.js",
"resources/assets/bower_components/AdminLTE/plugins/datepicker/locales/bootstrap-datepicker.pt-BR.js",
"resources/assets/bower_components/AdminLTE/plugins/timepicker/bootstrap-timepicker.js",
"resources/assets/bower_components/AdminLTE/plugins/input-mask/jquery.inputmask.js",
"resources/assets/bower_components/AdminLTE/plugins/input-mask/jquery.inputmask.extensions.js",
"resources/assets/bower_components/AdminLTE/plugins/input-mask/jquery.inputmask.date.extensions.js",
"resources/assets/bower_components/AdminLTE/plugins/select2/select2.full.js",
"resources/assets/bower_components/AdminLTE/plugins/chartjs/Chart.js",
"resources/assets/plugins/bootbox/bootbox.min.js",
"resources/assets/plugins/dropzone/dropzone.js",
"resources/assets/plugins/imgareaselect/jquery.imgareaselect.min.js",
"resources/assets/plugins/jquery-ui/jquery-ui.min.js",
"resources/assets/plugins/loader/loader.js",
"resources/assets/plugins/moment/moment.min.js",
"resources/assets/bower_components/AdminLTE/dist/js/app.js",
"resources/assets/admin/app.js"
];
return gulp.src(src)
.pipe(concat('all.js'))
.pipe(gulpif(isProduction,uglify()))
.pipe(gulp.dest('resources/assets/merged/admin'));
});
gulp.task('scripts:login', function() {
var src = [
"resources/assets/bower_components/AdminLTE/plugins/jQuery/jQuery-2.2.0.min.js",
"resources/assets/bower_components/AdminLTE/bootstrap/js/bootstrap.min.js",
"resources/assets/bower_components/AdminLTE/plugins/iCheck/icheck.min.js"
];
return gulp.src(src)
.pipe(concat('login.js'))
.pipe(gulpif(isProduction,uglify()))
.pipe(gulp.dest('resources/assets/merged/admin'));
});
gulp.task('scripts',["scripts:admin","scripts:login"]);
gulp.task('images', function () {
copy('resources/assets/bower_components/AdminLTE/bootstrap/fonts/*', 'public/build/fonts',function(){});
copy('resources/assets/plugins/imgareaselect/img/*', 'public/build/admin/img',function(){});
copy('resources/assets/bower_components/AdminLTE/plugins/iCheck/flat/*', 'public/build/admin/img',function(){});
});
gulp.task('version',["styles","scripts"] ,function () {
var src = [
"resources/assets/merged/admin/all.css",
"resources/assets/merged/admin/all.js",
"resources/assets/merged/admin/login.js"
];
return gulp.src(src,{ base: "resources/assets/merged" })
.pipe(rev())
.pipe(gulp.dest('public/build'))
.pipe(rev.manifest())
.pipe(gulp.dest('public/build'));
});
gulp.task('default',["css-adjust","styles","scripts","images","version"]);