@taiga-ui/kit 2.13.0 → 2.16.0-fixed

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 (434) hide show
  1. package/abstract/input-slider.d.ts +4 -3
  2. package/abstract/slider/slider.d.ts +2 -2
  3. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-kit-abstract.umd.js +28 -12
  5. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-abstract.umd.min.js +2 -2
  7. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  9. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
  11. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
  13. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
  14. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-field-error.umd.js +17 -6
  16. package/bundles/taiga-ui-kit-components-field-error.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-field-error.umd.min.js +2 -2
  18. package/bundles/taiga-ui-kit-components-field-error.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-count.umd.js +86 -30
  20. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +2 -2
  22. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +24 -24
  24. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +2 -2
  26. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +61 -32
  28. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +2 -2
  30. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-input-date.umd.js +18 -17
  32. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +2 -2
  34. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -0
  36. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-input-number.umd.js +28 -14
  39. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +2 -2
  41. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +23 -7
  43. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +2 -2
  45. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-phone.umd.js +15 -4
  47. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  49. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-range.umd.js +20 -15
  51. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  53. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-slider.umd.js +15 -10
  55. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  57. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -3
  59. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +2 -2
  61. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input-time.umd.js +1 -0
  63. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-multi-select.umd.js +20 -6
  66. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +1 -1
  68. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-progress.umd.js +325 -0
  70. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -0
  71. package/bundles/taiga-ui-kit-components-progress.umd.min.js +16 -0
  72. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -0
  73. package/bundles/taiga-ui-kit-components-radio.umd.js +1 -1
  74. package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
  75. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-range.umd.js +1 -2
  77. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
  79. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-select-option.umd.js +1 -1
  81. package/bundles/taiga-ui-kit-components-select-option.umd.min.js +1 -1
  82. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-slider.umd.js +1 -2
  84. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  86. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-tabs.umd.js +17 -9
  88. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  90. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-tag.umd.js +1 -1
  92. package/bundles/taiga-ui-kit-components-tag.umd.min.js +1 -1
  93. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-text-area.umd.js +16 -2
  95. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +2 -2
  97. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-toggle.umd.js +52 -26
  99. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +2 -2
  101. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components.umd.js +12 -4
  103. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
  105. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js +390 -0
  106. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -0
  107. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js +16 -0
  108. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -0
  109. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +1 -0
  110. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js.map +1 -1
  112. package/bundles/taiga-ui-kit-directives.umd.js +12 -4
  113. package/bundles/taiga-ui-kit-directives.umd.js.map +1 -1
  114. package/bundles/taiga-ui-kit-directives.umd.min.js +1 -1
  115. package/bundles/taiga-ui-kit-tokens.umd.js +4 -0
  116. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  117. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  118. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-kit-utils-mask.umd.js +7 -7
  120. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  121. package/bundles/taiga-ui-kit-utils-mask.umd.min.js +2 -2
  122. package/bundles/taiga-ui-kit-utils-mask.umd.min.js.map +1 -1
  123. package/bundles/taiga-ui-kit-validators.umd.js +1 -0
  124. package/bundles/taiga-ui-kit-validators.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-validators.umd.min.js.map +1 -1
  126. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  127. package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
  128. package/components/field-error/field-error.component.d.ts +2 -0
  129. package/components/field-error/taiga-ui-kit-components-field-error.metadata.json +1 -1
  130. package/components/index.d.ts +1 -0
  131. package/components/input-count/index.d.ts +1 -0
  132. package/components/input-count/input-count-options.d.ts +19 -0
  133. package/components/input-count/input-count.component.d.ts +10 -3
  134. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  135. package/components/input-date/input-date.component.d.ts +7 -4
  136. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  137. package/components/input-date-range/input-date-range.component.d.ts +8 -5
  138. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  139. package/components/input-date-time/input-date-time.component.d.ts +10 -5
  140. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  141. package/components/input-number/input-number.component.d.ts +4 -2
  142. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  143. package/components/input-phone/input-phone.component.d.ts +4 -2
  144. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  145. package/components/input-phone-international/input-phone-international.component.d.ts +5 -1
  146. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  147. package/components/input-range/input-range.component.d.ts +4 -2
  148. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  149. package/components/input-slider/input-slider.component.d.ts +4 -2
  150. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  151. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  152. package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
  153. package/components/multi-select/multi-select.component.d.ts +4 -2
  154. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  155. package/components/progress/index.d.ts +4 -0
  156. package/components/progress/package.json +13 -0
  157. package/components/progress/pipes/progress-color-segments.pipe.d.ts +8 -0
  158. package/components/progress/progress-bar/progress-bar.component.d.ts +5 -0
  159. package/components/progress/progress-label/progress-label.component.d.ts +2 -0
  160. package/components/progress/progress.module.d.ts +2 -0
  161. package/components/progress/taiga-ui-kit-components-progress.d.ts +4 -0
  162. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -0
  163. package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
  164. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  165. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  166. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  167. package/components/tabs/tab/tab.component.d.ts +5 -2
  168. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  169. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  170. package/components/taiga-ui-kit-components.metadata.json +1 -1
  171. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  172. package/components/text-area/text-area.component.d.ts +2 -0
  173. package/components/toggle/index.d.ts +1 -0
  174. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  175. package/components/toggle/toggle-options.d.ts +16 -0
  176. package/components/toggle/toggle.component.d.ts +7 -4
  177. package/directives/dropdown-context/dropdown-context.directive.d.ts +28 -0
  178. package/directives/dropdown-context/dropdown-context.module.d.ts +2 -0
  179. package/directives/dropdown-context/index.d.ts +2 -0
  180. package/directives/dropdown-context/package.json +13 -0
  181. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.d.ts +4 -0
  182. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.metadata.json +1 -0
  183. package/directives/index.d.ts +1 -0
  184. package/directives/taiga-ui-kit-directives.metadata.json +1 -1
  185. package/esm2015/abstract/input-slider.js +14 -9
  186. package/esm2015/abstract/slider/slider.js +10 -6
  187. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  188. package/esm2015/components/checkbox/checkbox.component.js +1 -1
  189. package/esm2015/components/field-error/field-error.component.js +10 -2
  190. package/esm2015/components/field-error/field-error.module.js +2 -3
  191. package/esm2015/components/index.js +2 -1
  192. package/esm2015/components/input-count/index.js +2 -1
  193. package/esm2015/components/input-count/input-count-options.js +21 -0
  194. package/esm2015/components/input-count/input-count.component.js +49 -25
  195. package/esm2015/components/input-count/input-count.module.js +3 -1
  196. package/esm2015/components/input-date/input-date.component.js +18 -13
  197. package/esm2015/components/input-date/input-date.module.js +3 -2
  198. package/esm2015/components/input-date-range/input-date-range.component.js +25 -20
  199. package/esm2015/components/input-date-time/input-date-time.component.js +58 -38
  200. package/esm2015/components/input-file/file/file.component.js +2 -1
  201. package/esm2015/components/input-number/input-number.component.js +26 -16
  202. package/esm2015/components/input-phone/input-phone.component.js +13 -6
  203. package/esm2015/components/input-phone-international/input-phone-international.component.js +23 -8
  204. package/esm2015/components/input-phone-international/input-phone-international.module.js +5 -4
  205. package/esm2015/components/input-range/input-range.component.js +22 -16
  206. package/esm2015/components/input-range/input-range.module.js +2 -3
  207. package/esm2015/components/input-slider/input-slider.component.js +17 -11
  208. package/esm2015/components/input-slider/input-slider.module.js +2 -3
  209. package/esm2015/components/input-tag/input-tag.component.js +6 -4
  210. package/esm2015/components/input-time/input-time.component.js +2 -1
  211. package/esm2015/components/multi-select/multi-select.component.js +18 -8
  212. package/esm2015/components/progress/index.js +5 -0
  213. package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +34 -0
  214. package/esm2015/components/progress/progress-bar/progress-bar.component.js +27 -0
  215. package/esm2015/components/progress/progress-label/progress-label.component.js +14 -0
  216. package/esm2015/components/progress/progress.module.js +25 -0
  217. package/esm2015/components/progress/taiga-ui-kit-components-progress.js +5 -0
  218. package/esm2015/components/radio/radio.component.js +1 -1
  219. package/esm2015/components/range/range.component.js +2 -2
  220. package/esm2015/components/range/range.module.js +2 -3
  221. package/esm2015/components/select-option/select-option.component.js +1 -1
  222. package/esm2015/components/slider/slider.component.js +2 -2
  223. package/esm2015/components/slider/slider.module.js +2 -3
  224. package/esm2015/components/tabs/tab/tab.component.js +19 -11
  225. package/esm2015/components/tabs/underline/underline.component.js +1 -1
  226. package/esm2015/components/tag/tag.component.js +1 -1
  227. package/esm2015/components/text-area/text-area.component.js +9 -3
  228. package/esm2015/components/toggle/index.js +2 -1
  229. package/esm2015/components/toggle/toggle-options.js +19 -0
  230. package/esm2015/components/toggle/toggle.component.js +19 -15
  231. package/esm2015/components/toggle/toggle.module.js +3 -1
  232. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +137 -0
  233. package/esm2015/directives/dropdown-context/dropdown-context.module.js +15 -0
  234. package/esm2015/directives/dropdown-context/index.js +3 -0
  235. package/esm2015/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +5 -0
  236. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +2 -1
  237. package/esm2015/directives/index.js +2 -1
  238. package/esm2015/interfaces/with-date-mask-pipe-config.js +1 -1
  239. package/esm2015/tokens/i18n.js +4 -1
  240. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -3
  241. package/esm2015/utils/mask/create-auto-corrected-date-range-pipe.js +7 -7
  242. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +3 -2
  243. package/esm2015/validators/unfinished.validator.js +2 -1
  244. package/esm5/abstract/input-slider.js +18 -9
  245. package/esm5/abstract/slider/slider.js +14 -6
  246. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  247. package/esm5/components/checkbox/checkbox.component.js +1 -1
  248. package/esm5/components/field-error/field-error.component.js +14 -2
  249. package/esm5/components/field-error/field-error.module.js +2 -3
  250. package/esm5/components/index.js +2 -1
  251. package/esm5/components/input-count/index.js +2 -1
  252. package/esm5/components/input-count/input-count-options.js +21 -0
  253. package/esm5/components/input-count/input-count.component.js +61 -29
  254. package/esm5/components/input-count/input-count.module.js +3 -1
  255. package/esm5/components/input-date/input-date.component.js +18 -17
  256. package/esm5/components/input-date/input-date.module.js +3 -2
  257. package/esm5/components/input-date-range/input-date-range.component.js +25 -24
  258. package/esm5/components/input-date-time/input-date-time.component.js +66 -37
  259. package/esm5/components/input-file/file/file.component.js +2 -1
  260. package/esm5/components/input-number/input-number.component.js +30 -16
  261. package/esm5/components/input-phone/input-phone.component.js +17 -6
  262. package/esm5/components/input-phone-international/input-phone-international.component.js +23 -8
  263. package/esm5/components/input-phone-international/input-phone-international.module.js +5 -4
  264. package/esm5/components/input-range/input-range.component.js +22 -16
  265. package/esm5/components/input-range/input-range.module.js +2 -3
  266. package/esm5/components/input-slider/input-slider.component.js +17 -11
  267. package/esm5/components/input-slider/input-slider.module.js +2 -3
  268. package/esm5/components/input-tag/input-tag.component.js +6 -4
  269. package/esm5/components/input-time/input-time.component.js +2 -1
  270. package/esm5/components/multi-select/multi-select.component.js +22 -8
  271. package/esm5/components/progress/index.js +5 -0
  272. package/esm5/components/progress/pipes/progress-color-segments.pipe.js +37 -0
  273. package/esm5/components/progress/progress-bar/progress-bar.component.js +28 -0
  274. package/esm5/components/progress/progress-label/progress-label.component.js +17 -0
  275. package/esm5/components/progress/progress.module.js +28 -0
  276. package/esm5/components/progress/taiga-ui-kit-components-progress.js +5 -0
  277. package/esm5/components/radio/radio.component.js +1 -1
  278. package/esm5/components/range/range.component.js +2 -2
  279. package/esm5/components/range/range.module.js +2 -3
  280. package/esm5/components/select-option/select-option.component.js +1 -1
  281. package/esm5/components/slider/slider.component.js +2 -2
  282. package/esm5/components/slider/slider.module.js +2 -3
  283. package/esm5/components/tabs/tab/tab.component.js +19 -11
  284. package/esm5/components/tabs/underline/underline.component.js +1 -1
  285. package/esm5/components/tag/tag.component.js +1 -1
  286. package/esm5/components/text-area/text-area.component.js +17 -3
  287. package/esm5/components/toggle/index.js +2 -1
  288. package/esm5/components/toggle/toggle-options.js +21 -0
  289. package/esm5/components/toggle/toggle.component.js +27 -23
  290. package/esm5/components/toggle/toggle.module.js +3 -1
  291. package/esm5/directives/dropdown-context/dropdown-context.directive.js +153 -0
  292. package/esm5/directives/dropdown-context/dropdown-context.module.js +18 -0
  293. package/esm5/directives/dropdown-context/index.js +3 -0
  294. package/esm5/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +5 -0
  295. package/esm5/directives/dropdown-selection/dropdown-selection.directive.js +2 -1
  296. package/esm5/directives/index.js +2 -1
  297. package/esm5/interfaces/with-date-mask-pipe-config.js +1 -1
  298. package/esm5/tokens/i18n.js +4 -1
  299. package/esm5/utils/mask/create-auto-corrected-date-pipe.js +3 -3
  300. package/esm5/utils/mask/create-auto-corrected-date-range-pipe.js +7 -7
  301. package/esm5/utils/mask/create-auto-corrected-date-time-pipe.js +3 -2
  302. package/esm5/validators/unfinished.validator.js +2 -1
  303. package/fesm2015/taiga-ui-kit-abstract.js +21 -13
  304. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  305. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  306. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  307. package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
  308. package/fesm2015/taiga-ui-kit-components-field-error.js +11 -3
  309. package/fesm2015/taiga-ui-kit-components-field-error.js.map +1 -1
  310. package/fesm2015/taiga-ui-kit-components-input-count.js +71 -26
  311. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  312. package/fesm2015/taiga-ui-kit-components-input-date-range.js +24 -19
  313. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  314. package/fesm2015/taiga-ui-kit-components-input-date-time.js +56 -36
  315. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  316. package/fesm2015/taiga-ui-kit-components-input-date.js +18 -12
  317. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  318. package/fesm2015/taiga-ui-kit-components-input-file.js +1 -0
  319. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  320. package/fesm2015/taiga-ui-kit-components-input-number.js +25 -15
  321. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  322. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +26 -10
  323. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  324. package/fesm2015/taiga-ui-kit-components-input-phone.js +12 -5
  325. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  326. package/fesm2015/taiga-ui-kit-components-input-range.js +21 -16
  327. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  328. package/fesm2015/taiga-ui-kit-components-input-slider.js +16 -11
  329. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  330. package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -3
  331. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  332. package/fesm2015/taiga-ui-kit-components-input-time.js +1 -0
  333. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  334. package/fesm2015/taiga-ui-kit-components-multi-select.js +17 -7
  335. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  336. package/fesm2015/taiga-ui-kit-components-progress.js +93 -0
  337. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -0
  338. package/fesm2015/taiga-ui-kit-components-radio.js +1 -1
  339. package/fesm2015/taiga-ui-kit-components-range.js +2 -3
  340. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  341. package/fesm2015/taiga-ui-kit-components-select-option.js +1 -1
  342. package/fesm2015/taiga-ui-kit-components-slider.js +2 -3
  343. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  344. package/fesm2015/taiga-ui-kit-components-tabs.js +18 -10
  345. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  346. package/fesm2015/taiga-ui-kit-components-tag.js +1 -1
  347. package/fesm2015/taiga-ui-kit-components-text-area.js +8 -2
  348. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  349. package/fesm2015/taiga-ui-kit-components-toggle.js +39 -16
  350. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  351. package/fesm2015/taiga-ui-kit-components.js +1 -0
  352. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  353. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +153 -0
  354. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -0
  355. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +1 -0
  356. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  357. package/fesm2015/taiga-ui-kit-directives.js +1 -0
  358. package/fesm2015/taiga-ui-kit-directives.js.map +1 -1
  359. package/fesm2015/taiga-ui-kit-tokens.js +4 -1
  360. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  361. package/fesm2015/taiga-ui-kit-utils-mask.js +8 -8
  362. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  363. package/fesm2015/taiga-ui-kit-validators.js +1 -0
  364. package/fesm2015/taiga-ui-kit-validators.js.map +1 -1
  365. package/fesm5/taiga-ui-kit-abstract.js +29 -13
  366. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  367. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
  368. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  369. package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
  370. package/fesm5/taiga-ui-kit-components-field-error.js +15 -3
  371. package/fesm5/taiga-ui-kit-components-field-error.js.map +1 -1
  372. package/fesm5/taiga-ui-kit-components-input-count.js +83 -30
  373. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  374. package/fesm5/taiga-ui-kit-components-input-date-range.js +24 -23
  375. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  376. package/fesm5/taiga-ui-kit-components-input-date-time.js +66 -37
  377. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  378. package/fesm5/taiga-ui-kit-components-input-date.js +18 -16
  379. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  380. package/fesm5/taiga-ui-kit-components-input-file.js +1 -0
  381. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  382. package/fesm5/taiga-ui-kit-components-input-number.js +29 -15
  383. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  384. package/fesm5/taiga-ui-kit-components-input-phone-international.js +26 -10
  385. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  386. package/fesm5/taiga-ui-kit-components-input-phone.js +16 -5
  387. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  388. package/fesm5/taiga-ui-kit-components-input-range.js +21 -16
  389. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  390. package/fesm5/taiga-ui-kit-components-input-slider.js +16 -11
  391. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  392. package/fesm5/taiga-ui-kit-components-input-tag.js +5 -3
  393. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  394. package/fesm5/taiga-ui-kit-components-input-time.js +1 -0
  395. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  396. package/fesm5/taiga-ui-kit-components-multi-select.js +21 -7
  397. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  398. package/fesm5/taiga-ui-kit-components-progress.js +103 -0
  399. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -0
  400. package/fesm5/taiga-ui-kit-components-radio.js +1 -1
  401. package/fesm5/taiga-ui-kit-components-range.js +2 -3
  402. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  403. package/fesm5/taiga-ui-kit-components-select-option.js +1 -1
  404. package/fesm5/taiga-ui-kit-components-slider.js +2 -3
  405. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  406. package/fesm5/taiga-ui-kit-components-tabs.js +18 -10
  407. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  408. package/fesm5/taiga-ui-kit-components-tag.js +1 -1
  409. package/fesm5/taiga-ui-kit-components-text-area.js +16 -2
  410. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  411. package/fesm5/taiga-ui-kit-components-toggle.js +49 -24
  412. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  413. package/fesm5/taiga-ui-kit-components.js +1 -0
  414. package/fesm5/taiga-ui-kit-components.js.map +1 -1
  415. package/fesm5/taiga-ui-kit-directives-dropdown-context.js +172 -0
  416. package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -0
  417. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js +1 -0
  418. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  419. package/fesm5/taiga-ui-kit-directives.js +1 -0
  420. package/fesm5/taiga-ui-kit-directives.js.map +1 -1
  421. package/fesm5/taiga-ui-kit-tokens.js +4 -1
  422. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  423. package/fesm5/taiga-ui-kit-utils-mask.js +8 -8
  424. package/fesm5/taiga-ui-kit-utils-mask.js.map +1 -1
  425. package/fesm5/taiga-ui-kit-validators.js +1 -0
  426. package/fesm5/taiga-ui-kit-validators.js.map +1 -1
  427. package/interfaces/with-date-mask-pipe-config.d.ts +4 -1
  428. package/package.json +4 -4
  429. package/tokens/i18n.d.ts +2 -0
  430. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  431. package/utils/mask/create-auto-corrected-date-pipe.d.ts +3 -4
  432. package/utils/mask/create-auto-corrected-date-range-pipe.d.ts +2 -3
  433. package/utils/mask/create-auto-corrected-date-time-pipe.d.ts +2 -3
  434. package/utils/mask/taiga-ui-kit-utils-mask.metadata.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/tabs/tab.directive.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.providers.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.component.ts","ng://@taiga-ui/kit/components/tabs/tabs/tabs.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.const.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.providers.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.component.ts","ng://@taiga-ui/kit/components/tabs/underline/underline.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","TuiTabDirective","template","this","TemplateRef","type","Inject","args","Directive","selector","TUI_TAB_EVENT","InjectionToken","TUI_TAB_PROVIDERS","TuiDestroyService","TuiFocusVisibleService","TuiRouterLinkActiveService","provide","deps","ElementRef","DOCUMENT","Optional","MutationObserverService","RouterLinkActive","useFactory","tabActiveFactory","MODE_PROVIDER","_a","documentRef","routerLinkActiveService","mutationObserverService","routerLinkActive","nativeElement","mutationObserver","pipe","filter","isActive","EMPTY","merge","identity","matches","typedFromEvent","map","dispatchEvent","tuiCustomEvent","bubbles","TuiTabComponent","mode$","event$","mobileAware","isIos","isAndroid","focusVisible$","_this","focusVisible","subscribe","visible","prototype","Observable","TUI_MODE","TUI_MOBILE_AWARE","TUI_IS_IOS","TUI_IS_ANDROID","HostBinding","Component","changeDetection","ChangeDetectionStrategy","OnPush","providers","host","($.data-mode.attr)","OBSERVER_INIT","childList","TuiTabsComponent","elementRef","renderer","changeDetectorRef","resize$","underline","activeItemIndexChange","EventEmitter","children","EMPTY_QUERY","activeItemIndex","detectChanges","index","scrollTo","tabs","itemsQueryListObservable","mapTo","Array","from","querySelectorAll","ngAfterViewChecked","activeElement","forEach","removeClass","setAttribute","addClass","onActivate","element","findIndex","tab","activeItemIndexSetter","emit","onKeyDownArrow","current","step","moveFocus","indexOf","offsetLeft","offsetWidth","scrollLeft","Renderer2","ChangeDetectorRef","TuiResizeService","Input","tuiDefaultProp","Output","ContentChildren","forwardRef","tuiPure","HostListener","TUI_TAB_ACTIVATE","class","MUTATION_OBSERVER_INIT","useValue","tabsRefreshFactory","mutations$","destroy$","_b","body","tap","contains","debounceTime","startWith","takeUntil","MUTATION_CONFIG","subtree","TABS_REFRESH","TABS_PROVIDERS","TuiTabsWithMoreComponent","refresh$","moreWord$","moreContent","itemsLimit","Infinity","items","open","maxIndex","lastVisibleIndex","moreButton","isNativeFocused","offset","Math","min","ngAfterViewInit","getMaxIndex","onActiveItemIndexChange","updateActiveItemIndex","onClick","focusMore","onArrowRight","onArrowLeft","setNativeFocused","onWrapperArrow","button","wrapper","prev","getClosestFocusable","clientWidth","activeWidth","scrollWidth","moreWidth","total","reduce","acc","TUI_MORE_WORD","read","ViewChild","TuiUnderlineComponent","ngZone","animationFrame$","ios","android","element$","ReplaySubject","switchMap","tuiZonefree","of","share","transition$","asCallable","transform$","px","width$","next","NgZone","ANIMATION_FRAME","TuiTabsModule","NgModule","imports","CommonModule","TuiHostedDropdownModule","TuiSvgModule","TuiFocusableModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Directive, Inject, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiTab]`,\n})\nexport class TuiTabDirective {\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<{}>) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Optional, Provider} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {\n identity,\n tuiCustomEvent,\n TuiDestroyService,\n TuiFocusVisibleService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiRouterLinkActiveService} from '@taiga-ui/core';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\nexport const TUI_TAB_EVENT = new InjectionToken<Observable<Event>>(\n 'Stream of tab activation events',\n);\nexport const TUI_TAB_PROVIDERS: Provider[] = [\n TuiDestroyService,\n TuiFocusVisibleService,\n TuiRouterLinkActiveService,\n {\n provide: TUI_TAB_EVENT,\n deps: [\n ElementRef,\n DOCUMENT,\n TuiRouterLinkActiveService,\n [new Optional(), MutationObserverService],\n [new Optional(), RouterLinkActive],\n ],\n useFactory: tabActiveFactory,\n },\n MODE_PROVIDER,\n];\n\nexport function tabActiveFactory(\n {nativeElement}: ElementRef<HTMLElement>,\n documentRef: Document,\n routerLinkActiveService: Observable<boolean>,\n mutationObserverService: MutationObserverService | null,\n routerLinkActive: RouterLinkActive | null,\n): Observable<unknown> {\n const mutationObserver =\n routerLinkActive && mutationObserverService\n ? mutationObserverService.pipe(filter(() => routerLinkActive.isActive))\n : EMPTY;\n\n return merge(\n mutationObserver,\n routerLinkActiveService.pipe(filter(identity)),\n nativeElement.matches('button') ? typedFromEvent(nativeElement, 'click') : EMPTY,\n ).pipe(\n map(() =>\n nativeElement.dispatchEvent(\n tuiCustomEvent(TUI_TAB_ACTIVATE, {bubbles: true}, documentRef),\n ),\n ),\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Optional,\n} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {TUI_IS_ANDROID, TUI_IS_IOS, TuiFocusVisibleService} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {TUI_TAB_EVENT, TUI_TAB_PROVIDERS} from './tab.providers';\n\n@Component({\n selector: `a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]`,\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TAB_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n type: 'button',\n },\n})\nexport class TuiTabComponent {\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n private readonly routerLinkActive: RouterLinkActive | null,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TAB_EVENT) readonly event$: Observable<Event>,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return !!this.routerLinkActive && this.routerLinkActive.isActive;\n }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n itemsQueryListObservable,\n moveFocus,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo} from 'rxjs/operators';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TUI_TAB_ACTIVATE} from '../tab/tab.providers';\nimport {TAB_ACTIVE_CLASS} from '../tabs.const';\n\n// TODO: remove in ivy compilation\nexport const OBSERVER_INIT = {\n childList: true,\n};\n\n// @dynamic\n@Component({\n selector: 'tui-tabs, nav[tuiTabs]',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-zero-scrollbar',\n },\n providers: [\n TuiDestroyService,\n TuiResizeService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: OBSERVER_INIT,\n },\n ],\n})\nexport class TuiTabsComponent implements AfterViewChecked {\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input('activeItemIndex')\n set activeItemIndexSetter(index: number) {\n this.activeItemIndex = index;\n this.scrollTo(this.tabs[index]);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @ContentChildren(forwardRef(() => TuiTabComponent))\n private readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n resize$.pipe(filter(() => this.underline)).subscribe(() => {\n changeDetectorRef.detectChanges();\n });\n }\n\n @tuiPure\n get refresh$(): Observable<boolean> {\n return itemsQueryListObservable(this.children).pipe(mapTo(true));\n }\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from(\n this.elementRef.nativeElement.querySelectorAll<HTMLElement>('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n ngAfterViewChecked() {\n const {tabs, activeElement} = this;\n\n tabs.forEach(nativeElement => {\n this.renderer.removeClass(nativeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(nativeElement, 'tabIndex', '-1');\n });\n\n if (activeElement) {\n this.renderer.addClass(activeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(activeElement, 'tabIndex', '0');\n }\n }\n\n @HostListener(`${TUI_TAB_ACTIVATE}.stop`, ['$event.target'])\n onActivate(element: HTMLElement) {\n const index = this.tabs.findIndex(tab => tab === element);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexSetter = index;\n this.activeItemIndexChange.emit(index);\n }\n\n @HostListener('keydown.arrowRight.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowLeft.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {tabs} = this;\n\n moveFocus(tabs.indexOf(current), tabs, step);\n }\n\n private scrollTo(element?: HTMLElement) {\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n const {nativeElement} = this.elementRef;\n\n if (offsetLeft < nativeElement.scrollLeft) {\n nativeElement.scrollLeft = offsetLeft;\n }\n\n if (\n offsetLeft + offsetWidth >\n nativeElement.scrollLeft + nativeElement.offsetWidth\n ) {\n nativeElement.scrollLeft =\n offsetLeft + offsetWidth - nativeElement.offsetWidth;\n }\n }\n}\n","export const TAB_ACTIVE_CLASS = '_active';\nexport const TAB_MARGIN = 24;\n","import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectorRef, ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {TuiDestroyService, TuiResizeService} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {debounceTime, filter, startWith, takeUntil, tap} from 'rxjs/operators';\n\nexport function tabsRefreshFactory(\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n destroy$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n changeDetectorRef: ChangeDetectorRef,\n): Observable<unknown> {\n return merge(\n resize$,\n mutations$.pipe(tap(() => changeDetectorRef.detectChanges())),\n ).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntil(destroy$),\n );\n}\n\n// TODO: remove in ivy compilation\nexport const MUTATION_CONFIG = {\n childList: true,\n subtree: true,\n};\nexport const TABS_REFRESH = new InjectionToken<Observable<unknown>>('Refresh stream');\nexport const TABS_PROVIDERS: Provider[] = [\n TuiResizeService,\n TuiDestroyService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: MUTATION_CONFIG,\n },\n {\n provide: TABS_REFRESH,\n deps: [\n TuiResizeService,\n MutationObserverService,\n TuiDestroyService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: tabsRefreshFactory,\n },\n];\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestFocusable,\n isNativeFocused,\n setNativeFocused,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\nimport {TuiTabDirective} from '../tab.directive';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TAB_MARGIN} from '../tabs.const';\nimport {TABS_PROVIDERS, TABS_REFRESH} from './tabs-with-more.providers';\n\n// @dynamic\n@Component({\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TABS_PROVIDERS,\n})\nexport class TuiTabsWithMoreComponent implements AfterViewInit {\n @Input()\n @tuiDefaultProp()\n moreContent: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = 0;\n\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @ContentChildren(TuiTabDirective, {read: TemplateRef})\n readonly items: QueryList<TemplateRef<{}>> = EMPTY_QUERY;\n\n open = false;\n\n private maxIndex = Infinity;\n\n @ViewChild(TuiTabComponent, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n constructor(\n @Inject(TABS_REFRESH) private readonly refresh$: Observable<unknown>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ChangeDetectorRef) private readonly changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from<HTMLElement>(\n this.elementRef.nativeElement.querySelectorAll('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n get isMoreFocusable(): boolean {\n return !!this.moreButton && isNativeFocused(this.moreButton.nativeElement);\n }\n\n get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset = this.itemsLimit - 1 > this.activeItemIndex ? 1 : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n ngAfterViewInit() {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n filter(maxIndex => this.maxIndex !== maxIndex),\n )\n .subscribe(maxIndex => {\n this.maxIndex = maxIndex;\n this.changeDetectorRef.detectChanges();\n });\n }\n\n onActiveItemIndexChange(activeItemIndex: number) {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n onClick(index: number) {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n onArrowRight(element: HTMLElement) {\n if (isNativeFocused(element)) {\n this.focusMore();\n }\n }\n\n onArrowLeft() {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n setNativeFocused(tabs[index]);\n\n if (isNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n onWrapperArrow(button: HTMLButtonElement, wrapper: HTMLElement, prev: boolean) {\n const target = getClosestFocusable(button, prev, wrapper);\n\n if (target) {\n setNativeFocused(target);\n }\n }\n\n private focusMore() {\n if (this.moreButton) {\n setNativeFocused(this.moreButton.nativeElement);\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {clientWidth} = this.elementRef.nativeElement;\n const activeWidth = tabs[activeItemIndex] ? tabs[activeItemIndex].scrollWidth : 0;\n const moreWidth = tabs[tabs.length - 1].scrollWidth;\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, tab) => acc + tab.scrollWidth, 0) +\n maxIndex * TAB_MARGIN -\n moreWidth;\n\n if (total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= tabs[maxIndex].scrollWidth + TAB_MARGIN;\n maxIndex--;\n\n const activeDisplaced = activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + TAB_MARGIN : 0;\n const currentWidth = total + activeOffset + moreWidth + TAB_MARGIN;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = this.maxIndex === maxIndex - 1 ? 1 : 0;\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return 0;\n }\n\n private updateActiveItemIndex(activeItemIndex: number) {\n if (this.activeItemIndex === activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n this.maxIndex = this.getMaxIndex();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {px, TUI_IS_ANDROID, TUI_IS_IOS, tuiDefaultProp, tuiZonefree} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {asCallable} from '@tinkoff/ng-event-plugins';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {debounceTime, map, mapTo, share, switchMap} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-underline',\n template: '',\n styleUrls: ['./underline.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiUnderlineComponent {\n @Input()\n @tuiDefaultProp()\n set element(element: HTMLElement | null) {\n this.element$.next(element);\n }\n\n @HostBinding('class._ios')\n readonly isIos = this.mobileAware && this.ios;\n\n @HostBinding('class._android')\n readonly isAndroid = this.mobileAware && this.android;\n\n private readonly element$ = new ReplaySubject<HTMLElement | null>(1);\n\n private readonly refresh$ = this.element$.pipe(\n switchMap(element =>\n element\n ? this.animationFrame$.pipe(mapTo(element), tuiZonefree(this.ngZone))\n : of(null),\n ),\n share(),\n );\n\n @HostListener('$.style.transitionProperty')\n readonly transition$ = asCallable(\n this.element$.pipe(\n map(element => element && 'all'),\n debounceTime(50),\n ),\n );\n\n @HostListener('$.style.transform')\n readonly transform$ = asCallable(\n this.refresh$.pipe(\n map(element =>\n element ? `translate3d(${px(element.offsetLeft)}, 0, 0)` : null,\n ),\n ),\n );\n\n @HostListener('$.style.width.px')\n readonly width$ = asCallable(\n this.refresh$.pipe(map(element => (element ? element.clientWidth : 0))),\n );\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MOBILE_AWARE) private readonly mobileAware: boolean,\n @Inject(TUI_IS_IOS) private readonly ios: boolean,\n @Inject(TUI_IS_ANDROID) private readonly android: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {\n nativeElement['$.style.transitionProperty'] = this.transition$;\n nativeElement['$.style.transform'] = this.transform$;\n nativeElement['$.style.width.px'] = this.width$;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiHostedDropdownModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTabDirective} from './tab.directive';\nimport {TuiTabComponent} from './tab/tab.component';\nimport {TuiTabsWithMoreComponent} from './tabs-with-more/tabs-with-more.component';\nimport {TuiTabsComponent} from './tabs/tabs.component';\nimport {TuiUnderlineComponent} from './underline/underline.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiFocusableModule,\n PolymorpheusModule,\n ],\n declarations: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiUnderlineComponent,\n TuiTabDirective,\n ],\n exports: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiTabDirective,\n ],\n})\nexport class TuiTabsModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/tabs/tab.directive.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.providers.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.component.ts","ng://@taiga-ui/kit/components/tabs/tabs/tabs.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.const.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.providers.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.component.ts","ng://@taiga-ui/kit/components/tabs/underline/underline.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","TuiTabDirective","template","this","TemplateRef","type","Inject","args","Directive","selector","TUI_TAB_EVENT","InjectionToken","TUI_TAB_PROVIDERS","TuiDestroyService","TuiFocusVisibleService","TuiRouterLinkActiveService","provide","deps","ElementRef","DOCUMENT","Optional","MutationObserverService","RouterLinkActive","useFactory","tabActiveFactory","MODE_PROVIDER","_a","documentRef","routerLinkActiveService","mutationObserverService","routerLinkActive","nativeElement","mutationObserver","pipe","filter","isActive","EMPTY","merge","identity","matches","typedFromEvent","map","dispatchEvent","tuiCustomEvent","bubbles","TuiTabComponent","elementRef","mode$","event$","mobileAware","isIos","isAndroid","focusVisible$","_this","focusVisible","subscribe","visible","prototype","ngOnDestroy","isNativeFocused","setNativeFocused","Observable","TUI_MODE","TUI_MOBILE_AWARE","TUI_IS_IOS","TUI_IS_ANDROID","HostBinding","Component","changeDetection","ChangeDetectionStrategy","OnPush","providers","host","($.data-mode.attr)","OBSERVER_INIT","childList","TuiTabsComponent","renderer","changeDetectorRef","resize$","underline","activeItemIndexChange","EventEmitter","children","EMPTY_QUERY","activeItemIndex","detectChanges","index","scrollTo","tabs","itemsQueryListObservable","mapTo","Array","from","querySelectorAll","ngAfterViewChecked","activeElement","forEach","removeClass","setAttribute","addClass","onActivate","element","findIndex","tab","activeItemIndexSetter","emit","onKeyDownArrow","current","step","moveFocus","indexOf","offsetLeft","offsetWidth","scrollLeft","Renderer2","ChangeDetectorRef","TuiResizeService","Input","tuiDefaultProp","Output","ContentChildren","forwardRef","tuiPure","HostListener","TUI_TAB_ACTIVATE","class","MUTATION_OBSERVER_INIT","useValue","tabsRefreshFactory","mutations$","destroy$","_b","body","tap","contains","debounceTime","startWith","takeUntil","MUTATION_CONFIG","subtree","TABS_REFRESH","TABS_PROVIDERS","TuiTabsWithMoreComponent","refresh$","moreWord$","moreContent","itemsLimit","Infinity","items","open","maxIndex","lastVisibleIndex","moreButton","offset","Math","min","ngAfterViewInit","getMaxIndex","onActiveItemIndexChange","updateActiveItemIndex","onClick","focusMore","onArrowRight","onArrowLeft","onWrapperArrow","button","wrapper","prev","getClosestFocusable","clientWidth","activeWidth","scrollWidth","moreWidth","total","reduce","acc","TUI_MORE_WORD","read","ViewChild","TuiUnderlineComponent","ngZone","animationFrame$","ios","android","element$","ReplaySubject","switchMap","tuiZonefree","of","share","transition$","asCallable","transform$","px","width$","next","NgZone","ANIMATION_FRAME","TuiTabsModule","NgModule","imports","CommonModule","TuiHostedDropdownModule","TuiSvgModule","TuiFocusableModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {Directive, Inject, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiTab]`,\n})\nexport class TuiTabDirective {\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<{}>) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Optional, Provider} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {\n identity,\n tuiCustomEvent,\n TuiDestroyService,\n TuiFocusVisibleService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiRouterLinkActiveService} from '@taiga-ui/core';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\nexport const TUI_TAB_EVENT = new InjectionToken<Observable<Event>>(\n 'Stream of tab activation events',\n);\nexport const TUI_TAB_PROVIDERS: Provider[] = [\n TuiDestroyService,\n TuiFocusVisibleService,\n TuiRouterLinkActiveService,\n {\n provide: TUI_TAB_EVENT,\n deps: [\n ElementRef,\n DOCUMENT,\n TuiRouterLinkActiveService,\n [new Optional(), MutationObserverService],\n [new Optional(), RouterLinkActive],\n ],\n useFactory: tabActiveFactory,\n },\n MODE_PROVIDER,\n];\n\nexport function tabActiveFactory(\n {nativeElement}: ElementRef<HTMLElement>,\n documentRef: Document,\n routerLinkActiveService: Observable<boolean>,\n mutationObserverService: MutationObserverService | null,\n routerLinkActive: RouterLinkActive | null,\n): Observable<unknown> {\n const mutationObserver =\n routerLinkActive && mutationObserverService\n ? mutationObserverService.pipe(filter(() => routerLinkActive.isActive))\n : EMPTY;\n\n return merge(\n mutationObserver,\n routerLinkActiveService.pipe(filter(identity)),\n nativeElement.matches('button') ? typedFromEvent(nativeElement, 'click') : EMPTY,\n ).pipe(\n map(() =>\n nativeElement.dispatchEvent(\n tuiCustomEvent(TUI_TAB_ACTIVATE, {bubbles: true}, documentRef),\n ),\n ),\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n OnDestroy,\n Optional,\n} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {\n isNativeFocused,\n setNativeFocused,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n TuiFocusVisibleService,\n} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {TUI_TAB_EVENT, TUI_TAB_PROVIDERS} from './tab.providers';\n\n@Component({\n selector: `a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]`,\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TAB_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n type: 'button',\n },\n})\nexport class TuiTabComponent implements OnDestroy {\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n private readonly routerLinkActive: RouterLinkActive | null,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TAB_EVENT) readonly event$: Observable<Event>,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return !!this.routerLinkActive && this.routerLinkActive.isActive;\n }\n\n ngOnDestroy() {\n if (isNativeFocused(this.elementRef.nativeElement)) {\n setNativeFocused(this.elementRef.nativeElement, false);\n }\n }\n}\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n itemsQueryListObservable,\n moveFocus,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo} from 'rxjs/operators';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TUI_TAB_ACTIVATE} from '../tab/tab.providers';\nimport {TAB_ACTIVE_CLASS} from '../tabs.const';\n\n// TODO: remove in ivy compilation\nexport const OBSERVER_INIT = {\n childList: true,\n};\n\n// @dynamic\n@Component({\n selector: 'tui-tabs, nav[tuiTabs]',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-zero-scrollbar',\n },\n providers: [\n TuiDestroyService,\n TuiResizeService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: OBSERVER_INIT,\n },\n ],\n})\nexport class TuiTabsComponent implements AfterViewChecked {\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input('activeItemIndex')\n set activeItemIndexSetter(index: number) {\n this.activeItemIndex = index;\n this.scrollTo(this.tabs[index]);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @ContentChildren(forwardRef(() => TuiTabComponent))\n private readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n resize$.pipe(filter(() => this.underline)).subscribe(() => {\n changeDetectorRef.detectChanges();\n });\n }\n\n @tuiPure\n get refresh$(): Observable<boolean> {\n return itemsQueryListObservable(this.children).pipe(mapTo(true));\n }\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from(\n this.elementRef.nativeElement.querySelectorAll<HTMLElement>('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n ngAfterViewChecked() {\n const {tabs, activeElement} = this;\n\n tabs.forEach(nativeElement => {\n this.renderer.removeClass(nativeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(nativeElement, 'tabIndex', '-1');\n });\n\n if (activeElement) {\n this.renderer.addClass(activeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(activeElement, 'tabIndex', '0');\n }\n }\n\n @HostListener(`${TUI_TAB_ACTIVATE}.stop`, ['$event.target'])\n onActivate(element: HTMLElement) {\n const index = this.tabs.findIndex(tab => tab === element);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexSetter = index;\n this.activeItemIndexChange.emit(index);\n }\n\n @HostListener('keydown.arrowRight.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowLeft.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {tabs} = this;\n\n moveFocus(tabs.indexOf(current), tabs, step);\n }\n\n private scrollTo(element?: HTMLElement) {\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n const {nativeElement} = this.elementRef;\n\n if (offsetLeft < nativeElement.scrollLeft) {\n nativeElement.scrollLeft = offsetLeft;\n }\n\n if (\n offsetLeft + offsetWidth >\n nativeElement.scrollLeft + nativeElement.offsetWidth\n ) {\n nativeElement.scrollLeft =\n offsetLeft + offsetWidth - nativeElement.offsetWidth;\n }\n }\n}\n","export const TAB_ACTIVE_CLASS = '_active';\nexport const TAB_MARGIN = 24;\n","import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectorRef, ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {TuiDestroyService, TuiResizeService} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {debounceTime, filter, startWith, takeUntil, tap} from 'rxjs/operators';\n\nexport function tabsRefreshFactory(\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n destroy$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n changeDetectorRef: ChangeDetectorRef,\n): Observable<unknown> {\n return merge(\n resize$,\n mutations$.pipe(tap(() => changeDetectorRef.detectChanges())),\n ).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntil(destroy$),\n );\n}\n\n// TODO: remove in ivy compilation\nexport const MUTATION_CONFIG = {\n childList: true,\n subtree: true,\n};\nexport const TABS_REFRESH = new InjectionToken<Observable<unknown>>('Refresh stream');\nexport const TABS_PROVIDERS: Provider[] = [\n TuiResizeService,\n TuiDestroyService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: MUTATION_CONFIG,\n },\n {\n provide: TABS_REFRESH,\n deps: [\n TuiResizeService,\n MutationObserverService,\n TuiDestroyService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: tabsRefreshFactory,\n },\n];\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestFocusable,\n isNativeFocused,\n setNativeFocused,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\nimport {TuiTabDirective} from '../tab.directive';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TAB_MARGIN} from '../tabs.const';\nimport {TABS_PROVIDERS, TABS_REFRESH} from './tabs-with-more.providers';\n\n// @dynamic\n@Component({\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TABS_PROVIDERS,\n})\nexport class TuiTabsWithMoreComponent implements AfterViewInit {\n @Input()\n @tuiDefaultProp()\n moreContent: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = 0;\n\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @ContentChildren(TuiTabDirective, {read: TemplateRef})\n readonly items: QueryList<TemplateRef<{}>> = EMPTY_QUERY;\n\n open = false;\n\n private maxIndex = Infinity;\n\n @ViewChild(TuiTabComponent, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n constructor(\n @Inject(TABS_REFRESH) private readonly refresh$: Observable<unknown>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ChangeDetectorRef) private readonly changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from<HTMLElement>(\n this.elementRef.nativeElement.querySelectorAll('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n get isMoreFocusable(): boolean {\n return !!this.moreButton && isNativeFocused(this.moreButton.nativeElement);\n }\n\n get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset = this.itemsLimit - 1 > this.activeItemIndex ? 1 : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n ngAfterViewInit() {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n filter(maxIndex => this.maxIndex !== maxIndex),\n )\n .subscribe(maxIndex => {\n this.maxIndex = maxIndex;\n this.changeDetectorRef.detectChanges();\n });\n }\n\n onActiveItemIndexChange(activeItemIndex: number) {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n onClick(index: number) {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n onArrowRight(element: HTMLElement) {\n if (isNativeFocused(element)) {\n this.focusMore();\n }\n }\n\n onArrowLeft() {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n setNativeFocused(tabs[index]);\n\n if (isNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n onWrapperArrow(button: HTMLButtonElement, wrapper: HTMLElement, prev: boolean) {\n const target = getClosestFocusable(button, prev, wrapper);\n\n if (target) {\n setNativeFocused(target);\n }\n }\n\n private focusMore() {\n if (this.moreButton) {\n setNativeFocused(this.moreButton.nativeElement);\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {clientWidth} = this.elementRef.nativeElement;\n const activeWidth = tabs[activeItemIndex] ? tabs[activeItemIndex].scrollWidth : 0;\n const moreWidth = tabs[tabs.length - 1].scrollWidth;\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, tab) => acc + tab.scrollWidth, 0) +\n maxIndex * TAB_MARGIN -\n moreWidth;\n\n if (total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= tabs[maxIndex].scrollWidth + TAB_MARGIN;\n maxIndex--;\n\n const activeDisplaced = activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + TAB_MARGIN : 0;\n const currentWidth = total + activeOffset + moreWidth + TAB_MARGIN;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = this.maxIndex === maxIndex - 1 ? 1 : 0;\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return 0;\n }\n\n private updateActiveItemIndex(activeItemIndex: number) {\n if (this.activeItemIndex === activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n this.maxIndex = this.getMaxIndex();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {px, TUI_IS_ANDROID, TUI_IS_IOS, tuiDefaultProp, tuiZonefree} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {asCallable} from '@tinkoff/ng-event-plugins';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {debounceTime, map, mapTo, share, switchMap} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-underline',\n template: '',\n styleUrls: ['./underline.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiUnderlineComponent {\n @Input()\n @tuiDefaultProp()\n set element(element: HTMLElement | null) {\n this.element$.next(element);\n }\n\n @HostBinding('class._ios')\n readonly isIos = this.mobileAware && this.ios;\n\n @HostBinding('class._android')\n readonly isAndroid = this.mobileAware && this.android;\n\n private readonly element$ = new ReplaySubject<HTMLElement | null>(1);\n\n private readonly refresh$ = this.element$.pipe(\n switchMap(element =>\n element\n ? this.animationFrame$.pipe(mapTo(element), tuiZonefree(this.ngZone))\n : of(null),\n ),\n share(),\n );\n\n @HostListener('$.style.transitionProperty')\n readonly transition$ = asCallable(\n this.element$.pipe(\n map(element => element && 'all'),\n debounceTime(50),\n ),\n );\n\n @HostListener('$.style.transform')\n readonly transform$ = asCallable(\n this.refresh$.pipe(\n map(element =>\n element ? `translate3d(${px(element.offsetLeft)}, 0, 0)` : null,\n ),\n ),\n );\n\n @HostListener('$.style.width.px')\n readonly width$ = asCallable(\n this.refresh$.pipe(map(element => (element ? element.clientWidth : 0))),\n );\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MOBILE_AWARE) private readonly mobileAware: boolean,\n @Inject(TUI_IS_IOS) private readonly ios: boolean,\n @Inject(TUI_IS_ANDROID) private readonly android: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {\n nativeElement['$.style.transitionProperty'] = this.transition$;\n nativeElement['$.style.transform'] = this.transform$;\n nativeElement['$.style.width.px'] = this.width$;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiHostedDropdownModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTabDirective} from './tab.directive';\nimport {TuiTabComponent} from './tab/tab.component';\nimport {TuiTabsWithMoreComponent} from './tabs-with-more/tabs-with-more.component';\nimport {TuiTabsComponent} from './tabs/tabs.component';\nimport {TuiUnderlineComponent} from './underline/underline.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiFocusableModule,\n PolymorpheusModule,\n ],\n declarations: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiUnderlineComponent,\n TuiTabDirective,\n ],\n exports: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiTabDirective,\n ],\n})\nexport class TuiTabsModule {}\n"]}
@@ -438,7 +438,7 @@
438
438
  host: {
439
439
  '($.data-mode.attr)': 'mode$',
440
440
  },
441
- styles: [":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{border-radius:inherit;-webkit-text-fill-color:inherit!important;color:inherit!important;background-color:transparent!important;-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host[data-tui-host-size='s'] .edit{height:1.25rem;line-height:1.25rem;padding-left:.5rem}:host[data-tui-host-size='m'] .edit{height:var(--tui-height-xs);line-height:var(--tui-height-xs);padding-left:.5rem}:host[data-tui-host-size='l'] .edit{height:var(--tui-height-s);line-height:var(--tui-height-s);padding-left:.75rem}.icon{margin-left:.25rem;height:100%}.icon:not(.icon_loader){cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity)}.icon:hover{opacity:1}.icon_loader{width:1rem;height:1rem;margin:0 .25rem}:host[data-tui-host-size='s'] .icon_loader{margin:0 .375rem 0 .75rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .icon_loader{margin:0 .25rem 0 .5rem}.left-content{margin-right:.25rem;width:1rem;height:1rem}"]
441
+ styles: [":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{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 1000px var(--tui-autofill) inset!important}:host[data-tui-host-size='s'] .edit{height:1.25rem;line-height:1.25rem;padding-left:.5rem}:host[data-tui-host-size='m'] .edit{height:var(--tui-height-xs);line-height:var(--tui-height-xs);padding-left:.5rem}:host[data-tui-host-size='l'] .edit{height:var(--tui-height-s);line-height:var(--tui-height-s);padding-left:.75rem}.icon{margin-left:.25rem;height:100%}.icon:not(.icon_loader){cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity)}.icon:hover{opacity:1}.icon_loader{width:1rem;height:1rem;margin:0 .25rem}:host[data-tui-host-size='s'] .icon_loader{margin:0 .375rem 0 .75rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .icon_loader{margin:0 .25rem 0 .5rem}.left-content{margin-right:.25rem;width:1rem;height:1rem}"]
442
442
  }),
443
443
  __param(0, core.Inject(core.ElementRef)),
444
444
  __param(1, core.Inject(core$1.TUI_MODE))
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function d(t,e,o,i){var a,r=arguments.length,n=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(n=(r<3?a(n):r>3?a(e,o,n):a(e,o))||n);return r>3&&n&&Object.defineProperty(e,o,n),n}function h(t,e){return function(o,i){e(o,i,t)}}var l=new RegExp(",|[\\s]"),c=function(){function t(t,o){this.elementRef=t,this.mode$=o,this.value="",this.editable=!1,this.allowSpaces=!0,this.maxLength=null,this.size="m",this.showLoader=!1,this.status="default",this.hoverable=!1,this.removable=!1,this.disabled=!1,this.autoColor=!1,this.leftContent=null,this.edited=new e.EventEmitter,this.editing=!1,this.editedText=null}return Object.defineProperty(t.prototype,"input",{set:function(t){t&&o.setNativeFocused(t.nativeElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"backgroundColor",{get:function(){return this.autoColor?a.stringHashToHsl(this.value):null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"canRemove",{get:function(){return this.removable&&!this.disabled&&!this.showLoader},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"displayText",{get:function(){return null===this.editedText?this.value:this.editedText},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"loaderSize",{get:function(){return i.sizeBigger(this.size)?"s":"xs"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasIcon",{get:function(){return this.showLoader||this.removable},enumerable:!0,configurable:!0}),t.prototype.edit=function(t){this.canEdit&&(t.preventDefault(),this.editing=!0,this.editedText=this.value)},t.prototype.remove=function(t){this.canRemove&&(t.preventDefault(),t.stopPropagation(),this.edited.emit(""))},t.prototype.onInput=function(t){var e=this.allowSpaces?t.split(","):t.split(l);e.length>1?this.save(e.toString()):this.editedText=t},t.prototype.onKeyDown=function(t){switch(t.stopPropagation(),t.key.toLowerCase()){case"enter":t.preventDefault(),this.save(this.editedText||"");break;case"escape":case"esc":t.preventDefault(),this.stopEditing(),o.setNativeFocused(this.elementRef.nativeElement)}},t.prototype.onBlur=function(){null!==this.editedText&&this.save(this.editedText)},Object.defineProperty(t.prototype,"canEdit",{get:function(){return this.editable&&!this.disabled&&!this.showLoader},enumerable:!0,configurable:!0}),t.prototype.stopEditing=function(){this.editing=!1,this.editedText=null},t.prototype.save=function(t){this.stopEditing(),this.edited.emit(t.trim())},t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:r.Observable,decorators:[{type:e.Inject,args:[i.TUI_MODE]}]}]},d([e.Input(),o.tuiDefaultProp()],t.prototype,"value",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"editable",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"allowSpaces",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"maxLength",void 0),d([e.Input(),e.HostBinding("attr.data-tui-host-size"),o.tuiDefaultProp()],t.prototype,"size",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"showLoader",void 0),d([e.Input(),e.HostBinding("attr.data-tui-host-status"),o.tuiDefaultProp()],t.prototype,"status",void 0),d([e.Input(),e.HostBinding("class._hoverable"),o.tuiDefaultProp()],t.prototype,"hoverable",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"removable",void 0),d([e.Input(),e.HostBinding("class._disabled"),o.tuiDefaultProp()],t.prototype,"disabled",void 0),d([e.Input(),e.HostBinding("class._autocolor"),o.tuiDefaultProp()],t.prototype,"autoColor",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"leftContent",void 0),d([e.Output()],t.prototype,"edited",void 0),d([e.HostBinding("class._editing")],t.prototype,"editing",void 0),d([e.ViewChild("input",{read:e.ElementRef})],t.prototype,"input",null),d([e.HostBinding("class._has-icon")],t.prototype,"hasIcon",null),d([e.HostListener("keydown.enter",["$event"])],t.prototype,"edit",null),d([e.HostListener("keydown.delete",["$event"]),e.HostListener("keydown.backspace",["$event"])],t.prototype,"remove",null),t=d([e.Component({selector:"tui-tag, a[tuiTag]",changeDetection:e.ChangeDetectionStrategy.OnPush,template:'<div\n class="tag"\n [style.backgroundColor]="backgroundColor"\n (dblclick)="edit($event)"\n>\n <div\n *ngIf="leftContent"\n polymorpheus-outlet\n class="left-content"\n [content]="leftContent"\n ></div>\n <span automation-id="tui-tag__text" class="text">{{displayText}}</span>\n <tui-loader\n *ngIf="showLoader"\n class="icon icon_loader"\n [inheritColor]="true"\n [size]="loaderSize"\n ></tui-loader>\n <tui-svg\n *ngIf="canRemove"\n tuiPreventDefault="mousedown"\n automation-id="tui-tag__remove"\n class="icon"\n src="tuiIconCloseLarge"\n (click)="remove($event)"\n ></tui-svg>\n</div>\n<input\n *ngIf="editing"\n #input\n automation-id="tui-tag__edit"\n class="edit"\n type="text"\n [attr.maxLength]="maxLength"\n [ngModel]="editedText"\n (ngModelChange)="onInput($event)"\n (blur)="onBlur()"\n (keydown)="onKeyDown($event)"\n/>\n',providers:[i.MODE_PROVIDER],host:{"($.data-mode.attr)":"mode$"},styles:[":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{border-radius:inherit;-webkit-text-fill-color:inherit!important;color:inherit!important;background-color:transparent!important;-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host[data-tui-host-size='s'] .edit{height:1.25rem;line-height:1.25rem;padding-left:.5rem}:host[data-tui-host-size='m'] .edit{height:var(--tui-height-xs);line-height:var(--tui-height-xs);padding-left:.5rem}:host[data-tui-host-size='l'] .edit{height:var(--tui-height-s);line-height:var(--tui-height-s);padding-left:.75rem}.icon{margin-left:.25rem;height:100%}.icon:not(.icon_loader){cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity)}.icon:hover{opacity:1}.icon_loader{width:1rem;height:1rem;margin:0 .25rem}:host[data-tui-host-size='s'] .icon_loader{margin:0 .375rem 0 .75rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .icon_loader{margin:0 .25rem 0 .5rem}.left-content{margin-right:.25rem;width:1rem;height:1rem}"]}),h(0,e.Inject(e.ElementRef)),h(1,e.Inject(i.TUI_MODE))],t)}(),g=function(){function t(){}return t=d([e.NgModule({imports:[n.CommonModule,s.FormsModule,o.TuiPreventDefaultModule,i.TuiSvgModule,i.TuiLoaderModule,u.PolymorpheusModule],declarations:[c],exports:[c]})],t)}();t.ALLOWED_SPACE_REGEXP=l,t.TuiTagComponent=c,t.TuiTagModule=g,Object.defineProperty(t,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */function d(t,e,o,i){var a,r=arguments.length,n=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(t,e,o,i);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(n=(r<3?a(n):r>3?a(e,o,n):a(e,o))||n);return r>3&&n&&Object.defineProperty(e,o,n),n}function l(t,e){return function(o,i){e(o,i,t)}}var h=new RegExp(",|[\\s]"),c=function(){function t(t,o){this.elementRef=t,this.mode$=o,this.value="",this.editable=!1,this.allowSpaces=!0,this.maxLength=null,this.size="m",this.showLoader=!1,this.status="default",this.hoverable=!1,this.removable=!1,this.disabled=!1,this.autoColor=!1,this.leftContent=null,this.edited=new e.EventEmitter,this.editing=!1,this.editedText=null}return Object.defineProperty(t.prototype,"input",{set:function(t){t&&o.setNativeFocused(t.nativeElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"backgroundColor",{get:function(){return this.autoColor?a.stringHashToHsl(this.value):null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"canRemove",{get:function(){return this.removable&&!this.disabled&&!this.showLoader},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"displayText",{get:function(){return null===this.editedText?this.value:this.editedText},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"loaderSize",{get:function(){return i.sizeBigger(this.size)?"s":"xs"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasIcon",{get:function(){return this.showLoader||this.removable},enumerable:!0,configurable:!0}),t.prototype.edit=function(t){this.canEdit&&(t.preventDefault(),this.editing=!0,this.editedText=this.value)},t.prototype.remove=function(t){this.canRemove&&(t.preventDefault(),t.stopPropagation(),this.edited.emit(""))},t.prototype.onInput=function(t){var e=this.allowSpaces?t.split(","):t.split(h);e.length>1?this.save(e.toString()):this.editedText=t},t.prototype.onKeyDown=function(t){switch(t.stopPropagation(),t.key.toLowerCase()){case"enter":t.preventDefault(),this.save(this.editedText||"");break;case"escape":case"esc":t.preventDefault(),this.stopEditing(),o.setNativeFocused(this.elementRef.nativeElement)}},t.prototype.onBlur=function(){null!==this.editedText&&this.save(this.editedText)},Object.defineProperty(t.prototype,"canEdit",{get:function(){return this.editable&&!this.disabled&&!this.showLoader},enumerable:!0,configurable:!0}),t.prototype.stopEditing=function(){this.editing=!1,this.editedText=null},t.prototype.save=function(t){this.stopEditing(),this.edited.emit(t.trim())},t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Inject,args:[e.ElementRef]}]},{type:r.Observable,decorators:[{type:e.Inject,args:[i.TUI_MODE]}]}]},d([e.Input(),o.tuiDefaultProp()],t.prototype,"value",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"editable",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"allowSpaces",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"maxLength",void 0),d([e.Input(),e.HostBinding("attr.data-tui-host-size"),o.tuiDefaultProp()],t.prototype,"size",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"showLoader",void 0),d([e.Input(),e.HostBinding("attr.data-tui-host-status"),o.tuiDefaultProp()],t.prototype,"status",void 0),d([e.Input(),e.HostBinding("class._hoverable"),o.tuiDefaultProp()],t.prototype,"hoverable",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"removable",void 0),d([e.Input(),e.HostBinding("class._disabled"),o.tuiDefaultProp()],t.prototype,"disabled",void 0),d([e.Input(),e.HostBinding("class._autocolor"),o.tuiDefaultProp()],t.prototype,"autoColor",void 0),d([e.Input(),o.tuiDefaultProp()],t.prototype,"leftContent",void 0),d([e.Output()],t.prototype,"edited",void 0),d([e.HostBinding("class._editing")],t.prototype,"editing",void 0),d([e.ViewChild("input",{read:e.ElementRef})],t.prototype,"input",null),d([e.HostBinding("class._has-icon")],t.prototype,"hasIcon",null),d([e.HostListener("keydown.enter",["$event"])],t.prototype,"edit",null),d([e.HostListener("keydown.delete",["$event"]),e.HostListener("keydown.backspace",["$event"])],t.prototype,"remove",null),t=d([e.Component({selector:"tui-tag, a[tuiTag]",changeDetection:e.ChangeDetectionStrategy.OnPush,template:'<div\n class="tag"\n [style.backgroundColor]="backgroundColor"\n (dblclick)="edit($event)"\n>\n <div\n *ngIf="leftContent"\n polymorpheus-outlet\n class="left-content"\n [content]="leftContent"\n ></div>\n <span automation-id="tui-tag__text" class="text">{{displayText}}</span>\n <tui-loader\n *ngIf="showLoader"\n class="icon icon_loader"\n [inheritColor]="true"\n [size]="loaderSize"\n ></tui-loader>\n <tui-svg\n *ngIf="canRemove"\n tuiPreventDefault="mousedown"\n automation-id="tui-tag__remove"\n class="icon"\n src="tuiIconCloseLarge"\n (click)="remove($event)"\n ></tui-svg>\n</div>\n<input\n *ngIf="editing"\n #input\n automation-id="tui-tag__edit"\n class="edit"\n type="text"\n [attr.maxLength]="maxLength"\n [ngModel]="editedText"\n (ngModelChange)="onInput($event)"\n (blur)="onBlur()"\n (keydown)="onKeyDown($event)"\n/>\n',providers:[i.MODE_PROVIDER],host:{"($.data-mode.attr)":"mode$"},styles:[":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{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 1000px var(--tui-autofill) inset!important}:host[data-tui-host-size='s'] .edit{height:1.25rem;line-height:1.25rem;padding-left:.5rem}:host[data-tui-host-size='m'] .edit{height:var(--tui-height-xs);line-height:var(--tui-height-xs);padding-left:.5rem}:host[data-tui-host-size='l'] .edit{height:var(--tui-height-s);line-height:var(--tui-height-s);padding-left:.75rem}.icon{margin-left:.25rem;height:100%}.icon:not(.icon_loader){cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity)}.icon:hover{opacity:1}.icon_loader{width:1rem;height:1rem;margin:0 .25rem}:host[data-tui-host-size='s'] .icon_loader{margin:0 .375rem 0 .75rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .icon_loader{margin:0 .25rem 0 .5rem}.left-content{margin-right:.25rem;width:1rem;height:1rem}"]}),l(0,e.Inject(e.ElementRef)),l(1,e.Inject(i.TUI_MODE))],t)}(),g=function(){function t(){}return t=d([e.NgModule({imports:[n.CommonModule,s.FormsModule,o.TuiPreventDefaultModule,i.TuiSvgModule,i.TuiLoaderModule,u.PolymorpheusModule],declarations:[c],exports:[c]})],t)}();t.ALLOWED_SPACE_REGEXP=h,t.TuiTagComponent=c,t.TuiTagModule=g,Object.defineProperty(t,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-tag.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/tag/tag.component.ts","ng://@taiga-ui/kit/components/tag/tag.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","ALLOWED_SPACE_REGEXP","RegExp","TuiTagComponent","elementRef","mode$","this","value","editable","allowSpaces","maxLength","size","showLoader","status","hoverable","removable","disabled","autoColor","leftContent","edited","EventEmitter","editing","editedText","prototype","input","setNativeFocused","nativeElement","stringHashToHsl","sizeBigger","edit","event","canEdit","preventDefault","remove","canRemove","stopPropagation","emit","onInput","newTags","split","save","toString","onKeyDown","toLowerCase","stopEditing","onBlur","trim","ElementRef","type","Inject","args","Observable","TUI_MODE","Input","tuiDefaultProp","HostBinding","Output","ViewChild","read","HostListener","Component","selector","changeDetection","ChangeDetectionStrategy","OnPush","template","providers","MODE_PROVIDER","host","($.data-mode.attr)","TuiTagModule","NgModule","imports","CommonModule","FormsModule","TuiPreventDefaultModule","TuiSvgModule","TuiLoaderModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {setNativeFocused, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n sizeBigger,\n TUI_MODE,\n TuiBrightness,\n TuiSizeL,\n TuiSizeS,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {TuiStatusT} from '@taiga-ui/kit/types';\nimport {stringHashToHsl} from '@taiga-ui/kit/utils/format';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nexport const ALLOWED_SPACE_REGEXP = new RegExp(`\\,|[\\\\s]`);\n\n@Component({\n selector: 'tui-tag, a[tuiTag]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './tag.template.html',\n styleUrls: ['./tag.style.less'],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiTagComponent {\n // TODO: Possibly implement standard focus mechanisms and outline\n @Input()\n @tuiDefaultProp()\n value = '';\n\n @Input()\n @tuiDefaultProp()\n editable = false;\n\n @Input()\n @tuiDefaultProp()\n allowSpaces = true;\n\n @Input()\n @tuiDefaultProp()\n maxLength: number | null = null;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n showLoader = false;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: TuiStatusT = 'default';\n\n @Input()\n @HostBinding('class._hoverable')\n @tuiDefaultProp()\n hoverable = false;\n\n @Input()\n @tuiDefaultProp()\n removable = false;\n\n @Input()\n @HostBinding('class._disabled')\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @HostBinding('class._autocolor')\n @tuiDefaultProp()\n autoColor = false;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n leftContent: PolymorpheusContent | null = null;\n\n @Output()\n readonly edited = new EventEmitter<string>();\n\n @HostBinding('class._editing')\n editing = false;\n\n editedText: string | null = null;\n\n @ViewChild('input', {read: ElementRef})\n set input(input: ElementRef<HTMLInputElement>) {\n if (input) {\n setNativeFocused(input.nativeElement);\n }\n }\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n get backgroundColor(): string | null {\n return this.autoColor ? stringHashToHsl(this.value) : null;\n }\n\n get canRemove(): boolean {\n return this.removable && !this.disabled && !this.showLoader;\n }\n\n get displayText(): string {\n return this.editedText === null ? this.value : this.editedText;\n }\n\n get loaderSize(): TuiSizeXS {\n return sizeBigger(this.size) ? 's' : 'xs';\n }\n\n @HostBinding('class._has-icon')\n get hasIcon(): boolean {\n return this.showLoader || this.removable;\n }\n\n @HostListener('keydown.enter', ['$event'])\n edit(event: Event) {\n if (!this.canEdit) {\n return;\n }\n\n event.preventDefault();\n this.editing = true;\n this.editedText = this.value;\n }\n\n @HostListener('keydown.delete', ['$event'])\n @HostListener('keydown.backspace', ['$event'])\n remove(event: Event) {\n if (!this.canRemove) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n this.edited.emit('');\n }\n\n onInput(value: string) {\n const newTags = this.allowSpaces\n ? value.split(',')\n : value.split(ALLOWED_SPACE_REGEXP);\n\n if (newTags.length > 1) {\n this.save(newTags.toString());\n\n return;\n }\n\n this.editedText = value;\n }\n\n onKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n event.preventDefault();\n this.save(this.editedText || '');\n break;\n case 'escape':\n case 'esc':\n event.preventDefault();\n this.stopEditing();\n setNativeFocused(this.elementRef.nativeElement);\n break;\n default:\n break;\n }\n }\n\n onBlur() {\n if (this.editedText !== null) {\n this.save(this.editedText);\n }\n }\n\n private get canEdit(): boolean {\n return this.editable && !this.disabled && !this.showLoader;\n }\n\n private stopEditing() {\n this.editing = false;\n this.editedText = null;\n }\n\n private save(value: string) {\n this.stopEditing();\n this.edited.emit(value.trim());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiLoaderModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTagComponent} from './tag.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiPreventDefaultModule,\n TuiSvgModule,\n TuiLoaderModule,\n PolymorpheusModule,\n ],\n declarations: [TuiTagComponent],\n exports: [TuiTagComponent],\n})\nexport class TuiTagModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/tag/tag.component.ts","ng://@taiga-ui/kit/components/tag/tag.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","ALLOWED_SPACE_REGEXP","RegExp","TuiTagComponent","elementRef","mode$","this","value","editable","allowSpaces","maxLength","size","showLoader","status","hoverable","removable","disabled","autoColor","leftContent","edited","EventEmitter","editing","editedText","prototype","input","setNativeFocused","nativeElement","stringHashToHsl","sizeBigger","edit","event","canEdit","preventDefault","remove","canRemove","stopPropagation","emit","onInput","newTags","split","save","toString","onKeyDown","toLowerCase","stopEditing","onBlur","trim","ElementRef","type","Inject","args","Observable","TUI_MODE","Input","tuiDefaultProp","HostBinding","Output","ViewChild","read","HostListener","Component","selector","changeDetection","ChangeDetectionStrategy","OnPush","template","providers","MODE_PROVIDER","host","($.data-mode.attr)","TuiTagModule","NgModule","imports","CommonModule","FormsModule","TuiPreventDefaultModule","TuiSvgModule","TuiLoaderModule","PolymorpheusModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {setNativeFocused, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n sizeBigger,\n TUI_MODE,\n TuiBrightness,\n TuiSizeL,\n TuiSizeS,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {TuiStatusT} from '@taiga-ui/kit/types';\nimport {stringHashToHsl} from '@taiga-ui/kit/utils/format';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nexport const ALLOWED_SPACE_REGEXP = new RegExp(`\\,|[\\\\s]`);\n\n@Component({\n selector: 'tui-tag, a[tuiTag]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './tag.template.html',\n styleUrls: ['./tag.style.less'],\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiTagComponent {\n // TODO: Possibly implement standard focus mechanisms and outline\n @Input()\n @tuiDefaultProp()\n value = '';\n\n @Input()\n @tuiDefaultProp()\n editable = false;\n\n @Input()\n @tuiDefaultProp()\n allowSpaces = true;\n\n @Input()\n @tuiDefaultProp()\n maxLength: number | null = null;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n showLoader = false;\n\n @Input()\n @HostBinding('attr.data-tui-host-status')\n @tuiDefaultProp()\n status: TuiStatusT = 'default';\n\n @Input()\n @HostBinding('class._hoverable')\n @tuiDefaultProp()\n hoverable = false;\n\n @Input()\n @tuiDefaultProp()\n removable = false;\n\n @Input()\n @HostBinding('class._disabled')\n @tuiDefaultProp()\n disabled = false;\n\n @Input()\n @HostBinding('class._autocolor')\n @tuiDefaultProp()\n autoColor = false;\n\n // TODO: Remove null in 3.0\n @Input()\n @tuiDefaultProp()\n leftContent: PolymorpheusContent | null = null;\n\n @Output()\n readonly edited = new EventEmitter<string>();\n\n @HostBinding('class._editing')\n editing = false;\n\n editedText: string | null = null;\n\n @ViewChild('input', {read: ElementRef})\n set input(input: ElementRef<HTMLInputElement>) {\n if (input) {\n setNativeFocused(input.nativeElement);\n }\n }\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {}\n\n get backgroundColor(): string | null {\n return this.autoColor ? stringHashToHsl(this.value) : null;\n }\n\n get canRemove(): boolean {\n return this.removable && !this.disabled && !this.showLoader;\n }\n\n get displayText(): string {\n return this.editedText === null ? this.value : this.editedText;\n }\n\n get loaderSize(): TuiSizeXS {\n return sizeBigger(this.size) ? 's' : 'xs';\n }\n\n @HostBinding('class._has-icon')\n get hasIcon(): boolean {\n return this.showLoader || this.removable;\n }\n\n @HostListener('keydown.enter', ['$event'])\n edit(event: Event) {\n if (!this.canEdit) {\n return;\n }\n\n event.preventDefault();\n this.editing = true;\n this.editedText = this.value;\n }\n\n @HostListener('keydown.delete', ['$event'])\n @HostListener('keydown.backspace', ['$event'])\n remove(event: Event) {\n if (!this.canRemove) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n this.edited.emit('');\n }\n\n onInput(value: string) {\n const newTags = this.allowSpaces\n ? value.split(',')\n : value.split(ALLOWED_SPACE_REGEXP);\n\n if (newTags.length > 1) {\n this.save(newTags.toString());\n\n return;\n }\n\n this.editedText = value;\n }\n\n onKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n event.preventDefault();\n this.save(this.editedText || '');\n break;\n case 'escape':\n case 'esc':\n event.preventDefault();\n this.stopEditing();\n setNativeFocused(this.elementRef.nativeElement);\n break;\n default:\n break;\n }\n }\n\n onBlur() {\n if (this.editedText !== null) {\n this.save(this.editedText);\n }\n }\n\n private get canEdit(): boolean {\n return this.editable && !this.disabled && !this.showLoader;\n }\n\n private stopEditing() {\n this.editing = false;\n this.editedText = null;\n }\n\n private save(value: string) {\n this.stopEditing();\n this.edited.emit(value.trim());\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {TuiLoaderModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTagComponent} from './tag.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiPreventDefaultModule,\n TuiSvgModule,\n TuiLoaderModule,\n PolymorpheusModule,\n ],\n declarations: [TuiTagComponent],\n exports: [TuiTagComponent],\n})\nexport class TuiTagModule {}\n"]}
@@ -332,6 +332,20 @@
332
332
  enumerable: true,
333
333
  configurable: true
334
334
  });
335
+ Object.defineProperty(TuiTextAreaComponent.prototype, "fittedContent", {
336
+ get: function () {
337
+ return this.value.slice(0, this.controller.maxLength || Infinity);
338
+ },
339
+ enumerable: true,
340
+ configurable: true
341
+ });
342
+ Object.defineProperty(TuiTextAreaComponent.prototype, "extraContent", {
343
+ get: function () {
344
+ return this.value.slice(this.controller.maxLength || Infinity);
345
+ },
346
+ enumerable: true,
347
+ configurable: true
348
+ });
335
349
  TuiTextAreaComponent.prototype.onFocused = function (focused) {
336
350
  this.updateFocused(focused);
337
351
  };
@@ -402,14 +416,14 @@
402
416
  TuiTextAreaComponent = __decorate([
403
417
  core.Component({
404
418
  selector: 'tui-text-area',
405
- template: "<tui-wrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"counter\"\n >\n {{value.length}}/{{controller.maxLength}}\n </div>\n</tui-wrapper>\n\n<label\n class=\"content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (mousedown)=\"onMouseDown($event)\"\n>\n <div class=\"wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"placeholder\"\n [class.placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"hasExampleText\"\n automation-id=\"tui-text-area__example-text\"\n class=\"example-text\"\n >\n <span class=\"example-text-inner\"> {{controller.exampleText}} </span>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"input-wrapper\">\n <div class=\"relative\">\n <div class=\"pseudo-content\">{{value}}&nbsp;</div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"input\"\n [attr.maxLength]=\"controller.maxLength\"\n [id]=\"id\"\n [tuiFocusable]=\"focusable\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n [readOnly]=\"readOnly\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (ngModelChange)=\"onValue($event)\"\n ></textarea>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n class=\"tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n [direction]=\"hintController.direction\"\n [mode]=\"hintController.mode\"\n [content]=\"hintController.content\"\n [showDelay]=\"hintController.showDelay\"\n [hideDelay]=\"hintController.hideDelay\"\n ></tui-tooltip>\n</label>\n",
419
+ template: "<tui-wrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"counter\"\n >\n {{value.length}}/{{controller.maxLength}}\n </div>\n</tui-wrapper>\n\n<label\n class=\"content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (mousedown)=\"onMouseDown($event)\"\n>\n <div class=\"wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"placeholder\"\n [class.placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"hasExampleText\"\n automation-id=\"tui-text-area__example-text\"\n class=\"example-text\"\n >\n <span class=\"example-text-inner\"> {{controller.exampleText}} </span>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"input-wrapper\">\n <div class=\"relative\">\n <div class=\"pseudo-content\" aria-hidden=\"true\">\n <span>{{fittedContent}}</span>\n <span class=\"pseudo-content__extra\"\n >{{extraContent}}</span\n >\n &nbsp;\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"input\"\n [id]=\"id\"\n [tuiFocusable]=\"focusable\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n [readOnly]=\"readOnly\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (ngModelChange)=\"onValue($event)\"\n ></textarea>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n class=\"tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n [direction]=\"hintController.direction\"\n [mode]=\"hintController.mode\"\n [content]=\"hintController.content\"\n [showDelay]=\"hintController.showDelay\"\n [hideDelay]=\"hintController.hideDelay\"\n ></tui-tooltip>\n</label>\n",
406
420
  changeDetection: core.ChangeDetectionStrategy.OnPush,
407
421
  providers: TUI_TEXT_AREA_PROVIDERS,
408
422
  host: {
409
423
  '($.data-mode.attr)': 'mode$',
410
424
  '[class._ios]': 'isIOS',
411
425
  },
412
- styles: [":host{font:var(--tui-font-text-m);position:relative;z-index:0;display:flex;flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-tui-host-size='m']{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-tui-host-size='m']._has-counter{min-height:6.625rem}:host[data-tui-host-size='l']._has-counter{min-height:7.875rem}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution:0.001dpcm){.content::-webkit-scrollbar,.content::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:6px solid transparent}.content::-webkit-scrollbar{background-color:transparent}.content::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}.content::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}.content::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:.0625rem;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-tui-host-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-tui-host-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-tui-host-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-tui-host-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;visibility:hidden;overflow:hidden}:host[data-tui-host-size='m'] .pseudo-content{padding:0 .75rem}:host[data-tui-host-size='l'] .pseudo-content{padding:0 1rem}:host._focused._has-tooltip .pseudo-content,:host._has-value._has-tooltip .pseudo-content{margin-right:2.5rem}.input{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box;height:100%;resize:none;overflow:hidden}.input:-webkit-autofill,.input:-webkit-autofill:focus,.input:-webkit-autofill:hover{border-radius:inherit;-webkit-text-fill-color:inherit!important;color:inherit!important;background-color:transparent!important;-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.input:focus{outline:0}:host[data-tui-host-size='m'] .input{padding:0 .75rem}:host[data-tui-host-size='l'] .input{padding:0 1rem}:host._focused._has-tooltip .input,:host._has-value._has-tooltip .input{padding-right:2.5rem}:host._ios .input{padding-left:.8125rem}:host[data-mode=onDark]._disabled .input{color:var(--tui-text-03-night)}.placeholder{transition-property:transform,min-width,color,letter-spacing;transition-duration:var(--tui-duration,300ms);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%;height:1.25rem;font-size:.8125rem;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;color:var(--tui-text-02);transform-origin:left;letter-spacing:normal;text-transform:none;position:absolute;max-width:calc(100% - 1.5rem)}.placeholder_raised{width:114%;transform:translateY(-.625rem) scale(.87);max-width:calc(113% - 2rem)}:host[data-tui-host-size='m'] .placeholder_raised{width:118%;transform:translateY(-.5rem) scale(.85);letter-spacing:.025rem}:host._invalid:not(._focused) .placeholder_raised,:host._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .placeholder,:host[data-tui-host-size='l']._focused._label-outside .placeholder,:host[data-tui-host-size='m']._focused._label-outside .placeholder{color:var(--tui-text-03)}:host[data-tui-host-size='l']._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m']._focused:not(._label-outside) .placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='l'][data-mode=onDark]._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused:not(._label-outside) .placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .placeholder,:host[data-tui-host-size='l'][data-mode=onDark]._focused._label-outside .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused._label-outside .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='m'] .placeholder{top:.75rem;left:.75rem}:host[data-tui-host-size='l'] .placeholder{font-size:.9375rem;top:1rem;left:1rem}:host._has-tooltip .placeholder{max-width:calc(100% - 3.25rem)}:host._label-outside .placeholder{overflow:initial;height:auto;white-space:initial}.example-text{position:absolute;max-width:calc(100% - 1.5rem);color:var(--tui-text-03);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host._has-tooltip._focused .example-text,:host._has-tooltip._has-value .example-text{max-width:calc(100% - 3.25rem)}:host[data-tui-host-size='m'] .example-text{left:.75rem}:host[data-tui-host-size='l'] .example-text{left:1rem}.tooltip{position:absolute;top:1rem;right:.75rem}.counter{font:var(--tui-font-text-s);position:absolute;bottom:.5rem;right:.75rem;pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .counter{color:var(--tui-text-03-night)}"]
426
+ styles: [":host{font:var(--tui-font-text-m);position:relative;z-index:0;display:flex;flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-tui-host-size='m']{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-tui-host-size='m']._has-counter{min-height:6.625rem}:host[data-tui-host-size='l']._has-counter{min-height:7.875rem}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution:0.001dpcm){.content::-webkit-scrollbar,.content::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:6px solid transparent}.content::-webkit-scrollbar{background-color:transparent}.content::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}.content::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}.content::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:.0625rem;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-tui-host-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-tui-host-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-tui-host-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-tui-host-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden}:host[data-tui-host-size='m'] .pseudo-content{padding:0 .75rem}:host[data-tui-host-size='l'] .pseudo-content{padding:0 1rem}.pseudo-content__extra{background-color:var(--tui-error-bg-night)}.input{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-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%;box-sizing:border-box;height:100%;resize:none;overflow:hidden}.input:-webkit-autofill,.input:-webkit-autofill:focus,.input:-webkit-autofill:hover{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 1000px var(--tui-autofill) inset!important}.input:focus{outline:0}:host[data-tui-host-size='m'] .input{padding:0 .75rem}:host[data-tui-host-size='l'] .input{padding:0 1rem}:host._ios .input{padding-left:.8125rem}:host[data-mode=onDark]._disabled .input{color:var(--tui-text-03-night)}:host._focused._has-tooltip .input,:host._focused._has-tooltip .pseudo-content,:host._has-value._has-tooltip .input,:host._has-value._has-tooltip .pseudo-content{padding-right:2.5rem}.placeholder{transition-property:transform,min-width,color,letter-spacing;transition-duration:var(--tui-duration,300ms);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%;height:1.25rem;font-size:.8125rem;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;color:var(--tui-text-02);transform-origin:left;letter-spacing:normal;text-transform:none;position:absolute;max-width:calc(100% - 1.5rem)}.placeholder_raised{width:114%;transform:translateY(-.625rem) scale(.87);max-width:calc(113% - 2rem)}:host[data-tui-host-size='m'] .placeholder_raised{width:118%;transform:translateY(-.5rem) scale(.85);letter-spacing:.025rem}:host._invalid:not(._focused) .placeholder_raised,:host._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .placeholder,:host[data-tui-host-size='l']._focused._label-outside .placeholder,:host[data-tui-host-size='m']._focused._label-outside .placeholder{color:var(--tui-text-03)}:host[data-tui-host-size='l']._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m']._focused:not(._label-outside) .placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='l'][data-mode=onDark]._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused:not(._label-outside) .placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .placeholder,:host[data-tui-host-size='l'][data-mode=onDark]._focused._label-outside .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused._label-outside .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='m'] .placeholder{top:.75rem;left:.75rem}:host[data-tui-host-size='l'] .placeholder{font-size:.9375rem;top:1rem;left:1rem}:host._has-tooltip .placeholder{max-width:calc(100% - 3.25rem)}:host._label-outside .placeholder{overflow:initial;height:auto;white-space:initial}.example-text{position:absolute;max-width:calc(100% - 1.5rem);color:var(--tui-text-03);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host._has-tooltip._focused .example-text,:host._has-tooltip._has-value .example-text{max-width:calc(100% - 3.25rem)}:host[data-tui-host-size='m'] .example-text{left:.75rem}:host[data-tui-host-size='l'] .example-text{left:1rem}.tooltip{position:absolute;top:1rem;right:.75rem}.counter{font:var(--tui-font-text-s);position:absolute;bottom:.5rem;right:.75rem;pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .counter{color:var(--tui-text-03-night)}"]
413
427
  }),
414
428
  __param(0, core.Optional()),
415
429
  __param(0, core.Self()),