@nx/react-native
Version:
33 lines (32 loc) • 989 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.addImport = addImport;
const js_1 = require("@nx/js");
const devkit_1 = require("@nx/devkit");
const ensure_typescript_1 = require("@nx/js/src/utils/typescript/ensure-typescript");
let tsModule;
function addImport(source, statement) {
if (!tsModule) {
tsModule = (0, ensure_typescript_1.ensureTypescript)();
}
const allImports = (0, js_1.findNodes)(source, tsModule.SyntaxKind.ImportDeclaration);
if (allImports.length > 0) {
const lastImport = allImports[allImports.length - 1];
return [
{
type: devkit_1.ChangeType.Insert,
index: lastImport.end + 1,
text: `\n${statement}\n`,
},
];
}
else {
return [
{
type: devkit_1.ChangeType.Insert,
index: 0,
text: `\n${statement}\n`,
},
];
}
}
;