@taiga-ui/legacy 4.52.0-canary.bf9131e → 4.52.0-canary.c8448e0

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 (234) hide show
  1. package/README.md +1 -1
  2. package/components/dialog/dialog.component.d.ts +5 -5
  3. package/components/dialog/dialog.directive.d.ts +4 -3
  4. package/components/dialog/dialog.interfaces.d.ts +3 -4
  5. package/components/dialog/dialog.service.d.ts +5 -2
  6. package/components/dialog/dialog.tokens.d.ts +1 -3
  7. package/components/index.d.ts +1 -17
  8. package/components/mobile-dialog/index.d.ts +3 -0
  9. package/components/mobile-dialog/mobile-dialog.component.d.ts +10 -0
  10. package/components/mobile-dialog/mobile-dialog.options.d.ts +10 -0
  11. package/components/mobile-dialog/mobile-dialog.service.d.ts +14 -0
  12. package/components/pdf-viewer/pdf-viewer.component.d.ts +2 -2
  13. package/components/pdf-viewer/pdf-viewer.directive.d.ts +4 -3
  14. package/components/pdf-viewer/pdf-viewer.options.d.ts +1 -3
  15. package/components/pdf-viewer/pdf-viewer.service.d.ts +7 -3
  16. package/fesm2022/taiga-ui-legacy-components-dialog.mjs +40 -33
  17. package/fesm2022/taiga-ui-legacy-components-dialog.mjs.map +1 -1
  18. package/fesm2022/taiga-ui-legacy-components-mobile-dialog.mjs +62 -0
  19. package/fesm2022/taiga-ui-legacy-components-mobile-dialog.mjs.map +1 -0
  20. package/fesm2022/taiga-ui-legacy-components-pdf-viewer.mjs +34 -28
  21. package/fesm2022/taiga-ui-legacy-components-pdf-viewer.mjs.map +1 -1
  22. package/fesm2022/taiga-ui-legacy-components.mjs +1 -17
  23. package/fesm2022/taiga-ui-legacy-components.mjs.map +1 -1
  24. package/fesm2022/taiga-ui-legacy.mjs +85 -4
  25. package/fesm2022/taiga-ui-legacy.mjs.map +1 -1
  26. package/index.d.ts +1 -4
  27. package/package.json +16 -111
  28. package/pure.d.ts +23 -0
  29. package/classes/abstract-native-select.d.ts +0 -22
  30. package/classes/abstract-textfield-host.d.ts +0 -19
  31. package/classes/control.d.ts +0 -60
  32. package/classes/controller.d.ts +0 -9
  33. package/classes/index.d.ts +0 -9
  34. package/classes/interactive.d.ts +0 -34
  35. package/classes/multiple-control.d.ts +0 -11
  36. package/classes/named-day.d.ts +0 -11
  37. package/classes/nullable-control.d.ts +0 -10
  38. package/classes/stringifiable-item.d.ts +0 -11
  39. package/components/arrow/arrow.component.d.ts +0 -17
  40. package/components/arrow/arrow.options.d.ts +0 -19
  41. package/components/arrow/arrow.providers.d.ts +0 -23
  42. package/components/arrow/index.d.ts +0 -3
  43. package/components/input/index.d.ts +0 -3
  44. package/components/input/input.component.d.ts +0 -32
  45. package/components/input/input.directive.d.ts +0 -12
  46. package/components/input/input.module.d.ts +0 -16
  47. package/components/input-date-range/index.d.ts +0 -3
  48. package/components/input-date-range/input-date-range.component.d.ts +0 -67
  49. package/components/input-date-range/input-date-range.directive.d.ts +0 -16
  50. package/components/input-date-range/input-date-range.module.d.ts +0 -22
  51. package/components/input-date-time/index.d.ts +0 -3
  52. package/components/input-date-time/input-date-time.component.d.ts +0 -88
  53. package/components/input-date-time/input-date-time.directive.d.ts +0 -17
  54. package/components/input-date-time/input-date-time.module.d.ts +0 -23
  55. package/components/input-date-time/native-date-time/native-date-time.directive.d.ts +0 -13
  56. package/components/input-month-range/index.d.ts +0 -3
  57. package/components/input-month-range/input-month-range.component.d.ts +0 -38
  58. package/components/input-month-range/input-month-range.directive.d.ts +0 -23
  59. package/components/input-month-range/input-month-range.module.d.ts +0 -18
  60. package/components/input-number/index.d.ts +0 -4
  61. package/components/input-number/input-number.component.d.ts +0 -63
  62. package/components/input-number/input-number.directive.d.ts +0 -16
  63. package/components/input-number/input-number.module.d.ts +0 -18
  64. package/components/input-number/input-number.options.d.ts +0 -29
  65. package/components/input-range/index.d.ts +0 -2
  66. package/components/input-range/input-range.component.d.ts +0 -56
  67. package/components/input-range/input-range.module.d.ts +0 -19
  68. package/components/input-slider/index.d.ts +0 -2
  69. package/components/input-slider/input-slider.component.d.ts +0 -42
  70. package/components/input-slider/input-slider.module.d.ts +0 -18
  71. package/components/input-tag/index.d.ts +0 -3
  72. package/components/input-tag/input-tag.component.d.ts +0 -103
  73. package/components/input-tag/input-tag.module.d.ts +0 -22
  74. package/components/input-tag/input-tag.options.d.ts +0 -27
  75. package/components/multi-select/hide-selected.pipe.d.ts +0 -11
  76. package/components/multi-select/index.d.ts +0 -10
  77. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +0 -23
  78. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +0 -8
  79. package/components/multi-select/multi-select.component.d.ts +0 -71
  80. package/components/multi-select/multi-select.directive.d.ts +0 -14
  81. package/components/multi-select/multi-select.module.d.ts +0 -31
  82. package/components/multi-select/multi-select.options.d.ts +0 -14
  83. package/components/multi-select/native-multi-select/native-multi-select-group.component.d.ts +0 -9
  84. package/components/multi-select/native-multi-select/native-multi-select.component.d.ts +0 -8
  85. package/components/multi-select/native-multi-select/native-multi-select.d.ts +0 -11
  86. package/components/multi-select-option/index.d.ts +0 -2
  87. package/components/multi-select-option/multi-select-option.component.d.ts +0 -9
  88. package/components/multi-select-option/multi-select-option.module.d.ts +0 -9
  89. package/components/primitive-textfield/index.d.ts +0 -7
  90. package/components/primitive-textfield/primitive-textfield-options.d.ts +0 -21
  91. package/components/primitive-textfield/primitive-textfield-types.d.ts +0 -11
  92. package/components/primitive-textfield/primitive-textfield.component.d.ts +0 -73
  93. package/components/primitive-textfield/primitive-textfield.directive.d.ts +0 -14
  94. package/components/primitive-textfield/primitive-textfield.module.d.ts +0 -21
  95. package/components/primitive-textfield/textfield/textfield.component.d.ts +0 -13
  96. package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +0 -22
  97. package/components/select/index.d.ts +0 -6
  98. package/components/select/native-select/native-select-group.component.d.ts +0 -17
  99. package/components/select/native-select/native-select.component.d.ts +0 -16
  100. package/components/select/select.component.d.ts +0 -45
  101. package/components/select/select.directive.d.ts +0 -16
  102. package/components/select/select.module.d.ts +0 -24
  103. package/components/select/select.options.d.ts +0 -25
  104. package/components/select-option/index.d.ts +0 -2
  105. package/components/select-option/select-option.component.d.ts +0 -27
  106. package/components/select-option/select-option.module.d.ts +0 -10
  107. package/components/tag/index.d.ts +0 -3
  108. package/components/tag/tag.component.d.ts +0 -44
  109. package/components/tag/tag.module.d.ts +0 -16
  110. package/components/tag/tag.options.d.ts +0 -27
  111. package/components/textarea/index.d.ts +0 -3
  112. package/components/textarea/textarea.component.d.ts +0 -54
  113. package/components/textarea/textarea.directive.d.ts +0 -12
  114. package/components/textarea/textarea.module.d.ts +0 -21
  115. package/components/tooltip/index.d.ts +0 -2
  116. package/components/tooltip/tooltip.component.d.ts +0 -12
  117. package/components/tooltip/tooltip.module.d.ts +0 -13
  118. package/directives/index.d.ts +0 -5
  119. package/directives/legacy-dropdown-open-monitor/index.d.ts +0 -1
  120. package/directives/legacy-dropdown-open-monitor/legacy-dropdown-open-monitor.d.ts +0 -11
  121. package/directives/textfield-controller/index.d.ts +0 -14
  122. package/directives/textfield-controller/textfield-appearance.directive.d.ts +0 -9
  123. package/directives/textfield-controller/textfield-cleaner.directive.d.ts +0 -9
  124. package/directives/textfield-controller/textfield-controller.module.d.ts +0 -17
  125. package/directives/textfield-controller/textfield-controller.provider.d.ts +0 -4
  126. package/directives/textfield-controller/textfield-custom-content.directive.d.ts +0 -10
  127. package/directives/textfield-controller/textfield-filler.directive.d.ts +0 -9
  128. package/directives/textfield-controller/textfield-icon-left.directive.d.ts +0 -12
  129. package/directives/textfield-controller/textfield-icon.directive.d.ts +0 -12
  130. package/directives/textfield-controller/textfield-label-outside.directive.d.ts +0 -9
  131. package/directives/textfield-controller/textfield-postfix.directive.d.ts +0 -9
  132. package/directives/textfield-controller/textfield-prefix.directive.d.ts +0 -9
  133. package/directives/textfield-controller/textfield-size.directive.d.ts +0 -10
  134. package/directives/textfield-controller/textfield.controller.d.ts +0 -41
  135. package/directives/textfield-controller/textfield.options.d.ts +0 -19
  136. package/directives/unfinished-validator/index.d.ts +0 -2
  137. package/directives/unfinished-validator/unfinished-validator.directive.d.ts +0 -10
  138. package/directives/unfinished-validator/unfinished.validator.d.ts +0 -4
  139. package/directives/value-accessor/index.d.ts +0 -3
  140. package/directives/value-accessor/value-accessor.directive.d.ts +0 -5
  141. package/directives/value-accessor/value-accessor.module.d.ts +0 -7
  142. package/directives/value-accessor/value-accessor.provider.d.ts +0 -2
  143. package/directives/wrapper/README.md +0 -19
  144. package/directives/wrapper/index.d.ts +0 -2
  145. package/directives/wrapper/wrapper.directive.d.ts +0 -22
  146. package/directives/wrapper/wrapper.module.d.ts +0 -10
  147. package/fesm2022/taiga-ui-legacy-classes.mjs +0 -415
  148. package/fesm2022/taiga-ui-legacy-classes.mjs.map +0 -1
  149. package/fesm2022/taiga-ui-legacy-components-arrow.mjs +0 -85
  150. package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +0 -1
  151. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +0 -356
  152. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +0 -1
  153. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +0 -465
  154. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +0 -1
  155. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +0 -221
  156. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +0 -1
  157. package/fesm2022/taiga-ui-legacy-components-input-number.mjs +0 -390
  158. package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +0 -1
  159. package/fesm2022/taiga-ui-legacy-components-input-range.mjs +0 -261
  160. package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +0 -1
  161. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +0 -199
  162. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +0 -1
  163. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +0 -524
  164. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +0 -1
  165. package/fesm2022/taiga-ui-legacy-components-input.mjs +0 -155
  166. package/fesm2022/taiga-ui-legacy-components-input.mjs.map +0 -1
  167. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +0 -47
  168. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +0 -1
  169. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +0 -690
  170. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +0 -1
  171. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +0 -454
  172. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +0 -1
  173. package/fesm2022/taiga-ui-legacy-components-select-option.mjs +0 -88
  174. package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +0 -1
  175. package/fesm2022/taiga-ui-legacy-components-select.mjs +0 -353
  176. package/fesm2022/taiga-ui-legacy-components-select.mjs.map +0 -1
  177. package/fesm2022/taiga-ui-legacy-components-tag.mjs +0 -225
  178. package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +0 -1
  179. package/fesm2022/taiga-ui-legacy-components-textarea.mjs +0 -262
  180. package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +0 -1
  181. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +0 -53
  182. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +0 -1
  183. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +0 -50
  184. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs.map +0 -1
  185. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +0 -401
  186. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +0 -1
  187. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +0 -49
  188. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +0 -1
  189. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +0 -44
  190. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +0 -1
  191. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +0 -99
  192. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +0 -1
  193. package/fesm2022/taiga-ui-legacy-directives.mjs +0 -10
  194. package/fesm2022/taiga-ui-legacy-directives.mjs.map +0 -1
  195. package/fesm2022/taiga-ui-legacy-tokens.mjs +0 -384
  196. package/fesm2022/taiga-ui-legacy-tokens.mjs.map +0 -1
  197. package/fesm2022/taiga-ui-legacy-utils.mjs +0 -268
  198. package/fesm2022/taiga-ui-legacy-utils.mjs.map +0 -1
  199. package/styles/mixins/mixins.less +0 -239
  200. package/styles/mixins/mixins.scss +0 -224
  201. package/styles/mixins/textfield.less +0 -324
  202. package/styles/mixins/textfield.scss +0 -308
  203. package/styles/taiga-ui-local.less +0 -3
  204. package/styles/taiga-ui-local.scss +0 -3
  205. package/tokens/countries-masks.d.ts +0 -9
  206. package/tokens/focusable-item-accessor.d.ts +0 -25
  207. package/tokens/fonts-ready.d.ts +0 -6
  208. package/tokens/icons.d.ts +0 -6
  209. package/tokens/index.d.ts +0 -14
  210. package/tokens/is-apple.d.ts +0 -6
  211. package/tokens/is-chromium.d.ts +0 -6
  212. package/tokens/is-firefox.d.ts +0 -6
  213. package/tokens/is-stackblitz.d.ts +0 -5
  214. package/tokens/month-formatter.d.ts +0 -10
  215. package/tokens/sanitizer.d.ts +0 -6
  216. package/tokens/textfield-appearance.d.ts +0 -7
  217. package/tokens/textfield-host.d.ts +0 -23
  218. package/tokens/touch-supported.d.ts +0 -5
  219. package/tokens/value-accessor.d.ts +0 -7
  220. package/utils/capitalize-first-letter.d.ts +0 -4
  221. package/utils/date-mode-maskito-adapter.d.ts +0 -6
  222. package/utils/format-phone.d.ts +0 -30
  223. package/utils/get-border.d.ts +0 -5
  224. package/utils/get-max-allowed-phone-length.d.ts +0 -24
  225. package/utils/get-safe-area-size.d.ts +0 -7
  226. package/utils/icons-path-factory.d.ts +0 -13
  227. package/utils/index.d.ts +0 -14
  228. package/utils/is-apple.d.ts +0 -5
  229. package/utils/is-presumed-html-string.d.ts +0 -4
  230. package/utils/iso-to-country-code.d.ts +0 -13
  231. package/utils/not-kz-region.d.ts +0 -20
  232. package/utils/process-icon.d.ts +0 -4
  233. package/utils/specific-dropdown-controllers.d.ts +0 -4
  234. package/utils/status.d.ts +0 -4
@@ -1,14 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ChangeDetectionStrategy, Component, InjectionToken, Injectable, Directive } from '@angular/core';
2
+ import { inject, ChangeDetectionStrategy, Component, Injectable, input, Directive } from '@angular/core';
3
3
  import * as i1 from '@taiga-ui/cdk/directives/animated';
4
4
  import { TuiAnimated } from '@taiga-ui/cdk/directives/animated';
5
5
  import { TuiButton } from '@taiga-ui/core/components/button';
6
6
  import { TUI_CLOSE_WORD, TUI_COMMON_ICONS } from '@taiga-ui/core/tokens';
7
7
  import { injectContext, PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
8
- import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
9
- import { TuiPopoverService, tuiAsPopover } from '@taiga-ui/cdk/services';
10
- import { TUI_DIALOGS } from '@taiga-ui/core/components/dialog';
11
- import { tuiProvideOptions } from '@taiga-ui/cdk/utils/miscellaneous';
8
+ import * as i1$1 from '@taiga-ui/cdk/portals';
9
+ import { tuiAsPortal, TuiPortalDirective } from '@taiga-ui/cdk/portals';
10
+ import { TuiModalService } from '@taiga-ui/core/portals/modal';
11
+ import { tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
12
12
 
13
13
  class TuiPdfViewerComponent {
14
14
  constructor() {
@@ -19,14 +19,14 @@ class TuiPdfViewerComponent {
19
19
  onKeyDownEsc() {
20
20
  this.context.$implicit.complete();
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiPdfViewerComponent, isStandalone: true, selector: "tui-pdf-viewer", host: { listeners: { "document:keydown.esc": "onKeyDownEsc()" } }, hostDirectives: [{ directive: i1.TuiAnimated }], ngImport: i0, template: "<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n", styles: [":host{display:block;inline-size:100%;block-size:100%;box-sizing:border-box;color:#fff;background:#333639;padding-block-start:env(safe-area-inset-top);padding-block-end:env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}.t-header{display:flex;align-items:center;block-size:4rem;padding:0 1rem 0 1.5625rem;box-shadow:inset 0 -1px #535659}.t-title{margin:0;font:var(--tui-font-text-m);white-space:nowrap;text-overflow:ellipsis;padding-inline-end:.3125rem;overflow:hidden}.t-actions{display:flex;margin-inline-start:auto}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:.75rem;color:#fff;background:#ffffff52}.t-close:hover{background:#fff6}.t-content{block-size:calc(100% - 4rem);overflow:hidden}.t-iframe{inline-size:100%;block-size:100%}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: TuiPdfViewerComponent, isStandalone: true, selector: "tui-pdf-viewer", host: { listeners: { "document:keydown.esc": "onKeyDownEsc()" } }, hostDirectives: [{ directive: i1.TuiAnimated }], ngImport: i0, template: "<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n", styles: [":host{display:block;inline-size:100%;block-size:100%;box-sizing:border-box;color:#fff;background:#333639;padding-block-start:env(safe-area-inset-top);padding-block-end:env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}.t-header{display:flex;align-items:center;block-size:4rem;padding:0 1rem 0 1.5625rem;box-shadow:inset 0 -1px #535659}.t-title{margin:0;font:var(--tui-font-body-m);white-space:nowrap;text-overflow:ellipsis;padding-inline-end:.3125rem;overflow:hidden}.t-actions{display:flex;margin-inline-start:auto}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:.75rem;color:#fff;background:#ffffff52}.t-close:hover{background:#fff6}.t-content{block-size:calc(100% - 4rem);overflow:hidden}.t-iframe{inline-size:100%;block-size:100%}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerComponent, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerComponent, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: 'tui-pdf-viewer', imports: [PolymorpheusOutlet, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [TuiAnimated], host: {
28
28
  '(document:keydown.esc)': 'onKeyDownEsc()',
29
- }, template: "<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n", styles: [":host{display:block;inline-size:100%;block-size:100%;box-sizing:border-box;color:#fff;background:#333639;padding-block-start:env(safe-area-inset-top);padding-block-end:env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}.t-header{display:flex;align-items:center;block-size:4rem;padding:0 1rem 0 1.5625rem;box-shadow:inset 0 -1px #535659}.t-title{margin:0;font:var(--tui-font-text-m);white-space:nowrap;text-overflow:ellipsis;padding-inline-end:.3125rem;overflow:hidden}.t-actions{display:flex;margin-inline-start:auto}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:.75rem;color:#fff;background:#ffffff52}.t-close:hover{background:#fff6}.t-content{block-size:calc(100% - 4rem);overflow:hidden}.t-iframe{inline-size:100%;block-size:100%}\n"] }]
29
+ }, template: "<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n", styles: [":host{display:block;inline-size:100%;block-size:100%;box-sizing:border-box;color:#fff;background:#333639;padding-block-start:env(safe-area-inset-top);padding-block-end:env(safe-area-inset-bottom)}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide}.t-header{display:flex;align-items:center;block-size:4rem;padding:0 1rem 0 1.5625rem;box-shadow:inset 0 -1px #535659}.t-title{margin:0;font:var(--tui-font-body-m);white-space:nowrap;text-overflow:ellipsis;padding-inline-end:.3125rem;overflow:hidden}.t-actions{display:flex;margin-inline-start:auto}.t-close{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:.75rem;color:#fff;background:#ffffff52}.t-close:hover{background:#fff6}.t-content{block-size:calc(100% - 4rem);overflow:hidden}.t-iframe{inline-size:100%;block-size:100%}\n"] }]
30
30
  }] });
31
31
 
32
32
  const TUI_PDF_VIEWER_DEFAULT_OPTIONS = {
@@ -37,40 +37,46 @@ const TUI_PDF_VIEWER_DEFAULT_OPTIONS = {
37
37
  /**
38
38
  * Default parameters for PdfViewer component
39
39
  */
40
- const TUI_PDF_VIEWER_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_PDF_VIEWER_OPTIONS' : '', {
41
- factory: () => TUI_PDF_VIEWER_DEFAULT_OPTIONS,
42
- });
43
- function tuiPdfViewerOptionsProvider(options) {
44
- return tuiProvideOptions(TUI_PDF_VIEWER_OPTIONS, options, TUI_PDF_VIEWER_DEFAULT_OPTIONS);
45
- }
40
+ const [TUI_PDF_VIEWER_OPTIONS, tuiPdfViewerOptionsProvider] = tuiCreateOptions(TUI_PDF_VIEWER_DEFAULT_OPTIONS);
46
41
 
47
- class TuiPdfViewerService extends TuiPopoverService {
42
+ class TuiPdfViewerService extends TuiModalService {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.options = inject(TUI_PDF_VIEWER_OPTIONS);
46
+ this.content = TuiPdfViewerComponent;
47
+ }
48
48
  open(content, options = {}) {
49
49
  return super.open(content, options);
50
50
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
52
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerService, providedIn: 'root', useFactory: () => new TuiPdfViewerService(TUI_DIALOGS, TuiPdfViewerComponent, inject(TUI_PDF_VIEWER_OPTIONS)) }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
52
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerService, providedIn: 'root' }); }
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerService, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerService, decorators: [{
55
55
  type: Injectable,
56
56
  args: [{
57
57
  providedIn: 'root',
58
- useFactory: () => new TuiPdfViewerService(TUI_DIALOGS, TuiPdfViewerComponent, inject(TUI_PDF_VIEWER_OPTIONS)),
59
58
  }]
60
59
  }] });
61
60
 
62
- class TuiPdfViewerDirective extends TuiPopoverDirective {
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
64
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiPdfViewerDirective, isStandalone: true, selector: "ng-template[tuiPdfViewer]", inputs: { options: ["tuiPdfViewerOptions", "options"], open: ["tuiPdfViewer", "open"] }, outputs: { openChange: "tuiPdfViewerChange" }, providers: [tuiAsPopover(TuiPdfViewerService)], usesInheritance: true, ngImport: i0 }); }
61
+ class TuiPdfViewerDirective {
62
+ constructor() {
63
+ this.tuiPdfViewerOptions = input({});
64
+ }
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
66
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiPdfViewerDirective, isStandalone: true, selector: "ng-template[tuiPdfViewer]", inputs: { tuiPdfViewerOptions: { classPropertyName: "tuiPdfViewerOptions", publicName: "tuiPdfViewerOptions", isSignal: true, isRequired: false, transformFunction: null } }, providers: [tuiAsPortal(TuiPdfViewerService)], hostDirectives: [{ directive: i1$1.TuiPortalDirective, inputs: ["options", "tuiPdfViewerOptions", "open", "tuiPdfViewer"], outputs: ["openChange", "tuiPdfViewerChange"] }], ngImport: i0 }); }
65
67
  }
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiPdfViewerDirective, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiPdfViewerDirective, decorators: [{
67
69
  type: Directive,
68
70
  args: [{
69
- standalone: true,
70
71
  selector: 'ng-template[tuiPdfViewer]',
71
- inputs: ['options: tuiPdfViewerOptions', 'open: tuiPdfViewer'],
72
- outputs: ['openChange: tuiPdfViewerChange'],
73
- providers: [tuiAsPopover(TuiPdfViewerService)],
72
+ providers: [tuiAsPortal(TuiPdfViewerService)],
73
+ hostDirectives: [
74
+ {
75
+ directive: TuiPortalDirective,
76
+ inputs: ['options: tuiPdfViewerOptions', 'open: tuiPdfViewer'],
77
+ outputs: ['openChange: tuiPdfViewerChange'],
78
+ },
79
+ ],
74
80
  }]
75
81
  }] });
76
82
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components-pdf-viewer.mjs","sources":["../../../projects/legacy/components/pdf-viewer/pdf-viewer.component.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.template.html","../../../projects/legacy/components/pdf-viewer/pdf-viewer.options.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.service.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.directive.ts","../../../projects/legacy/components/pdf-viewer/taiga-ui-legacy-components-pdf-viewer.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TUI_CLOSE_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {type TuiPdfViewerOptions} from './pdf-viewer.options';\n\n@Component({\n selector: 'tui-pdf-viewer',\n imports: [PolymorpheusOutlet, TuiButton],\n templateUrl: './pdf-viewer.template.html',\n styleUrl: './pdf-viewer.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiAnimated],\n host: {\n '(document:keydown.esc)': 'onKeyDownEsc()',\n },\n})\nexport class TuiPdfViewerComponent<I, O> {\n protected readonly closeWord = inject(TUI_CLOSE_WORD);\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly context = injectContext<TuiPopover<TuiPdfViewerOptions<I>, O>>();\n\n protected onKeyDownEsc(): void {\n this.context.$implicit.complete();\n }\n}\n","<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n","import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const TUI_PDF_VIEWER_DEFAULT_OPTIONS: TuiPdfViewerOptions = {\n label: '',\n actions: '',\n data: undefined,\n};\n\n/**\n * Default parameters for PdfViewer component\n */\nexport const TUI_PDF_VIEWER_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_PDF_VIEWER_OPTIONS' : '',\n {\n factory: () => TUI_PDF_VIEWER_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiPdfViewerOptionsProvider(\n options: Partial<TuiPdfViewerOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_PDF_VIEWER_OPTIONS,\n options,\n TUI_PDF_VIEWER_DEFAULT_OPTIONS,\n );\n}\n\nexport interface TuiPdfViewerOptions<I = undefined> {\n readonly actions: PolymorpheusContent<TuiPdfViewerOptions<I>>;\n readonly data: I;\n readonly label: string;\n}\n","import {inject, Injectable} from '@angular/core';\nimport {type SafeResourceUrl} from '@angular/platform-browser';\nimport {type TuiPopoverContext, TuiPopoverService} from '@taiga-ui/cdk/services';\nimport {TUI_DIALOGS} from '@taiga-ui/core/components/dialog';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {type Observable} from 'rxjs';\n\nimport {TuiPdfViewerComponent} from './pdf-viewer.component';\nimport {TUI_PDF_VIEWER_OPTIONS, type TuiPdfViewerOptions} from './pdf-viewer.options';\n\ntype Content<G> = PolymorpheusContent<\n TuiPdfViewerOptions<unknown> & TuiPopoverContext<G>\n>;\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiPdfViewerService(\n TUI_DIALOGS,\n TuiPdfViewerComponent,\n inject(TUI_PDF_VIEWER_OPTIONS),\n ),\n})\nexport class TuiPdfViewerService extends TuiPopoverService<TuiPdfViewerOptions<unknown>> {\n public override open<G>(\n content: Content<G> | SafeResourceUrl,\n options: Partial<TuiPdfViewerOptions<any>> = {},\n ): Observable<G> {\n return super.open(content as Content<G>, options);\n }\n}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport {type TuiPdfViewerOptions} from './pdf-viewer.options';\nimport {TuiPdfViewerService} from './pdf-viewer.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiPdfViewer]',\n inputs: ['options: tuiPdfViewerOptions', 'open: tuiPdfViewer'],\n outputs: ['openChange: tuiPdfViewerChange'],\n providers: [tuiAsPopover(TuiPdfViewerService)],\n})\nexport class TuiPdfViewerDirective<T> extends TuiPopoverDirective<\n TuiPdfViewerOptions<T>\n> {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-legacy-components-pdf-viewer.mjs","sources":["../../../projects/legacy/components/pdf-viewer/pdf-viewer.component.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.template.html","../../../projects/legacy/components/pdf-viewer/pdf-viewer.options.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.service.ts","../../../projects/legacy/components/pdf-viewer/pdf-viewer.directive.ts","../../../projects/legacy/components/pdf-viewer/taiga-ui-legacy-components-pdf-viewer.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TUI_CLOSE_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {type TuiPdfViewerOptions} from './pdf-viewer.options';\n\n@Component({\n selector: 'tui-pdf-viewer',\n imports: [PolymorpheusOutlet, TuiButton],\n templateUrl: './pdf-viewer.template.html',\n styleUrl: './pdf-viewer.style.less',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiAnimated],\n host: {\n '(document:keydown.esc)': 'onKeyDownEsc()',\n },\n})\nexport class TuiPdfViewerComponent<I, O> {\n protected readonly closeWord = inject(TUI_CLOSE_WORD);\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly context =\n injectContext<TuiPortalContext<TuiPdfViewerOptions<I>, O>>();\n\n protected onKeyDownEsc(): void {\n this.context.$implicit.complete();\n }\n}\n","<header class=\"t-header\">\n <h2\n automation-id=\"tui-pdf-viewer__label\"\n class=\"t-title\"\n >\n {{ context.label }}\n </h2>\n <div class=\"t-actions\">\n <ng-container *polymorpheusOutlet=\"context.actions as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n <button\n appearance=\"\"\n size=\"s\"\n tuiIconButton\n type=\"button\"\n class=\"t-close\"\n [iconStart]=\"icons.close\"\n [style.border-radius.%]=\"100\"\n (click)=\"context.$implicit.complete()\"\n >\n {{ closeWord() }}\n </button>\n</header>\n<section class=\"t-content\">\n <iframe\n *polymorpheusOutlet=\"context.content as content; context: context\"\n title=\"pdf\"\n class=\"t-iframe\"\n [src]=\"content\"\n ></iframe>\n</section>\n","import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const TUI_PDF_VIEWER_DEFAULT_OPTIONS: TuiPdfViewerOptions = {\n label: '',\n actions: '',\n data: undefined,\n};\n\n/**\n * Default parameters for PdfViewer component\n */\nexport const [TUI_PDF_VIEWER_OPTIONS, tuiPdfViewerOptionsProvider] = tuiCreateOptions(\n TUI_PDF_VIEWER_DEFAULT_OPTIONS,\n);\n\nexport interface TuiPdfViewerOptions<I = undefined> {\n readonly actions: PolymorpheusContent<TuiPdfViewerOptions<I>>;\n readonly data: I;\n readonly label: string;\n}\n","import {inject, Injectable} from '@angular/core';\nimport {type SafeResourceUrl} from '@angular/platform-browser';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {TuiModalService} from '@taiga-ui/core/portals/modal';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\nimport {type Observable} from 'rxjs';\n\nimport {TuiPdfViewerComponent} from './pdf-viewer.component';\nimport {TUI_PDF_VIEWER_OPTIONS, type TuiPdfViewerOptions} from './pdf-viewer.options';\n\ntype Content<G> = PolymorpheusContent<TuiPortalContext<TuiPdfViewerOptions<unknown>, G>>;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiPdfViewerService extends TuiModalService<TuiPdfViewerOptions<unknown>> {\n protected readonly options = inject(TUI_PDF_VIEWER_OPTIONS);\n protected readonly content = TuiPdfViewerComponent;\n\n public override open<G>(\n content: Content<G> | SafeResourceUrl,\n options: Partial<TuiPdfViewerOptions<any>> = {},\n ): Observable<G> {\n return super.open(content as Content<G>, options);\n }\n}\n","import {Directive, input} from '@angular/core';\nimport {tuiAsPortal, TuiPortalDirective} from '@taiga-ui/cdk/portals';\n\nimport {type TuiPdfViewerOptions} from './pdf-viewer.options';\nimport {TuiPdfViewerService} from './pdf-viewer.service';\n\n@Directive({\n selector: 'ng-template[tuiPdfViewer]',\n providers: [tuiAsPortal(TuiPdfViewerService)],\n hostDirectives: [\n {\n directive: TuiPortalDirective,\n inputs: ['options: tuiPdfViewerOptions', 'open: tuiPdfViewer'],\n outputs: ['openChange: tuiPdfViewerChange'],\n },\n ],\n})\nexport class TuiPdfViewerDirective<T> {\n public readonly tuiPdfViewerOptions = input<Partial<TuiPdfViewerOptions<T>>>({});\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
@@ -1,22 +1,6 @@
1
- export * from '@taiga-ui/legacy/components/arrow';
2
1
  export * from '@taiga-ui/legacy/components/dialog';
3
- export * from '@taiga-ui/legacy/components/input';
4
- export * from '@taiga-ui/legacy/components/input-date-range';
5
- export * from '@taiga-ui/legacy/components/input-date-time';
6
- export * from '@taiga-ui/legacy/components/input-month-range';
7
- export * from '@taiga-ui/legacy/components/input-number';
8
- export * from '@taiga-ui/legacy/components/input-range';
9
- export * from '@taiga-ui/legacy/components/input-slider';
10
- export * from '@taiga-ui/legacy/components/input-tag';
11
- export * from '@taiga-ui/legacy/components/multi-select';
12
- export * from '@taiga-ui/legacy/components/multi-select-option';
2
+ export * from '@taiga-ui/legacy/components/mobile-dialog';
13
3
  export * from '@taiga-ui/legacy/components/pdf-viewer';
14
- export * from '@taiga-ui/legacy/components/primitive-textfield';
15
- export * from '@taiga-ui/legacy/components/select';
16
- export * from '@taiga-ui/legacy/components/select-option';
17
- export * from '@taiga-ui/legacy/components/tag';
18
- export * from '@taiga-ui/legacy/components/textarea';
19
- export * from '@taiga-ui/legacy/components/tooltip';
20
4
 
21
5
  /**
22
6
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components.mjs","sources":["../../../projects/legacy/components/taiga-ui-legacy-components.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
1
+ {"version":3,"file":"taiga-ui-legacy-components.mjs","sources":["../../../projects/legacy/components/taiga-ui-legacy-components.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;AAEG"}
@@ -1,10 +1,91 @@
1
- export * from '@taiga-ui/legacy/classes';
2
1
  export * from '@taiga-ui/legacy/components';
3
- export * from '@taiga-ui/legacy/directives';
4
- export * from '@taiga-ui/legacy/tokens';
5
- export * from '@taiga-ui/legacy/utils';
2
+
3
+ /// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
4
+ function decorateMethod(originalMethod) {
5
+ let previousArgs = [];
6
+ let originalFnWasCalledLeastAtOnce = false;
7
+ let pureValue;
8
+ return function tuiPureMethodPatched(...args) {
9
+ const isPure = originalFnWasCalledLeastAtOnce &&
10
+ previousArgs.length === args.length &&
11
+ args.every((arg, index) => arg === previousArgs[index]);
12
+ if (isPure) {
13
+ return pureValue;
14
+ }
15
+ previousArgs = args;
16
+ pureValue = originalMethod.apply(this, args);
17
+ originalFnWasCalledLeastAtOnce = true;
18
+ return pureValue;
19
+ };
20
+ }
21
+ function decorateGetter(originalGetter, propertyKey, enumerable = true) {
22
+ return function tuiPureGetterPatched() {
23
+ const value = originalGetter.call(this);
24
+ Object.defineProperty(this, propertyKey, { enumerable, value });
25
+ return value;
26
+ };
27
+ }
28
+ function tuiPure(target, propertyKeyOrContext, descriptor) {
29
+ if (typeof target === 'function') {
30
+ const context = propertyKeyOrContext;
31
+ if (context.kind === 'getter') {
32
+ return decorateGetter(target, context.name);
33
+ }
34
+ if (context.kind === 'method') {
35
+ return decorateMethod(target);
36
+ }
37
+ throw new TuiPureException();
38
+ }
39
+ // TODO(v5): drop compatibility for legacy "experimentalDecorators": true
40
+ const { get, enumerable, value } = descriptor;
41
+ const propertyKey = propertyKeyOrContext;
42
+ if (get) {
43
+ return {
44
+ configurable: true,
45
+ enumerable,
46
+ get: decorateGetter(get, propertyKey, enumerable),
47
+ };
48
+ }
49
+ if (typeof value !== 'function') {
50
+ throw new TuiPureException();
51
+ }
52
+ const original = value;
53
+ return {
54
+ configurable: true,
55
+ enumerable,
56
+ get() {
57
+ let previousArgs = [];
58
+ let originalFnWasCalledLeastAtOnce = false;
59
+ let pureValue;
60
+ const patched = (...args) => {
61
+ const isPure = originalFnWasCalledLeastAtOnce &&
62
+ previousArgs.length === args.length &&
63
+ args.every((arg, index) => arg === previousArgs[index]);
64
+ if (isPure) {
65
+ return pureValue;
66
+ }
67
+ previousArgs = args;
68
+ pureValue = original.apply(this, args);
69
+ originalFnWasCalledLeastAtOnce = true;
70
+ return pureValue;
71
+ };
72
+ Object.defineProperty(this, propertyKey, {
73
+ configurable: true,
74
+ value: patched,
75
+ });
76
+ return patched;
77
+ },
78
+ };
79
+ }
80
+ class TuiPureException extends Error {
81
+ constructor() {
82
+ super(ngDevMode ? 'tuiPure can only be used with functions or getters' : '');
83
+ }
84
+ }
6
85
 
7
86
  /**
8
87
  * Generated bundle index. Do not edit.
9
88
  */
89
+
90
+ export { TuiPureException, tuiPure };
10
91
  //# sourceMappingURL=taiga-ui-legacy.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy.mjs","sources":["../../../projects/legacy/taiga-ui-legacy.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAAA;;AAEG"}
1
+ {"version":3,"file":"taiga-ui-legacy.mjs","sources":["../../../projects/legacy/pure.ts","../../../projects/legacy/taiga-ui-legacy.ts"],"sourcesContent":["/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\n\nfunction decorateMethod(\n originalMethod: (...args: unknown[]) => unknown,\n): (this: object, ...args: unknown[]) => unknown {\n let previousArgs: readonly unknown[] = [];\n let originalFnWasCalledLeastAtOnce = false;\n let pureValue: unknown;\n\n return function tuiPureMethodPatched(this: object, ...args: unknown[]): unknown {\n const isPure =\n originalFnWasCalledLeastAtOnce &&\n previousArgs.length === args.length &&\n args.every((arg, index) => arg === previousArgs[index]);\n\n if (isPure) {\n return pureValue;\n }\n\n previousArgs = args;\n pureValue = originalMethod.apply(this, args);\n originalFnWasCalledLeastAtOnce = true;\n\n return pureValue;\n };\n}\n\nfunction decorateGetter(\n originalGetter: () => unknown,\n propertyKey: string | symbol,\n enumerable = true,\n): (this: object) => unknown {\n return function tuiPureGetterPatched(this: object): unknown {\n const value = originalGetter.call(this);\n\n Object.defineProperty(this, propertyKey, {enumerable, value});\n\n return value;\n };\n}\n\n/**\n * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}.\n * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned\n * value for function, skipping calculation when arguments are strictly the same.\n *\n * @throws error if used not on getter or function\n *\n * CAUTION: they must be pure.\n * @deprecated use computed instead\n */\nexport function tuiPure<T>(\n target: object,\n propertyKey: string,\n {get, enumerable, value}: TypedPropertyDescriptor<T>,\n): TypedPropertyDescriptor<T>;\n\n/**\n * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}.\n * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned\n * value for function, skipping calculation when arguments are strictly the same.\n *\n * CAUTION: they must be pure.\n * @deprecated use computed instead\n */\nexport function tuiPure<A extends unknown[], R>(\n target: (...args: A) => R,\n context: ClassGetterDecoratorContext | ClassMethodDecoratorContext,\n): (...args: A) => R;\n\nexport function tuiPure(\n target: object | ((...args: unknown[]) => unknown),\n propertyKeyOrContext:\n | ClassGetterDecoratorContext\n | ClassMethodDecoratorContext\n | string,\n descriptor?: TypedPropertyDescriptor<(...args: unknown[]) => unknown>,\n): TypedPropertyDescriptor<unknown> | ((...args: unknown[]) => unknown) {\n if (typeof target === 'function') {\n const context = propertyKeyOrContext as\n | ClassGetterDecoratorContext\n | ClassMethodDecoratorContext;\n\n if (context.kind === 'getter') {\n return decorateGetter(target as () => unknown, context.name);\n }\n\n if (context.kind === 'method') {\n return decorateMethod(target as (...args: unknown[]) => unknown);\n }\n\n throw new TuiPureException();\n }\n\n // TODO(v5): drop compatibility for legacy \"experimentalDecorators\": true\n const {get, enumerable, value} = descriptor!;\n const propertyKey = propertyKeyOrContext as string;\n\n if (get) {\n return {\n configurable: true,\n enumerable,\n get: decorateGetter(get, propertyKey, enumerable),\n };\n }\n\n if (typeof value !== 'function') {\n throw new TuiPureException();\n }\n\n const original = value;\n\n return {\n configurable: true,\n enumerable,\n get(): unknown {\n let previousArgs: readonly unknown[] = [];\n let originalFnWasCalledLeastAtOnce = false;\n let pureValue: unknown;\n\n const patched = (...args: unknown[]): unknown => {\n const isPure =\n originalFnWasCalledLeastAtOnce &&\n previousArgs.length === args.length &&\n args.every((arg, index) => arg === previousArgs[index]);\n\n if (isPure) {\n return pureValue;\n }\n\n previousArgs = args;\n pureValue = original.apply(this, args);\n originalFnWasCalledLeastAtOnce = true;\n\n return pureValue;\n };\n\n Object.defineProperty(this, propertyKey, {\n configurable: true,\n value: patched,\n });\n\n return patched as unknown;\n },\n };\n}\n\nexport class TuiPureException extends Error {\n constructor() {\n super(ngDevMode ? 'tuiPure can only be used with functions or getters' : '');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,2 @@
1
- export * from '@taiga-ui/legacy/classes';
1
+ export * from './pure';
2
2
  export * from '@taiga-ui/legacy/components';
3
- export * from '@taiga-ui/legacy/directives';
4
- export * from '@taiga-ui/legacy/tokens';
5
- export * from '@taiga-ui/legacy/utils';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/legacy",
3
- "version": "4.52.0-canary.bf9131e",
3
+ "version": "4.52.0-canary.c8448e0",
4
4
  "description": "Legacy Taiga UI entities from the previous major release to simplify migration",
5
5
  "keywords": [
6
6
  "legacy",
@@ -8,10 +8,20 @@
8
8
  "outdated"
9
9
  ],
10
10
  "homepage": "https://github.com/taiga-family/taiga-ui",
11
- "repository": "https://github.com/taiga-family/taiga-ui",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "https://github.com/taiga-family/taiga-ui"
14
+ },
12
15
  "license": "Apache-2.0",
16
+ "peerDependencies": {
17
+ "@angular/core": ">=19.0.0",
18
+ "@taiga-ui/cdk": "^4.52.0",
19
+ "@taiga-ui/core": "^4.52.0",
20
+ "@taiga-ui/polymorpheus": "^4.9.0"
21
+ },
22
+ "module": "fesm2022/taiga-ui-legacy.mjs",
23
+ "typings": "index.d.ts",
13
24
  "exports": {
14
- "./styles/*": "./styles/*",
15
25
  "./package.json": {
16
26
  "default": "./package.json"
17
27
  },
@@ -19,128 +29,23 @@
19
29
  "types": "./index.d.ts",
20
30
  "default": "./fesm2022/taiga-ui-legacy.mjs"
21
31
  },
22
- "./classes": {
23
- "types": "./classes/index.d.ts",
24
- "default": "./fesm2022/taiga-ui-legacy-classes.mjs"
25
- },
26
32
  "./components": {
27
33
  "types": "./components/index.d.ts",
28
34
  "default": "./fesm2022/taiga-ui-legacy-components.mjs"
29
35
  },
30
- "./directives": {
31
- "types": "./directives/index.d.ts",
32
- "default": "./fesm2022/taiga-ui-legacy-directives.mjs"
33
- },
34
- "./tokens": {
35
- "types": "./tokens/index.d.ts",
36
- "default": "./fesm2022/taiga-ui-legacy-tokens.mjs"
37
- },
38
- "./utils": {
39
- "types": "./utils/index.d.ts",
40
- "default": "./fesm2022/taiga-ui-legacy-utils.mjs"
41
- },
42
- "./components/arrow": {
43
- "types": "./components/arrow/index.d.ts",
44
- "default": "./fesm2022/taiga-ui-legacy-components-arrow.mjs"
45
- },
46
36
  "./components/dialog": {
47
37
  "types": "./components/dialog/index.d.ts",
48
38
  "default": "./fesm2022/taiga-ui-legacy-components-dialog.mjs"
49
39
  },
50
- "./components/input": {
51
- "types": "./components/input/index.d.ts",
52
- "default": "./fesm2022/taiga-ui-legacy-components-input.mjs"
53
- },
54
- "./components/input-date-range": {
55
- "types": "./components/input-date-range/index.d.ts",
56
- "default": "./fesm2022/taiga-ui-legacy-components-input-date-range.mjs"
57
- },
58
- "./components/input-date-time": {
59
- "types": "./components/input-date-time/index.d.ts",
60
- "default": "./fesm2022/taiga-ui-legacy-components-input-date-time.mjs"
61
- },
62
- "./components/input-month-range": {
63
- "types": "./components/input-month-range/index.d.ts",
64
- "default": "./fesm2022/taiga-ui-legacy-components-input-month-range.mjs"
65
- },
66
- "./components/input-number": {
67
- "types": "./components/input-number/index.d.ts",
68
- "default": "./fesm2022/taiga-ui-legacy-components-input-number.mjs"
69
- },
70
- "./components/input-range": {
71
- "types": "./components/input-range/index.d.ts",
72
- "default": "./fesm2022/taiga-ui-legacy-components-input-range.mjs"
73
- },
74
- "./components/input-slider": {
75
- "types": "./components/input-slider/index.d.ts",
76
- "default": "./fesm2022/taiga-ui-legacy-components-input-slider.mjs"
77
- },
78
- "./components/input-tag": {
79
- "types": "./components/input-tag/index.d.ts",
80
- "default": "./fesm2022/taiga-ui-legacy-components-input-tag.mjs"
81
- },
82
- "./components/multi-select": {
83
- "types": "./components/multi-select/index.d.ts",
84
- "default": "./fesm2022/taiga-ui-legacy-components-multi-select.mjs"
85
- },
86
- "./components/multi-select-option": {
87
- "types": "./components/multi-select-option/index.d.ts",
88
- "default": "./fesm2022/taiga-ui-legacy-components-multi-select-option.mjs"
40
+ "./components/mobile-dialog": {
41
+ "types": "./components/mobile-dialog/index.d.ts",
42
+ "default": "./fesm2022/taiga-ui-legacy-components-mobile-dialog.mjs"
89
43
  },
90
44
  "./components/pdf-viewer": {
91
45
  "types": "./components/pdf-viewer/index.d.ts",
92
46
  "default": "./fesm2022/taiga-ui-legacy-components-pdf-viewer.mjs"
93
- },
94
- "./components/primitive-textfield": {
95
- "types": "./components/primitive-textfield/index.d.ts",
96
- "default": "./fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs"
97
- },
98
- "./components/select": {
99
- "types": "./components/select/index.d.ts",
100
- "default": "./fesm2022/taiga-ui-legacy-components-select.mjs"
101
- },
102
- "./components/select-option": {
103
- "types": "./components/select-option/index.d.ts",
104
- "default": "./fesm2022/taiga-ui-legacy-components-select-option.mjs"
105
- },
106
- "./components/tag": {
107
- "types": "./components/tag/index.d.ts",
108
- "default": "./fesm2022/taiga-ui-legacy-components-tag.mjs"
109
- },
110
- "./components/textarea": {
111
- "types": "./components/textarea/index.d.ts",
112
- "default": "./fesm2022/taiga-ui-legacy-components-textarea.mjs"
113
- },
114
- "./components/tooltip": {
115
- "types": "./components/tooltip/index.d.ts",
116
- "default": "./fesm2022/taiga-ui-legacy-components-tooltip.mjs"
117
- },
118
- "./directives/legacy-dropdown-open-monitor": {
119
- "types": "./directives/legacy-dropdown-open-monitor/index.d.ts",
120
- "default": "./fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs"
121
- },
122
- "./directives/textfield-controller": {
123
- "types": "./directives/textfield-controller/index.d.ts",
124
- "default": "./fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs"
125
- },
126
- "./directives/unfinished-validator": {
127
- "types": "./directives/unfinished-validator/index.d.ts",
128
- "default": "./fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs"
129
- },
130
- "./directives/value-accessor": {
131
- "types": "./directives/value-accessor/index.d.ts",
132
- "default": "./fesm2022/taiga-ui-legacy-directives-value-accessor.mjs"
133
- },
134
- "./directives/wrapper": {
135
- "types": "./directives/wrapper/index.d.ts",
136
- "default": "./fesm2022/taiga-ui-legacy-directives-wrapper.mjs"
137
47
  }
138
48
  },
139
- "peerDependencies": {
140
- "@angular/core": ">=19.0.0"
141
- },
142
- "module": "fesm2022/taiga-ui-legacy.mjs",
143
- "typings": "index.d.ts",
144
49
  "sideEffects": false,
145
50
  "dependencies": {
146
51
  "tslib": ">=2.8.1"
package/pure.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}.
3
+ * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned
4
+ * value for function, skipping calculation when arguments are strictly the same.
5
+ *
6
+ * @throws error if used not on getter or function
7
+ *
8
+ * CAUTION: they must be pure.
9
+ * @deprecated use computed instead
10
+ */
11
+ export declare function tuiPure<T>(target: object, propertyKey: string, { get, enumerable, value }: TypedPropertyDescriptor<T>): TypedPropertyDescriptor<T>;
12
+ /**
13
+ * Implements lazy initialization for getter or memoization of a function call similar to pure {@link: Pipe}.
14
+ * Replaces getter with its calculated value upon first call or keeps track of last call arguments and returned
15
+ * value for function, skipping calculation when arguments are strictly the same.
16
+ *
17
+ * CAUTION: they must be pure.
18
+ * @deprecated use computed instead
19
+ */
20
+ export declare function tuiPure<A extends unknown[], R>(target: (...args: A) => R, context: ClassGetterDecoratorContext | ClassMethodDecoratorContext): (...args: A) => R;
21
+ export declare class TuiPureException extends Error {
22
+ constructor();
23
+ }
@@ -1,22 +0,0 @@
1
- import { TemplateRef } from '@angular/core';
2
- import { type TuiBooleanHandler } from '@taiga-ui/cdk/types';
3
- import { type TuiTextfieldHost } from '@taiga-ui/legacy/tokens';
4
- import { AbstractTuiControl } from './control';
5
- import * as i0 from "@angular/core";
6
- /**
7
- * @deprecated: drop in v5.0
8
- */
9
- export declare abstract class AbstractTuiNativeSelect<H = TuiTextfieldHost, T = string> {
10
- protected readonly datalist: TemplateRef<any> | null;
11
- protected readonly autoId: string;
12
- protected readonly el: HTMLSelectElement;
13
- protected readonly host: H;
14
- protected readonly control: AbstractTuiControl<any>;
15
- protected readonly itemsHandlers: import("@taiga-ui/kit/tokens").TuiItemsHandlers<unknown>;
16
- disabledItemHandler: TuiBooleanHandler<T> | null;
17
- placeholder: string;
18
- protected get id(): string;
19
- protected get emptyOption(): boolean;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractTuiNativeSelect<any, any>, never>;
21
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractTuiNativeSelect<any, any>, never, never, { "disabledItemHandler": { "alias": "disabledItemHandler"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; }, {}, never, never, false, never>;
22
- }
@@ -1,19 +0,0 @@
1
- import { type TuiTextfieldHost } from '@taiga-ui/legacy/tokens';
2
- import { AbstractTuiControl } from './control';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * @deprecated: drop in v5.0
6
- */
7
- export declare abstract class AbstractTuiTextfieldHost<T extends AbstractTuiControl<any>> implements TuiTextfieldHost {
8
- protected readonly host: T;
9
- abstract onValueChange(value: string): void;
10
- get readOnly(): boolean;
11
- get disabled(): boolean;
12
- get invalid(): boolean;
13
- get focusable(): boolean;
14
- get inputMode(): TuiTextfieldHost['inputMode'];
15
- get value(): string;
16
- process(_input: HTMLInputElement): void;
17
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractTuiTextfieldHost<any>, never>;
18
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractTuiTextfieldHost<any>, never, never, {}, {}, never, never, true, never>;
19
- }
@@ -1,60 +0,0 @@
1
- import { ChangeDetectorRef, DestroyRef, type OnInit, type Provider, type Type } from '@angular/core';
2
- import { type AbstractControl, type ControlValueAccessor } from '@angular/forms';
3
- import { TuiValueTransformer } from '@taiga-ui/cdk/classes';
4
- import { Subject } from 'rxjs';
5
- import { AbstractTuiInteractive } from './interactive';
6
- import * as i0 from "@angular/core";
7
- /**
8
- * @deprecated: drop in v5.0
9
- * Basic ControlValueAccessor class to build form components upon
10
- */
11
- export declare abstract class AbstractTuiControl<T> extends AbstractTuiInteractive implements OnInit, ControlValueAccessor {
12
- private readonly ngControl;
13
- private previousInternalValue?;
14
- private readonly refresh$;
15
- protected onTouched: (...args: any[]) => void;
16
- protected onChange: (...args: any[]) => void;
17
- protected readonly fallbackValue: T;
18
- protected destroyRef: DestroyRef;
19
- protected readonly cdr: ChangeDetectorRef;
20
- protected readonly valueTransformer: TuiValueTransformer<T, unknown> | null;
21
- readOnly: boolean;
22
- pseudoInvalid: boolean | null;
23
- readonly update$: Subject<void>;
24
- constructor();
25
- protected abstract getFallbackValue(): T;
26
- get computedInvalid(): boolean;
27
- get value(): T;
28
- set value(value: T);
29
- get safeCurrentValue(): T;
30
- get invalid(): boolean;
31
- get valid(): boolean;
32
- get touched(): boolean;
33
- get disabled(): boolean;
34
- get interactive(): boolean;
35
- get control(): AbstractControl | null;
36
- get computedName(): string | null;
37
- get controlName(): string | null;
38
- ngOnInit(): void;
39
- checkControlUpdate(): void;
40
- registerOnChange(onChange: (value: unknown) => void): void;
41
- registerOnTouched(onTouched: () => void): void;
42
- setDisabledState(): void;
43
- writeValue(value: T | null): void;
44
- protected updateFocused(focused: boolean): void;
45
- /**
46
- * @deprecated use `value` setter
47
- */
48
- protected updateValue(value: T): void;
49
- protected valueIdenticalComparator(oldValue: T, newValue: T): boolean;
50
- private get rawValue();
51
- private safeNgControlData;
52
- private controlMarkAsTouched;
53
- private controlSetValue;
54
- private refreshLocalValue;
55
- private fromControlValue;
56
- private toControlValue;
57
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractTuiControl<any>, never>;
58
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractTuiControl<any>, never, never, { "readOnly": { "alias": "readOnly"; "required": false; }; "pseudoInvalid": { "alias": "pseudoInvalid"; "required": false; }; }, {}, never, never, false, never>;
59
- }
60
- export declare function tuiAsControl<T>(control: Type<AbstractTuiControl<T>>): Provider[];
@@ -1,9 +0,0 @@
1
- import { type OnChanges } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export declare abstract class AbstractTuiController implements OnChanges {
5
- readonly change$: Subject<void>;
6
- ngOnChanges(): void;
7
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractTuiController, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractTuiController, never, never, {}, {}, never, never, true, never>;
9
- }