UNPKG

@taiga-ui/cdk

Version:

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

38 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.migrateRangeToken = migrateRangeToken; const ng_morph_1 = require("ng-morph"); const add_unique_import_1 = require("../../../utils/add-unique-import"); const get_named_import_references_1 = require("../../../utils/get-named-import-references"); const import_manipulations_1 = require("../../../utils/import-manipulations"); const TAIGA_CDK = '@taiga-ui/cdk'; const RANGE_TOKEN = 'TUI_RANGE'; const ANGULAR_CORE = '@angular/core'; const ANGULAR_COMMON = '@angular/common'; const IS_PLATFORM_BROWSER = 'isPlatformBrowser'; const PLATFORM_ID = 'PLATFORM_ID'; const RANGE_REPLACEMENT = `${IS_PLATFORM_BROWSER}(inject(${PLATFORM_ID})) ? new Range() : ({} as unknown as Range)`; function migrateRangeToken(_tree, _options) { (0, get_named_import_references_1.getNamedImportReferences)(RANGE_TOKEN, TAIGA_CDK).forEach((ref) => { if (ref.wasForgotten()) { return; } const parent = ref.getParent(); if (ng_morph_1.Node.isImportSpecifier(parent)) { (0, import_manipulations_1.removeImport)(parent); return; } const isRangeInjection = ng_morph_1.Node.isCallExpression(parent) && parent.getExpression().getText() === 'inject'; if (!isRangeInjection) { return; } const filePath = ref.getSourceFile().getFilePath(); parent.replaceWithText(RANGE_REPLACEMENT); (0, add_unique_import_1.addUniqueImport)(filePath, IS_PLATFORM_BROWSER, ANGULAR_COMMON); (0, add_unique_import_1.addUniqueImport)(filePath, PLATFORM_ID, ANGULAR_CORE); }); } //# sourceMappingURL=migrate-range-token.js.map