0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-02-02 12:28:54 -05:00

feat: upgrade to gulp 4.x on frontend build

This commit is contained in:
Andrey Antukh 2019-05-31 13:50:55 +02:00
parent ade7abbd57
commit 4b14e02692
3 changed files with 37 additions and 2970 deletions

View file

@ -1,16 +1,14 @@
const gulp = require("gulp"); const gulp = require("gulp");
const runseq = require('run-sequence');
const scss = require("gulp-sass"); const scss = require("gulp-sass");
const plumber = require("gulp-plumber"); // const plumber = require("gulp-plumber");
const autoprefixer = require('gulp-autoprefixer'); const autoprefixer = require('gulp-autoprefixer');
const watch = require("gulp-watch"); // const watch = require("gulp-watch");
const cssmin = require("gulp-cssmin"); // const cssmin = require("gulp-cssmin");
const rimraf = require("rimraf"); const rimraf = require("rimraf");
const mustache = require("gulp-mustache"); const mustache = require("gulp-mustache");
const rename = require("gulp-rename"); const rename = require("gulp-rename");
const gulpif = require("gulp-if"); const gulpif = require("gulp-if");
const gzip = require("gulp-gzip"); const gzip = require("gulp-gzip");
const brotli = require("gulp-brotli");
const paths = {}; const paths = {};
paths.app = "./resources/"; paths.app = "./resources/";
@ -55,10 +53,10 @@ function scssPipeline(options) {
const output = options.output; const output = options.output;
return gulp.src(input) return gulp.src(input)
.pipe(plumber()) // .pipe(plumber())
.pipe(scss({style: "expanded"})) .pipe(scss({style: "expanded"}))
.pipe(makeAutoprefixer()) .pipe(makeAutoprefixer())
.pipe(gulpif(isProduction, cssmin())) // .pipe(gulpif(isProduction, cssmin()))
.pipe(gulp.dest(output)); .pipe(gulp.dest(output));
}; };
} }
@ -73,7 +71,7 @@ gulp.task("scss:view", scssPipeline({
output: paths.output + "css/" output: paths.output + "css/"
})); }));
gulp.task("scss", ["scss:main", "scss:view"]); gulp.task("scss", gulp.parallel("scss:main", "scss:view"));
// Templates // Templates
@ -112,15 +110,19 @@ gulp.task("template:view", templatePipeline({
csspath: "/css/view.css" csspath: "/css/view.css"
})); }));
gulp.task("template", ["template:view", gulp.task("template", gulp.parallel("template:view", "template:main"));
"template:main"]);
// Entry Point // Entry Point
gulp.task("default", ["scss", "template"], function () { gulp.task("watch:main", function() {
gulp.watch(paths.scss, ["scss"]); gulp.watch(paths.scss, gulp.task("scss"));
}); });
gulp.task("watch", gulp.series(
gulp.parallel("scss", "template"),
gulp.task("watch:main")
));
/*********************************************** /***********************************************
* Production * Production
***********************************************/ ***********************************************/
@ -145,8 +147,7 @@ gulp.task("dist:template:view", templatePipeline({
csspath: "/css/view.css" csspath: "/css/view.css"
})); }));
gulp.task("dist:template", ["dist:template:view", gulp.task("dist:template", gulp.parallel("dist:template:view", "dist:template:main"));
"dist:template:main"]);
// Styles // Styles
@ -160,8 +161,7 @@ gulp.task("dist:scss:view", scssPipeline({
output: paths.dist + "css/" output: paths.dist + "css/"
})); }));
gulp.task("dist:scss", ["dist:scss:main", gulp.task("dist:scss", gulp.parallel("dist:scss:main", "dist:scss:view"));
"dist:scss:view"]);
// Copy // Copy
@ -176,8 +176,7 @@ gulp.task("dist:copy:images", function() {
}); });
gulp.task("dist:copy", ["dist:copy:fonts", gulp.task("dist:copy", gulp.parallel("dist:copy:fonts", "dist:copy:images"));
"dist:copy:images"]);
// GZip // GZip
@ -187,18 +186,14 @@ gulp.task("dist:gzip", function() {
.pipe(gulp.dest(paths.dist)); .pipe(gulp.dest(paths.dist));
}); });
gulp.task("dist:brotli", function() {
return gulp.src(`${paths.dist}**/!(*.gz|*.br|*.jpg|*.png)`)
.pipe(brotli.compress({quality: 10}))
.pipe(gulp.dest(paths.dist));
});
// Entry Point // Entry Point
gulp.task("dist", function(next) { gulp.task("dist", gulp.series(
runseq(["dist:clean"], gulp.task("dist:clean"),
["dist:template", "dist:scss", "dist:copy"], gulp.parallel(
//["dist:gzip", "dist:brotli"], gulp.task("dist:template"),
next); gulp.task("dist:scss"),
}); gulp.task("dist:copy")
)
));

File diff suppressed because it is too large Load diff

View file

@ -18,22 +18,19 @@
"test-build": "PATH=./scripts:$PATH ./scripts/build" "test-build": "PATH=./scripts:$PATH ./scripts/build"
}, },
"devDependencies": { "devDependencies": {
"gulp": "3.9.1", "gulp": "4.0.2",
"gulp-autoprefixer": "3.1.1", "gulp-autoprefixer": "^6.1.0",
"gulp-brotli": "1.2.0", "gulp-css-base64": "^1.3.4",
"gulp-css-base64": "1.3.4", "gulp-gzip": "^1.4.2",
"gulp-cssmin": "0.1.7", "gulp-if": "^2.0.2",
"gulp-gzip": "1.4.0", "gulp-mustache": "^2.3.0",
"gulp-if": "2.0.2", "gulp-plumber": "^1.2.1",
"gulp-mustache": "2.3.0", "gulp-rename": "^1.4.0",
"gulp-plumber": "1.1.0", "gulp-sass": "^4.0.2",
"gulp-rename": "1.2.2", "gulp-watch": "^5.0.1",
"gulp-sass": "3.1.0", "rimraf": "^2.6.3"
"gulp-watch": "4.3.11",
"rimraf": "2.6.1",
"run-sequence": "1.2.2"
}, },
"dependencies": { "dependencies": {
"source-map-support": "0.4.11" "source-map-support": "^0.5.12"
} }
} }