-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
98 lines (86 loc) · 2.14 KB
/
Copy pathgulpfile.js
File metadata and controls
98 lines (86 loc) · 2.14 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
var gulp = require("gulp");
var sass = require("gulp-sass");
var watch = require("gulp-watch");
var concat = require("gulp-concat");
var gulpif = require("gulp-if");
var uglify = require("gulp-uglify");
var cssnano = require("gulp-cssnano");
var plumber = require("gulp-plumber");
var browserSync = require("browser-sync");
var autoprefixer = require("gulp-autoprefixer");
var angularFileSort = require("gulp-angular-filesort");
var paths = {
js: 'src/js/**/*.js',
sass: 'src/sass/**/*.sass',
mainSass: 'src/sass/zttdesignlite.sass',
dist: 'dist/',
src: 'src/',
dev: 'dev/'
};
var autoprefixerOptions = {
browsers: [
'> 1%',
'last 2 versions',
'firefox >= 4',
'safari 7',
'safari 8',
'IE 8',
'IE 9',
'IE 10',
'IE 11'
],
cascade: false
};
function proccessCssTo (location) {
return gulp.src(paths.mainSass)
.pipe(plumber())
.pipe(sass())
.pipe(autoprefixer(autoprefixerOptions))
.pipe(cssnano())
.pipe(gulp.dest(paths[location]));
}
function proccessJsTo (location) {
return gulp.src(paths.js)
.pipe(plumber())
.pipe(angularFileSort())
.pipe(concat("zttdesignlite.js"))
.pipe(gulpif(location === "dist", uglify()))
.pipe(gulp.dest(paths[location]));
}
gulp.task("cssDev", function () {
return proccessCssTo("dev");
});
gulp.task("cssDist", function () {
return proccessCssTo("dist");
});
gulp.task("jsDev", function () {
return proccessJsTo("dev");
});
gulp.task("jsDist", function () {
return proccessJsTo("dist");
});
gulp.task("watch", function () {
watch(paths.js, function () {
gulp.start("jsDev");
});
watch(paths.sass, function () {
gulp.start("cssDev");
});
});
gulp.task('browser', function () {
browserSync.init(paths.src, {
port: '9000',
server: {
baseDir: paths.src,
routes: {
"/dev": "dev"
}
},
socket: {
port: '9000',
domain: 'localhost:9000'
}
});
});
gulp.task("dev", ["cssDev", "jsDev", "watch", "browser"]);
gulp.task("build", ["cssDist", "jsDist"]);