2022-11-18 20:45:13 +00:00
|
|
|
const { src, dest, watch } = require('gulp');
|
|
|
|
const sass = require('gulp-sass')(require('sass'));
|
2022-11-18 22:35:12 +00:00
|
|
|
const browserify = require('browserify');
|
|
|
|
const Babelify = require('babelify');
|
|
|
|
const source = require('vinyl-source-stream');
|
|
|
|
const buffer = require('vinyl-buffer');
|
|
|
|
const uglify = require('gulp-uglify');
|
|
|
|
|
|
|
|
|
2022-11-18 20:45:13 +00:00
|
|
|
|
|
|
|
function styles() {
|
|
|
|
return src('src/styles/main.scss').pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError)).pipe(dest('dist'));
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2022-11-18 22:35:12 +00:00
|
|
|
function scripts () {
|
|
|
|
return browserify('src/scripts/app.js').transform(Babelify.configure({presets: ['@babel/preset-env'],})).bundle().pipe(source('bundle.js')).pipe(buffer()).pipe(uglify()).pipe(dest('dist'));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2022-11-18 20:45:13 +00:00
|
|
|
function sentinel () {
|
2022-11-18 22:35:12 +00:00
|
|
|
watch('src/styles/**/*.scss', {ignoreInitial: false}, styles);
|
|
|
|
watch('src/scripts/**/*.js', {ignoreInitial: false}, scripts);
|
2022-11-18 20:45:13 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
exports.sentinel = sentinel;
|