@taiga-ui/cdk 4.0.0-rc.6 → 4.0.0-rc.8

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.
Files changed (78) hide show
  1. package/constants/version.d.ts +1 -1
  2. package/constants/version.js +1 -1
  3. package/esm2022/constants/version.mjs +2 -2
  4. package/esm2022/directives/auto-focus/autofocus.options.mjs +3 -3
  5. package/esm2022/directives/copy-processor/copy-processor.directive.mjs +3 -3
  6. package/esm2022/directives/high-dpi/high-dpi.directive.mjs +3 -3
  7. package/esm2022/directives/obscured/obscured.service.mjs +3 -3
  8. package/esm2022/services/scroll.service.mjs +4 -4
  9. package/esm2022/tokens/active-element.mjs +3 -3
  10. package/esm2022/tokens/environment.mjs +8 -8
  11. package/esm2022/tokens/removed-element.mjs +3 -3
  12. package/esm2022/tokens/window-size.mjs +3 -3
  13. package/fesm2022/taiga-ui-cdk-constants.mjs +1 -1
  14. package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
  15. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs +2 -2
  16. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
  17. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs +2 -2
  18. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs.map +1 -1
  19. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs +2 -2
  20. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs.map +1 -1
  21. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs +2 -2
  22. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs.map +1 -1
  23. package/fesm2022/taiga-ui-cdk-services.mjs +3 -3
  24. package/fesm2022/taiga-ui-cdk-services.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-cdk-tokens.mjs +11 -11
  26. package/fesm2022/taiga-ui-cdk-tokens.mjs.map +1 -1
  27. package/package.json +5 -6
  28. package/schematics/ng-update/interfaces/replacement-type.d.ts +4 -0
  29. package/schematics/ng-update/steps/rename-types.js +6 -2
  30. package/schematics/ng-update/steps/replace-identifier.js +8 -1
  31. package/schematics/ng-update/v4/index.js +1 -0
  32. package/schematics/ng-update/v4/migrate-icons/rename-icons.js +5 -5
  33. package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.js +3 -3
  34. package/schematics/ng-update/v4/steps/constants/attr-to-directive-replace.js +3 -2
  35. package/schematics/ng-update/v4/steps/constants/attr-with-values-to-replace.js +2 -1
  36. package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js +49 -19
  37. package/schematics/ng-update/v4/steps/constants/html-comments.js +5 -0
  38. package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js +249 -26
  39. package/schematics/ng-update/v4/steps/constants/inputs-to-remove.js +1 -0
  40. package/schematics/ng-update/v4/steps/constants/migration-warnings.js +10 -0
  41. package/schematics/ng-update/v4/steps/constants/modules-to-remove.js +8 -0
  42. package/schematics/ng-update/v4/steps/constants/tags-to-replace.js +14 -2
  43. package/schematics/ng-update/v4/steps/constants/types.js +21 -1
  44. package/schematics/ng-update/v4/steps/index.d.ts +2 -1
  45. package/schematics/ng-update/v4/steps/index.js +2 -1
  46. package/schematics/ng-update/v4/steps/migrate-alert-service.d.ts +2 -0
  47. package/schematics/ng-update/v4/steps/migrate-alert-service.js +88 -0
  48. package/schematics/ng-update/v4/steps/migrate-templates.js +8 -0
  49. package/schematics/ng-update/v4/steps/{migrate-styles.js → styles/index.js} +8 -1
  50. package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.d.ts +1 -0
  51. package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js +20 -0
  52. package/schematics/ng-update/v4/steps/templates/index.d.ts +4 -0
  53. package/schematics/ng-update/v4/steps/templates/index.js +4 -0
  54. package/schematics/ng-update/v4/steps/templates/migrate-avatar.js +10 -5
  55. package/schematics/ng-update/v4/steps/templates/migrate-axes.d.ts +8 -0
  56. package/schematics/ng-update/v4/steps/templates/migrate-axes.js +26 -0
  57. package/schematics/ng-update/v4/steps/templates/migrate-badge.js +7 -6
  58. package/schematics/ng-update/v4/steps/templates/migrate-blocked.d.ts +8 -0
  59. package/schematics/ng-update/v4/steps/templates/migrate-blocked.js +35 -0
  60. package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.d.ts +8 -0
  61. package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js +41 -0
  62. package/schematics/ng-update/v4/steps/templates/migrate-expandable.js +3 -2
  63. package/schematics/ng-update/v4/steps/templates/migrate-focusable.js +7 -4
  64. package/schematics/ng-update/v4/steps/templates/migrate-labeled.js +2 -4
  65. package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.d.ts +8 -0
  66. package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.js +45 -0
  67. package/schematics/ng-update/v4/steps/templates/migrate-notification.d.ts +8 -0
  68. package/schematics/ng-update/v4/steps/templates/migrate-notification.js +46 -0
  69. package/schematics/ng-update/v4/steps/templates/migrate-number-precision.d.ts +8 -0
  70. package/schematics/ng-update/v4/steps/templates/migrate-number-precision.js +36 -0
  71. package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js +4 -6
  72. package/schematics/ng-update/v4/steps/templates/migrate-thumbnail-card.js +2 -1
  73. package/schematics/ng-update/v4/steps/templates/toggles/common.js +3 -2
  74. package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js +36 -0
  75. package/schematics/ng-update/v4/steps/update-packages.js +13 -4
  76. package/schematics/utils/templates/elements.js +2 -1
  77. package/schematics/utils/templates/inputs.js +2 -1
  78. /package/schematics/ng-update/v4/steps/{migrate-styles.d.ts → styles/index.d.ts} +0 -0
@@ -50,13 +50,14 @@ exports.ATTRS_TO_DIRECTIVE_REPLACE = [
50
50
  },
51
51
  },
52
52
  {
53
- componentSelector: ['button'],
53
+ componentSelector: ['button', 'a'],
54
54
  inputProperty: 'showLoader',
55
55
  directive: 'loading',
56
56
  directiveModule: {
57
57
  name: 'TuiButtonLoading',
58
58
  moduleSpecifier: '@taiga-ui/kit',
59
59
  },
60
- filterFn: (el) => (0, elements_1.hasElementAttribute)(el, 'tuiButton'),
60
+ filterFn: (el) => (0, elements_1.hasElementAttribute)(el, 'tuiButton') ||
61
+ (0, elements_1.hasElementAttribute)(el, 'tuiIconButton'),
61
62
  },
62
63
  ];
@@ -8,7 +8,8 @@ exports.ATTR_WITH_VALUES_TO_REPLACE = [
8
8
  newAttrName: '[style.border-radius.%]',
9
9
  values: [{ from: 'rounded', to: '100' }],
10
10
  withTagNames: ['button'],
11
- filterFn: (el) => (0, elements_1.hasElementAttribute)(el, 'tuiButton'),
11
+ filterFn: (el) => (0, elements_1.hasElementAttribute)(el, 'tuiButton') ||
12
+ (0, elements_1.hasElementAttribute)(el, 'tuiIconButton'),
12
13
  },
13
14
  {
14
15
  attrNames: ['tuiMode'],
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ATTRS_TO_REPLACE = void 0;
4
4
  const elements_1 = require("../../../../utils/templates/elements");
5
+ const inputs_1 = require("../../../../utils/templates/inputs");
5
6
  exports.ATTRS_TO_REPLACE = [
6
7
  {
7
8
  from: {
@@ -10,6 +11,20 @@ exports.ATTRS_TO_REPLACE = [
10
11
  },
11
12
  to: { attrName: 'iconStart' },
12
13
  },
14
+ {
15
+ from: {
16
+ attrName: 'src',
17
+ withTagNames: ['tui-svg'],
18
+ },
19
+ to: { attrName: 'icon' },
20
+ },
21
+ {
22
+ from: {
23
+ attrName: '[src]',
24
+ withTagNames: ['tui-svg'],
25
+ },
26
+ to: { attrName: '[icon]' },
27
+ },
13
28
  {
14
29
  from: {
15
30
  attrName: '[brandLogo]',
@@ -34,17 +49,24 @@ exports.ATTRS_TO_REPLACE = [
34
49
  {
35
50
  from: {
36
51
  attrName: 'item',
37
- withTagNames: ['tui-radio'],
52
+ withTagNames: ['tui-radio', 'tui-radio-labeled', 'tui-radio-block'],
38
53
  },
39
54
  to: { attrName: 'value' },
40
55
  },
41
56
  {
42
57
  from: {
43
58
  attrName: '[item]',
44
- withTagNames: ['tui-radio'],
59
+ withTagNames: ['tui-radio', 'tui-radio-labeled', 'tui-radio-block'],
45
60
  },
46
61
  to: { attrName: '[value]' },
47
62
  },
63
+ {
64
+ from: {
65
+ attrName: '(removed)',
66
+ withTagNames: ['tui-file'],
67
+ },
68
+ to: { attrName: '(remove)' },
69
+ },
48
70
  {
49
71
  from: {
50
72
  attrName: '[rounded]',
@@ -59,20 +81,6 @@ exports.ATTRS_TO_REPLACE = [
59
81
  },
60
82
  to: { attrName: '(waResizeObserver)' },
61
83
  },
62
- {
63
- from: {
64
- attrName: 'item',
65
- withTagNames: ['tui-radio-labeled'],
66
- },
67
- to: { attrName: 'value' },
68
- },
69
- {
70
- from: {
71
- attrName: '[item]',
72
- withTagNames: ['tui-radio-labeled'],
73
- },
74
- to: { attrName: '[value]' },
75
- },
76
84
  // Hosted dropdown
77
85
  {
78
86
  from: {
@@ -213,8 +221,7 @@ exports.ATTRS_TO_REPLACE = [
213
221
  filterFn: (element) => {
214
222
  var _a;
215
223
  return !(0, elements_1.hasElementAttribute)(element, 'iconAlign') ||
216
- ((_a = element.attrs.find((attr) => attr.name === 'iconalign')) === null || _a === void 0 ? void 0 : _a.value) ===
217
- 'right';
224
+ ((_a = (0, inputs_1.findAttr)(element.attrs, 'iconAlign')) === null || _a === void 0 ? void 0 : _a.value) === 'right';
218
225
  },
219
226
  },
220
227
  to: { attrName: 'iconEnd' },
@@ -223,7 +230,7 @@ exports.ATTRS_TO_REPLACE = [
223
230
  from: {
224
231
  attrName: 'icon',
225
232
  withAttrsNames: ['tuiLink'],
226
- filterFn: (element) => { var _a; return ((_a = element.attrs.find((attr) => attr.name === 'iconalign')) === null || _a === void 0 ? void 0 : _a.value) === 'left'; },
233
+ filterFn: (element) => { var _a; return ((_a = (0, inputs_1.findAttr)(element.attrs, 'iconAlign')) === null || _a === void 0 ? void 0 : _a.value) === 'left'; },
227
234
  },
228
235
  to: { attrName: 'iconStart' },
229
236
  },
@@ -234,4 +241,27 @@ exports.ATTRS_TO_REPLACE = [
234
241
  },
235
242
  to: { attrName: '' },
236
243
  },
244
+ {
245
+ from: {
246
+ attrName: 'tuiTextfield',
247
+ withTagNames: ['input', 'textarea'],
248
+ },
249
+ to: { attrName: 'tuiTextfieldLegacy' },
250
+ },
251
+ {
252
+ from: {
253
+ attrName: 'status',
254
+ withTagNames: ['tui-notification'],
255
+ withAttrsNames: ['tuiNotification'],
256
+ },
257
+ to: { attrName: 'appearance' },
258
+ },
259
+ {
260
+ from: {
261
+ attrName: '[status]',
262
+ withTagNames: ['tui-notification'],
263
+ withAttrsNames: ['tuiNotification'],
264
+ },
265
+ to: { attrName: '[appearance]' },
266
+ },
237
267
  ];
@@ -47,4 +47,9 @@ exports.HTML_COMMENTS = [
47
47
  withAttrs: [],
48
48
  comment: 'TuiThemeNight has been removed. Please use tuiTheme attribute to set theme https://taiga-ui.dev/directives/theme',
49
49
  },
50
+ {
51
+ tag: 'tui-input-files',
52
+ withAttrs: [],
53
+ comment: 'Native input inside is now required and the wrapper has changed from <tui-input-files to <label tuiInputFiles, control moved to native input. See interactive example https://taiga-ui.dev/components/input-files',
54
+ },
50
55
  ];
@@ -66,6 +66,10 @@ exports.IDENTIFIERS_TO_REPLACE = [
66
66
  from: { name: 'TUI_DIGIT_REGEXP', moduleSpecifier: '@taiga-ui/core' },
67
67
  to: { name: 'TUI_DIGIT_REGEXP', moduleSpecifier: '@taiga-ui/cdk' },
68
68
  },
69
+ {
70
+ from: { name: 'tuiCapitalizeFirstLetter', moduleSpecifier: '@taiga-ui/core' },
71
+ to: { name: 'tuiCapitalizeFirstLetter', moduleSpecifier: '@taiga-ui/legacy' },
72
+ },
69
73
  {
70
74
  from: { name: 'TUI_NON_DIGIT_REGEXP', moduleSpecifier: '@taiga-ui/core' },
71
75
  to: { name: 'TUI_NON_DIGIT_REGEXP', moduleSpecifier: '@taiga-ui/cdk' },
@@ -82,10 +86,6 @@ exports.IDENTIFIERS_TO_REPLACE = [
82
86
  from: { name: 'TuiNotificationModule', moduleSpecifier: '@taiga-ui/core' },
83
87
  to: { name: 'TuiNotification', moduleSpecifier: '@taiga-ui/core' },
84
88
  },
85
- {
86
- from: { name: 'TuiNotificationT', moduleSpecifier: '@taiga-ui/core' },
87
- to: { name: 'TuiNotificationStatus', moduleSpecifier: '@taiga-ui/core' },
88
- },
89
89
  {
90
90
  from: { name: 'TuiFormatPhonePipe', moduleSpecifier: '@taiga-ui/core' },
91
91
  to: { name: 'TuiFormatPhonePipe', moduleSpecifier: '@taiga-ui/legacy' },
@@ -232,6 +232,10 @@ exports.IDENTIFIERS_TO_REPLACE = [
232
232
  from: { name: 'TuiLineClampModule', moduleSpecifier: '@taiga-ui/kit' },
233
233
  to: { name: 'TuiLineClamp', moduleSpecifier: '@taiga-ui/kit' },
234
234
  },
235
+ {
236
+ from: { name: 'TuiLineClampComponent', moduleSpecifier: '@taiga-ui/kit' },
237
+ to: { name: 'TuiLineClamp', moduleSpecifier: '@taiga-ui/kit' },
238
+ },
235
239
  {
236
240
  from: { name: 'TuiRangeModule', moduleSpecifier: '@taiga-ui/kit' },
237
241
  to: { name: 'TuiRange', moduleSpecifier: '@taiga-ui/kit' },
@@ -383,6 +387,10 @@ exports.IDENTIFIERS_TO_REPLACE = [
383
387
  from: { name: 'TuiCheckboxModule', moduleSpecifier: '@taiga-ui/kit' },
384
388
  to: { name: 'TuiCheckbox', moduleSpecifier: '@taiga-ui/kit' },
385
389
  },
390
+ {
391
+ from: { name: 'TuiPrimitiveCheckboxModule', moduleSpecifier: '@taiga-ui/core' },
392
+ to: { name: 'TuiCheckbox', moduleSpecifier: '@taiga-ui/kit' },
393
+ },
386
394
  {
387
395
  from: { name: 'TuiSwipeActionsModule', moduleSpecifier: '@taiga-ui/experimental' },
388
396
  to: [
@@ -394,6 +402,10 @@ exports.IDENTIFIERS_TO_REPLACE = [
394
402
  from: { name: 'TuiRadioModule', moduleSpecifier: '@taiga-ui/experimental' },
395
403
  to: { name: 'TuiRadio', moduleSpecifier: '@taiga-ui/kit', spreadInModule: true },
396
404
  },
405
+ {
406
+ from: { name: 'TuiRadioModule', moduleSpecifier: '@taiga-ui/core' },
407
+ to: { name: 'TuiRadio', moduleSpecifier: '@taiga-ui/kit', spreadInModule: true },
408
+ },
397
409
  {
398
410
  from: { name: 'TuiAvatarModule', moduleSpecifier: '@taiga-ui/experimental' },
399
411
  to: { name: 'TuiAvatar', moduleSpecifier: '@taiga-ui/kit' },
@@ -436,7 +448,11 @@ exports.IDENTIFIERS_TO_REPLACE = [
436
448
  },
437
449
  {
438
450
  from: { name: 'TuiBadgedContentModule', moduleSpecifier: '@taiga-ui/kit' },
439
- to: { name: 'TuiBadgedContent', moduleSpecifier: '@taiga-ui/kit' },
451
+ to: {
452
+ name: 'TuiBadgedContent',
453
+ moduleSpecifier: '@taiga-ui/kit',
454
+ spreadInModule: true,
455
+ },
440
456
  },
441
457
  {
442
458
  from: {
@@ -562,7 +578,7 @@ exports.IDENTIFIERS_TO_REPLACE = [
562
578
  {
563
579
  from: { name: 'TuiResizeModule', moduleSpecifier: '@taiga-ui/cdk' },
564
580
  to: {
565
- name: 'ResizeObserverDirective',
581
+ name: 'WaResizeObserver',
566
582
  moduleSpecifier: '@ng-web-apis/resize-observer',
567
583
  },
568
584
  },
@@ -645,6 +661,14 @@ exports.IDENTIFIERS_TO_REPLACE = [
645
661
  from: { name: 'TuiIconModule', moduleSpecifier: '@taiga-ui/experimental' },
646
662
  to: { name: 'TuiIcon', moduleSpecifier: '@taiga-ui/core' },
647
663
  },
664
+ {
665
+ from: { name: 'TuiCheckboxComponent', moduleSpecifier: '@taiga-ui/kit' },
666
+ to: { name: 'TuiCheckbox', moduleSpecifier: '@taiga-ui/kit' },
667
+ },
668
+ {
669
+ from: { name: 'TuiCheckboxLabeledComponent', moduleSpecifier: '@taiga-ui/kit' },
670
+ to: { name: 'TuiCheckbox', moduleSpecifier: '@taiga-ui/kit' },
671
+ },
648
672
  {
649
673
  from: { name: 'TuiCheckboxLabeledModule', moduleSpecifier: '@taiga-ui/kit' },
650
674
  to: { name: 'TuiLabel', moduleSpecifier: '@taiga-ui/core' },
@@ -653,13 +677,35 @@ exports.IDENTIFIERS_TO_REPLACE = [
653
677
  from: { name: 'TuiRadioLabeledModule', moduleSpecifier: '@taiga-ui/kit' },
654
678
  to: { name: 'TuiLabel', moduleSpecifier: '@taiga-ui/core' },
655
679
  },
680
+ {
681
+ from: { name: 'TuiRadioLabeledComponent', moduleSpecifier: '@taiga-ui/kit' },
682
+ to: { name: 'TuiRadioComponent', moduleSpecifier: '@taiga-ui/kit' },
683
+ },
684
+ {
685
+ from: { name: 'TuiCheckboxBlockModule', moduleSpecifier: '@taiga-ui/kit' },
686
+ to: [
687
+ { name: 'TuiBlock', moduleSpecifier: '@taiga-ui/kit' },
688
+ { name: 'TuiCheckbox', moduleSpecifier: '@taiga-ui/kit' },
689
+ ],
690
+ },
691
+ {
692
+ from: { name: 'TuiRadioBlockModule', moduleSpecifier: '@taiga-ui/kit' },
693
+ to: [
694
+ { name: 'TuiBlock', moduleSpecifier: '@taiga-ui/kit' },
695
+ { name: 'TuiRadio', moduleSpecifier: '@taiga-ui/kit', spreadInModule: true },
696
+ ],
697
+ },
656
698
  {
657
699
  from: { name: 'TuiTabsModule', moduleSpecifier: '@taiga-ui/kit' },
658
700
  to: { name: 'TuiTabs', moduleSpecifier: '@taiga-ui/kit', spreadInModule: true },
659
701
  },
660
702
  {
661
703
  from: { name: 'TuiHostedDropdownModule', moduleSpecifier: '@taiga-ui/core' },
662
- to: { name: 'TuiDropdown', moduleSpecifier: '@taiga-ui/core' },
704
+ to: {
705
+ name: 'TuiDropdown',
706
+ moduleSpecifier: '@taiga-ui/core',
707
+ spreadInModule: true,
708
+ },
663
709
  },
664
710
  {
665
711
  from: { name: 'TuiTitleModule', moduleSpecifier: '@taiga-ui/experimental' },
@@ -699,7 +745,7 @@ exports.IDENTIFIERS_TO_REPLACE = [
699
745
  },
700
746
  {
701
747
  from: { name: 'TuiSvgModule', moduleSpecifier: '@taiga-ui/core' },
702
- to: { name: 'TuiSvgComponent', moduleSpecifier: '@taiga-ui/legacy' },
748
+ to: { name: 'TuiIcon', moduleSpecifier: '@taiga-ui/core' },
703
749
  },
704
750
  {
705
751
  from: { name: 'TuiCellModule', moduleSpecifier: '@taiga-ui/experimental' },
@@ -746,15 +792,12 @@ exports.IDENTIFIERS_TO_REPLACE = [
746
792
  to: { name: 'TuiLink', moduleSpecifier: '@taiga-ui/core' },
747
793
  },
748
794
  {
749
- from: { name: 'TuiInteractiveStateT', moduleSpecifier: '@taiga-ui/core' },
750
- to: { name: 'TuiInteractiveState', moduleSpecifier: '@taiga-ui/core' },
795
+ from: { name: 'TuiLinkComponent', moduleSpecifier: '@taiga-ui/core' },
796
+ to: { name: 'TuiLink', moduleSpecifier: '@taiga-ui/core' },
751
797
  },
752
798
  {
753
- from: { name: 'TuiButtonModule', moduleSpecifier: '@taiga-ui/core' },
754
- to: {
755
- name: 'TuiButton',
756
- moduleSpecifier: '@taiga-ui/core',
757
- },
799
+ from: { name: 'TuiInteractiveStateT', moduleSpecifier: '@taiga-ui/core' },
800
+ to: { name: 'TuiInteractiveState', moduleSpecifier: '@taiga-ui/core' },
758
801
  },
759
802
  {
760
803
  from: { name: 'TUI_ARROW', moduleSpecifier: '@taiga-ui/kit' },
@@ -770,6 +813,20 @@ exports.IDENTIFIERS_TO_REPLACE = [
770
813
  moduleSpecifier: '@taiga-ui/legacy',
771
814
  },
772
815
  },
816
+ {
817
+ from: { name: 'TuiDialog', moduleSpecifier: '@taiga-ui/cdk' },
818
+ to: {
819
+ name: 'TuiPopover',
820
+ moduleSpecifier: '@taiga-ui/cdk',
821
+ },
822
+ },
823
+ {
824
+ from: { name: 'TuiBaseDialogContext', moduleSpecifier: '@taiga-ui/cdk' },
825
+ to: {
826
+ name: 'TuiPopoverContext',
827
+ moduleSpecifier: '@taiga-ui/cdk',
828
+ },
829
+ },
773
830
  {
774
831
  from: { name: 'TuiDialogModule', moduleSpecifier: '@taiga-ui/core' },
775
832
  to: {
@@ -777,6 +834,20 @@ exports.IDENTIFIERS_TO_REPLACE = [
777
834
  moduleSpecifier: '@taiga-ui/core',
778
835
  },
779
836
  },
837
+ {
838
+ from: { name: 'TuiButtonModule', moduleSpecifier: '@taiga-ui/core' },
839
+ to: {
840
+ name: 'TuiButton',
841
+ moduleSpecifier: '@taiga-ui/core',
842
+ },
843
+ },
844
+ {
845
+ from: { name: 'TuiButtonComponent', moduleSpecifier: '@taiga-ui/core' },
846
+ to: {
847
+ name: 'TuiButton',
848
+ moduleSpecifier: '@taiga-ui/core',
849
+ },
850
+ },
780
851
  {
781
852
  from: { name: 'TuiButtonModule', moduleSpecifier: '@taiga-ui/experimental' },
782
853
  to: {
@@ -784,6 +855,16 @@ exports.IDENTIFIERS_TO_REPLACE = [
784
855
  moduleSpecifier: '@taiga-ui/core',
785
856
  },
786
857
  },
858
+ {
859
+ from: {
860
+ name: 'tuiButtonOptionsProvider',
861
+ moduleSpecifier: '@taiga-ui/experimental',
862
+ },
863
+ to: {
864
+ name: 'tuiButtonOptionsProvider',
865
+ moduleSpecifier: '@taiga-ui/core',
866
+ },
867
+ },
787
868
  {
788
869
  from: { name: 'TuiLetModule', moduleSpecifier: '@taiga-ui/cdk' },
789
870
  to: { name: 'TuiLet', moduleSpecifier: '@taiga-ui/cdk' },
@@ -959,16 +1040,6 @@ exports.IDENTIFIERS_TO_REPLACE = [
959
1040
  moduleSpecifier: '@taiga-ui/proprietary',
960
1041
  },
961
1042
  },
962
- {
963
- from: {
964
- name: 'TuiIllustrationsModule',
965
- moduleSpecifier: '@taiga-ui/proprietary-icons',
966
- },
967
- to: {
968
- name: 'TuiIllustrationModePipe',
969
- moduleSpecifier: '@taiga-ui/proprietary',
970
- },
971
- },
972
1043
  {
973
1044
  from: {
974
1045
  name: 'ProductsNavigationModule',
@@ -1244,6 +1315,26 @@ exports.IDENTIFIERS_TO_REPLACE = [
1244
1315
  moduleSpecifier: '@taiga-ui/kit',
1245
1316
  },
1246
1317
  },
1318
+ {
1319
+ from: {
1320
+ name: 'TuiButtonGroupModule',
1321
+ moduleSpecifier: '@taiga-ui/experimental',
1322
+ },
1323
+ to: {
1324
+ name: 'TuiButtonGroup',
1325
+ moduleSpecifier: '@taiga-ui/kit',
1326
+ },
1327
+ },
1328
+ {
1329
+ from: {
1330
+ name: 'TuiButtonVerticalModule',
1331
+ moduleSpecifier: '@taiga-ui/experimental',
1332
+ },
1333
+ to: {
1334
+ name: 'TuiButtonVertical',
1335
+ moduleSpecifier: '@taiga-ui/kit',
1336
+ },
1337
+ },
1247
1338
  {
1248
1339
  from: {
1249
1340
  name: 'TuiPreviewModule',
@@ -1315,8 +1406,9 @@ exports.IDENTIFIERS_TO_REPLACE = [
1315
1406
  moduleSpecifier: '@taiga-ui/kit',
1316
1407
  },
1317
1408
  to: {
1318
- name: 'TuiInputFiles',
1409
+ name: 'TuiFiles',
1319
1410
  moduleSpecifier: '@taiga-ui/kit',
1411
+ spreadInModule: true,
1320
1412
  },
1321
1413
  },
1322
1414
  {
@@ -1397,6 +1489,7 @@ exports.IDENTIFIERS_TO_REPLACE = [
1397
1489
  to: {
1398
1490
  name: 'TuiProprietaryNavigation',
1399
1491
  moduleSpecifier: '@taiga-ui/proprietary',
1492
+ spreadInModule: true,
1400
1493
  },
1401
1494
  },
1402
1495
  {
@@ -1769,6 +1862,16 @@ exports.IDENTIFIERS_TO_REPLACE = [
1769
1862
  moduleSpecifier: '@taiga-ui/legacy',
1770
1863
  },
1771
1864
  },
1865
+ {
1866
+ from: {
1867
+ name: 'TuiInputComponent',
1868
+ moduleSpecifier: '@taiga-ui/kit',
1869
+ },
1870
+ to: {
1871
+ name: 'TuiInputComponent',
1872
+ moduleSpecifier: '@taiga-ui/legacy',
1873
+ },
1874
+ },
1772
1875
  {
1773
1876
  from: {
1774
1877
  name: 'TuiInputCopyModule',
@@ -2419,4 +2522,124 @@ exports.IDENTIFIERS_TO_REPLACE = [
2419
2522
  moduleSpecifier: '@taiga-ui/core',
2420
2523
  },
2421
2524
  },
2525
+ {
2526
+ from: {
2527
+ name: 'TuiLabelComponent',
2528
+ moduleSpecifier: '@taiga-ui/core',
2529
+ },
2530
+ to: {
2531
+ name: 'TuiLabel',
2532
+ moduleSpecifier: '@taiga-ui/core',
2533
+ },
2534
+ },
2535
+ {
2536
+ from: {
2537
+ name: 'ResizeObserverModule',
2538
+ moduleSpecifier: '@ng-web-apis/resize-observer',
2539
+ },
2540
+ to: {
2541
+ name: 'WaResizeObserver',
2542
+ moduleSpecifier: '@ng-web-apis/resize-observer',
2543
+ },
2544
+ },
2545
+ {
2546
+ from: {
2547
+ name: 'IntersectionObserverModule',
2548
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2549
+ },
2550
+ to: {
2551
+ name: 'WaIntersectionObserver',
2552
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2553
+ },
2554
+ },
2555
+ {
2556
+ from: {
2557
+ name: 'INTERSECTION_THRESHOLD',
2558
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2559
+ },
2560
+ to: {
2561
+ name: 'WA_INTERSECTION_THRESHOLD',
2562
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2563
+ },
2564
+ },
2565
+ {
2566
+ from: {
2567
+ name: 'INTERSECTION_ROOT_MARGIN',
2568
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2569
+ },
2570
+ to: {
2571
+ name: 'WA_INTERSECTION_ROOT_MARGIN',
2572
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2573
+ },
2574
+ },
2575
+ {
2576
+ from: {
2577
+ name: 'INTERSECTION_ROOT',
2578
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2579
+ },
2580
+ to: {
2581
+ name: 'WA_INTERSECTION_ROOT',
2582
+ moduleSpecifier: '@ng-web-apis/intersection-observer',
2583
+ },
2584
+ },
2585
+ {
2586
+ from: {
2587
+ name: 'MUTATION_OBSERVER_INIT',
2588
+ moduleSpecifier: '@ng-web-apis/mutation-observer',
2589
+ },
2590
+ to: {
2591
+ name: 'WA_MUTATION_OBSERVER_INIT',
2592
+ moduleSpecifier: '@ng-web-apis/mutation-observer',
2593
+ },
2594
+ },
2595
+ {
2596
+ from: {
2597
+ name: 'MutationObserverDirective',
2598
+ moduleSpecifier: '@ng-web-apis/mutation-observer',
2599
+ },
2600
+ to: {
2601
+ name: 'WaMutationObserver',
2602
+ moduleSpecifier: '@ng-web-apis/mutation-observer',
2603
+ },
2604
+ },
2605
+ {
2606
+ from: { name: 'WINDOW', moduleSpecifier: '@ng-web-apis/common' },
2607
+ to: { name: 'WA_WINDOW', moduleSpecifier: '@ng-web-apis/common' },
2608
+ },
2609
+ {
2610
+ from: { name: 'USER_AGENT', moduleSpecifier: '@ng-web-apis/common' },
2611
+ to: { name: 'WA_USER_AGENT', moduleSpecifier: '@ng-web-apis/common' },
2612
+ },
2613
+ {
2614
+ from: { name: 'NAVIGATOR', moduleSpecifier: '@ng-web-apis/common' },
2615
+ to: { name: 'WA_NAVIGATOR', moduleSpecifier: '@ng-web-apis/common' },
2616
+ },
2617
+ {
2618
+ from: { name: 'SESSION_STORAGE', moduleSpecifier: '@ng-web-apis/common' },
2619
+ to: { name: 'WA_SESSION_STORAGE', moduleSpecifier: '@ng-web-apis/common' },
2620
+ },
2621
+ {
2622
+ from: { name: 'PAGE_VISIBILITY', moduleSpecifier: '@ng-web-apis/common' },
2623
+ to: { name: 'WA_PAGE_VISIBILITY', moduleSpecifier: '@ng-web-apis/common' },
2624
+ },
2625
+ {
2626
+ from: { name: 'LOCATION', moduleSpecifier: '@ng-web-apis/common' },
2627
+ to: { name: 'WA_LOCATION', moduleSpecifier: '@ng-web-apis/common' },
2628
+ },
2629
+ {
2630
+ from: { name: 'PERFORMANCE', moduleSpecifier: '@ng-web-apis/common' },
2631
+ to: { name: 'WA_PERFORMANCE', moduleSpecifier: '@ng-web-apis/common' },
2632
+ },
2633
+ {
2634
+ from: { name: 'LOCAL_STORAGE', moduleSpecifier: '@ng-web-apis/common' },
2635
+ to: { name: 'WA_LOCAL_STORAGE', moduleSpecifier: '@ng-web-apis/common' },
2636
+ },
2637
+ {
2638
+ from: { name: 'ANIMATION_FRAME', moduleSpecifier: '@ng-web-apis/common' },
2639
+ to: { name: 'WA_ANIMATION_FRAME', moduleSpecifier: '@ng-web-apis/common' },
2640
+ },
2641
+ {
2642
+ from: { name: 'MaskitoModule', moduleSpecifier: '@maskito/angular' },
2643
+ to: { name: 'MaskitoDirective', moduleSpecifier: '@maskito/angular' },
2644
+ },
2422
2645
  ];
@@ -7,6 +7,7 @@ exports.INPUTS_TO_REMOVE = [
7
7
  { inputName: 'showLoader', tags: ['tui-toggle'] },
8
8
  { inputName: 'singleColor', tags: ['tui-toggle'] },
9
9
  { inputName: 'hoverable', tags: ['tui-badge'] },
10
+ { inputName: 'singleColor', tags: ['tui-money'] },
10
11
  {
11
12
  inputName: 'iconAlign',
12
13
  tags: ['button', 'a'],
@@ -147,4 +147,14 @@ exports.MIGRATION_WARNINGS = [
147
147
  moduleSpecifier: '@taiga-ui/kit',
148
148
  message: 'TUI_ARROW is deprecated, Use tuiChevron directive instead. See example https://taiga-ui.dev/components/data-list#links',
149
149
  },
150
+ {
151
+ name: 'TuiMoneyComponent',
152
+ moduleSpecifier: '@taiga-ui/addon-commerce',
153
+ message: 'TuiMoneyComponent is deprecated, Use tuiAmount pipe instead. See example https://taiga-ui.dev/pipes/amount',
154
+ },
155
+ {
156
+ name: 'TuiIllustrationsModule',
157
+ moduleSpecifier: '@taiga-ui/proprietary-icons',
158
+ message: 'Import TuiIconPipe and use <img [src]="icon | tuiIcon" /> instead. See https://taiga-ui.tcsbank.ru/icons',
159
+ },
150
160
  ];
@@ -34,4 +34,12 @@ exports.MODULES_TO_REMOVE = [
34
34
  name: 'TuiModeModule',
35
35
  moduleSpecifier: '@taiga-ui/core',
36
36
  },
37
+ {
38
+ name: 'TuiIconsModule',
39
+ moduleSpecifier: '@taiga-ui/experimental',
40
+ },
41
+ {
42
+ name: 'TuiMobileTabsModule',
43
+ moduleSpecifier: '@taiga-ui/addon-mobile',
44
+ },
37
45
  ];
@@ -1,20 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TAGS_TO_REPLACE = void 0;
4
+ const elements_1 = require("../../../../utils/templates/elements");
4
5
  exports.TAGS_TO_REPLACE = [
5
6
  { from: 'tui-card', to: 'tui-thumbnail-card' },
6
7
  { from: 'tui-text-area', to: 'tui-textarea' },
8
+ { from: 'tui-svg', to: 'tui-icon' },
7
9
  {
8
10
  from: 'tui-input-count',
9
11
  to: 'tui-input-number',
10
12
  addAttributes: ['decimal="never"'],
11
- filterFn: (element) => element.attrs.some((attr) => attr.name === '[step]'),
13
+ filterFn: (element) => (0, elements_1.hasElementAttribute)(element, 'step'),
12
14
  },
13
15
  {
14
16
  from: 'tui-input-count',
15
17
  to: 'tui-input-number',
16
18
  addAttributes: ['decimal="never"', '[step]="1"'],
17
- filterFn: (element) => element.attrs.every((attr) => attr.name !== '[step]'),
19
+ filterFn: (element) => !(0, elements_1.hasElementAttribute)(element, 'step'),
18
20
  },
19
21
  {
20
22
  from: 'tui-money',
@@ -30,6 +32,16 @@ exports.TAGS_TO_REPLACE = [
30
32
  to: 'input',
31
33
  addAttributes: ['tuiRadio', 'type="radio"'],
32
34
  },
35
+ {
36
+ from: 'tui-checkbox-block',
37
+ to: 'input',
38
+ addAttributes: ['tuiCheckbox', 'type="checkbox"'],
39
+ },
40
+ {
41
+ from: 'tui-radio-block',
42
+ to: 'input',
43
+ addAttributes: ['tuiRadio', 'type="radio"'],
44
+ },
33
45
  {
34
46
  from: 'tui-hosted-dropdown',
35
47
  to: 'div',