-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.js
42 lines (37 loc) · 1.2 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
const gulp = require("gulp");
const postcss = require("gulp-postcss");
const sourcemaps = require("gulp-sourcemaps");
const autoprefixer = require("autoprefixer");
const postcssCustomProperties = require("postcss-custom-properties");
const cssnano = require("cssnano");
const imagemin = require("gulp-imagemin");
gulp.task("handleCssFile", gulp.series(function() {
return gulp
.src("src/index.css")
.pipe(sourcemaps.init())
.pipe(postcss([autoprefixer(), postcssCustomProperties(), cssnano()]))
.pipe(sourcemaps.write("."))
.pipe(gulp.dest("./build"));
}));
gulp.task("handleHtmlFile", gulp.series(function() {
return gulp.src("src/index.html").pipe(gulp.dest("build/"));
}));
gulp.task("handleImages", gulp.series(function() {
return gulp
.src("src/images/*")
.pipe(imagemin())
.pipe(gulp.dest("./build/images"));
}));
gulp.task("copyRemainingFiles", gulp.series(function() {
return gulp
.src(["src/favicons/**/*", "src/manifest.json", "src/privacy/**", "src/android-privacy-policy.html"], {
base: "src"
})
.pipe(gulp.dest("./build"));
}));
gulp.task("default", gulp.parallel([
"handleCssFile",
"handleHtmlFile",
"handleImages",
"copyRemainingFiles"
]));