-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
76 lines (65 loc) · 2.36 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
var elixir = require('laravel-elixir'),
liveReload = require('gulp-livereload'),
clean = require('rimraf'),
gulp = require('gulp');
var config = {
assets_path: "./resources/assets",
build_path: "./public/build"
};
config.bower_path = config.assets_path+"/../bower_components";
config.build_path_js = config.build_path+"/js";
config.build_vendor_path_js = config.build_path_js+"/vendor";
config.vendor_path_js = [
config.bower_path+"/jquery/dist/jquery.min.js",
config.bower_path+"/bootstrap/dist/js/bootstrap.min.js",
config.bower_path+"/angular/angular.min.js",
config.bower_path+"/angular-route/angular-route.min.js",
config.bower_path+"/angular-resource/angular-resource.min.js",
config.bower_path+"/angular-animate/angular-animate.min.js",
config.bower_path+"/angular-messages/angular-messages.min.js",
config.bower_path+"/angular-bootstrap/ui-bootstrap.min.js",
config.bower_path+"/angular-strap/dist/modules/navbar.min.js",
];
config.build_path_css = config.build_path+"/css";
config.build_vendor_path_css = config.build_path_css+"/vendor";
config.vendor_path_css = [
config.bower_path+"/bootstrap/dist/css/bootstrap.min.css",
config.bower_path+"/bootstrap/dist/css/bootstrap-theme.min.css",
];
gulp.task("copy-styles", function(){
gulp.src([
config.assets_path+"/css/**/*.css"
])
.pipe(gulp.dest(config.build_path_css))
.pipe(liveReload());
gulp.src(config.vendor_path_css)
.pipe(gulp.dest(config.build_vendor_path_css))
.pipe(liveReload());
});
gulp.task("copy-scripts", function(){
gulp.src([
config.assets_path+"/js/**/*.js"
])
.pipe(gulp.dest(config.build_path_js))
.pipe(liveReload());
gulp.src(config.vendor_path_js)
.pipe(gulp.dest(config.build_vendor_path_js))
.pipe(liveReload());
});
gulp.task("clean-build-folder", function(){
clean.sync(config.build_path);
});
gulp.task("default", ["clean-build-folder"], function(){
elixir(function(mix){
mix.styles(config.vendor_path_css.concat([config.assets_path+"/css/**/*.css"]),
"public/css/all.css", config.assets_path);
mix.scripts(config.vendor_path_js.concat([config.assets_path+"/js/**/*.js"]),
"public/js/all.js", config.assets_path);
mix.version(["js/all.js", "css/all.css"]);
});
});
gulp.task("watch-dev", ["clean-build-folder"], function(){
liveReload.listen();
gulp.start("copy-styles", "copy-scripts");
gulp.watch(config.assets_path+"/**", ["copy-style", "copy-script"]);
});