mirror of
https://github.com/tenrok/OverlayScrollbars.git
synced 2026-05-17 09:49:39 +03:00
75 lines
2.1 KiB
JavaScript
75 lines
2.1 KiB
JavaScript
const fs = require('fs');
|
|
const sh = require('shelljs');
|
|
const chalk = require('chalk');
|
|
const gulp = require('gulp');
|
|
const uglify = require('uglify-js');
|
|
const csso = require('csso');
|
|
|
|
const uglifyFiles = [
|
|
{
|
|
src: './js/OverlayScrollbars.js',
|
|
dest: './js/OverlayScrollbars.min.js',
|
|
},
|
|
{
|
|
src: './js/jquery.overlayScrollbars.js',
|
|
dest: './js/jquery.overlayScrollbars.min.js',
|
|
}
|
|
];
|
|
const cssoFiles = [
|
|
{
|
|
src: './css/OverlayScrollbars.css',
|
|
dest: './css/OverlayScrollbars.min.css',
|
|
}
|
|
];
|
|
|
|
sh.echo(chalk.cyanBright('Start building:'));
|
|
|
|
gulp.task('uglify', function (done) {
|
|
uglifyFiles.forEach((file) => {
|
|
if (sh.test('-f', file.src)) {
|
|
sh.echo(chalk.yellowBright('uglify: ') + chalk.greenBright(`${file.src} → ${file.dest}`));
|
|
sh.ShellString(uglify.minify(fs.readFileSync(file.src, 'utf-8'), {
|
|
ie8: true,
|
|
compress: {
|
|
ie8: true
|
|
},
|
|
mangle: {
|
|
ie8: true,
|
|
properties: {
|
|
'regex': /^_/
|
|
}
|
|
},
|
|
output: {
|
|
ie8: true,
|
|
beautify: false,
|
|
comments: /@license|@preserve|^!/,
|
|
indent_level: 4,
|
|
indent_start: 0,
|
|
quote_style: 0
|
|
}
|
|
}).code).to(file.dest);
|
|
}
|
|
else {
|
|
sh.echo(chalk.redBright(`${file.src} not found!`));
|
|
}
|
|
});
|
|
done();
|
|
});
|
|
|
|
gulp.task('csso', function (done) {
|
|
cssoFiles.forEach((file) => {
|
|
if (sh.test('-f', file.src)) {
|
|
sh.echo(chalk.yellowBright('csso: ') + chalk.greenBright(`${file.src} → ${file.dest}`));
|
|
sh.ShellString(csso.minify(fs.readFileSync(file.src, 'utf-8'), {
|
|
restructure: false,
|
|
comments: 'first-exclamation'
|
|
}).css).to(file.dest);
|
|
}
|
|
else {
|
|
sh.echo(chalk.redBright(`${file.src} not found!`));
|
|
}
|
|
});
|
|
done();
|
|
});
|
|
|
|
gulp.parallel('uglify', 'csso')(); |