rollup-plugin-closure-compile
Version:
Rollup plugin that uses the up-to-date JS version of Closure Compiler to minify your code. Works with sourcemaps
45 lines (41 loc) • 1.13 kB
JavaScript
/*
Based on code here: https://github.com/camelaissani/rollup-plugin-closure-compiler-js/blob/master/src/index.js
*/
var colors = {
red: process.env.NODE_DISABLE_COLORS ? '' : '\x1b[31m',
yellow: process.env.NODE_DISABLE_COLORS ? '' : '\x1b[33m',
normal: process.env.NODE_DISABLE_COLORS ? '' : '\x1b[0m'
}
function loopMsgs (arr, color) {
function logMsg (msg) {
console.log(colors[color] + msg + colors.normal)
}
arr.forEach(function (msg) {
if (!msg.file && (msg.lineNo < 0 || !msg.lineNo)) {
logMsg(msg.type)
} else {
logMsg(msg.file + ':' + msg.lineNo + ' (' + msg.type + ')')
}
logMsg(' ' + msg.description)
})
}
export default function (output) {
if (
output.warnings &&
Array.isArray(output.warnings) &&
output.warnings.length > 0
) {
loopMsgs(output.warnings, 'yellow')
}
if (
output.errors &&
Array.isArray(output.errors) &&
output.errors.length > 0
) {
// console.log(JSON.stringify(output.errors))
loopMsgs(output.errors, 'red')
return true
} else {
return false
}
}