const gulp = require('gulp');
const uglify = require('gulp-uglify-es').default;
const cleanCSS = require('gulp-clean-css');
const rename = require('gulp-rename');
const sourcemaps = require('gulp-sourcemaps');
// 压缩JS文件,并建立map映射
gulp.task('minify-js', async function () {
await gulp.src(['public/assets/js/**/*.js', '!public/assets/js/**/*.min.js'])
.pipe(rename({extname: '.min.js'}))
.pipe(sourcemaps.init())
.pipe(uglify())
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('public/assets/js/'));
});
// 压缩CSS文件,并建立map映射
gulp.task('minify-css', async function () {
await gulp.src(['public/assets/css/**/*.css', '!public/assets/css/**/*.min.css'])
.pipe(rename({extname: '.min.css'}))
.pipe(sourcemaps.init())
.pipe(cleanCSS({compatibility: 'ie8'}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('public/assets/css/'));
});
gulp.task('minify-assets', gulp.parallel('minify-js', 'minify-css'), done => {
done();
});