You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
982 B
47 lines
982 B
'use strict';
|
|
|
|
const chalk = require('chalk');
|
|
const path = require('path');
|
|
|
|
/**
|
|
* @param {string} fromValue
|
|
* @return {string}
|
|
*/
|
|
function logFrom(fromValue) {
|
|
if (fromValue.startsWith('<')) return fromValue;
|
|
|
|
return path.relative(process.cwd(), fromValue).split(path.sep).join('/');
|
|
}
|
|
|
|
/**
|
|
* @param {import('stylelint').StylelintDisableOptionsReport} report
|
|
* @returns {string}
|
|
*/
|
|
module.exports = function (report) {
|
|
if (!report) return '';
|
|
|
|
let output = '';
|
|
|
|
report.forEach((sourceReport) => {
|
|
if (!sourceReport.ranges || sourceReport.ranges.length === 0) {
|
|
return;
|
|
}
|
|
|
|
output += '\n';
|
|
// eslint-disable-next-line prefer-template
|
|
output += chalk.underline(logFrom(sourceReport.source || '')) + '\n';
|
|
|
|
sourceReport.ranges.forEach((range) => {
|
|
output += `unused rule: ${range.unusedRule}, start line: ${range.start}`;
|
|
|
|
if (range.end !== undefined) {
|
|
output += `, end line: ${range.end}`;
|
|
}
|
|
|
|
output += '\n';
|
|
});
|
|
});
|
|
|
|
return output;
|
|
};
|