UNPKG

@taiga-ui/cdk

Version:

Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance

42 lines 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.removeModules = removeModules; exports.removeModule = removeModule; const ng_morph_1 = require("ng-morph"); const colored_log_1 = require("./colored-log"); const get_named_import_references_1 = require("./get-named-import-references"); const import_manipulations_1 = require("./import-manipulations"); function removeModules(options, modules) { !options['skip-logs'] && (0, colored_log_1.infoLog)(`${colored_log_1.SMALL_TAB_SYMBOL}${colored_log_1.REPLACE_SYMBOL} removing modules...`); modules.forEach(({ name, moduleSpecifier }) => removeModule(name, moduleSpecifier)); !options['skip-logs'] && (0, colored_log_1.successLog)(`${colored_log_1.SMALL_TAB_SYMBOL}${colored_log_1.SUCCESS_SYMBOL} modules removed \n`); } function removeModule(name, moduleSpecifier) { const references = (0, get_named_import_references_1.getNamedImportReferences)(name, moduleSpecifier); references.forEach((ref) => { if (ref.wasForgotten()) { return; } const parent = ref.getParent(); if (ng_morph_1.Node.isImportSpecifier(parent)) { (0, import_manipulations_1.removeImport)(parent); } else if (ng_morph_1.Node.isArrayLiteralExpression(parent)) { const index = parent.getElements().findIndex((el) => el.getText() === name); parent.removeElement(index); } else if (ng_morph_1.Node.isCallExpression(parent)) { const array = parent.getParent(); if (!ng_morph_1.Node.isArrayLiteralExpression(array)) { return; } const index = array .getElements() .findIndex((el) => el.getText() === parent.getText()); array.removeElement(index); } }); } //# sourceMappingURL=remove-module.js.map