MCPcopy Create free account
hub / github.com/code-pushup/cli / lintResultsToAudits

Function lintResultsToAudits

packages/plugin-eslint/src/lib/runner/transform.ts:25–45  ·  view source on GitHub ↗
({
  results,
  ruleOptionsPerFile,
}: LinterOutput)

Source from the content-addressed store, hash-verified

23}
24
25export function lintResultsToAudits({
26 results,
27 ruleOptionsPerFile,
28}: LinterOutput): AuditOutput[] {
29 const issuesPerAudit = results
30 .flatMap(({ messages, filePath }) =>
31 messages.map((message): LintIssue => ({ ...message, filePath })),
32 )
33 .reduce<Record<string, LintIssue[]>>((acc, issue) => {
34 const { ruleId, message, filePath } = issue;
35 if (!ruleId) {
36 logger.warn(`ESLint core error - ${message} (file: ${filePath})`);
37 return acc;
38 }
39 const options = ruleOptionsPerFile[filePath]?.[ruleId] ?? [];
40 const auditSlug = ruleIdToSlug(ruleId, options);
41 return { ...acc, [auditSlug]: [...(acc[auditSlug] ?? []), issue] };
42 }, {});
43
44 return Object.entries(issuesPerAudit).map(entry => toAudit(...entry));
45}
46
47function toAudit(slug: string, issues: LintIssue[]): AuditOutput {
48 const auditIssues = issues.map(convertIssue);

Callers 2

createRunnerFunctionFunction · 0.85

Calls 3

ruleIdToSlugFunction · 0.85
toAuditFunction · 0.85
warnMethod · 0.80

Tested by

no test coverage detected