stylelint
Version:
A mighty CSS linter that helps you avoid errors and enforce conventions.
39 lines (31 loc) • 1.11 kB
JavaScript
// NOTICE: This file is generated by Rollup. To modify it,
// please instead edit the ESM counterpart and rebuild with Rollup (npm run build).
;
const calcSeverityCounts = require('./calcSeverityCounts.cjs');
const pluralize = require('../utils/pluralize.cjs');
const preprocessWarnings = require('./preprocessWarnings.cjs');
/**
* @type {import('stylelint').Formatter}
*/
function unixFormatter(results) {
const counts = { error: 0, warning: 0 };
const lines = results.flatMap((result) => {
preprocessWarnings(result);
return result.warnings.map((warning) => {
calcSeverityCounts(warning.severity, counts);
return (
`${result.source}:${warning.line}:${warning.column}: ` +
`${warning.text} [${warning.severity}]`
);
});
});
const total = lines.length;
let output = lines.join('\n');
if (total > 0) {
output += `\n\n${total} ${pluralize('problem', total)}`;
output += ` (${counts.error} ${pluralize('error', counts.error)}`;
output += `, ${counts.warning} ${pluralize('warning', counts.warning)})\n`;
}
return output;
}
module.exports = unixFormatter;