ntts
Version:
A CLI tool for refactoring an existing NodeJs application to a fully functional TypeScript application.
20 lines (17 loc) • 791 B
text/typescript
import { CallExpression, SourceFile } from 'ts-morph';
import VariableNameGenerator from '../../helpers/variable-name-generator/variable-name-generator';
import ImportCreator from '../../helpers/import-creator/import-creator';
class CallImportsRefactor {
static addCallExpressionImport = (
callExpression: CallExpression,
importId: string,
usedNames: string[],
sourceFile: SourceFile,
) => {
const moduleVariableName = VariableNameGenerator.variableNameFromImportId(importId);
const variableName = VariableNameGenerator.getUsableVariableName(moduleVariableName, usedNames);
const defaultImport = ImportCreator.addSimpleImport(variableName, importId, sourceFile);
callExpression.replaceWithText(defaultImport);
};
}
export default CallImportsRefactor;