Switch to gulp v4.

This commit is contained in:
David Molineus
2018-08-23 15:33:13 +02:00
parent 74c10b652b
commit 22bde573d6
3 changed files with 33 additions and 23 deletions

4
.gitignore vendored
View File

@@ -16,6 +16,10 @@ nbproject/
vendor/ vendor/
composer.lock composer.lock
# Node
/node_modules
package-lock.json
# build # build
build/ build/
build.properties build.properties

View File

@@ -1,4 +1,5 @@
var gulp = require('gulp'); const { series, parallel, src, dest } = require('gulp');
var del = require('del'); var del = require('del');
var rename = require('gulp-rename'); var rename = require('gulp-rename');
var uglify = require('gulp-uglify'); var uglify = require('gulp-uglify');
@@ -29,14 +30,10 @@ var paths = [
dest: 'assets/leaflet-fullscreen', dest: 'assets/leaflet-fullscreen',
css: 'Control.FullScreen.css', css: 'Control.FullScreen.css',
js: 'Control.FullScreen.js' js: 'Control.FullScreen.js'
},
{
dest: 'assets/leaflet-layer-overpass',
css: 'OverPassLayer.css'
} }
]; ];
gulp.task('clear-styles', function() { function clearStyles (cb) {
var i, clear = []; var i, clear = [];
for (i = 0; i < paths.length; i++) { for (i = 0; i < paths.length; i++) {
@@ -46,9 +43,11 @@ gulp.task('clear-styles', function() {
} }
del(clear); del(clear);
});
gulp.task('clear-scripts', function() { cb();
}
function clearScripts (cb) {
var i, clear = []; var i, clear = [];
for (i = 0; i < paths.length; i++) { for (i = 0; i < paths.length; i++) {
@@ -58,45 +57,53 @@ gulp.task('clear-scripts', function() {
} }
del(clear); del(clear);
});
gulp.task('scripts', ['clear-scripts'], function() { cb();
}
const scripts = series(clearScripts, function (cb) {
var i, stream, streams = []; var i, stream, streams = [];
for (i = 0; i < paths.length; i++) { for (i = 0; i < paths.length; i++) {
if (paths[i].js) { if (paths[i].js) {
stream = gulp.src(paths[i].dest + '/' + paths[i].js) stream = src(paths[i].dest + '/' + paths[i].js)
.pipe(rename(function (path) { .pipe(rename(function (path) {
path.basename += '.min'; path.basename += '.min';
})) }))
.pipe(uglify()) .pipe(uglify())
.pipe(gulp.dest(paths[i].dest)); .pipe(dest(paths[i].dest));
streams.push(stream); streams.push(stream);
} }
} }
return merge.call(null, streams); merge.call(null, streams);
cb();
}); });
gulp.task('styles', ['clear-styles'], function() { const styles = series(clearStyles, function (cb) {
var i, stream, streams = []; var i, stream, streams = [];
for (i = 0; i < paths.length; i++) { for (i = 0; i < paths.length; i++) {
if (paths[i].css) { if (paths[i].css) {
stream = gulp.src(paths[i].dest + '/' + paths[i].css) stream = src(paths[i].dest + '/' + paths[i].css)
.pipe(rename(function (path) { .pipe(rename(function (path) {
path.basename += '.min'; path.basename += '.min';
})) }))
.pipe(minifyCss()) .pipe(minifyCss())
.pipe(replace(/url\(([^"][^\)]+)\)/g, 'url(\'$1\')')) .pipe(replace(/url\(([^"][^\)]+)\)/g, 'url(\'$1\')'))
.pipe(gulp.dest(paths[i].dest)); .pipe(dest(paths[i].dest));
streams.push(stream); streams.push(stream);
} }
} }
return merge.call(null, streams); merge.call(null, streams);
});
gulp.task('default', ['scripts', 'styles']); cb();
})
exports.scripts = scripts;
exports.styles = styles;
exports.default = parallel(scripts, styles);

View File

@@ -5,12 +5,11 @@
"main": "gulpfile.js", "main": "gulpfile.js",
"dependencies": { "dependencies": {
"del": "^2.2.2", "del": "^2.2.2",
"gulp": "^3.9.1", "gulp": "^4.0.0",
"gulp-minify-css": "^1.2.4", "gulp-minify-css": "^1.2.4",
"gulp-rename": "^1.2.2", "gulp-rename": "^1.4.0",
"gulp-replace": "^0.5.4", "gulp-replace": "^0.5.4",
"gulp-uglify": "^2.0.0", "gulp-uglify": "^2.0.0",
"gulp-util": "^3.0.7",
"merge-stream": "^1.0.0" "merge-stream": "^1.0.0"
}, },
"devDependencies": {}, "devDependencies": {},