MCUT_Supervisor/N4JS/Arena/H/demo/global/tasks/fonts.js
2025-03-26 10:38:33 +08:00

58 lines
1.4 KiB
JavaScript

import gulp from 'gulp';
import sass from 'gulp-sass';
import postcss from 'gulp-postcss';
import size from 'gulp-size';
import config from '../config';
import minify from 'gulp-clean-css';
import rename from 'gulp-rename';
import gulpif from 'gulp-if';
import notify from 'gulp-notify';
import del from 'del';
import notifier from 'node-notifier';
// FONTS
// ------------------
gulp.task('fonts', () => {
return gulp
.src(`${config.fonts.source}/*/*.scss`)
.pipe(
sass({
precision: 10, // https://github.com/sass/sass/issues/1122
includePaths: config.styles.include,
})
)
.pipe(postcss())
.pipe(size({gzip: true, showFiles: true}))
.pipe(gulp.dest(`${config.fonts.build}`))
.pipe(minify())
.pipe(rename({
extname: '.min.css'
}))
.pipe(size({gzip: true, showFiles: true}))
.pipe(gulp.dest(`${config.fonts.build}`))
.pipe(
gulpif(
config.enable.notify,
notify({
title: config.notify.title,
message: 'Fonts task complete',
onLast: true,
})
)
);
});
// Clean fonts files
gulp.task('clean:fonts', (done) => {
return del([`${config.fonts.build}/**/*.css`]).then(() => {
if (config.enable.notify) {
notifier.notify({
title: config.notify.title,
message: 'Clean fonts task complete',
});
}
done();
});
});