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.

50 lines 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VariableResultBuilder = void 0; const usage_type_detector_1 = require("./usage-type-detector"); class VariableResultBuilder { constructor() { this.usageTypeDetector = new usage_type_detector_1.UsageTypeDetector(); } buildLocationResult(variableName, declaration, usages) { return { variable: variableName, declaration: this.createLocation(declaration, 'declaration'), usages: usages.map(usage => this.createUsageLocation(usage)) }; } buildNodeResult(variableName, declaration, usages) { return { variable: variableName, declaration, usages: usages.map(usage => ({ node: usage, usageType: this.usageTypeDetector.determineUsageType(usage) })) }; } createLocation(node, kind) { const position = this.getNodePosition(node); return { kind, line: position.line, column: position.column, text: node.getText() }; } createUsageLocation(node) { const location = this.createLocation(node, 'usage'); const usageType = this.usageTypeDetector.determineUsageType(node); return { ...location, usageType }; } getNodePosition(node) { const start = node.getStart(); const sourceFile = node.getSourceFile(); return sourceFile.getLineAndColumnAtPos(start); } } exports.VariableResultBuilder = VariableResultBuilder; //# sourceMappingURL=variable-result-builder.js.map