UNPKG

@code-pushup/eslint-plugin

Version:

Code PushUp plugin for detecting problems in source code using ESLint.📋

32 lines • 1.64 kB
import { formatAsciiTable, logger, pluralizeToken } from '@code-pushup/utils'; import { formatMetaLog } from './format.js'; import { groupsFromCustomConfig, groupsFromRuleCategories, groupsFromRuleTypes, } from './groups.js'; import { listRules } from './rules.js'; import { ruleToAudit } from './transform.js'; export { ruleIdToSlug } from './hash.js'; export { detectConfigVersion } from './versions/index.js'; export { formatMetaLog }; export async function listAuditsAndGroups(targets, customGroups) { const rules = await listRules(targets); const audits = rules.map(ruleToAudit); logger.info(formatMetaLog(`Found ${pluralizeToken('rule', rules.length)} in total for ${pluralizeToken('target', targets.length)}, mapped to audits`)); const resolvedTypeGroups = groupsFromRuleTypes(rules); const resolvedCategoryGroups = groupsFromRuleCategories(rules); const resolvedCustomGroups = customGroups ? groupsFromCustomConfig(rules, customGroups) : []; const groups = [ ...resolvedTypeGroups, ...resolvedCategoryGroups, ...resolvedCustomGroups, ]; logger.info(formatMetaLog(`Created ${pluralizeToken('group', groups.length)} (${resolvedTypeGroups.length} from meta.type, ${resolvedCategoryGroups.length} from meta.docs.category, ${resolvedCustomGroups.length} from custom groups)`)); logger.debug(formatMetaLog(formatAsciiTable({ rows: groups.map(group => [ `• ${group.title}`, pluralizeToken('audit', group.refs.length), ]), }, { borderless: true }))); return { audits, groups }; } //# sourceMappingURL=list.js.map