Initial commit
This commit is contained in:
+89
@@ -0,0 +1,89 @@
|
||||
const fs = require('fs'),
|
||||
gulp = require('gulp'),
|
||||
clean = require('gulp-clean'),
|
||||
filter = require('gulp-filter').default,
|
||||
zip = require('gulp-zip').default;
|
||||
|
||||
const PACKAGE = require('./package.json');
|
||||
const NAME = PACKAGE.name.split('/').pop();
|
||||
|
||||
// Clean Tasks
|
||||
|
||||
gulp.task('clean-package-files', (done) => {
|
||||
if (!fs.existsSync('./dist')) return done();
|
||||
return gulp.src(`./dist/${NAME}`, {
|
||||
read: false,
|
||||
allowEmpty: true,
|
||||
}).pipe(clean());
|
||||
});
|
||||
|
||||
gulp.task('clean-package-zip', (done) => {
|
||||
if (!fs.existsSync('./dist')) return done();
|
||||
return gulp.src('./dist/*.zip', {
|
||||
read: false,
|
||||
allowEmpty: true,
|
||||
}).pipe(clean());
|
||||
});
|
||||
|
||||
gulp.task(
|
||||
'clean-package',
|
||||
gulp.series(
|
||||
'clean-package-files',
|
||||
'clean-package-zip'
|
||||
)
|
||||
);
|
||||
|
||||
gulp.task(
|
||||
'clean',
|
||||
gulp.series(
|
||||
'clean-package'
|
||||
)
|
||||
);
|
||||
|
||||
// Package Tasks
|
||||
|
||||
gulp.task('package-copy', () => {
|
||||
return gulp.src([
|
||||
'inc/**/*',
|
||||
'lib/**/*',
|
||||
'vendor/**/*',
|
||||
'LICENSE',
|
||||
`${NAME}.php`,
|
||||
'readme.txt',
|
||||
'!vendor/**/node_modules/**/*',
|
||||
], {
|
||||
base: './',
|
||||
encoding: false,
|
||||
})
|
||||
.pipe(filter((file) => !file.path.includes('/node_modules')))
|
||||
.pipe(gulp.dest(`./dist/${NAME}`));
|
||||
});
|
||||
|
||||
gulp.task('package-compress', () => {
|
||||
return gulp.src(`./dist/${NAME}/**/*`, {
|
||||
base: './dist',
|
||||
encoding: false,
|
||||
})
|
||||
.pipe(zip(`${NAME}.zip`))
|
||||
.pipe(gulp.dest('./dist'));
|
||||
});
|
||||
|
||||
gulp.task(
|
||||
'package',
|
||||
gulp.series(
|
||||
'clean',
|
||||
'package-copy',
|
||||
'package-compress',
|
||||
'clean-package-files'
|
||||
)
|
||||
);
|
||||
|
||||
// Default Tasks
|
||||
|
||||
gulp.task(
|
||||
'default',
|
||||
gulp.series(
|
||||
'clean',
|
||||
'package'
|
||||
)
|
||||
);
|
||||
Reference in New Issue
Block a user