const gulp = require('gulp'), clean = require('gulp-clean'), path = require('path'), zip = require('gulp-zip').default; const NAME = path.basename(__dirname); // Clean Tasks gulp.task('clean-package', () => { return gulp.src(`${NAME}.zip`, { read: false, allowEmpty: true, }).pipe(clean()); }); gulp.task( 'clean', gulp.series( 'clean-package' ) ); // Package Tasks gulp.task('package-compress', () => { return gulp.src([ 'assets/**/*', 'inc/**/*', 'lib/**/*', 'vendor/**/*', 'LICENSE', `${NAME}.php`, 'readme.txt' ], { base: './', encoding: false, }) .pipe(zip(`${NAME}.zip`)) .pipe(gulp.dest('./')); }); gulp.task( 'package', gulp.series( 'clean', 'package-compress' ) ); // Default Tasks gulp.task( 'default', gulp.series( 'clean', 'package' ) );