@taiga-ui/cdk 5.1.0 → 5.2.0-canary.0a441e4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants/svg-node-filter.d.ts +3 -1
- package/constants/version.d.ts +1 -1
- package/constants/version.js +1 -1
- package/constants/version.js.map +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs +1 -1
- package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-directives-truncate.mjs +5 -4
- package/fesm2022/taiga-ui-cdk-directives-truncate.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-di.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs +0 -1
- package/fesm2022/taiga-ui-cdk-utils-dom.mjs.map +1 -1
- package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
- package/package.json +2 -2
- package/schematics/ng-add/constants/versions.d.ts +1 -1
- package/schematics/ng-update/v5/index.js +14 -4
- package/schematics/ng-update/v5/index.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/attr-with-values-to-replace.js +43 -0
- package/schematics/ng-update/v5/steps/constants/attr-with-values-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/attrs-in-host-to-replace.d.ts +2 -2
- package/schematics/ng-update/v5/steps/constants/attrs-in-host-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js +12 -0
- package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/html-comments.js +5 -0
- package/schematics/ng-update/v5/steps/constants/html-comments.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js +145 -1
- package/schematics/ng-update/v5/steps/constants/identifiers-to-replace.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/inputs-to-remove.js +10 -0
- package/schematics/ng-update/v5/steps/constants/inputs-to-remove.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/migration-warnings.js +75 -3
- package/schematics/ng-update/v5/steps/constants/migration-warnings.js.map +1 -1
- package/schematics/ng-update/v5/steps/constants/modules-to-remove.js +4 -8
- package/schematics/ng-update/v5/steps/constants/modules-to-remove.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-doc-i18n-tokens.js +2 -21
- package/schematics/ng-update/v5/steps/migrate-doc-i18n-tokens.js.map +1 -1
- package/schematics/ng-update/v5/steps/migrate-i18n-language-signal.d.ts +18 -0
- package/schematics/ng-update/v5/steps/migrate-i18n-language-signal.js +70 -0
- package/schematics/ng-update/v5/steps/migrate-i18n-language-signal.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-portals.d.ts +3 -0
- package/schematics/ng-update/v5/steps/migrate-portals.js +75 -0
- package/schematics/ng-update/v5/steps/migrate-portals.js.map +1 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js +2 -0
- package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-async-pipes.js +6 -1
- package/schematics/ng-update/v5/steps/templates/migrate-async-pipes.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-hint-on-legacy-controls.d.ts +12 -0
- package/schematics/ng-update/v5/steps/templates/migrate-hint-on-legacy-controls.js +172 -0
- package/schematics/ng-update/v5/steps/templates/migrate-hint-on-legacy-controls.js.map +1 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-input.js +42 -13
- package/schematics/ng-update/v5/steps/templates/migrate-input.js.map +1 -1
- package/schematics/ng-update/v5/steps/templates/migrate-textarea.d.ts +8 -0
- package/schematics/ng-update/v5/steps/templates/migrate-textarea.js +45 -13
- package/schematics/ng-update/v5/steps/templates/migrate-textarea.js.map +1 -1
- package/schematics/utils/add-import-to-closest-module.js +1 -0
- package/schematics/utils/add-import-to-closest-module.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-to-remove.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/constants/modules-to-remove.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAoB;IAC9C;QACI,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,eAAe;KACnC;IACD;QACI,IAAI,EAAE,8BAA8B;QACpC,eAAe,EAAE,kBAAkB;KACtC;IACD;QACI,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,eAAe;KACnC;IACD;QACI,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"modules-to-remove.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/constants/modules-to-remove.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAoB;IAC9C;QACI,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,eAAe;KACnC;IACD;QACI,IAAI,EAAE,8BAA8B;QACpC,eAAe,EAAE,kBAAkB;KACtC;IACD;QACI,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,eAAe;KACnC;IACD;QACI,IAAI,EAAE,oBAAoB;QAC1B,eAAe,EAAE,gBAAgB;KACpC;IACD;QACI,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE,uBAAuB;KAC3C;IACD;QACI,IAAI,EAAE,4BAA4B;QAClC,eAAe,EAAE,wBAAwB;KAC5C;IACD;QACI,IAAI,EAAE,kBAAkB;QACxB,eAAe,EAAE,eAAe;KACnC;CACJ,CAAC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.migrateDocI18nTokens = migrateDocI18nTokens;
|
|
4
4
|
const ng_morph_1 = require("ng-morph");
|
|
5
5
|
const file_globs_1 = require("../../../constants/file-globs");
|
|
6
|
+
const add_unique_import_1 = require("../../../utils/add-unique-import");
|
|
6
7
|
const get_named_import_references_1 = require("../../../utils/get-named-import-references");
|
|
7
8
|
const ANGULAR_CORE = '@angular/core';
|
|
8
9
|
const SIGNAL = 'signal';
|
|
@@ -63,7 +64,7 @@ function migrateDocI18nTokens(tree, options) {
|
|
|
63
64
|
continue;
|
|
64
65
|
}
|
|
65
66
|
useValueProp.setInitializer(`${SIGNAL}(${initText})`);
|
|
66
|
-
|
|
67
|
+
(0, add_unique_import_1.addUniqueImport)(ref.getSourceFile().getFilePath(), SIGNAL, ANGULAR_CORE);
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
70
|
(0, ng_morph_1.saveActiveProject)();
|
|
@@ -71,24 +72,4 @@ function migrateDocI18nTokens(tree, options) {
|
|
|
71
72
|
(0, ng_morph_1.titleLog)('addon-doc i18n token migration completed!');
|
|
72
73
|
}
|
|
73
74
|
}
|
|
74
|
-
function addSignalImport(sourceFile) {
|
|
75
|
-
const coreImports = sourceFile
|
|
76
|
-
.getImportDeclarations()
|
|
77
|
-
.filter((decl) => decl.getModuleSpecifierValue() === ANGULAR_CORE);
|
|
78
|
-
const alreadyImported = coreImports.some((decl) => decl
|
|
79
|
-
.getNamedImports()
|
|
80
|
-
.some((named) => named.getName() === SIGNAL && !named.isTypeOnly()));
|
|
81
|
-
if (alreadyImported) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
if (coreImports.length > 0) {
|
|
85
|
-
coreImports[0].addNamedImport(SIGNAL);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
sourceFile.addImportDeclaration({
|
|
89
|
-
moduleSpecifier: ANGULAR_CORE,
|
|
90
|
-
namedImports: [SIGNAL],
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
75
|
//# sourceMappingURL=migrate-doc-i18n-tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-doc-i18n-tokens.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-doc-i18n-tokens.ts"],"names":[],"mappings":";;AAwCA,oDA6DC;AApGD,uCAOkB;
|
|
1
|
+
{"version":3,"file":"migrate-doc-i18n-tokens.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-doc-i18n-tokens.ts"],"names":[],"mappings":";;AAwCA,oDA6DC;AApGD,uCAOkB;AAElB,8DAA2D;AAE3D,wEAAiE;AACjE,4FAAoF;AAEpF,MAAM,YAAY,GAAG,eAAe,CAAC;AACrC,MAAM,MAAM,GAAG,QAAQ,CAAC;AAExB,MAAM,eAAe,GAAG;IACpB,oBAAoB;IACpB,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,uBAAuB;IACvB,kBAAkB;IAClB,0BAA0B;CACpB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAAC,IAAU,EAAE,OAAkB;IAC/D,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACxB,IAAA,kBAAO,EAAC,oEAAoE,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,wBAAa,EAAC,IAAI,EAAE,GAAG,EAAE,yBAAY,CAAC,CAAC;IAEvD,IAAA,2BAAgB,EAAC,OAAO,CAAC,CAAC;IAE1B,KAAK,MAAM,SAAS,IAAI,eAAe,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAA,sDAAwB,EAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAExE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBACrB,SAAS;YACb,CAAC;YAED,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;YAE/B,IAAI,CAAC,MAAM,IAAI,eAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,SAAS;YACb,CAAC;YAED,IAAI,CAAC,eAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,SAAS,EAAE,CAAC;gBACvE,SAAS;YACb,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;YAEzC,IAAI,CAAC,aAAa,IAAI,CAAC,eAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnE,SAAS;YACb,CAAC;YAED,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAE3D,IAAI,CAAC,YAAY,IAAI,CAAC,eAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC5D,SAAS;YACb,CAAC;YAED,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,EAAE,CAAC;YAElD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,SAAS;YACb,CAAC;YAED,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;YAEvC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,SAAS;YACb,CAAC;YAED,YAAY,CAAC,cAAc,CAAC,GAAG,MAAM,IAAI,QAAQ,GAAG,CAAC,CAAC;YACtD,IAAA,mCAAe,EAAC,GAAG,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,IAAA,4BAAiB,GAAE,CAAC;IAEpB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACxB,IAAA,mBAAQ,EAAC,2CAA2C,CAAC,CAAC;IAC1D,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type Tree } from '@angular-devkit/schematics';
|
|
2
|
+
import { type TuiSchema } from '../../../ng-add/schema';
|
|
3
|
+
/**
|
|
4
|
+
* Migrates i18n language providers from of(TUI_*_LANGUAGE) to signal(TUI_*_LANGUAGE).
|
|
5
|
+
*
|
|
6
|
+
* Before:
|
|
7
|
+
* {
|
|
8
|
+
* provide: TUI_LANGUAGE,
|
|
9
|
+
* useValue: of(TUI_ENGLISH_LANGUAGE),
|
|
10
|
+
* }
|
|
11
|
+
*
|
|
12
|
+
* After:
|
|
13
|
+
* {
|
|
14
|
+
* provide: TUI_LANGUAGE,
|
|
15
|
+
* useValue: signal(TUI_ENGLISH_LANGUAGE),
|
|
16
|
+
* }
|
|
17
|
+
*/
|
|
18
|
+
export declare function migrateI18nLanguageSignal(tree: Tree, options: TuiSchema): void;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.migrateI18nLanguageSignal = migrateI18nLanguageSignal;
|
|
4
|
+
const ng_morph_1 = require("ng-morph");
|
|
5
|
+
const add_unique_import_1 = require("../../../utils/add-unique-import");
|
|
6
|
+
const get_named_import_references_1 = require("../../../utils/get-named-import-references");
|
|
7
|
+
const ANGULAR_CORE = '@angular/core';
|
|
8
|
+
const SIGNAL = 'signal';
|
|
9
|
+
/**
|
|
10
|
+
* Migrates i18n language providers from of(TUI_*_LANGUAGE) to signal(TUI_*_LANGUAGE).
|
|
11
|
+
*
|
|
12
|
+
* Before:
|
|
13
|
+
* {
|
|
14
|
+
* provide: TUI_LANGUAGE,
|
|
15
|
+
* useValue: of(TUI_ENGLISH_LANGUAGE),
|
|
16
|
+
* }
|
|
17
|
+
*
|
|
18
|
+
* After:
|
|
19
|
+
* {
|
|
20
|
+
* provide: TUI_LANGUAGE,
|
|
21
|
+
* useValue: signal(TUI_ENGLISH_LANGUAGE),
|
|
22
|
+
* }
|
|
23
|
+
*/
|
|
24
|
+
function migrateI18nLanguageSignal(tree, options) {
|
|
25
|
+
var _a;
|
|
26
|
+
if (!options['skip-logs']) {
|
|
27
|
+
(0, ng_morph_1.infoLog)('Migrating i18n language providers to signal-based values...');
|
|
28
|
+
}
|
|
29
|
+
const refs = (0, get_named_import_references_1.getNamedImportReferences)('TUI_LANGUAGE', '@taiga-ui/i18n');
|
|
30
|
+
for (const ref of refs) {
|
|
31
|
+
if (ref.wasForgotten()) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
const parent = ref.getParent();
|
|
35
|
+
if (!parent || ng_morph_1.Node.isImportSpecifier(parent)) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
// We are looking for { provide: TUI_LANGUAGE, useValue: of(...) }
|
|
39
|
+
if (!ng_morph_1.Node.isPropertyAssignment(parent) || parent.getName() !== 'provide') {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
const objectLiteral = parent.getParent();
|
|
43
|
+
if (!objectLiteral || !ng_morph_1.Node.isObjectLiteralExpression(objectLiteral)) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
const useValueProp = objectLiteral.getProperty('useValue');
|
|
47
|
+
if (!useValueProp || !ng_morph_1.Node.isPropertyAssignment(useValueProp)) {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
const initializer = useValueProp.getInitializer();
|
|
51
|
+
if (!initializer || !ng_morph_1.Node.isCallExpression(initializer)) {
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
const expression = initializer.getExpression();
|
|
55
|
+
if (expression.getText() !== 'of') {
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
const args = initializer.getArguments();
|
|
59
|
+
if (args.length !== 1) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
const argText = (_a = args[0]) === null || _a === void 0 ? void 0 : _a.getText();
|
|
63
|
+
if ((argText === null || argText === void 0 ? void 0 : argText.startsWith('TUI_')) && argText.endsWith('_LANGUAGE')) {
|
|
64
|
+
useValueProp.setInitializer(`${SIGNAL}(${argText})`);
|
|
65
|
+
(0, add_unique_import_1.addUniqueImport)(ref.getSourceFile().getFilePath(), SIGNAL, ANGULAR_CORE);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
(0, ng_morph_1.saveActiveProject)();
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=migrate-i18n-language-signal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-i18n-language-signal.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-i18n-language-signal.ts"],"names":[],"mappings":";;AAyBA,8DA8DC;AAtFD,uCAA0D;AAG1D,wEAAiE;AACjE,4FAAoF;AAEpF,MAAM,YAAY,GAAG,eAAe,CAAC;AACrC,MAAM,MAAM,GAAG,QAAQ,CAAC;AAExB;;;;;;;;;;;;;;GAcG;AACH,SAAgB,yBAAyB,CAAC,IAAU,EAAE,OAAkB;;IACpE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACxB,IAAA,kBAAO,EAAC,6DAA6D,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,IAAI,GAAG,IAAA,sDAAwB,EAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAExE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;YACrB,SAAS;QACb,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;QAE/B,IAAI,CAAC,MAAM,IAAI,eAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,SAAS;QACb,CAAC;QAED,kEAAkE;QAClE,IAAI,CAAC,eAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,SAAS,EAAE,CAAC;YACvE,SAAS;QACb,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAEzC,IAAI,CAAC,aAAa,IAAI,CAAC,eAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,CAAC;YACnE,SAAS;QACb,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE3D,IAAI,CAAC,YAAY,IAAI,CAAC,eAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,CAAC;YAC5D,SAAS;QACb,CAAC;QAED,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,EAAE,CAAC;QAElD,IAAI,CAAC,WAAW,IAAI,CAAC,eAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;YACtD,SAAS;QACb,CAAC;QAED,MAAM,UAAU,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;QAE/C,IAAI,UAAU,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;YAChC,SAAS;QACb,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC;QAExC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,SAAS;QACb,CAAC;QAED,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,CAAC,CAAC,0CAAE,OAAO,EAAE,CAAC;QAEnC,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,MAAM,CAAC,KAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/D,YAAY,CAAC,cAAc,CAAC,GAAG,MAAM,IAAI,OAAO,GAAG,CAAC,CAAC;YACrD,IAAA,mCAAe,EAAC,GAAG,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,IAAA,4BAAiB,GAAE,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.migratePortals = migratePortals;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const path = tslib_1.__importStar(require("node:path"));
|
|
6
|
+
const ng_morph_1 = require("ng-morph");
|
|
7
|
+
const constants_1 = require("../../../constants");
|
|
8
|
+
const add_unique_import_1 = require("../../../utils/add-unique-import");
|
|
9
|
+
const push_to_array_property_1 = require("../../../utils/push-to-array-property");
|
|
10
|
+
const TUI_PORTALS = 'TuiPortals';
|
|
11
|
+
const TUI_VCR_CLASS = 'TuiVCR';
|
|
12
|
+
const TUI_VCR_DIRECTIVE = 'tuiVCR';
|
|
13
|
+
const TAIGA_CDK = '@taiga-ui/cdk';
|
|
14
|
+
const VIEW_CONTAINER_REF = '#viewContainer';
|
|
15
|
+
function migratePortals(tree, _options) {
|
|
16
|
+
(0, ng_morph_1.getSourceFiles)(constants_1.ALL_TS_FILES).forEach((sourceFile) => {
|
|
17
|
+
migrateSourceFile(sourceFile, tree);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function migrateSourceFile(sourceFile, tree) {
|
|
21
|
+
var _a;
|
|
22
|
+
const hasTuiPortalsImport = sourceFile
|
|
23
|
+
.getImportDeclarations()
|
|
24
|
+
.some((imp) => imp.getModuleSpecifierValue() === TAIGA_CDK &&
|
|
25
|
+
imp.getNamedImports().some((ni) => ni.getName() === TUI_PORTALS));
|
|
26
|
+
if (!hasTuiPortalsImport) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
for (const classDecl of sourceFile.getClasses()) {
|
|
30
|
+
const extendsClause = classDecl.getExtends();
|
|
31
|
+
if ((extendsClause === null || extendsClause === void 0 ? void 0 : extendsClause.getExpression().getText()) !== TUI_PORTALS) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
const decorator = classDecl.getDecorator('Component');
|
|
35
|
+
if (!decorator) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
const [metadata] = decorator.getArguments();
|
|
39
|
+
if (!ng_morph_1.Node.isObjectLiteralExpression(metadata)) {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
const templateProp = metadata.getProperty('template');
|
|
43
|
+
const templateUrlProp = metadata.getProperty('templateUrl');
|
|
44
|
+
if (ng_morph_1.Node.isPropertyAssignment(templateProp)) {
|
|
45
|
+
const initializer = templateProp.getInitializer();
|
|
46
|
+
if (!initializer) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
const text = initializer.getText();
|
|
50
|
+
if (!text.includes(VIEW_CONTAINER_REF)) {
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
initializer.replaceWithText(text.replaceAll(VIEW_CONTAINER_REF, TUI_VCR_DIRECTIVE));
|
|
54
|
+
(0, push_to_array_property_1.pushToObjectArrayProperty)(metadata, 'imports', TUI_VCR_CLASS, { unique: true });
|
|
55
|
+
(0, add_unique_import_1.addUniqueImport)(sourceFile.getFilePath(), TUI_VCR_CLASS, TAIGA_CDK);
|
|
56
|
+
}
|
|
57
|
+
else if (ng_morph_1.Node.isPropertyAssignment(templateUrlProp)) {
|
|
58
|
+
const templateUrlInit = templateUrlProp.getInitializer();
|
|
59
|
+
if (!templateUrlInit) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
const templateUrl = templateUrlInit.getText().replaceAll(/['"`]/g, '');
|
|
63
|
+
const componentDir = path.dirname(sourceFile.getFilePath());
|
|
64
|
+
const templatePath = path.join(componentDir, templateUrl);
|
|
65
|
+
const content = (_a = tree.read(templatePath)) === null || _a === void 0 ? void 0 : _a.toString();
|
|
66
|
+
if (!(content === null || content === void 0 ? void 0 : content.includes(VIEW_CONTAINER_REF))) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
tree.overwrite(templatePath, content.replaceAll(VIEW_CONTAINER_REF, TUI_VCR_DIRECTIVE));
|
|
70
|
+
(0, push_to_array_property_1.pushToObjectArrayProperty)(metadata, 'imports', TUI_VCR_CLASS, { unique: true });
|
|
71
|
+
(0, add_unique_import_1.addUniqueImport)(sourceFile.getFilePath(), TUI_VCR_CLASS, TAIGA_CDK);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=migrate-portals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-portals.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-portals.ts"],"names":[],"mappings":";;AAiBA,wCAIC;;AArBD,wDAAkC;AAGlC,uCAA8C;AAG9C,kDAAgD;AAEhD,wEAAiE;AACjE,kFAAgF;AAEhF,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,aAAa,GAAG,QAAQ,CAAC;AAC/B,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,SAAS,GAAG,eAAe,CAAC;AAClC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAE5C,SAAgB,cAAc,CAAC,IAAU,EAAE,QAAmB;IAC1D,IAAA,yBAAc,EAAC,wBAAY,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAChD,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAsB,EAAE,IAAU;;IACzD,MAAM,mBAAmB,GAAG,UAAU;SACjC,qBAAqB,EAAE;SACvB,IAAI,CACD,CAAC,GAAG,EAAE,EAAE,CACJ,GAAG,CAAC,uBAAuB,EAAE,KAAK,SAAS;QAC3C,GAAG,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,WAAW,CAAC,CACvE,CAAC;IAEN,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACvB,OAAO;IACX,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;QAE7C,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,aAAa,GAAG,OAAO,EAAE,MAAK,WAAW,EAAE,CAAC;YAC3D,SAAS;QACb,CAAC;QAED,MAAM,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAEtD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS;QACb,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;QAE5C,IAAI,CAAC,eAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,SAAS;QACb,CAAC;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAE5D,IAAI,eAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,EAAE,CAAC;YAElD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,SAAS;YACb,CAAC;YAED,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;YAEnC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBACrC,SAAS;YACb,CAAC;YAED,WAAW,CAAC,eAAe,CACvB,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CACzD,CAAC;YACF,IAAA,kDAAyB,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;YAC9E,IAAA,mCAAe,EAAC,UAAU,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,eAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC;YACpD,MAAM,eAAe,GAAG,eAAe,CAAC,cAAc,EAAE,CAAC;YAEzD,IAAI,CAAC,eAAe,EAAE,CAAC;gBACnB,SAAS;YACb,CAAC;YAED,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACvE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;YAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,0CAAE,QAAQ,EAAE,CAAC;YAEpD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA,EAAE,CAAC;gBACzC,SAAS;YACb,CAAC;YAED,IAAI,CAAC,SAAS,CACV,YAAY,EACZ,OAAO,CAAC,UAAU,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAC5D,CAAC;YACF,IAAA,kDAAyB,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;YAC9E,IAAA,mCAAe,EAAC,UAAU,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;AACL,CAAC"}
|
|
@@ -25,6 +25,7 @@ const migrate_closeable_1 = require("./templates/migrate-closeable");
|
|
|
25
25
|
const migrate_combo_box_1 = require("./templates/migrate-combo-box");
|
|
26
26
|
const migrate_field_error_1 = require("./templates/migrate-field-error");
|
|
27
27
|
const migrate_format_phone_pipe_1 = require("./templates/migrate-format-phone-pipe");
|
|
28
|
+
const migrate_hint_on_legacy_controls_1 = require("./templates/migrate-hint-on-legacy-controls");
|
|
28
29
|
const migrate_input_1 = require("./templates/migrate-input");
|
|
29
30
|
const migrate_input_date_1 = require("./templates/migrate-input-date");
|
|
30
31
|
const migrate_input_date_multi_1 = require("./templates/migrate-input-date-multi");
|
|
@@ -86,6 +87,7 @@ function migrateTemplates(fileSystem, options) {
|
|
|
86
87
|
migrate_sidebar_1.migrateSidebar,
|
|
87
88
|
migrate_format_phone_pipe_1.migrateFormatPhonePipe,
|
|
88
89
|
...(hasProprietaryPackage ? [migrate_proprietary_textfield_icons_1.migrateProprietaryTextfieldIcons] : []),
|
|
90
|
+
migrate_hint_on_legacy_controls_1.migrateHintOnLegacyControls,
|
|
89
91
|
migrate_input_1.migrateInput,
|
|
90
92
|
migrate_textarea_1.migrateTextarea,
|
|
91
93
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-templates.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-templates.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"migrate-templates.js","sourceRoot":"","sources":["../../../../../../projects/cdk/schematics/ng-update/v5/steps/migrate-templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.migrateAsyncPipes = migrateAsyncPipes;
|
|
4
4
|
const template_resource_1 = require("../../../../utils/templates/template-resource");
|
|
5
|
-
const SIGNAL_BASED_PIPES = [
|
|
5
|
+
const SIGNAL_BASED_PIPES = [
|
|
6
|
+
'tuiAmount',
|
|
7
|
+
'tuiDecimal',
|
|
8
|
+
'tuiFormatNumber',
|
|
9
|
+
'tuiSortCountries',
|
|
10
|
+
];
|
|
6
11
|
/**
|
|
7
12
|
* Matches `| tuiPipeName` (with optional args) followed by `| async`.
|
|
8
13
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-async-pipes.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/templates/migrate-async-pipes.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"migrate-async-pipes.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/templates/migrate-async-pipes.ts"],"names":[],"mappings":";;AAgCA,8CAsBC;AAnDD,qFAGuD;AAGvD,MAAM,kBAAkB,GAAG;IACvB,WAAW;IACX,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;CACrB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAC/B,MAAM,CAAC,GAAG,CAAA,YAAY,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,iCAAiC,EACnF,IAAI,CACP,CAAC;AAEF,SAAgB,iBAAiB,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,UAAU,GAKb;IACG,MAAM,QAAQ,GAAG,IAAA,mDAA+B,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,IAAA,qCAAiB,EAAC,QAAQ,CAAC,CAAC;IAEnD,IAAI,KAAK,CAAC;IAEV,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;QACnC,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACxC,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAElC,QAAQ,CAAC,MAAM,CAAC,cAAc,GAAG,cAAc,EAAE,eAAe,CAAC,CAAC;QAClE,QAAQ,CAAC,WAAW,CAAC,cAAc,GAAG,cAAc,EAAE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,EAAE,CAAC,CAAC;IAClF,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type UpdateRecorder } from '@angular-devkit/schematics';
|
|
2
|
+
import { type DevkitFileSystem } from 'ng-morph';
|
|
3
|
+
import { type DefaultTreeAdapterTypes } from 'parse5';
|
|
4
|
+
import { type TemplateResource } from '../../../interfaces/template-resource';
|
|
5
|
+
type Element = DefaultTreeAdapterTypes.Element;
|
|
6
|
+
export declare function buildTuiIconStr(element: Element, template: string): string;
|
|
7
|
+
export declare function migrateHintOnLegacyControls({ resource, recorder, fileSystem, }: {
|
|
8
|
+
fileSystem: DevkitFileSystem;
|
|
9
|
+
recorder: UpdateRecorder;
|
|
10
|
+
resource: TemplateResource;
|
|
11
|
+
}): void;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildTuiIconStr = buildTuiIconStr;
|
|
4
|
+
exports.migrateHintOnLegacyControls = migrateHintOnLegacyControls;
|
|
5
|
+
const add_import_to_closest_module_1 = require("../../../../utils/add-import-to-closest-module");
|
|
6
|
+
const elements_1 = require("../../../../utils/templates/elements");
|
|
7
|
+
const migrate_attr_value_1 = require("../../../../utils/templates/migrate-attr-value");
|
|
8
|
+
const template_resource_1 = require("../../../../utils/templates/template-resource");
|
|
9
|
+
const migrate_input_1 = require("./migrate-input");
|
|
10
|
+
const migrate_textarea_1 = require("./migrate-textarea");
|
|
11
|
+
/** Legacy controls that contain tuiHintContent and need migration. */
|
|
12
|
+
const LEGACY_CONTROLS = new Set([
|
|
13
|
+
'tui-combo-box',
|
|
14
|
+
'tui-input',
|
|
15
|
+
'tui-input-date',
|
|
16
|
+
'tui-input-date-range',
|
|
17
|
+
'tui-input-number',
|
|
18
|
+
'tui-input-phone',
|
|
19
|
+
'tui-input-tag',
|
|
20
|
+
'tui-input-time',
|
|
21
|
+
'tui-multi-select',
|
|
22
|
+
'tui-select',
|
|
23
|
+
'tui-textarea',
|
|
24
|
+
]);
|
|
25
|
+
const HINT_ATTR_NAMES = [
|
|
26
|
+
'[tuiHintAppearance]',
|
|
27
|
+
'[tuiHintContent]',
|
|
28
|
+
'[tuiHintDirection]',
|
|
29
|
+
'tuiHintAppearance',
|
|
30
|
+
'tuiHintContent',
|
|
31
|
+
'tuiHintDirection',
|
|
32
|
+
];
|
|
33
|
+
function hasHintContent(element) {
|
|
34
|
+
return element.attrs.some((attr) => {
|
|
35
|
+
const lower = attr.name.toLowerCase();
|
|
36
|
+
return (lower === 'tuiHintContent'.toLowerCase() ||
|
|
37
|
+
lower === '[tuiHintContent]'.toLowerCase());
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function getOriginalAttrText(template, element, attrNameLower) {
|
|
41
|
+
var _a, _b;
|
|
42
|
+
const attrLoc = (_b = (_a = element.sourceCodeLocation) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[attrNameLower];
|
|
43
|
+
if (!attrLoc) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
return template.slice(attrLoc.startOffset, attrLoc.endOffset);
|
|
47
|
+
}
|
|
48
|
+
function buildTuiIconStr(element, template) {
|
|
49
|
+
const contentAttr = element.attrs.find((a) => {
|
|
50
|
+
const lower = a.name.toLowerCase();
|
|
51
|
+
return (lower === '[tuiHintContent]'.toLowerCase() ||
|
|
52
|
+
lower === 'tuiHintContent'.toLowerCase());
|
|
53
|
+
});
|
|
54
|
+
if (!contentAttr) {
|
|
55
|
+
return '';
|
|
56
|
+
}
|
|
57
|
+
const isBinding = contentAttr.name.toLowerCase() === '[tuiHintContent]'.toLowerCase();
|
|
58
|
+
const tooltipAttr = isBinding
|
|
59
|
+
? `[tuiTooltip]="${contentAttr.value}"`
|
|
60
|
+
: `tuiTooltip="${contentAttr.value}"`;
|
|
61
|
+
const appearanceAttr = element.attrs.find((a) => {
|
|
62
|
+
const lower = a.name.toLowerCase();
|
|
63
|
+
return (lower === '[tuiHintAppearance]'.toLowerCase() ||
|
|
64
|
+
lower === 'tuiHintAppearance'.toLowerCase());
|
|
65
|
+
});
|
|
66
|
+
const directionAttr = element.attrs.find((a) => {
|
|
67
|
+
const lower = a.name.toLowerCase();
|
|
68
|
+
return (lower === '[tuiHintDirection]'.toLowerCase() ||
|
|
69
|
+
lower === 'tuiHintDirection'.toLowerCase());
|
|
70
|
+
});
|
|
71
|
+
const extraAttrs = [];
|
|
72
|
+
if (appearanceAttr) {
|
|
73
|
+
const original = getOriginalAttrText(template, element, appearanceAttr.name.toLowerCase());
|
|
74
|
+
extraAttrs.push(original !== null && original !== void 0 ? original : (appearanceAttr.value
|
|
75
|
+
? `${appearanceAttr.name}="${appearanceAttr.value}"`
|
|
76
|
+
: appearanceAttr.name));
|
|
77
|
+
}
|
|
78
|
+
if (directionAttr) {
|
|
79
|
+
const nameLower = directionAttr.name.toLowerCase();
|
|
80
|
+
const migratedValue = (0, migrate_attr_value_1.migrateAttrValue)(nameLower, directionAttr.value);
|
|
81
|
+
const original = getOriginalAttrText(template, element, nameLower);
|
|
82
|
+
let attrText;
|
|
83
|
+
if (original && directionAttr.value !== migratedValue) {
|
|
84
|
+
attrText = original.replace(`="${directionAttr.value}"`, `="${migratedValue}"`);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
attrText =
|
|
88
|
+
original !== null && original !== void 0 ? original : (directionAttr.value
|
|
89
|
+
? `${directionAttr.name}="${migratedValue}"`
|
|
90
|
+
: directionAttr.name);
|
|
91
|
+
}
|
|
92
|
+
extraAttrs.push(attrText);
|
|
93
|
+
}
|
|
94
|
+
const allAttrs = [tooltipAttr, ...extraAttrs];
|
|
95
|
+
return `<tui-icon ${allAttrs.join(' ')} />`;
|
|
96
|
+
}
|
|
97
|
+
function removeAttr(recorder, templateOffset, element, name, template) {
|
|
98
|
+
var _a, _b;
|
|
99
|
+
const attrLocation = (_b = (_a = element.sourceCodeLocation) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[name.toLowerCase()];
|
|
100
|
+
if (!attrLocation) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const lineStart = template.lastIndexOf('\n', attrLocation.startOffset) + 1;
|
|
104
|
+
const lineEnd = template.indexOf('\n', attrLocation.endOffset);
|
|
105
|
+
const attrText = template.slice(attrLocation.startOffset, attrLocation.endOffset);
|
|
106
|
+
const lineText = lineEnd === -1 ? '' : template.slice(lineStart, lineEnd);
|
|
107
|
+
if (lineText.trim() === attrText.trim() && lineEnd !== -1) {
|
|
108
|
+
recorder.remove(templateOffset + lineStart, lineEnd - lineStart + 1);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
recorder.remove(templateOffset + attrLocation.startOffset - 1, attrLocation.endOffset - attrLocation.startOffset + 1);
|
|
112
|
+
}
|
|
113
|
+
function migrateHintOnLegacyControls({ resource, recorder, fileSystem, }) {
|
|
114
|
+
const template = (0, template_resource_1.getTemplateFromTemplateResource)(resource, fileSystem);
|
|
115
|
+
const templateOffset = (0, template_resource_1.getTemplateOffset)(resource);
|
|
116
|
+
const elements = (0, elements_1.findElementsInTemplateByFn)(template, (el) => LEGACY_CONTROLS.has(el.tagName) && hasHintContent(el));
|
|
117
|
+
if (elements.length === 0) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
(0, add_import_to_closest_module_1.addImportToClosestModule)(resource.componentPath, 'TuiIcon', '@taiga-ui/core');
|
|
121
|
+
(0, add_import_to_closest_module_1.addImportToClosestModule)(resource.componentPath, 'TuiTooltip', '@taiga-ui/kit');
|
|
122
|
+
elements.forEach((element) => {
|
|
123
|
+
var _a;
|
|
124
|
+
const loc = element.sourceCodeLocation;
|
|
125
|
+
if (!loc) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const isSelfClosing = !loc.endTag;
|
|
129
|
+
const tagName = element.tagName;
|
|
130
|
+
const tuiIconStr = buildTuiIconStr(element, template);
|
|
131
|
+
if (!tuiIconStr) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
if (!isSelfClosing && tagName === 'tui-input') {
|
|
135
|
+
const result = (0, migrate_input_1.buildTuiInputReplacement)(template, element, tuiIconStr);
|
|
136
|
+
if (result) {
|
|
137
|
+
recorder.remove(templateOffset + result.startOffset, result.endOffset - result.startOffset);
|
|
138
|
+
recorder.insertRight(templateOffset + result.startOffset, result.replacement);
|
|
139
|
+
}
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
if (!isSelfClosing && tagName === 'tui-textarea') {
|
|
143
|
+
const result = (0, migrate_textarea_1.buildTuiTextareaReplacement)(template, element, tuiIconStr);
|
|
144
|
+
if (result) {
|
|
145
|
+
recorder.remove(templateOffset + result.startOffset, result.endOffset - result.startOffset);
|
|
146
|
+
recorder.insertRight(templateOffset + result.startOffset, result.replacement);
|
|
147
|
+
}
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
if (isSelfClosing) {
|
|
151
|
+
const nonHintAttrs = element.attrs
|
|
152
|
+
.filter((attr) => !HINT_ATTR_NAMES.some((n) => n.toLowerCase() === attr.name.toLowerCase()))
|
|
153
|
+
.map((attr) => {
|
|
154
|
+
const original = getOriginalAttrText(template, element, attr.name.toLowerCase());
|
|
155
|
+
return (original !== null && original !== void 0 ? original : (attr.value ? `${attr.name}="${attr.value}"` : attr.name));
|
|
156
|
+
});
|
|
157
|
+
const attrsStr = nonHintAttrs.length > 0 ? ` ${nonHintAttrs.join(' ')}` : '';
|
|
158
|
+
const replacement = `<${tagName}${attrsStr}>${tuiIconStr}</${tagName}>`;
|
|
159
|
+
recorder.remove(templateOffset + loc.startOffset, loc.endOffset - loc.startOffset);
|
|
160
|
+
recorder.insertRight(templateOffset + loc.startOffset, replacement);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
for (const attrName of HINT_ATTR_NAMES) {
|
|
164
|
+
removeAttr(recorder, templateOffset, element, attrName, template);
|
|
165
|
+
}
|
|
166
|
+
const insertOffset = (_a = loc.endTag) === null || _a === void 0 ? void 0 : _a.startOffset;
|
|
167
|
+
insertOffset &&
|
|
168
|
+
recorder.insertRight(templateOffset + insertOffset, `${tuiIconStr}\n`);
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=migrate-hint-on-legacy-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-hint-on-legacy-controls.js","sourceRoot":"","sources":["../../../../../../../projects/cdk/schematics/ng-update/v5/steps/templates/migrate-hint-on-legacy-controls.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { type UpdateRecorder } from '@angular-devkit/schematics';
|
|
2
2
|
import { type DevkitFileSystem } from 'ng-morph';
|
|
3
|
+
import { type DefaultTreeAdapterTypes } from 'parse5';
|
|
3
4
|
import { type TemplateResource } from '../../../interfaces/template-resource';
|
|
5
|
+
type Element = DefaultTreeAdapterTypes.Element;
|
|
4
6
|
export declare function migrateInput({ resource, recorder, fileSystem, }: {
|
|
5
7
|
fileSystem: DevkitFileSystem;
|
|
6
8
|
recorder: UpdateRecorder;
|
|
7
9
|
resource: TemplateResource;
|
|
8
10
|
}): void;
|
|
11
|
+
export declare function buildTuiInputReplacement(template: string, element: Element, hintIconStr?: string): {
|
|
12
|
+
startOffset: number;
|
|
13
|
+
endOffset: number;
|
|
14
|
+
replacement: string;
|
|
15
|
+
} | null;
|
|
16
|
+
export {};
|