@swift-ws/gulp-kit
Version:
A starter kit for automating frontend development using Gulp.js.
32 lines (25 loc) • 1.01 kB
JavaScript
import {gulp, webpack, vinylNamed, gulpForeach} from '../plugins.js';
import {applyReplacements} from '../helpers/applyReplacements.js';
import path, {dirname, resolve} from "path";
export const compileScripts = async () => {
const {config} = await import('../config.js');
const {webpackConfig} = await import('../webpack.config.js');
let stream = gulp.src([
config.src + config.tasks.script.patternSource,
'!' + config.src + config.tasks.script.patternIgnore
]);
stream = stream.pipe(
gulpForeach((stream, file) => {
let dest = path.dirname(file.path).replace(config.src, config.dest);
return stream
.pipe(vinylNamed())
.pipe(webpack(webpackConfig))
.pipe(gulp.dest(dest));
})
);
return stream;
};
export const watchScripts = async () => {
const {config} = await import('../config.js');
gulp.watch(config.src + config.tasks.script.patternSource, compileScripts);
};