-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.babel.js
44 lines (39 loc) · 1.31 KB
/
gulpfile.babel.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
import pkg from "gulp";
const { src, dest, watch, series, parallel } = pkg;
import dartSass from "sass";
import gulpSass from "gulp-sass";
const sass = gulpSass(dartSass);
import prefix from "gulp-autoprefixer";
import cleanCss from "gulp-clean-css";
import terser from "gulp-terser";
import gulp from "gulp";
import imagemin from "gulp-imagemin";
//compile, prefix, and min scss
function compilescss() {
return src("src/scss/*.scss") // change to your source directory
.pipe(sass())
.pipe(prefix("last 2 versions"))
.pipe(cleanCss())
.pipe(dest("dist/css")); // change to your final/public directory
}
// minify js
function jsmin() {
return src("src/js/*.js") // change to your source directory
.pipe(terser())
.pipe(dest("dist/js")); // change to your final/public directory
}
//minimize images
function minimizeImages() {
return gulp
.src("src/assets/images/*") // change to your source directory
.pipe(imagemin())
.pipe(gulp.dest("dist/assets/images")); // change to your final/public directory
}
//watchtask
function watchTask() {
watch("src/scss/**/*.scss", compilescss); // change to your source directory
watch("src/js/*.js", jsmin); // change to your source directory
}
// Default Gulp task
export const dev = series(compilescss, jsmin, minimizeImages, watchTask);
export default dev;