terminal.css/scripts/utils/build-fn.js
2019-01-25 16:51:21 +01:00

50 lines
1.2 KiB
JavaScript

const path = require('path')
const fs = require('fs')
const mkdirp = require('mkdirp');
function run({
sourceFile,
distFolder,
docsFolder
}) {
const autoprefixer = require('autoprefixer')({
browsers: [
'>1%',
'last 4 versions',
'Firefox ESR',
'not ie < 9',
],
flexbox: 'no-2009'
});
const postcss = require('postcss');
const CleanCSS = require('clean-css');
const css = fs.readFileSync(sourceFile, 'utf8');
mkdirp(distFolder, function (err) {
if (err) {
throw e
} else {
postcss([ autoprefixer ]).process(css, { from: sourceFile, to: path.resolve(distFolder, 'terminal.css') }).then(function (result) {
result.warnings().forEach(function (warn) {
console.warn(warn.toString());
process.exit(1)
});
const options = { };
const output = new CleanCSS(options).minify(result.css);
// copy to docs
fs.writeFileSync(path.resolve(docsFolder, 'terminal.min.css'), output.styles , 'utf8')
// copy to dist
fs.writeFileSync(path.resolve(distFolder, 'terminal.min.css'), output.styles , 'utf8')
fs.writeFileSync(path.resolve(distFolder, 'terminal.css'), result.css, 'utf8')
});
}
});
}
module.exports = {
run
}