Files
ogre-alert/gulpfile.js
2025-07-22 11:09:28 -05:00

85 lines
1.3 KiB
JavaScript

const gulp = require('gulp'),
clean = require('gulp-clean'),
postcss = require('gulp-postcss'),
cssnano = require('cssnano'),
sass = require('gulp-sass')(require('sass')),
zip = require('gulp-zip').default;
// Clean Tasks
gulp.task('clean-style', () => {
return gulp.src('assets/css/*.css', {
read: false,
allowEmpty: true,
}).pipe(clean());
});
gulp.task('clean-package', () => {
return gulp.src('ogrealert.zip', {
read: false,
allowEmpty: true,
}).pipe(clean());
});
gulp.task(
'clean',
gulp.series(
'clean-style',
'clean-package'
)
);
// Compile Tasks
gulp.task('compile-style', () => {
return gulp.src([
'assets/sass/*.scss',
])
.pipe(sass().on('error', sass.logError))
.pipe(postcss(cssnano()))
.pipe(gulp.dest('./assets/css/'));
});
gulp.task(
'compile',
gulp.series(
'compile-style'
)
);
// Package Tasks
gulp.task('package-compress', () => {
return gulp.src([
'assets/css/*',
'assets/js/*',
'assets/*.png',
'inc/**/*',
'lib/**/*',
'templates/**/*',
'ogrealert.php',
'readme.txt'
], { base: './' })
.pipe(zip('ogrealert.zip'))
.pipe(gulp.dest('./'));
});
gulp.task(
'package',
gulp.series(
'clean',
'compile',
'package-compress'
)
);
// Default Tasks
gulp.task(
'default',
gulp.series(
'clean',
'compile'
)
);