@taiga-ui/kit 3.14.0 → 3.15.0

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 (424) hide show
  1. package/bundles/taiga-ui-kit-components-accordion.umd.js +19 -26
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-action.umd.js +8 -8
  4. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-arrow.umd.js +4 -4
  6. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-avatar.umd.js +15 -15
  8. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-badge.umd.js +17 -17
  10. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-badged-content.umd.js +22 -22
  12. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +6 -6
  14. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +4 -4
  16. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +7 -7
  18. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-carousel.umd.js +22 -22
  20. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +10 -10
  22. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +6 -6
  24. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-checkbox.umd.js +5 -5
  26. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-combo-box.umd.js +11 -11
  28. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +8 -8
  30. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-files.umd.js +39 -33
  32. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-filter.umd.js +5 -5
  34. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-copy.umd.js +11 -11
  36. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-count.umd.js +27 -22
  38. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +15 -15
  40. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +17 -17
  42. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-date.umd.js +11 -11
  44. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-files.umd.js +28 -28
  46. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-inline.umd.js +6 -6
  48. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +7 -7
  50. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-input-month.umd.js +5 -5
  52. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-number.umd.js +25 -25
  54. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-password.umd.js +9 -9
  56. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +16 -16
  58. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-phone.umd.js +33 -33
  60. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-range.umd.js +19 -19
  62. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-slider.umd.js +15 -15
  64. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-tag.umd.js +57 -26
  66. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-time.umd.js +10 -10
  68. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-year.umd.js +5 -5
  70. package/bundles/taiga-ui-kit-components-input-year.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input.umd.js +6 -6
  72. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-island.umd.js +20 -20
  74. package/bundles/taiga-ui-kit-components-island.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-items-with-more.umd.js +5 -5
  76. package/bundles/taiga-ui-kit-components-items-with-more.umd.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +14 -14
  78. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-marker-icon.umd.js +8 -8
  80. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +7 -7
  82. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-multi-select.umd.js +17 -17
  84. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-pagination.umd.js +9 -9
  86. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +10 -10
  88. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-progress.umd.js +31 -31
  90. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-push.umd.js +17 -17
  92. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
  93. package/bundles/taiga-ui-kit-components-radio-block.umd.js +11 -11
  94. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  95. package/bundles/taiga-ui-kit-components-radio-group.umd.js +2 -2
  96. package/bundles/taiga-ui-kit-components-radio-group.umd.js.map +1 -1
  97. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +7 -7
  98. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  99. package/bundles/taiga-ui-kit-components-radio-list.umd.js +7 -7
  100. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  101. package/bundles/taiga-ui-kit-components-radio.umd.js +8 -8
  102. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-range.umd.js +31 -31
  104. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  105. package/bundles/taiga-ui-kit-components-rating.umd.js +6 -6
  106. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-select-option.umd.js +4 -4
  108. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-select.umd.js +30 -28
  110. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-slider.umd.js +37 -37
  112. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-stepper.umd.js +30 -30
  114. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  115. package/bundles/taiga-ui-kit-components-tabs.umd.js +44 -44
  116. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  117. package/bundles/taiga-ui-kit-components-tag.umd.js +24 -24
  118. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  119. package/bundles/taiga-ui-kit-components-text-area.umd.js +20 -20
  120. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  121. package/bundles/taiga-ui-kit-components-tiles.umd.js +15 -15
  122. package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-components-toggle.umd.js +9 -9
  124. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-components-tree.umd.js +22 -22
  126. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js +36 -26
  128. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -1
  129. package/bundles/taiga-ui-kit-directives-highlight.umd.js +10 -10
  130. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +11 -11
  132. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  133. package/bundles/taiga-ui-kit-directives-present.umd.js +8 -10
  134. package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
  135. package/bundles/taiga-ui-kit-directives-project-class.umd.js +2 -2
  136. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  137. package/bundles/taiga-ui-kit-directives-unfinished-validator.umd.js +4 -4
  138. package/bundles/taiga-ui-kit-directives-unfinished-validator.umd.js.map +1 -1
  139. package/bundles/taiga-ui-kit-directives-value-accessor.umd.js +1 -1
  140. package/bundles/taiga-ui-kit-directives-value-accessor.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +4 -4
  142. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  143. package/components/accordion/accordion-item/accordion-item.component.d.ts +0 -1
  144. package/components/files/file/file.component.d.ts +2 -1
  145. package/components/input-count/input-count.component.d.ts +3 -3
  146. package/components/input-tag/input-tag.component.d.ts +4 -1
  147. package/components/select/native-select/native-select.d.ts +3 -2
  148. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +4 -1
  149. package/directives/present/present.directive.d.ts +1 -1
  150. package/esm2015/components/accordion/accordion-item/accordion-item-content.directive.js +2 -2
  151. package/esm2015/components/accordion/accordion-item/accordion-item-eager-content.directive.js +2 -2
  152. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +15 -22
  153. package/esm2015/components/accordion/accordion.component.js +4 -4
  154. package/esm2015/components/action/action.component.js +9 -9
  155. package/esm2015/components/arrow/arrow.component.js +5 -5
  156. package/esm2015/components/avatar/avatar.component.js +16 -16
  157. package/esm2015/components/badge/badge.component.js +18 -18
  158. package/esm2015/components/badged-content/badged-content.component.js +23 -23
  159. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +7 -7
  160. package/esm2015/components/calendar-month/calendar-month.component.js +5 -5
  161. package/esm2015/components/calendar-range/calendar-range.component.js +8 -8
  162. package/esm2015/components/carousel/carousel-autoscroll.directive.js +3 -3
  163. package/esm2015/components/carousel/carousel-buttons.directive.js +6 -6
  164. package/esm2015/components/carousel/carousel-scroll.directive.js +3 -3
  165. package/esm2015/components/carousel/carousel.component.js +12 -12
  166. package/esm2015/components/carousel/carousel.directive.js +3 -3
  167. package/esm2015/components/checkbox/checkbox.component.js +6 -6
  168. package/esm2015/components/checkbox-block/checkbox-block.component.js +11 -11
  169. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +7 -7
  170. package/esm2015/components/combo-box/combo-box-strict.directive.js +3 -3
  171. package/esm2015/components/combo-box/combo-box.component.js +9 -9
  172. package/esm2015/components/combo-box/combo-box.directive.js +2 -2
  173. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +5 -5
  174. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +5 -5
  175. package/esm2015/components/files/file/file.component.js +37 -31
  176. package/esm2015/components/files/files.component.js +4 -4
  177. package/esm2015/components/filter/filter.component.js +6 -6
  178. package/esm2015/components/input/input.component.js +6 -6
  179. package/esm2015/components/input/input.directive.js +2 -2
  180. package/esm2015/components/input-copy/input-copy.component.js +11 -11
  181. package/esm2015/components/input-copy/input-copy.directive.js +2 -2
  182. package/esm2015/components/input-count/input-count.component.js +26 -21
  183. package/esm2015/components/input-count/input-count.directive.js +4 -4
  184. package/esm2015/components/input-date/input-date.component.js +10 -10
  185. package/esm2015/components/input-date/input-date.directive.js +3 -3
  186. package/esm2015/components/input-date-range/input-date-range.component.js +14 -14
  187. package/esm2015/components/input-date-range/input-date-range.directive.js +3 -3
  188. package/esm2015/components/input-date-time/input-date-time.component.js +16 -16
  189. package/esm2015/components/input-date-time/input-date-time.directive.js +3 -3
  190. package/esm2015/components/input-files/input-files.component.js +21 -21
  191. package/esm2015/components/input-files/input-files.directive.js +9 -9
  192. package/esm2015/components/input-inline/input-inline.component.js +7 -7
  193. package/esm2015/components/input-month/input-month.component.js +4 -4
  194. package/esm2015/components/input-month/input-month.directive.js +3 -3
  195. package/esm2015/components/input-month-range/input-month-range.component.js +5 -5
  196. package/esm2015/components/input-month-range/input-month-range.directive.js +4 -4
  197. package/esm2015/components/input-number/input-number.component.js +24 -24
  198. package/esm2015/components/input-number/input-number.directive.js +3 -3
  199. package/esm2015/components/input-password/input-password.component.js +9 -9
  200. package/esm2015/components/input-password/input-password.directive.js +2 -2
  201. package/esm2015/components/input-phone/input-phone.component.js +32 -32
  202. package/esm2015/components/input-phone/input-phone.directive.js +3 -3
  203. package/esm2015/components/input-phone-international/input-phone-international.component.js +17 -17
  204. package/esm2015/components/input-range/input-range.component.js +20 -20
  205. package/esm2015/components/input-slider/input-slider.component.js +16 -16
  206. package/esm2015/components/input-tag/input-tag.component.js +50 -27
  207. package/esm2015/components/input-time/input-time.component.js +11 -11
  208. package/esm2015/components/input-year/input-year.component.js +4 -4
  209. package/esm2015/components/input-year/input-year.directive.js +3 -3
  210. package/esm2015/components/island/island.component.js +21 -21
  211. package/esm2015/components/items-with-more/items-with-more.component.js +4 -4
  212. package/esm2015/components/items-with-more/items-with-more.directive.js +2 -2
  213. package/esm2015/components/items-with-more/more.directive.js +2 -2
  214. package/esm2015/components/line-clamp/line-clamp-box.component.js +4 -4
  215. package/esm2015/components/line-clamp/line-clamp-position.directive.js +2 -2
  216. package/esm2015/components/line-clamp/line-clamp.component.js +11 -11
  217. package/esm2015/components/marker-icon/marker-icon.component.js +9 -9
  218. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +6 -6
  219. package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +2 -2
  220. package/esm2015/components/multi-select/multi-select.component.js +12 -12
  221. package/esm2015/components/multi-select-option/multi-select-option.component.js +8 -8
  222. package/esm2015/components/pagination/pagination.component.js +10 -10
  223. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +8 -8
  224. package/esm2015/components/pdf-viewer/pdf-viewer.directive.js +4 -4
  225. package/esm2015/components/progress/progress-bar/progress-bar.component.js +8 -8
  226. package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +6 -6
  227. package/esm2015/components/progress/progress-circle/progress-circle.component.js +9 -9
  228. package/esm2015/components/progress/progress-label/progress-label.component.js +4 -4
  229. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +9 -9
  230. package/esm2015/components/push/push-alert.component.js +9 -9
  231. package/esm2015/components/push/push-alert.directive.js +2 -2
  232. package/esm2015/components/push/push.component.js +6 -6
  233. package/esm2015/components/push/push.directive.js +4 -4
  234. package/esm2015/components/radio/radio.component.js +9 -9
  235. package/esm2015/components/radio-block/radio-block.component.js +12 -12
  236. package/esm2015/components/radio-group/radio-group.component.js +3 -3
  237. package/esm2015/components/radio-labeled/radio-labeled.component.js +8 -8
  238. package/esm2015/components/radio-list/radio-list.component.js +8 -8
  239. package/esm2015/components/range/range-change.directive.js +11 -11
  240. package/esm2015/components/range/range.component.js +21 -21
  241. package/esm2015/components/rating/rating.component.js +7 -7
  242. package/esm2015/components/select/native-select/native-select-group.component.js +10 -11
  243. package/esm2015/components/select/native-select/native-select.component.js +10 -11
  244. package/esm2015/components/select/native-select/native-select.js +8 -4
  245. package/esm2015/components/select/select.component.js +6 -6
  246. package/esm2015/components/select/select.directive.js +2 -2
  247. package/esm2015/components/select-option/select-option.component.js +5 -5
  248. package/esm2015/components/slider/helpers/slider-key-steps.directive.js +8 -8
  249. package/esm2015/components/slider/helpers/slider-readonly.directive.js +15 -15
  250. package/esm2015/components/slider/helpers/slider-thumb-label/slider-thumb-label.component.js +7 -7
  251. package/esm2015/components/slider/slider.component.js +11 -11
  252. package/esm2015/components/stepper/step/step.component.js +14 -14
  253. package/esm2015/components/stepper/stepper.component.js +18 -18
  254. package/esm2015/components/tabs/tab/tab.component.js +9 -9
  255. package/esm2015/components/tabs/tabs/tabs.component.js +7 -7
  256. package/esm2015/components/tabs/tabs-vertical/tabs-vertical.component.js +7 -7
  257. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +8 -8
  258. package/esm2015/components/tabs/tabs.directive.js +6 -6
  259. package/esm2015/components/tabs/underline/underline.component.js +13 -13
  260. package/esm2015/components/tag/tag.component.js +25 -25
  261. package/esm2015/components/text-area/text-area.component.js +20 -20
  262. package/esm2015/components/text-area/text-area.directive.js +2 -2
  263. package/esm2015/components/tiles/tile-handle.directive.js +6 -6
  264. package/esm2015/components/tiles/tile.component.js +7 -7
  265. package/esm2015/components/tiles/tiles.component.js +5 -5
  266. package/esm2015/components/toggle/toggle.component.js +10 -10
  267. package/esm2015/components/tree/components/tree/tree.component.js +5 -5
  268. package/esm2015/components/tree/components/tree-item/tree-item.component.js +6 -6
  269. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +5 -5
  270. package/esm2015/components/tree/directives/tree-children.directive.js +2 -2
  271. package/esm2015/components/tree/directives/tree-controller.directive.js +4 -4
  272. package/esm2015/components/tree/directives/tree-item-controller.directive.js +4 -4
  273. package/esm2015/components/tree/directives/tree-node.directive.js +3 -3
  274. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +25 -17
  275. package/esm2015/directives/highlight/highlight.directive.js +11 -11
  276. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +12 -12
  277. package/esm2015/directives/present/present.directive.js +10 -12
  278. package/esm2015/directives/project-class/project-class.directive.js +3 -3
  279. package/esm2015/directives/unfinished-validator/unfinished-validator.directive.js +5 -5
  280. package/esm2015/directives/value-accessor/value-accessor.directive.js +2 -2
  281. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +5 -5
  282. package/fesm2015/taiga-ui-kit-components-accordion.js +19 -26
  283. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  284. package/fesm2015/taiga-ui-kit-components-action.js +8 -8
  285. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  286. package/fesm2015/taiga-ui-kit-components-arrow.js +4 -4
  287. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  288. package/fesm2015/taiga-ui-kit-components-avatar.js +15 -15
  289. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  290. package/fesm2015/taiga-ui-kit-components-badge.js +17 -17
  291. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  292. package/fesm2015/taiga-ui-kit-components-badged-content.js +22 -22
  293. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  294. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +6 -6
  295. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  296. package/fesm2015/taiga-ui-kit-components-calendar-month.js +4 -4
  297. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  298. package/fesm2015/taiga-ui-kit-components-calendar-range.js +7 -7
  299. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  300. package/fesm2015/taiga-ui-kit-components-carousel.js +22 -22
  301. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  302. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +10 -10
  303. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  304. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +6 -6
  305. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  306. package/fesm2015/taiga-ui-kit-components-checkbox.js +5 -5
  307. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  308. package/fesm2015/taiga-ui-kit-components-combo-box.js +11 -11
  309. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  310. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +8 -8
  311. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  312. package/fesm2015/taiga-ui-kit-components-files.js +39 -33
  313. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  314. package/fesm2015/taiga-ui-kit-components-filter.js +5 -5
  315. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  316. package/fesm2015/taiga-ui-kit-components-input-copy.js +11 -11
  317. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  318. package/fesm2015/taiga-ui-kit-components-input-count.js +28 -23
  319. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  320. package/fesm2015/taiga-ui-kit-components-input-date-range.js +15 -15
  321. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  322. package/fesm2015/taiga-ui-kit-components-input-date-time.js +17 -17
  323. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  324. package/fesm2015/taiga-ui-kit-components-input-date.js +11 -11
  325. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  326. package/fesm2015/taiga-ui-kit-components-input-files.js +28 -28
  327. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  328. package/fesm2015/taiga-ui-kit-components-input-inline.js +6 -6
  329. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  330. package/fesm2015/taiga-ui-kit-components-input-month-range.js +7 -7
  331. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  332. package/fesm2015/taiga-ui-kit-components-input-month.js +5 -5
  333. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  334. package/fesm2015/taiga-ui-kit-components-input-number.js +25 -25
  335. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  336. package/fesm2015/taiga-ui-kit-components-input-password.js +9 -9
  337. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  338. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +16 -16
  339. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  340. package/fesm2015/taiga-ui-kit-components-input-phone.js +33 -33
  341. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  342. package/fesm2015/taiga-ui-kit-components-input-range.js +19 -19
  343. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  344. package/fesm2015/taiga-ui-kit-components-input-slider.js +15 -15
  345. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  346. package/fesm2015/taiga-ui-kit-components-input-tag.js +49 -26
  347. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  348. package/fesm2015/taiga-ui-kit-components-input-time.js +10 -10
  349. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  350. package/fesm2015/taiga-ui-kit-components-input-year.js +5 -5
  351. package/fesm2015/taiga-ui-kit-components-input-year.js.map +1 -1
  352. package/fesm2015/taiga-ui-kit-components-input.js +6 -6
  353. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  354. package/fesm2015/taiga-ui-kit-components-island.js +20 -20
  355. package/fesm2015/taiga-ui-kit-components-island.js.map +1 -1
  356. package/fesm2015/taiga-ui-kit-components-items-with-more.js +5 -5
  357. package/fesm2015/taiga-ui-kit-components-items-with-more.js.map +1 -1
  358. package/fesm2015/taiga-ui-kit-components-line-clamp.js +14 -14
  359. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  360. package/fesm2015/taiga-ui-kit-components-marker-icon.js +8 -8
  361. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  362. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +7 -7
  363. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  364. package/fesm2015/taiga-ui-kit-components-multi-select.js +17 -17
  365. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  366. package/fesm2015/taiga-ui-kit-components-pagination.js +9 -9
  367. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  368. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +10 -10
  369. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  370. package/fesm2015/taiga-ui-kit-components-progress.js +31 -31
  371. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  372. package/fesm2015/taiga-ui-kit-components-push.js +17 -17
  373. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
  374. package/fesm2015/taiga-ui-kit-components-radio-block.js +11 -11
  375. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  376. package/fesm2015/taiga-ui-kit-components-radio-group.js +2 -2
  377. package/fesm2015/taiga-ui-kit-components-radio-group.js.map +1 -1
  378. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +7 -7
  379. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  380. package/fesm2015/taiga-ui-kit-components-radio-list.js +7 -7
  381. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  382. package/fesm2015/taiga-ui-kit-components-radio.js +8 -8
  383. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  384. package/fesm2015/taiga-ui-kit-components-range.js +30 -30
  385. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  386. package/fesm2015/taiga-ui-kit-components-rating.js +6 -6
  387. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  388. package/fesm2015/taiga-ui-kit-components-select-option.js +4 -4
  389. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  390. package/fesm2015/taiga-ui-kit-components-select.js +31 -29
  391. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  392. package/fesm2015/taiga-ui-kit-components-slider.js +37 -37
  393. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  394. package/fesm2015/taiga-ui-kit-components-stepper.js +30 -30
  395. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  396. package/fesm2015/taiga-ui-kit-components-tabs.js +44 -44
  397. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  398. package/fesm2015/taiga-ui-kit-components-tag.js +24 -24
  399. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  400. package/fesm2015/taiga-ui-kit-components-text-area.js +20 -20
  401. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  402. package/fesm2015/taiga-ui-kit-components-tiles.js +15 -15
  403. package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
  404. package/fesm2015/taiga-ui-kit-components-toggle.js +9 -9
  405. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  406. package/fesm2015/taiga-ui-kit-components-tree.js +22 -22
  407. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  408. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +24 -16
  409. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-directives-highlight.js +10 -10
  411. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  412. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +11 -11
  413. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  414. package/fesm2015/taiga-ui-kit-directives-present.js +9 -11
  415. package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
  416. package/fesm2015/taiga-ui-kit-directives-project-class.js +2 -2
  417. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  418. package/fesm2015/taiga-ui-kit-directives-unfinished-validator.js +4 -4
  419. package/fesm2015/taiga-ui-kit-directives-unfinished-validator.js.map +1 -1
  420. package/fesm2015/taiga-ui-kit-directives-value-accessor.js +1 -1
  421. package/fesm2015/taiga-ui-kit-directives-value-accessor.js.map +1 -1
  422. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +4 -4
  423. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  424. package/package.json +6 -6
@@ -27,11 +27,11 @@ class TuiInputSliderComponent extends AbstractTuiControl {
27
27
  this.steps = 0;
28
28
  this.segments = 1;
29
29
  this.keySteps = null;
30
- this.valueContent = ``;
30
+ this.valueContent = '';
31
31
  /** @deprecated use `tuiTextfieldPrefix` from {@link TuiTextfieldControllerModule} instead */
32
- this.textfieldPrefix = ``;
32
+ this.textfieldPrefix = '';
33
33
  /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */
34
- this.textfieldPostfix = ``;
34
+ this.textfieldPostfix = '';
35
35
  }
36
36
  get prefix() {
37
37
  return this.textfieldPrefix || this.controller.prefix;
@@ -57,7 +57,7 @@ class TuiInputSliderComponent extends AbstractTuiControl {
57
57
  return tuiGetFractionPartPadded(this.quantum).length;
58
58
  }
59
59
  get decimal() {
60
- return this.precision ? `not-zero` : `never`;
60
+ return this.precision ? 'not-zero' : 'never';
61
61
  }
62
62
  get showValueContent() {
63
63
  return Boolean(this.valueContent && !this.focused);
@@ -104,7 +104,7 @@ class TuiInputSliderComponent extends AbstractTuiControl {
104
104
  }
105
105
  get textInputValue() {
106
106
  var _a;
107
- return ((_a = this.inputNumberRef) === null || _a === void 0 ? void 0 : _a.nativeValue) || ``;
107
+ return ((_a = this.inputNumberRef) === null || _a === void 0 ? void 0 : _a.nativeValue) || '';
108
108
  }
109
109
  getFallbackValue() {
110
110
  return 0;
@@ -124,7 +124,7 @@ TuiInputSliderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0",
124
124
  TuiInputSliderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputSliderComponent, selector: "tui-input-slider", inputs: { min: "min", max: "max", quantum: "quantum", steps: "steps", segments: "segments", keySteps: "keySteps", valueContent: "valueContent", textfieldPrefix: ["prefix", "textfieldPrefix"], textfieldPostfix: ["postfix", "textfieldPostfix"] }, providers: [
125
125
  tuiAsFocusableItemAccessor(TuiInputSliderComponent),
126
126
  tuiAsControl(TuiInputSliderComponent),
127
- tuiSliderOptionsProvider({ trackColor: `transparent` }),
127
+ tuiSliderOptionsProvider({ trackColor: 'transparent' }),
128
128
  TEXTFIELD_CONTROLLER_PROVIDER,
129
129
  ], viewQueries: [{ propertyName: "inputNumberRef", first: true, predicate: TuiInputNumberComponent, descendants: true }, { propertyName: "sliderRef", first: true, predicate: TuiSliderComponent, descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<tui-input-number\n [min]=\"min\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [tuiTextfieldPrefix]=\"showValueContent ? '' : prefix\"\n [tuiTextfieldPostfix]=\"showValueContent ? '' : postfix\"\n [readOnly]=\"readOnly\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [ngModel]=\"value\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n (focusedChange)=\"onFocused($event)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showValueContent\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-input-slider__value-content\"\n >\n <ng-container *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n</tui-input-number>\n\n<input\n tuiSlider\n type=\"range\"\n [tuiFocusable]=\"false\"\n [max]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [attr.disabled]=\"readOnly || disabled || null\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onSliderChange($event)\"\n (click)=\"focusTextInput()\"\n/>\n", styles: [":host{position:relative;z-index:0;display:block;height:-webkit-max-content;height:-moz-max-content;height:max-content}input[type=range]{position:absolute;top:100%;left:calc(var(--tui-radius-m) / 2);right:0;width:auto;margin:-.5625rem 0 0;border-top-left-radius:0;border-bottom-left-radius:calc(var(--tui-radius-m) * 5) calc(var(--tui-radius-m) * 1.5)}\n"], components: [{ type: i1.TuiInputNumberComponent, selector: "tui-input-number", inputs: ["min", "max", "decimal", "precision", "prefix", "postfix"] }, { type: i2.TuiSliderComponent, selector: "input[type=range][tuiSlider]", inputs: ["size", "segments"] }], directives: [{ type: i1.TuiInputNumberDirective, selector: "tui-input-number" }, { type: i3.TuiTextfieldPrefixDirective, selector: "[tuiTextfieldPrefix]", inputs: ["tuiTextfieldPrefix"] }, { type: i3.TuiTextfieldPostfixDirective, selector: "[tuiTextfieldPostfix]", inputs: ["tuiTextfieldPostfix"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i2.TuiSliderKeyStepsDirective, selector: "input[tuiSlider][keySteps]", inputs: ["keySteps"] }, { type: i4.RangeValueAccessor, selector: "input[type=range][formControlName],input[type=range][formControl],input[type=range][ngModel]" }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
130
130
  __decorate([
@@ -134,13 +134,13 @@ __decorate([
134
134
  tuiDefaultProp()
135
135
  ], TuiInputSliderComponent.prototype, "max", void 0);
136
136
  __decorate([
137
- tuiDefaultProp(q => q > 0, `Quantum must be positive`)
137
+ tuiDefaultProp(q => q > 0, 'Quantum must be positive')
138
138
  ], TuiInputSliderComponent.prototype, "quantum", void 0);
139
139
  __decorate([
140
- tuiDefaultProp(s => s >= 0 && Number.isInteger(s), `Steps must be non-negative integer`)
140
+ tuiDefaultProp(s => s >= 0 && Number.isInteger(s), 'Steps must be non-negative integer')
141
141
  ], TuiInputSliderComponent.prototype, "steps", void 0);
142
142
  __decorate([
143
- tuiDefaultProp(s => s > 0 && Number.isInteger(s), `Segments must be positive integer`)
143
+ tuiDefaultProp(s => s > 0 && Number.isInteger(s), 'Segments must be positive integer')
144
144
  ], TuiInputSliderComponent.prototype, "segments", void 0);
145
145
  __decorate([
146
146
  tuiDefaultProp()
@@ -160,14 +160,14 @@ __decorate([
160
160
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputSliderComponent, decorators: [{
161
161
  type: Component,
162
162
  args: [{
163
- selector: `tui-input-slider`,
164
- templateUrl: `./input-slider.template.html`,
165
- styleUrls: [`./input-slider.style.less`],
163
+ selector: 'tui-input-slider',
164
+ templateUrl: './input-slider.template.html',
165
+ styleUrls: ['./input-slider.style.less'],
166
166
  changeDetection: ChangeDetectionStrategy.OnPush,
167
167
  providers: [
168
168
  tuiAsFocusableItemAccessor(TuiInputSliderComponent),
169
169
  tuiAsControl(TuiInputSliderComponent),
170
- tuiSliderOptionsProvider({ trackColor: `transparent` }),
170
+ tuiSliderOptionsProvider({ trackColor: 'transparent' }),
171
171
  TEXTFIELD_CONTROLLER_PROVIDER,
172
172
  ],
173
173
  }]
@@ -206,10 +206,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
206
206
  type: Input
207
207
  }], textfieldPrefix: [{
208
208
  type: Input,
209
- args: [`prefix`]
209
+ args: ['prefix']
210
210
  }], textfieldPostfix: [{
211
211
  type: Input,
212
- args: [`postfix`]
212
+ args: ['postfix']
213
213
  }], computeKeySteps: [] } });
214
214
 
215
215
  class TuiInputSliderModule {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-slider.js","sources":["../../../projects/kit/components/input-slider/input-slider.component.ts","../../../projects/kit/components/input-slider/input-slider.template.html","../../../projects/kit/components/input-slider/input-slider.module.ts","../../../projects/kit/components/input-slider/taiga-ui-kit-components-input-slider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiClamp,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n tuiPure,\n tuiRound,\n} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiDecimal,\n tuiGetFractionPartPadded,\n TuiTextfieldController,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiInputNumberComponent} from '@taiga-ui/kit/components/input-number';\nimport {\n TuiSliderComponent,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: `tui-input-slider`,\n templateUrl: `./input-slider.template.html`,\n styleUrls: [`./input-slider.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputSliderComponent),\n tuiAsControl(TuiInputSliderComponent),\n tuiSliderOptionsProvider({trackColor: `transparent`}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputSliderComponent\n extends AbstractTuiControl<number>\n implements TuiWithOptionalMinMax<number>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputNumberComponent)\n private readonly inputNumberRef?: TuiInputNumberComponent;\n\n @ViewChild(TuiSliderComponent, {read: ElementRef})\n private readonly sliderRef?: ElementRef<HTMLInputElement>;\n\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = 100;\n\n @Input()\n @tuiDefaultProp(q => q > 0, `Quantum must be positive`)\n quantum = 1;\n\n @Input()\n @tuiDefaultProp(\n s => s >= 0 && Number.isInteger(s),\n `Steps must be non-negative integer`,\n )\n steps = 0;\n\n @Input()\n @tuiDefaultProp(\n s => s > 0 && Number.isInteger(s),\n `Segments must be positive integer`,\n )\n segments = 1;\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiContextWithImplicit<number>> = ``;\n\n /** @deprecated use `tuiTextfieldPrefix` from {@link TuiTextfieldControllerModule} instead */\n @Input(`prefix`)\n @tuiDefaultProp()\n textfieldPrefix = ``;\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input(`postfix`)\n @tuiDefaultProp()\n textfieldPostfix = ``;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n ) {\n super(control, changeDetectorRef);\n }\n\n get prefix(): string {\n return this.textfieldPrefix || this.controller.prefix;\n }\n\n get postfix(): string {\n return this.textfieldPostfix || this.controller.postfix;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.inputNumberRef?.nativeFocusableElement || this.computedDisabled\n ? null\n : this.inputNumberRef.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n tuiIsNativeFocused(this.sliderRef?.nativeElement || null)\n );\n }\n\n get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n get decimal(): TuiDecimal {\n return this.precision ? `not-zero` : `never`;\n }\n\n get showValueContent(): boolean {\n return Boolean(this.valueContent && !this.focused);\n }\n\n get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n computeKeySteps(keySteps: TuiKeySteps | null, min: number, max: number): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n focusTextInput(): void {\n const focusableElement = this.inputNumberRef?.nativeFocusableElement;\n\n if (focusableElement) {\n focusableElement.focus();\n }\n }\n\n safelyUpdateValue(value: number | null): void {\n this.updateValue(this.valueGuard(value ?? this.safeCurrentValue));\n }\n\n onVerticalArrowKeyDown(coefficient: number): void {\n if (this.readOnly || !this.step) {\n return;\n }\n\n const value = this.value + coefficient * this.step;\n\n if (value !== this.value) {\n this.safelyUpdateValue(value);\n }\n\n this.updateTextInputValue(this.valueGuard(value));\n }\n\n onSliderChange(newValue: number): void {\n this.safelyUpdateValue(newValue);\n this.updateTextInputValue(this.value);\n }\n\n onFocused(focused: boolean): void {\n const {value, textInputValue, safeCurrentValue, inputNumberRef} = this;\n\n if (!focused && textInputValue !== inputNumberRef?.getFormattedValue(value)) {\n this.updateTextInputValue(value ?? safeCurrentValue);\n }\n\n this.updateFocused(focused);\n }\n\n private get textInputValue(): string {\n return this.inputNumberRef?.nativeValue || ``;\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n private valueGuard(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n\n private updateTextInputValue(value: number): void {\n if (this.inputNumberRef) {\n this.inputNumberRef.nativeValue =\n this.inputNumberRef.getFormattedValue(value);\n }\n }\n}\n","<tui-input-number\n [min]=\"min\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [tuiTextfieldPrefix]=\"showValueContent ? '' : prefix\"\n [tuiTextfieldPostfix]=\"showValueContent ? '' : postfix\"\n [readOnly]=\"readOnly\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [ngModel]=\"value\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n (focusedChange)=\"onFocused($event)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showValueContent\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-input-slider__value-content\"\n >\n <ng-container *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n</tui-input-number>\n\n<input\n tuiSlider\n type=\"range\"\n [tuiFocusable]=\"false\"\n [max]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [attr.disabled]=\"readOnly || disabled || null\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onSliderChange($event)\"\n (click)=\"focusTextInput()\"\n/>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/core';\nimport {TuiInputNumberModule} from '@taiga-ui/kit/components/input-number';\nimport {TuiSliderModule} from '@taiga-ui/kit/components/slider';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputSliderComponent} from './input-slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiFocusableModule,\n TuiInputNumberModule,\n TuiSliderModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputSliderComponent],\n exports: [TuiInputSliderComponent],\n})\nexport class TuiInputSliderModule {}\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-kit-components-input-slider.js","sources":["../../../projects/kit/components/input-slider/input-slider.component.ts","../../../projects/kit/components/input-slider/input-slider.template.html","../../../projects/kit/components/input-slider/input-slider.module.ts","../../../projects/kit/components/input-slider/taiga-ui-kit-components-input-slider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n tuiClamp,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n TuiNativeFocusableElement,\n tuiPure,\n tuiRound,\n} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiDecimal,\n tuiGetFractionPartPadded,\n TuiTextfieldController,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiInputNumberComponent} from '@taiga-ui/kit/components/input-number';\nimport {\n TuiSliderComponent,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-input-slider',\n templateUrl: './input-slider.template.html',\n styleUrls: ['./input-slider.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputSliderComponent),\n tuiAsControl(TuiInputSliderComponent),\n tuiSliderOptionsProvider({trackColor: 'transparent'}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputSliderComponent\n extends AbstractTuiControl<number>\n implements TuiWithOptionalMinMax<number>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputNumberComponent)\n private readonly inputNumberRef?: TuiInputNumberComponent;\n\n @ViewChild(TuiSliderComponent, {read: ElementRef})\n private readonly sliderRef?: ElementRef<HTMLInputElement>;\n\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = 100;\n\n @Input()\n @tuiDefaultProp(q => q > 0, 'Quantum must be positive')\n quantum = 1;\n\n @Input()\n @tuiDefaultProp(\n s => s >= 0 && Number.isInteger(s),\n 'Steps must be non-negative integer',\n )\n steps = 0;\n\n @Input()\n @tuiDefaultProp(\n s => s > 0 && Number.isInteger(s),\n 'Segments must be positive integer',\n )\n segments = 1;\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiContextWithImplicit<number>> = '';\n\n /** @deprecated use `tuiTextfieldPrefix` from {@link TuiTextfieldControllerModule} instead */\n @Input('prefix')\n @tuiDefaultProp()\n textfieldPrefix = '';\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input('postfix')\n @tuiDefaultProp()\n textfieldPostfix = '';\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n ) {\n super(control, changeDetectorRef);\n }\n\n get prefix(): string {\n return this.textfieldPrefix || this.controller.prefix;\n }\n\n get postfix(): string {\n return this.textfieldPostfix || this.controller.postfix;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.inputNumberRef?.nativeFocusableElement || this.computedDisabled\n ? null\n : this.inputNumberRef.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n tuiIsNativeFocused(this.sliderRef?.nativeElement || null)\n );\n }\n\n get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n get decimal(): TuiDecimal {\n return this.precision ? 'not-zero' : 'never';\n }\n\n get showValueContent(): boolean {\n return Boolean(this.valueContent && !this.focused);\n }\n\n get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n computeKeySteps(keySteps: TuiKeySteps | null, min: number, max: number): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n focusTextInput(): void {\n const focusableElement = this.inputNumberRef?.nativeFocusableElement;\n\n if (focusableElement) {\n focusableElement.focus();\n }\n }\n\n safelyUpdateValue(value: number | null): void {\n this.updateValue(this.valueGuard(value ?? this.safeCurrentValue));\n }\n\n onVerticalArrowKeyDown(coefficient: number): void {\n if (this.readOnly || !this.step) {\n return;\n }\n\n const value = this.value + coefficient * this.step;\n\n if (value !== this.value) {\n this.safelyUpdateValue(value);\n }\n\n this.updateTextInputValue(this.valueGuard(value));\n }\n\n onSliderChange(newValue: number): void {\n this.safelyUpdateValue(newValue);\n this.updateTextInputValue(this.value);\n }\n\n onFocused(focused: boolean): void {\n const {value, textInputValue, safeCurrentValue, inputNumberRef} = this;\n\n if (!focused && textInputValue !== inputNumberRef?.getFormattedValue(value)) {\n this.updateTextInputValue(value ?? safeCurrentValue);\n }\n\n this.updateFocused(focused);\n }\n\n private get textInputValue(): string {\n return this.inputNumberRef?.nativeValue || '';\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n private valueGuard(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n\n private updateTextInputValue(value: number): void {\n if (this.inputNumberRef) {\n this.inputNumberRef.nativeValue =\n this.inputNumberRef.getFormattedValue(value);\n }\n }\n}\n","<tui-input-number\n [min]=\"min\"\n [max]=\"max\"\n [precision]=\"precision\"\n [decimal]=\"decimal\"\n [tuiTextfieldPrefix]=\"showValueContent ? '' : prefix\"\n [tuiTextfieldPostfix]=\"showValueContent ? '' : postfix\"\n [readOnly]=\"readOnly\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [ngModel]=\"value\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n (focusedChange)=\"onFocused($event)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showValueContent\"\n ngProjectAs=\"tuiContent\"\n automation-id=\"tui-input-slider__value-content\"\n >\n <ng-container *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n</tui-input-number>\n\n<input\n tuiSlider\n type=\"range\"\n [tuiFocusable]=\"false\"\n [max]=\"computedSteps\"\n [segments]=\"segments\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [attr.disabled]=\"readOnly || disabled || null\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onSliderChange($event)\"\n (click)=\"focusTextInput()\"\n/>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/core';\nimport {TuiInputNumberModule} from '@taiga-ui/kit/components/input-number';\nimport {TuiSliderModule} from '@taiga-ui/kit/components/slider';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputSliderComponent} from './input-slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiFocusableModule,\n TuiInputNumberModule,\n TuiSliderModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputSliderComponent],\n exports: [TuiInputSliderComponent],\n})\nexport class TuiInputSliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -34,6 +34,17 @@ function tuiInputTagOptionsProvider(options) {
34
34
  }
35
35
 
36
36
  const EVENT_Y_TO_X_COEFFICIENT = 3;
37
+ const TAG_SIZE_REM = {
38
+ s: 1.25,
39
+ m: 1.5,
40
+ l: 2,
41
+ };
42
+ const LINE_HEIGHT_REM = {
43
+ s: 1,
44
+ m: 1.25,
45
+ l: 1.25,
46
+ };
47
+ const TAG_VERTICAL_SPACE_REM = 0.125;
37
48
  class TuiInputTagComponent extends AbstractTuiMultipleControl {
38
49
  constructor(control, changeDetectorRef, tuiScrollService, elementRef, appearance, modeDirective, mode$, hintOptions, controller, options, parentHostedDropdown) {
39
50
  super(control, changeDetectorRef);
@@ -50,14 +61,16 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
50
61
  this.scrollToStart$ = new Subject();
51
62
  this.scrollToEnd$ = new Subject();
52
63
  this.separator = this.options.separator;
53
- this.search = ``;
64
+ this.search = '';
54
65
  this.editable = true;
55
66
  this.tagValidator = ALWAYS_TRUE_HANDLER;
67
+ // TODO: 4.0 Consider removing and use rows = 1 instead
56
68
  this.expandable = true;
69
+ this.rows = Infinity;
57
70
  this.inputHidden = false;
58
71
  this.uniqueTags = this.options.uniqueTags;
59
72
  this.maxLength = null;
60
- this.placeholder = ``;
73
+ this.placeholder = '';
61
74
  this.disabledItemHandler = ALWAYS_FALSE_HANDLER;
62
75
  this.searchChange = new EventEmitter();
63
76
  this.status$ = this.mode$.pipe(map(() => this.status));
@@ -87,7 +100,7 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
87
100
  }
88
101
  get labelOutside() {
89
102
  const { size, labelOutside } = this.controller;
90
- return size === `s` || labelOutside;
103
+ return size === 's' || labelOutside;
91
104
  }
92
105
  get icon() {
93
106
  return this.controller.icon;
@@ -130,19 +143,22 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
130
143
  }
131
144
  get status() {
132
145
  var _a;
133
- return ((_a = this.modeDirective) === null || _a === void 0 ? void 0 : _a.mode) ? `default` : this.options.tagStatus;
146
+ return ((_a = this.modeDirective) === null || _a === void 0 ? void 0 : _a.mode) ? 'default' : this.options.tagStatus;
134
147
  }
135
148
  get canOpen() {
136
149
  return this.interactive && !!this.datalist;
137
150
  }
151
+ get computeMaxHeight() {
152
+ return this.expandable ? this.rows * this.lineHeight : null;
153
+ }
138
154
  getLeftContent(tag) {
139
155
  return !this.tagValidator(tag) && this.errorIconTemplate
140
156
  ? this.errorIconTemplate
141
- : ``;
157
+ : '';
142
158
  }
143
159
  onCleanerClick() {
144
160
  var _a;
145
- this.updateSearch(``);
161
+ this.updateSearch('');
146
162
  this.clear();
147
163
  this.focusInput();
148
164
  (_a = this.parentHostedDropdown) === null || _a === void 0 ? void 0 : _a.updateOpen(true);
@@ -215,7 +231,7 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
215
231
  }
216
232
  handleOption(item) {
217
233
  this.focusInput();
218
- this.updateSearch(``);
234
+ this.updateSearch('');
219
235
  this.updateValue(this.value.concat(item));
220
236
  this.open = false;
221
237
  this.scrollToEnd$.next();
@@ -237,11 +253,11 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
237
253
  }
238
254
  onPaste(event) {
239
255
  const pasted = tuiGetClipboardDataText(event);
240
- this.onInput(pasted || ``);
256
+ this.onInput(pasted || '');
241
257
  }
242
258
  onDrop({ dataTransfer }) {
243
259
  if (dataTransfer) {
244
- this.onInput(dataTransfer.getData(`text`) || ``);
260
+ this.onInput(dataTransfer.getData('text') || '');
245
261
  }
246
262
  }
247
263
  setDisabledState() {
@@ -278,11 +294,11 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
278
294
  return;
279
295
  }
280
296
  const { nativeElement } = scroller.browserScrollRef;
281
- const wheel$ = tuiTypedFromEvent(nativeElement, `wheel`, { passive: false }).pipe(filter(event => event.deltaX === 0 && this.shouldScroll(nativeElement)), tuiPreventDefault(), map(({ deltaY }) => Math.max(nativeElement.scrollLeft + deltaY * EVENT_Y_TO_X_COEFFICIENT, 0)));
297
+ const wheel$ = tuiTypedFromEvent(nativeElement, 'wheel', { passive: false }).pipe(filter(event => event.deltaX === 0 && this.shouldScroll(nativeElement)), tuiPreventDefault(), map(({ deltaY }) => Math.max(nativeElement.scrollLeft + deltaY * EVENT_Y_TO_X_COEFFICIENT, 0)));
282
298
  const start$ = this.scrollToStart$.pipe(mapTo(0));
283
299
  const end$ = this.scrollToEnd$.pipe(map(() => nativeElement.scrollWidth));
284
300
  merge(wheel$, start$, end$)
285
- .pipe(switchMap(left => this.tuiScrollService.scroll$(nativeElement, 0, left)), takeUntil(this.destroy$))
301
+ .pipe(switchMap(left => this.tuiScrollService.scroll$(nativeElement, nativeElement.scrollHeight, left)), takeUntil(this.destroy$))
286
302
  .subscribe();
287
303
  }
288
304
  updateSearch(value) {
@@ -300,7 +316,7 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
300
316
  if (!inputValue || this.disabledItemHandler(inputValue)) {
301
317
  return;
302
318
  }
303
- this.updateSearch(``);
319
+ this.updateSearch('');
304
320
  this.updateValue(this.value.concat(inputValue));
305
321
  }
306
322
  deleteLastEnabledItem() {
@@ -319,15 +335,20 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
319
335
  clippedValue(value) {
320
336
  return value.slice(0, this.maxLength || value.length);
321
337
  }
338
+ get lineHeight() {
339
+ return this.labelOutside
340
+ ? TAG_SIZE_REM[this.controller.size] + 2 * TAG_VERTICAL_SPACE_REM
341
+ : LINE_HEIGHT_REM[this.controller.size];
342
+ }
322
343
  }
323
344
  TuiInputTagComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputTagComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: TuiScrollService }, { token: ElementRef }, { token: TUI_TEXTFIELD_APPEARANCE }, { token: TuiModeDirective, optional: true }, { token: TUI_MODE }, { token: TuiHintOptionsDirective, optional: true }, { token: TUI_TEXTFIELD_WATCHED_CONTROLLER }, { token: TUI_INPUT_TAG_OPTIONS }, { token: TuiHostedDropdownComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
324
- TuiInputTagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputTagComponent, selector: "tui-input-tag", inputs: { separator: "separator", search: "search", editable: "editable", tagValidator: "tagValidator", expandable: "expandable", inputHidden: "inputHidden", uniqueTags: "uniqueTags", maxLength: "maxLength", placeholder: "placeholder", disabledItemHandler: "disabledItemHandler", pseudoFocusedSetter: ["pseudoFocused", "pseudoFocusedSetter"] }, outputs: { searchChange: "searchChange" }, host: { properties: { "class._expandable": "this.expandable", "attr.data-size": "this.size", "class._label-outside": "this.labelOutside" } }, providers: [
345
+ TuiInputTagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputTagComponent, selector: "tui-input-tag", inputs: { separator: "separator", search: "search", editable: "editable", tagValidator: "tagValidator", expandable: "expandable", rows: "rows", inputHidden: "inputHidden", uniqueTags: "uniqueTags", maxLength: "maxLength", placeholder: "placeholder", disabledItemHandler: "disabledItemHandler", pseudoFocusedSetter: ["pseudoFocused", "pseudoFocusedSetter"] }, outputs: { searchChange: "searchChange" }, host: { properties: { "class._expandable": "this.expandable", "attr.data-size": "this.size", "class._label-outside": "this.labelOutside" } }, providers: [
325
346
  tuiAsFocusableItemAccessor(TuiInputTagComponent),
326
347
  tuiAsControl(TuiInputTagComponent),
327
348
  tuiAsDataListHost(TuiInputTagComponent),
328
349
  TEXTFIELD_CONTROLLER_PROVIDER,
329
350
  MODE_PROVIDER,
330
- ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "hostedDropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }, { propertyName: "tagsContainer", first: true, predicate: ["tagsContainer"], descendants: true }, { propertyName: "cleanerSvg", first: true, predicate: ["cleaner"], descendants: true, read: ElementRef }, { propertyName: "scrollBar", first: true, predicate: TuiScrollbarComponent, descendants: true, read: ElementRef }, { propertyName: "errorIconTemplate", first: true, predicate: ["errorIcon"], descendants: true }, { propertyName: "scrollerSetter", first: true, predicate: TuiScrollbarComponent, descendants: true }, { propertyName: "tags", predicate: ["tag"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [disabled]=\"computedDisabled\"\n [invalid]=\"computedInvalid\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeft\"\n class=\"t-icons t-icons_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeft as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <div class=\"t-absolute-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-input-tag__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n <tui-scrollbar\n *ngIf=\"!expandable; else items\"\n class=\"t-scrollbar\"\n [hidden]=\"true\"\n >\n <ng-container [ngTemplateOutlet]=\"items\"></ng-container>\n </tui-scrollbar>\n <ng-template #items>\n <div\n #tagsContainer\n class=\"t-tags\"\n >\n <ng-container *ngIf=\"labelOutside; else text\">\n <tui-tag\n *ngFor=\"let item of value; index as index; trackBy: trackByFn\"\n #tag\n automation-id=\"tui-input-tag__tag\"\n class=\"t-tag\"\n [status]=\"(status$ | async)!\"\n [leftContent]=\"getLeftContent(item)\"\n [tuiFocusable]=\"false\"\n [disabled]=\"computedDisabled || disabledItemHandler(item)\"\n [editable]=\"editable && !readOnly\"\n [hoverable]=\"!readOnly\"\n [removable]=\"!readOnly\"\n [separator]=\"separator\"\n [maxLength]=\"maxLength\"\n [size]=\"controller.size\"\n [value]=\"item.toString()\"\n (edited)=\"onTagEdited($event, index)\"\n (keydown.arrowLeft.prevent)=\"onTagKeyDownArrowLeft(index)\"\n (keydown.arrowRight.prevent)=\"onTagKeyDownArrowRight(index)\"\n ></tui-tag>\n </ng-container>\n <ng-template #text>\n <span\n *ngFor=\"let item of value\"\n class=\"t-text\"\n [class.t-text_disabled]=\"disabledItemHandler(item)\"\n [class.t-text_error]=\"!tagValidator(item)\"\n [textContent]=\"item\"\n ></span>\n </ng-template>\n <div\n class=\"t-input-wrapper\"\n [class.t-input-wrapper_collapsed]=\"computedDisabled || readOnly || inputHidden\"\n >\n <div class=\"t-ghost\">{{ search }}</div>\n <input\n #focusableElement\n type=\"text\"\n automation-id=\"tui-input-tag__native\"\n class=\"t-native\"\n [placeholder]=\"placeholder\"\n [class.t-native_hidden]=\"inputHidden\"\n [attr.maxLength]=\"maxLength\"\n [id]=\"id\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly || inputHidden\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"search\"\n (ngModelChange)=\"onInput($event)\"\n (paste.prevent)=\"onPaste($event)\"\n (drop.prevent)=\"onDrop($any($event))\"\n (keydown.arrowLeft)=\"onFieldKeyDownArrowLeft($event)\"\n (keydown.backspace)=\"onFieldKeyDownBackspace($event)\"\n (keydown.enter.prevent)=\"onFieldKeyDownEnter()\"\n />\n </div>\n </div>\n </ng-template>\n </div>\n <div\n *ngIf=\"hasRightIcons\"\n class=\"t-icons t-icons_right\"\n >\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n #cleaner\n automation-id=\"tui-input-tag__cleaner\"\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onCleanerClick()\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-input-tag__tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n class=\"t-tooltip\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [content]=\"hintOptions.content\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div *ngIf=\"icon\">\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </div>\n <ng-template #errorIcon>\n <tui-svg\n src=\"tuiIconAttention\"\n class=\"t-error-icon\"\n ></tui-svg>\n </ng-template>\n </div>\n</tui-hosted-dropdown>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem;padding:0 .25rem}.t-tags{display:flex;align-items:center;box-sizing:border-box}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}:host[data-size=s] .t-tags{min-height:var(--tui-height-s);padding:.25rem .25rem .25rem 0}:host[data-size=m] .t-tags{min-height:var(--tui-height-m);padding:.5rem .25rem .5rem 0}:host[data-size=l] .t-tags{min-height:var(--tui-height-l);padding:.625rem .25rem .625rem 0}:host[data-size=m]:not(._label-outside) .t-tags{padding:1.1875rem 1rem 0 0}:host[data-size=l]:not(._label-outside) .t-tags{padding:1.6875rem 1rem .5625rem 0}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-icons{height:var(--tui-height-s)}:host[data-size=m] .t-icons{height:var(--tui-height-m)}:host[data-size=l] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size=m] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size=l] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;padding:0}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:\",\\a0\"}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:\"\"}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-input-wrapper{min-height:1.5rem}:host[data-size=m] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size=l] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i2.TuiTagComponent, selector: "tui-tag, a[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
351
+ ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "hostedDropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }, { propertyName: "tagsContainer", first: true, predicate: ["tagsContainer"], descendants: true }, { propertyName: "cleanerSvg", first: true, predicate: ["cleaner"], descendants: true, read: ElementRef }, { propertyName: "scrollBar", first: true, predicate: TuiScrollbarComponent, descendants: true, read: ElementRef }, { propertyName: "errorIconTemplate", first: true, predicate: ["errorIcon"], descendants: true }, { propertyName: "scrollerSetter", first: true, predicate: TuiScrollbarComponent, descendants: true }, { propertyName: "tags", predicate: ["tag"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [disabled]=\"computedDisabled\"\n [invalid]=\"computedInvalid\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeft\"\n class=\"t-icons t-icons_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeft as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <div class=\"t-absolute-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-input-tag__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n <tui-scrollbar\n class=\"t-scrollbar\"\n [hidden]=\"!expandable\"\n [style.maxHeight.rem]=\"computeMaxHeight\"\n >\n <div class=\"t-tags\">\n <ng-container *ngIf=\"labelOutside; else text\">\n <tui-tag\n *ngFor=\"let item of value; index as index; trackBy: trackByFn\"\n #tag\n automation-id=\"tui-input-tag__tag\"\n class=\"t-tag\"\n [status]=\"(status$ | async)!\"\n [leftContent]=\"getLeftContent(item)\"\n [tuiFocusable]=\"false\"\n [disabled]=\"computedDisabled || disabledItemHandler(item)\"\n [editable]=\"editable && !readOnly\"\n [hoverable]=\"!readOnly\"\n [removable]=\"!readOnly\"\n [separator]=\"separator\"\n [maxLength]=\"maxLength\"\n [size]=\"controller.size\"\n [value]=\"item.toString()\"\n (edited)=\"onTagEdited($event, index)\"\n (keydown.arrowLeft.prevent)=\"onTagKeyDownArrowLeft(index)\"\n (keydown.arrowRight.prevent)=\"onTagKeyDownArrowRight(index)\"\n ></tui-tag>\n </ng-container>\n <ng-template #text>\n <span\n *ngFor=\"let item of value\"\n class=\"t-text\"\n [class.t-text_disabled]=\"disabledItemHandler(item)\"\n [class.t-text_error]=\"!tagValidator(item)\"\n [textContent]=\"item\"\n ></span>\n </ng-template>\n <div\n class=\"t-input-wrapper\"\n [class.t-input-wrapper_collapsed]=\"computedDisabled || readOnly || inputHidden\"\n >\n <div class=\"t-ghost\">{{ search }}</div>\n <input\n #focusableElement\n type=\"text\"\n automation-id=\"tui-input-tag__native\"\n class=\"t-native\"\n [placeholder]=\"placeholder\"\n [class.t-native_hidden]=\"inputHidden\"\n [attr.maxLength]=\"maxLength\"\n [id]=\"id\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly || inputHidden\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"search\"\n (ngModelChange)=\"onInput($event)\"\n (paste.prevent)=\"onPaste($event)\"\n (drop.prevent)=\"onDrop($any($event))\"\n (keydown.arrowLeft)=\"onFieldKeyDownArrowLeft($event)\"\n (keydown.backspace)=\"onFieldKeyDownBackspace($event)\"\n (keydown.enter.prevent)=\"onFieldKeyDownEnter()\"\n />\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div\n *ngIf=\"hasRightIcons\"\n class=\"t-icons t-icons_right\"\n >\n <ng-container *ngIf=\"hasCleaner\">\n <tui-svg\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n #cleaner\n automation-id=\"tui-input-tag__cleaner\"\n class=\"t-cleaner\"\n [src]=\"src\"\n (click.stop)=\"onCleanerClick()\"\n ></tui-svg>\n </ng-container>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-input-tag__tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n class=\"t-tooltip\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [content]=\"hintOptions.content\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div *ngIf=\"icon\">\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </div>\n <ng-template #errorIcon>\n <tui-svg\n src=\"tuiIconAttention\"\n class=\"t-error-icon\"\n ></tui-svg>\n </ng-template>\n </div>\n</tui-hosted-dropdown>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem}.t-tags{display:flex;padding-left:.25rem;-webkit-padding-start:.25rem;padding-inline-start:.25rem;padding-right:.5rem;-webkit-padding-end:.5rem;padding-inline-end:.5rem}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-icons{height:var(--tui-height-s)}:host[data-size=m] .t-icons{height:var(--tui-height-m)}:host[data-size=l] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size=m] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size=l] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;display:flex;align-items:center;padding:0;box-sizing:border-box}:host[data-size=s] .t-wrapper{min-height:var(--tui-height-s);padding:.25rem 0}:host[data-size=m] .t-wrapper{min-height:var(--tui-height-m);padding:.5rem 0}:host[data-size=l] .t-wrapper{padding:.625rem 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:1.1875rem 0 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:1.6875rem 0 .5625rem}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:\",\\a0\"}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:\"\"}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-input-wrapper{min-height:1.5rem}:host[data-size=m] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size=l] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i2.TuiTagComponent, selector: "tui-tag, a[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
331
352
  __decorate([
332
353
  tuiDefaultProp()
333
354
  ], TuiInputTagComponent.prototype, "separator", void 0);
@@ -361,9 +382,9 @@ __decorate([
361
382
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputTagComponent, decorators: [{
362
383
  type: Component,
363
384
  args: [{
364
- selector: `tui-input-tag`,
365
- templateUrl: `./input-tag.template.html`,
366
- styleUrls: [`./input-tag.style.less`],
385
+ selector: 'tui-input-tag',
386
+ templateUrl: './input-tag.template.html',
387
+ styleUrls: ['./input-tag.style.less'],
367
388
  changeDetection: ChangeDetectionStrategy.OnPush,
368
389
  providers: [
369
390
  tuiAsFocusableItemAccessor(TuiInputTagComponent),
@@ -422,16 +443,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
422
443
  args: [TuiHostedDropdownComponent]
423
444
  }], focusableElement: [{
424
445
  type: ViewChild,
425
- args: [`focusableElement`]
446
+ args: ['focusableElement']
426
447
  }], tagsContainer: [{
427
448
  type: ViewChild,
428
- args: [`tagsContainer`]
449
+ args: ['tagsContainer']
429
450
  }], tags: [{
430
451
  type: ViewChildren,
431
- args: [`tag`, { read: ElementRef }]
452
+ args: ['tag', { read: ElementRef }]
432
453
  }], cleanerSvg: [{
433
454
  type: ViewChild,
434
- args: [`cleaner`, { read: ElementRef }]
455
+ args: ['cleaner', { read: ElementRef }]
435
456
  }], scrollBar: [{
436
457
  type: ViewChild,
437
458
  args: [TuiScrollbarComponent, { read: ElementRef }]
@@ -447,7 +468,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
447
468
  type: Input
448
469
  }, {
449
470
  type: HostBinding,
450
- args: [`class._expandable`]
471
+ args: ['class._expandable']
472
+ }], rows: [{
473
+ type: Input
451
474
  }], inputHidden: [{
452
475
  type: Input
453
476
  }], uniqueTags: [{
@@ -460,7 +483,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
460
483
  type: Input
461
484
  }], pseudoFocusedSetter: [{
462
485
  type: Input,
463
- args: [`pseudoFocused`]
486
+ args: ['pseudoFocused']
464
487
  }], searchChange: [{
465
488
  type: Output
466
489
  }], datalist: [{
@@ -468,16 +491,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
468
491
  args: [TuiDataListDirective, { read: TemplateRef }]
469
492
  }], errorIconTemplate: [{
470
493
  type: ViewChild,
471
- args: [`errorIcon`]
494
+ args: ['errorIcon']
472
495
  }], scrollerSetter: [{
473
496
  type: ViewChild,
474
497
  args: [TuiScrollbarComponent]
475
498
  }], size: [{
476
499
  type: HostBinding,
477
- args: [`attr.data-size`]
500
+ args: ['attr.data-size']
478
501
  }], labelOutside: [{
479
502
  type: HostBinding,
480
- args: [`class._label-outside`]
503
+ args: ['class._label-outside']
481
504
  }] } });
482
505
 
483
506
  class TuiInputTagModule {