Есть вариант с обьединение плагинов
import gulp from 'gulp';
import php2html from 'gulp-php2html';
import phpinc from 'php-include-html';
import htmlmin from 'gulp-htmlmin';
import uncss from 'gulp-uncss';
export function newBuildHTML() {
return gulp
.src(['app/buf/success.php', 'app/buf/index.php'])
.pipe(phpinc({ verbose: true }))
.pipe(php2html())
.pipe(htmlmin({ collapseWhitespace: true, removeComments: true }))
.pipe(gulp.dest('app/buf'));
}
export function newStylesIndex() {
return gulp
.src('./app/scss/style.scss')
.pipe(scss({ outputStyle: 'compressed' }))
.pipe(concat('style.min.css'))
.pipe(
uncss({
html: ['./app/buf/index.html'],
ignore: [
'.open',
'.is-open',
'.opened',
'.close',
'.show',
'.hide',
'.active',
'.d-none',
'.сompleted',
'.visible',
'.checked',
/\.js\-.*/,
],
})
)
.pipe(autoprefixer())
.pipe(gulp.dest('app/buf/css'));
}
export const buildAssembly = gulp.series( newBuildHTML, newStylesIndex);
Если будете использовать Gulp, то разделяйте эти функции и запускайте одна за другой, ибо первая функция асинхронная и она может не успеть выдать фаил до запуска второй функции, тоэтому разбиваем на 2 функции и ждем return