UNPKG

refakts

Version:

TypeScript refactoring tool built for AI coding agents to perform precise refactoring operations via command line instead of requiring complete code regeneration.

46 lines 1.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createGroup = exports.groupByType = exports.formatIssue = void 0; const plugin_loader_1 = require("./plugin-loader"); const formatIssue = (issue) => issue.file && issue.line ? `${issue.file}:${issue.line} - ${issue.message}` : issue.message; exports.formatIssue = formatIssue; const groupByType = (issues) => issues.reduce((groups, issue) => { const key = getGroupKey(issue); return groups.set(key, [...(groups.get(key) || []), issue]); }, new Map()); exports.groupByType = groupByType; const createGroup = (type, issues) => { const groupDef = getGroupDefinition(type); return { ...groupDef, actionGuidance: `👧🏻💬 ${groupDef.actionGuidance}`, violations: issues.map(exports.formatIssue) }; }; exports.createGroup = createGroup; const getGroupKey = (issue) => { if (issue.type === 'fileSize') return issue.severity === 'critical' ? 'criticalFiles' : 'largeFiles'; if (issue.type === 'functionSize') return issue.severity === 'critical' ? 'criticalFunctions' : 'largeFunctions'; return issue.type; }; const getGroupDefinition = (type) => { const checks = (0, plugin_loader_1.loadQualityChecks)(); for (const check of checks) { if (check.getGroupDefinition) { const groupDef = check.getGroupDefinition(type); if (groupDef) return groupDef; } } return defaultGroup; }; const defaultGroup = { title: 'OTHER ISSUES', description: 'Miscellaneous quality issues detected.', actionGuidance: 'Address these issues as appropriate.' }; //# sourceMappingURL=report-functions.js.map