-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathgulpfile.js
More file actions
45 lines (40 loc) · 1.1 KB
/
gulpfile.js
File metadata and controls
45 lines (40 loc) · 1.1 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
const { series, src, dest } = require("gulp");
const babel = require("gulp-babel");
const concat = require("gulp-concat");
const decomment = require("gulp-decomment");
const del = require("del");
const minify = require("gulp-minify");
const plumber = require("gulp-plumber");
function jsBuild(done) {
return src("./src/multi-select.js")
.pipe(plumber())
.pipe(concat("multi-select.js"))
.pipe(
babel({
plugins: ["@babel/plugin-proposal-class-properties", "@babel/plugin-proposal-private-methods"],
presets: [
[
"@babel/env",
{
targets: [">= 0.5%", "ie 11"],
},
],
],
})
)
.pipe(decomment({ trim: true, safe: true }))
.pipe(dest("./dist"))
.pipe(dest("./tmp/"));
}
function jsMin(done) {
const file = "./tmp/multi-select.js";
return src(file)
.pipe(plumber())
.pipe(minify({ preserveComments: "some" }))
.pipe(dest("./dist"))
.pipe(dest("./tmp"));
}
function clean(done) {
return del("./tmp", { force: true });
}
exports.default = series(jsBuild, jsMin, clean);