Make watch task work with new Gulp API

Gulp changed its API in version 4.0. The watch
task was not updated to the new format when we
moved to this version.

This moves the watch task to the new format.
This commit is contained in:
Tom Byers
2019-04-24 13:27:26 +01:00
parent 4ba1015c64
commit 47be667590

View File

@@ -5,7 +5,7 @@
// 1. LIBRARIES
// - - - - - - - - - - - - - - -
const { src, pipe, dest, series, parallel } = require('gulp');
const { src, pipe, dest, series, parallel, watch } = require('gulp');
const stylish = require('jshint-stylish');
const plugins = {};
@@ -142,14 +142,26 @@ const images = () => {
};
// Watch for changes and re-run tasks
const watchForChanges = () => {
return watch(paths.src + 'javascripts/**/*', ['javascripts'])
.watch(paths.src + 'stylesheets/**/*', ['sass'])
.watch(paths.src + 'images/**/*', ['images'])
.watch('gulpfile.js', ['default']);
const watchFiles = {
javascripts: (cb) => {
watch([paths.src + 'javascripts/**/*'], javascripts);
cb();
},
sass: (cb) => {
watch([paths.src + 'stylesheets/**/*'], sass);
cb();
},
images: (cb) => {
watch([paths.src + 'images/**/*'], images);
cb();
},
self: (cb) => {
watch(['gulpfile.js'], defaultTask);
cb();
}
};
const lint = {
'sass': () => {
return src([
@@ -171,6 +183,7 @@ const lint = {
}
};
// Default: compile everything
const defaultTask = parallel(
series(
@@ -188,6 +201,16 @@ const defaultTask = parallel(
)
);
// Watch for changes and re-run tasks
const watchForChanges = parallel(
watchFiles.javascripts,
watchFiles.sass,
watchFiles.images,
watchFiles.self
);
exports.default = defaultTask;
exports.lint = series(lint.sass, lint.js);