@taiga-ui/kit 2.22.0 → 2.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (951) hide show
  1. package/README.md +7 -3
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -6
  3. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
  5. package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-action.umd.js +2 -2
  7. package/bundles/taiga-ui-kit-components-action.umd.min.js +1 -1
  8. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-arrow.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-avatar.umd.js +1 -1
  11. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-avatar.umd.min.js +1 -1
  13. package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-badge.umd.js +2 -2
  15. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-badge.umd.min.js +1 -1
  17. package/bundles/taiga-ui-kit-components-badge.umd.min.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  19. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js +1 -1
  21. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +6 -6
  23. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +2 -2
  25. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  27. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
  29. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +1 -1
  31. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-carousel.umd.js +581 -0
  35. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -0
  36. package/bundles/taiga-ui-kit-components-carousel.umd.min.js +16 -0
  37. package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -0
  38. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-combo-box.umd.js +2 -2
  41. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
  43. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  45. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  47. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-field-error.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-field-error.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  51. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-filter.umd.min.js +1 -1
  53. package/bundles/taiga-ui-kit-components-filter.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-copy.umd.js +2 -2
  55. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
  57. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-count.umd.js +7 -2
  59. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +2 -2
  61. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +2 -2
  63. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  65. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +2 -2
  67. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  68. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
  69. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-kit-components-input-date.umd.js +2 -2
  71. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  72. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
  73. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  74. package/bundles/taiga-ui-kit-components-input-file.umd.js +191 -191
  75. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +2 -2
  77. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-input-inline.umd.js +1 -1
  79. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js +1 -1
  81. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  83. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  84. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  86. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  87. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-input-number.umd.js +8 -2
  89. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  91. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-input-password.umd.js +3 -2
  93. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  95. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +1 -1
  97. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  99. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  101. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  103. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components-input-range.umd.js +2 -2
  105. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  106. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  107. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  108. package/bundles/taiga-ui-kit-components-input-slider.umd.js +2 -2
  109. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  110. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  111. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  112. package/bundles/taiga-ui-kit-components-input-tag.umd.js +2 -2
  113. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  114. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +2 -2
  115. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  116. package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
  117. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  118. package/bundles/taiga-ui-kit-components-input-time.umd.min.js +1 -1
  119. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  120. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  121. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  122. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  123. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  124. package/bundles/taiga-ui-kit-components-island.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-components-island.umd.min.js.map +1 -1
  126. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +5 -5
  127. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  128. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js +2 -2
  129. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js.map +1 -1
  130. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js.map +1 -1
  132. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +16 -12
  133. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  134. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js +2 -2
  135. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js.map +1 -1
  136. package/bundles/taiga-ui-kit-components-multi-select.umd.js +29 -46
  137. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  138. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +2 -2
  139. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  140. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  141. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  142. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  143. package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
  144. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +338 -0
  145. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -0
  146. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js +16 -0
  147. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js.map +1 -0
  148. package/bundles/taiga-ui-kit-components-progress.umd.js +61 -25
  149. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  150. package/bundles/taiga-ui-kit-components-progress.umd.min.js +2 -2
  151. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  152. package/bundles/taiga-ui-kit-components-radio-group.umd.js.map +1 -1
  153. package/bundles/taiga-ui-kit-components-radio-group.umd.min.js.map +1 -1
  154. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +1 -1
  155. package/bundles/taiga-ui-kit-components-radio-labeled.umd.min.js +1 -1
  156. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  157. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  158. package/bundles/taiga-ui-kit-components-range.umd.js +2 -2
  159. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  160. package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
  161. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  162. package/bundles/taiga-ui-kit-components-select-option.umd.js +23 -14
  163. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  164. package/bundles/taiga-ui-kit-components-select-option.umd.min.js +2 -2
  165. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-kit-components-select.umd.js +2 -2
  167. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  168. package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
  169. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  170. package/bundles/taiga-ui-kit-components-slider.umd.js +2 -2
  171. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  172. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  173. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  174. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
  175. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  176. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +1 -1
  177. package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
  178. package/bundles/taiga-ui-kit-components-tabs.umd.js +3 -3
  179. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  180. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  181. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  182. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
  183. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  184. package/bundles/taiga-ui-kit-components-tag.umd.min.js +2 -2
  185. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  186. package/bundles/taiga-ui-kit-components-text-area.umd.js +19 -2
  187. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  188. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +2 -2
  189. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  190. package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
  191. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  192. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  193. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  194. package/bundles/taiga-ui-kit-components-tree.umd.js +146 -135
  195. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  196. package/bundles/taiga-ui-kit-components-tree.umd.min.js +2 -2
  197. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -1
  198. package/bundles/taiga-ui-kit-components.umd.js +42 -26
  199. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  200. package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
  201. package/bundles/taiga-ui-kit-constants.umd.js +3 -0
  202. package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
  203. package/bundles/taiga-ui-kit-constants.umd.min.js +1 -1
  204. package/bundles/taiga-ui-kit-constants.umd.min.js.map +1 -1
  205. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -1
  206. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -1
  207. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js.map +1 -1
  208. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.min.js.map +1 -1
  209. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +2 -1
  210. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +1 -1
  211. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js.map +1 -1
  212. package/bundles/taiga-ui-kit-directives-highlight.umd.js +6 -1
  213. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  214. package/bundles/taiga-ui-kit-directives-highlight.umd.min.js +1 -1
  215. package/bundles/taiga-ui-kit-directives-highlight.umd.min.js.map +1 -1
  216. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  217. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.min.js.map +1 -1
  218. package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
  219. package/bundles/taiga-ui-kit-directives-present.umd.min.js.map +1 -1
  220. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  221. package/bundles/taiga-ui-kit-directives-project-class.umd.min.js.map +1 -1
  222. package/bundles/taiga-ui-kit-directives-unfinished-validator.umd.js.map +1 -1
  223. package/bundles/taiga-ui-kit-directives-unfinished-validator.umd.min.js.map +1 -1
  224. package/bundles/taiga-ui-kit-directives-value-accessor.umd.js.map +1 -1
  225. package/bundles/taiga-ui-kit-directives-value-accessor.umd.min.js.map +1 -1
  226. package/bundles/taiga-ui-kit-directives.umd.js +12 -12
  227. package/bundles/taiga-ui-kit-directives.umd.min.js +1 -1
  228. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +1 -1
  229. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  230. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js +1 -1
  231. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
  232. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +21 -21
  233. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  234. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.min.js +1 -1
  235. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.min.js.map +1 -1
  236. package/bundles/taiga-ui-kit-pipes-stringify-content.umd.js.map +1 -1
  237. package/bundles/taiga-ui-kit-pipes-stringify-content.umd.min.js.map +1 -1
  238. package/bundles/taiga-ui-kit-pipes-stringify.umd.js.map +1 -1
  239. package/bundles/taiga-ui-kit-pipes-stringify.umd.min.js.map +1 -1
  240. package/bundles/taiga-ui-kit-tokens.umd.js +14 -14
  241. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  242. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  243. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  244. package/bundles/taiga-ui-kit-utils-format.umd.js +0 -2
  245. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  246. package/bundles/taiga-ui-kit-utils-format.umd.min.js.map +1 -1
  247. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  248. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  249. package/components/arrow/taiga-ui-kit-components-arrow.metadata.json +1 -1
  250. package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
  251. package/components/badge/taiga-ui-kit-components-badge.metadata.json +1 -1
  252. package/components/badged-content/taiga-ui-kit-components-badged-content.metadata.json +1 -1
  253. package/components/breadcrumbs/index.d.ts +1 -1
  254. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  255. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  256. package/components/calendar-range/taiga-ui-kit-components-calendar-range.metadata.json +1 -1
  257. package/components/carousel/carousel-buttons.directive.d.ts +4 -0
  258. package/components/carousel/carousel-draggable.directive.d.ts +16 -0
  259. package/components/carousel/carousel-scroller.directive.d.ts +17 -0
  260. package/components/carousel/carousel.component.d.ts +18 -0
  261. package/components/carousel/carousel.directive.d.ts +18 -0
  262. package/components/carousel/carousel.module.d.ts +2 -0
  263. package/components/carousel/index.d.ts +6 -0
  264. package/components/carousel/package.json +13 -0
  265. package/components/carousel/taiga-ui-kit-components-carousel.d.ts +4 -0
  266. package/components/carousel/taiga-ui-kit-components-carousel.metadata.json +1 -0
  267. package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
  268. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  269. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  270. package/components/field-error/taiga-ui-kit-components-field-error.metadata.json +1 -1
  271. package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
  272. package/components/index.d.ts +5 -3
  273. package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
  274. package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
  275. package/components/input-count/input-count.component.d.ts +1 -0
  276. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  277. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  278. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  279. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  280. package/components/input-file/index.d.ts +1 -1
  281. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  282. package/components/input-inline/taiga-ui-kit-components-input-inline.metadata.json +1 -1
  283. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  284. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  285. package/components/input-number/input-number.component.d.ts +1 -0
  286. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  287. package/components/input-password/index.d.ts +1 -1
  288. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  289. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  290. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  291. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  292. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  293. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  294. package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
  295. package/components/island/taiga-ui-kit-components-island.metadata.json +1 -1
  296. package/components/line-clamp/index.d.ts +1 -1
  297. package/components/line-clamp/taiga-ui-kit-components-line-clamp.metadata.json +1 -1
  298. package/components/marker-icon/taiga-ui-kit-components-marker-icon.metadata.json +1 -1
  299. package/components/multi-select/index.d.ts +0 -1
  300. package/components/multi-select/multi-select.component.d.ts +7 -5
  301. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  302. package/components/multi-select-option/multi-select-option.component.d.ts +1 -1
  303. package/components/multi-select-option/taiga-ui-kit-components-multi-select-option.metadata.json +1 -1
  304. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  305. package/components/pdf-viewer/index.d.ts +5 -0
  306. package/components/pdf-viewer/package.json +13 -0
  307. package/components/pdf-viewer/pdf-viewer-options.d.ts +6 -0
  308. package/components/pdf-viewer/pdf-viewer.component.d.ts +20 -0
  309. package/components/pdf-viewer/pdf-viewer.directive.d.ts +4 -0
  310. package/components/pdf-viewer/pdf-viewer.module.d.ts +2 -0
  311. package/components/pdf-viewer/pdf-viewer.service.d.ts +8 -0
  312. package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.d.ts +4 -0
  313. package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.metadata.json +1 -0
  314. package/components/progress/index.d.ts +4 -2
  315. package/components/progress/pipes/abstract-color-segments.d.ts +9 -0
  316. package/components/progress/pipes/progress-color-segments-async.pipe.d.ts +5 -0
  317. package/components/progress/pipes/progress-color-segments.pipe.d.ts +7 -6
  318. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  319. package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
  320. package/components/radio-group/taiga-ui-kit-components-radio-group.metadata.json +1 -1
  321. package/components/radio-labeled/taiga-ui-kit-components-radio-labeled.metadata.json +1 -1
  322. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  323. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  324. package/components/select-option/select-option.component.d.ts +4 -2
  325. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  326. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  327. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  328. package/components/tabs/index.d.ts +2 -2
  329. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  330. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  331. package/components/taiga-ui-kit-components.metadata.json +1 -1
  332. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  333. package/components/text-area/text-area.component.d.ts +2 -0
  334. package/components/toggle/index.d.ts +1 -1
  335. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  336. package/components/tree/components/tree/tree.component.d.ts +6 -1
  337. package/components/tree/index.d.ts +4 -4
  338. package/components/tree/taiga-ui-kit-components-tree.metadata.json +1 -1
  339. package/constants/icon-blank.d.ts +1 -0
  340. package/constants/index.d.ts +1 -0
  341. package/constants/taiga-ui-kit-constants.metadata.json +1 -1
  342. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.metadata.json +1 -1
  343. package/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.metadata.json +1 -1
  344. package/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.metadata.json +1 -1
  345. package/directives/highlight/highlight.directive.d.ts +1 -0
  346. package/directives/highlight/taiga-ui-kit-directives-highlight.metadata.json +1 -1
  347. package/directives/index.d.ts +1 -1
  348. package/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.metadata.json +1 -1
  349. package/directives/present/taiga-ui-kit-directives-present.metadata.json +1 -1
  350. package/directives/project-class/taiga-ui-kit-directives-project-class.metadata.json +1 -1
  351. package/directives/taiga-ui-kit-directives.metadata.json +1 -1
  352. package/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.metadata.json +1 -1
  353. package/directives/value-accessor/taiga-ui-kit-directives-value-accessor.metadata.json +1 -1
  354. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -6
  355. package/esm2015/components/accordion/accordion.component.js +2 -2
  356. package/esm2015/components/accordion/accordion.module.js +3 -3
  357. package/esm2015/components/action/action.component.js +2 -2
  358. package/esm2015/components/arrow/arrow.module.js +1 -1
  359. package/esm2015/components/avatar/avatar.component.js +2 -2
  360. package/esm2015/components/avatar/avatar.module.js +1 -1
  361. package/esm2015/components/badge/badge.component.js +3 -3
  362. package/esm2015/components/badge/badge.module.js +1 -1
  363. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  364. package/esm2015/components/badged-content/badged-content.module.js +1 -1
  365. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  366. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
  367. package/esm2015/components/breadcrumbs/breadcrumbs.module.js +2 -2
  368. package/esm2015/components/breadcrumbs/index.js +2 -2
  369. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  370. package/esm2015/components/calendar-month/calendar-month.module.js +1 -1
  371. package/esm2015/components/calendar-range/calendar-range.component.js +2 -2
  372. package/esm2015/components/carousel/carousel-buttons.directive.js +24 -0
  373. package/esm2015/components/carousel/carousel-draggable.directive.js +67 -0
  374. package/esm2015/components/carousel/carousel-scroller.directive.js +76 -0
  375. package/esm2015/components/carousel/carousel.component.js +87 -0
  376. package/esm2015/components/carousel/carousel.directive.js +65 -0
  377. package/esm2015/components/carousel/carousel.module.js +34 -0
  378. package/esm2015/components/carousel/index.js +7 -0
  379. package/esm2015/components/carousel/taiga-ui-kit-components-carousel.js +5 -0
  380. package/esm2015/components/checkbox/checkbox.module.js +1 -1
  381. package/esm2015/components/combo-box/combo-box.component.js +2 -2
  382. package/esm2015/components/combo-box/combo-box.module.js +1 -1
  383. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  384. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  385. package/esm2015/components/data-list-wrapper/data-list-wrapper.module.js +1 -1
  386. package/esm2015/components/field-error/field-error.module.js +1 -1
  387. package/esm2015/components/filter/filter.component.js +1 -1
  388. package/esm2015/components/filter/filter.module.js +1 -1
  389. package/esm2015/components/index.js +6 -4
  390. package/esm2015/components/input/input.component.js +2 -2
  391. package/esm2015/components/input/input.module.js +1 -1
  392. package/esm2015/components/input/input.providers.js +1 -1
  393. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  394. package/esm2015/components/input-copy/input-copy.module.js +1 -1
  395. package/esm2015/components/input-count/input-count.component.js +8 -3
  396. package/esm2015/components/input-count/input-count.module.js +1 -1
  397. package/esm2015/components/input-date/input-date.component.js +3 -3
  398. package/esm2015/components/input-date/input-date.module.js +1 -1
  399. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  400. package/esm2015/components/input-date-range/input-date-range.module.js +1 -1
  401. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  402. package/esm2015/components/input-date-time/input-date-time.module.js +1 -1
  403. package/esm2015/components/input-file/file/file.component.js +3 -3
  404. package/esm2015/components/input-file/index.js +2 -2
  405. package/esm2015/components/input-file/input-file.component.js +3 -3
  406. package/esm2015/components/input-file/input-file.module.js +1 -1
  407. package/esm2015/components/input-inline/input-inline.component.js +1 -1
  408. package/esm2015/components/input-inline/input-inline.module.js +1 -1
  409. package/esm2015/components/input-month/input-month.component.js +1 -1
  410. package/esm2015/components/input-month-range/input-month-range.component.js +1 -1
  411. package/esm2015/components/input-number/input-number.component.js +9 -3
  412. package/esm2015/components/input-number/input-number.module.js +1 -1
  413. package/esm2015/components/input-password/index.js +2 -2
  414. package/esm2015/components/input-password/input-password.component.js +3 -3
  415. package/esm2015/components/input-password/input-password.module.js +3 -1
  416. package/esm2015/components/input-phone/input-phone.component.js +3 -3
  417. package/esm2015/components/input-phone/input-phone.module.js +1 -1
  418. package/esm2015/components/input-phone-international/const/countries.js +1 -1
  419. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  420. package/esm2015/components/input-phone-international/input-phone-international.module.js +1 -1
  421. package/esm2015/components/input-range/input-range.component.js +3 -3
  422. package/esm2015/components/input-slider/input-slider.component.js +3 -3
  423. package/esm2015/components/input-tag/input-tag.component.js +3 -3
  424. package/esm2015/components/input-tag/input-tag.module.js +1 -1
  425. package/esm2015/components/input-time/input-time.component.js +3 -3
  426. package/esm2015/components/input-time/input-time.module.js +1 -1
  427. package/esm2015/components/island/island.module.js +1 -1
  428. package/esm2015/components/line-clamp/index.js +2 -2
  429. package/esm2015/components/line-clamp/line-clamp.component.js +1 -1
  430. package/esm2015/components/line-clamp/line-clamp.module.js +1 -1
  431. package/esm2015/components/marker-icon/marker-icon.module.js +1 -1
  432. package/esm2015/components/multi-select/hide-selected.pipe.js +1 -1
  433. package/esm2015/components/multi-select/index.js +1 -2
  434. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  435. package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +1 -1
  436. package/esm2015/components/multi-select/multi-select.component.js +16 -17
  437. package/esm2015/components/multi-select/multi-select.module.js +2 -4
  438. package/esm2015/components/multi-select-option/multi-select-option.component.js +8 -10
  439. package/esm2015/components/multi-select-option/multi-select-option.module.js +1 -1
  440. package/esm2015/components/pagination/pagination.component.js +1 -1
  441. package/esm2015/components/pagination/pagination.module.js +1 -1
  442. package/esm2015/components/pdf-viewer/index.js +5 -0
  443. package/esm2015/components/pdf-viewer/pdf-viewer-options.js +1 -0
  444. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +50 -0
  445. package/esm2015/components/pdf-viewer/pdf-viewer.directive.js +21 -0
  446. package/esm2015/components/pdf-viewer/pdf-viewer.module.js +28 -0
  447. package/esm2015/components/pdf-viewer/pdf-viewer.service.js +24 -0
  448. package/esm2015/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.js +5 -0
  449. package/esm2015/components/progress/index.js +5 -3
  450. package/esm2015/components/progress/pipes/abstract-color-segments.js +32 -0
  451. package/esm2015/components/progress/pipes/progress-color-segments-async.pipe.js +15 -0
  452. package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +12 -28
  453. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  454. package/esm2015/components/progress/progress-label/progress-label.component.js +1 -1
  455. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  456. package/esm2015/components/progress/progress.module.js +4 -1
  457. package/esm2015/components/radio/radio.component.js +1 -1
  458. package/esm2015/components/radio/radio.module.js +1 -1
  459. package/esm2015/components/radio-group/radio-group.module.js +1 -1
  460. package/esm2015/components/radio-labeled/radio-labeled.component.js +1 -1
  461. package/esm2015/components/range/range.component.js +3 -3
  462. package/esm2015/components/range/range.module.js +1 -1
  463. package/esm2015/components/select/select.component.js +2 -2
  464. package/esm2015/components/select/select.module.js +1 -1
  465. package/esm2015/components/select-option/select-option.component.js +20 -12
  466. package/esm2015/components/select-option/select-option.module.js +1 -1
  467. package/esm2015/components/slider/slider.component.js +3 -3
  468. package/esm2015/components/slider/slider.module.js +1 -1
  469. package/esm2015/components/stepper/step/step.component.js +2 -2
  470. package/esm2015/components/stepper/stepper.component.js +1 -1
  471. package/esm2015/components/stepper/stepper.module.js +1 -1
  472. package/esm2015/components/tabs/index.js +3 -3
  473. package/esm2015/components/tabs/tab/tab.component.js +1 -1
  474. package/esm2015/components/tabs/tabs/tabs.component.js +2 -2
  475. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  476. package/esm2015/components/tabs/tabs.module.js +2 -2
  477. package/esm2015/components/tag/tag.component.js +3 -3
  478. package/esm2015/components/tag/tag.module.js +1 -1
  479. package/esm2015/components/text-area/text-area.component.js +10 -4
  480. package/esm2015/components/text-area/text-area.module.js +5 -2
  481. package/esm2015/components/text-area/text-area.providers.js +1 -1
  482. package/esm2015/components/toggle/index.js +2 -2
  483. package/esm2015/components/toggle/toggle.component.js +2 -2
  484. package/esm2015/components/toggle/toggle.module.js +1 -1
  485. package/esm2015/components/tree/components/tree/tree.component.js +16 -3
  486. package/esm2015/components/tree/components/tree-item/tree-item.component.js +9 -9
  487. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +1 -1
  488. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +5 -6
  489. package/esm2015/components/tree/directives/tree-controller.directive.js +1 -1
  490. package/esm2015/components/tree/directives/tree-item-controller.directive.js +1 -1
  491. package/esm2015/components/tree/directives/tree-node.directive.js +1 -1
  492. package/esm2015/components/tree/index.js +4 -4
  493. package/esm2015/components/tree/misc/tree.constants.js +1 -1
  494. package/esm2015/components/tree/misc/tree.interfaces.js +1 -1
  495. package/esm2015/components/tree/misc/tree.service.js +1 -1
  496. package/esm2015/components/tree/misc/tree.tokens.js +1 -1
  497. package/esm2015/components/tree/tree.module.js +3 -3
  498. package/esm2015/constants/icon-blank.js +2 -0
  499. package/esm2015/constants/index.js +2 -1
  500. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +1 -1
  501. package/esm2015/directives/dropdown-context/dropdown-context.module.js +1 -1
  502. package/esm2015/directives/dropdown-hover/dropdown-hover.module.js +1 -1
  503. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +3 -2
  504. package/esm2015/directives/dropdown-selection/dropdown-selection.module.js +1 -1
  505. package/esm2015/directives/highlight/highlight.directive.js +7 -2
  506. package/esm2015/directives/highlight/highlight.module.js +1 -1
  507. package/esm2015/directives/index.js +2 -2
  508. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +1 -1
  509. package/esm2015/directives/lazy-loading/lazy-loading.module.js +1 -1
  510. package/esm2015/directives/present/present.module.js +1 -1
  511. package/esm2015/directives/project-class/project-class.module.js +1 -1
  512. package/esm2015/directives/unfinished-validator/unfinished-validator.module.js +1 -1
  513. package/esm2015/directives/value-accessor/value-accessor.module.js +1 -1
  514. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  515. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.module.js +1 -1
  516. package/esm2015/pipes/filter-by-input/filter-by-input-with.pipe.js +1 -1
  517. package/esm2015/pipes/filter-by-input/filter-by-input.module.js +2 -2
  518. package/esm2015/pipes/filter-by-input/filter-by-input.pipe.js +1 -1
  519. package/esm2015/pipes/stringify/stringify.module.js +1 -1
  520. package/esm2015/pipes/stringify-content/stringify-content.module.js +1 -1
  521. package/esm2015/tokens/index.js +2 -2
  522. package/esm2015/utils/format/string-hash-to-hsl.js +1 -3
  523. package/esm2015/utils/mask/index.js +2 -2
  524. package/esm5/components/accordion/accordion-item/accordion-item.component.js +5 -6
  525. package/esm5/components/accordion/accordion.component.js +2 -2
  526. package/esm5/components/accordion/accordion.module.js +3 -3
  527. package/esm5/components/action/action.component.js +2 -2
  528. package/esm5/components/arrow/arrow.module.js +1 -1
  529. package/esm5/components/avatar/avatar.component.js +2 -2
  530. package/esm5/components/avatar/avatar.module.js +1 -1
  531. package/esm5/components/badge/badge.component.js +3 -3
  532. package/esm5/components/badge/badge.module.js +1 -1
  533. package/esm5/components/badged-content/badged-content.component.js +1 -1
  534. package/esm5/components/badged-content/badged-content.module.js +1 -1
  535. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  536. package/esm5/components/breadcrumbs/breadcrumbs.component.js +2 -2
  537. package/esm5/components/breadcrumbs/breadcrumbs.module.js +2 -2
  538. package/esm5/components/breadcrumbs/index.js +2 -2
  539. package/esm5/components/calendar-month/calendar-month.component.js +2 -2
  540. package/esm5/components/calendar-month/calendar-month.module.js +1 -1
  541. package/esm5/components/calendar-range/calendar-range.component.js +2 -2
  542. package/esm5/components/carousel/carousel-buttons.directive.js +27 -0
  543. package/esm5/components/carousel/carousel-draggable.directive.js +73 -0
  544. package/esm5/components/carousel/carousel-scroller.directive.js +82 -0
  545. package/esm5/components/carousel/carousel.component.js +90 -0
  546. package/esm5/components/carousel/carousel.directive.js +82 -0
  547. package/esm5/components/carousel/carousel.module.js +37 -0
  548. package/esm5/components/carousel/index.js +7 -0
  549. package/esm5/components/carousel/taiga-ui-kit-components-carousel.js +5 -0
  550. package/esm5/components/checkbox/checkbox.module.js +1 -1
  551. package/esm5/components/combo-box/combo-box.component.js +2 -2
  552. package/esm5/components/combo-box/combo-box.module.js +1 -1
  553. package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  554. package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  555. package/esm5/components/data-list-wrapper/data-list-wrapper.module.js +1 -1
  556. package/esm5/components/field-error/field-error.module.js +1 -1
  557. package/esm5/components/filter/filter.component.js +1 -1
  558. package/esm5/components/filter/filter.module.js +1 -1
  559. package/esm5/components/index.js +6 -4
  560. package/esm5/components/input/input.component.js +2 -2
  561. package/esm5/components/input/input.module.js +1 -1
  562. package/esm5/components/input/input.providers.js +1 -1
  563. package/esm5/components/input-copy/input-copy.component.js +2 -2
  564. package/esm5/components/input-copy/input-copy.module.js +1 -1
  565. package/esm5/components/input-count/input-count.component.js +8 -3
  566. package/esm5/components/input-count/input-count.module.js +1 -1
  567. package/esm5/components/input-date/input-date.component.js +3 -3
  568. package/esm5/components/input-date/input-date.module.js +1 -1
  569. package/esm5/components/input-date-range/input-date-range.component.js +2 -2
  570. package/esm5/components/input-date-range/input-date-range.module.js +1 -1
  571. package/esm5/components/input-date-time/input-date-time.component.js +2 -2
  572. package/esm5/components/input-date-time/input-date-time.module.js +1 -1
  573. package/esm5/components/input-file/file/file.component.js +3 -3
  574. package/esm5/components/input-file/index.js +2 -2
  575. package/esm5/components/input-file/input-file.component.js +3 -3
  576. package/esm5/components/input-file/input-file.module.js +1 -1
  577. package/esm5/components/input-inline/input-inline.component.js +1 -1
  578. package/esm5/components/input-inline/input-inline.module.js +1 -1
  579. package/esm5/components/input-month/input-month.component.js +1 -1
  580. package/esm5/components/input-month-range/input-month-range.component.js +1 -1
  581. package/esm5/components/input-number/input-number.component.js +9 -3
  582. package/esm5/components/input-number/input-number.module.js +1 -1
  583. package/esm5/components/input-password/index.js +2 -2
  584. package/esm5/components/input-password/input-password.component.js +3 -3
  585. package/esm5/components/input-password/input-password.module.js +3 -1
  586. package/esm5/components/input-phone/input-phone.component.js +3 -3
  587. package/esm5/components/input-phone/input-phone.module.js +1 -1
  588. package/esm5/components/input-phone-international/const/countries.js +1 -1
  589. package/esm5/components/input-phone-international/input-phone-international.component.js +2 -2
  590. package/esm5/components/input-phone-international/input-phone-international.module.js +1 -1
  591. package/esm5/components/input-range/input-range.component.js +3 -3
  592. package/esm5/components/input-slider/input-slider.component.js +3 -3
  593. package/esm5/components/input-tag/input-tag.component.js +3 -3
  594. package/esm5/components/input-tag/input-tag.module.js +1 -1
  595. package/esm5/components/input-time/input-time.component.js +3 -3
  596. package/esm5/components/input-time/input-time.module.js +1 -1
  597. package/esm5/components/island/island.module.js +1 -1
  598. package/esm5/components/line-clamp/index.js +2 -2
  599. package/esm5/components/line-clamp/line-clamp.component.js +1 -1
  600. package/esm5/components/line-clamp/line-clamp.module.js +1 -1
  601. package/esm5/components/marker-icon/marker-icon.module.js +1 -1
  602. package/esm5/components/multi-select/hide-selected.pipe.js +1 -1
  603. package/esm5/components/multi-select/index.js +1 -2
  604. package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  605. package/esm5/components/multi-select/multi-select-group/multi-select-group.directive.js +1 -1
  606. package/esm5/components/multi-select/multi-select.component.js +20 -21
  607. package/esm5/components/multi-select/multi-select.module.js +2 -4
  608. package/esm5/components/multi-select-option/multi-select-option.component.js +14 -11
  609. package/esm5/components/multi-select-option/multi-select-option.module.js +1 -1
  610. package/esm5/components/pagination/pagination.component.js +1 -1
  611. package/esm5/components/pagination/pagination.module.js +1 -1
  612. package/esm5/components/pdf-viewer/index.js +5 -0
  613. package/esm5/components/pdf-viewer/pdf-viewer-options.js +1 -0
  614. package/esm5/components/pdf-viewer/pdf-viewer.component.js +51 -0
  615. package/esm5/components/pdf-viewer/pdf-viewer.directive.js +26 -0
  616. package/esm5/components/pdf-viewer/pdf-viewer.module.js +31 -0
  617. package/esm5/components/pdf-viewer/pdf-viewer.service.js +27 -0
  618. package/esm5/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.js +5 -0
  619. package/esm5/components/progress/index.js +5 -3
  620. package/esm5/components/progress/pipes/abstract-color-segments.js +35 -0
  621. package/esm5/components/progress/pipes/progress-color-segments-async.pipe.js +21 -0
  622. package/esm5/components/progress/pipes/progress-color-segments.pipe.js +16 -30
  623. package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
  624. package/esm5/components/progress/progress-label/progress-label.component.js +1 -1
  625. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  626. package/esm5/components/progress/progress.module.js +4 -1
  627. package/esm5/components/radio/radio.component.js +1 -1
  628. package/esm5/components/radio/radio.module.js +1 -1
  629. package/esm5/components/radio-group/radio-group.module.js +1 -1
  630. package/esm5/components/radio-labeled/radio-labeled.component.js +1 -1
  631. package/esm5/components/range/range.component.js +3 -3
  632. package/esm5/components/range/range.module.js +1 -1
  633. package/esm5/components/select/select.component.js +2 -2
  634. package/esm5/components/select/select.module.js +1 -1
  635. package/esm5/components/select-option/select-option.component.js +24 -14
  636. package/esm5/components/select-option/select-option.module.js +1 -1
  637. package/esm5/components/slider/slider.component.js +3 -3
  638. package/esm5/components/slider/slider.module.js +1 -1
  639. package/esm5/components/stepper/step/step.component.js +2 -2
  640. package/esm5/components/stepper/stepper.component.js +1 -1
  641. package/esm5/components/stepper/stepper.module.js +1 -1
  642. package/esm5/components/tabs/index.js +3 -3
  643. package/esm5/components/tabs/tab/tab.component.js +1 -1
  644. package/esm5/components/tabs/tabs/tabs.component.js +2 -2
  645. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  646. package/esm5/components/tabs/tabs.module.js +2 -2
  647. package/esm5/components/tag/tag.component.js +3 -3
  648. package/esm5/components/tag/tag.module.js +1 -1
  649. package/esm5/components/text-area/text-area.component.js +18 -4
  650. package/esm5/components/text-area/text-area.module.js +5 -2
  651. package/esm5/components/text-area/text-area.providers.js +1 -1
  652. package/esm5/components/toggle/index.js +2 -2
  653. package/esm5/components/toggle/toggle.component.js +2 -2
  654. package/esm5/components/toggle/toggle.module.js +1 -1
  655. package/esm5/components/tree/components/tree/tree.component.js +16 -3
  656. package/esm5/components/tree/components/tree-item/tree-item.component.js +9 -9
  657. package/esm5/components/tree/components/tree-item/tree-item.providers.js +1 -1
  658. package/esm5/components/tree/components/tree-item-content/tree-item-content.component.js +5 -6
  659. package/esm5/components/tree/directives/tree-controller.directive.js +1 -1
  660. package/esm5/components/tree/directives/tree-item-controller.directive.js +1 -1
  661. package/esm5/components/tree/directives/tree-node.directive.js +1 -1
  662. package/esm5/components/tree/index.js +4 -4
  663. package/esm5/components/tree/misc/tree.constants.js +1 -1
  664. package/esm5/components/tree/misc/tree.interfaces.js +1 -1
  665. package/esm5/components/tree/misc/tree.service.js +1 -1
  666. package/esm5/components/tree/misc/tree.tokens.js +1 -1
  667. package/esm5/components/tree/tree.module.js +3 -3
  668. package/esm5/constants/icon-blank.js +2 -0
  669. package/esm5/constants/index.js +2 -1
  670. package/esm5/directives/dropdown-context/dropdown-context.directive.js +1 -1
  671. package/esm5/directives/dropdown-context/dropdown-context.module.js +1 -1
  672. package/esm5/directives/dropdown-hover/dropdown-hover.module.js +1 -1
  673. package/esm5/directives/dropdown-selection/dropdown-selection.directive.js +3 -2
  674. package/esm5/directives/dropdown-selection/dropdown-selection.module.js +1 -1
  675. package/esm5/directives/highlight/highlight.directive.js +7 -2
  676. package/esm5/directives/highlight/highlight.module.js +1 -1
  677. package/esm5/directives/index.js +2 -2
  678. package/esm5/directives/lazy-loading/lazy-loading.directive.js +1 -1
  679. package/esm5/directives/lazy-loading/lazy-loading.module.js +1 -1
  680. package/esm5/directives/present/present.module.js +1 -1
  681. package/esm5/directives/project-class/project-class.module.js +1 -1
  682. package/esm5/directives/unfinished-validator/unfinished-validator.module.js +1 -1
  683. package/esm5/directives/value-accessor/value-accessor.module.js +1 -1
  684. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  685. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.module.js +1 -1
  686. package/esm5/pipes/filter-by-input/filter-by-input-with.pipe.js +1 -1
  687. package/esm5/pipes/filter-by-input/filter-by-input.module.js +2 -2
  688. package/esm5/pipes/filter-by-input/filter-by-input.pipe.js +1 -1
  689. package/esm5/pipes/stringify/stringify.module.js +1 -1
  690. package/esm5/pipes/stringify-content/stringify-content.module.js +1 -1
  691. package/esm5/tokens/index.js +2 -2
  692. package/esm5/utils/format/string-hash-to-hsl.js +1 -3
  693. package/esm5/utils/mask/index.js +2 -2
  694. package/fesm2015/taiga-ui-kit-components-accordion.js +5 -6
  695. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  696. package/fesm2015/taiga-ui-kit-components-action.js +2 -2
  697. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  698. package/fesm2015/taiga-ui-kit-components-avatar.js +1 -1
  699. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  700. package/fesm2015/taiga-ui-kit-components-badge.js +2 -2
  701. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  702. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  703. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  704. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +4 -4
  705. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  706. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  707. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  708. package/fesm2015/taiga-ui-kit-components-calendar-range.js +1 -1
  709. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  710. package/fesm2015/taiga-ui-kit-components-carousel.js +323 -0
  711. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -0
  712. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  713. package/fesm2015/taiga-ui-kit-components-combo-box.js +2 -2
  714. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  715. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  716. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  717. package/fesm2015/taiga-ui-kit-components-field-error.js.map +1 -1
  718. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  719. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  720. package/fesm2015/taiga-ui-kit-components-input-copy.js +2 -2
  721. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  722. package/fesm2015/taiga-ui-kit-components-input-count.js +7 -2
  723. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  724. package/fesm2015/taiga-ui-kit-components-input-date-range.js +2 -2
  725. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  726. package/fesm2015/taiga-ui-kit-components-input-date-time.js +2 -2
  727. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  728. package/fesm2015/taiga-ui-kit-components-input-date.js +2 -2
  729. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  730. package/fesm2015/taiga-ui-kit-components-input-file.js +148 -148
  731. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  732. package/fesm2015/taiga-ui-kit-components-input-inline.js +1 -1
  733. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  734. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  735. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  736. package/fesm2015/taiga-ui-kit-components-input-number.js +8 -2
  737. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  738. package/fesm2015/taiga-ui-kit-components-input-password.js +5 -4
  739. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  740. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +1 -1
  741. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  742. package/fesm2015/taiga-ui-kit-components-input-phone.js +2 -2
  743. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  744. package/fesm2015/taiga-ui-kit-components-input-range.js +2 -2
  745. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  746. package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
  747. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  748. package/fesm2015/taiga-ui-kit-components-input-tag.js +2 -2
  749. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  750. package/fesm2015/taiga-ui-kit-components-input-time.js +2 -2
  751. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  752. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  753. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  754. package/fesm2015/taiga-ui-kit-components-island.js.map +1 -1
  755. package/fesm2015/taiga-ui-kit-components-line-clamp.js +2 -2
  756. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  757. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  758. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +7 -9
  759. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  760. package/fesm2015/taiga-ui-kit-components-multi-select.js +25 -37
  761. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  762. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  763. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  764. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +108 -0
  765. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -0
  766. package/fesm2015/taiga-ui-kit-components-progress.js +41 -16
  767. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  768. package/fesm2015/taiga-ui-kit-components-radio-group.js.map +1 -1
  769. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +1 -1
  770. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  771. package/fesm2015/taiga-ui-kit-components-range.js +2 -2
  772. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  773. package/fesm2015/taiga-ui-kit-components-select-option.js +19 -11
  774. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  775. package/fesm2015/taiga-ui-kit-components-select.js +2 -2
  776. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  777. package/fesm2015/taiga-ui-kit-components-slider.js +2 -2
  778. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  779. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
  780. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  781. package/fesm2015/taiga-ui-kit-components-tabs.js +3 -3
  782. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  783. package/fesm2015/taiga-ui-kit-components-tag.js +2 -2
  784. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  785. package/fesm2015/taiga-ui-kit-components-text-area.js +12 -3
  786. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  787. package/fesm2015/taiga-ui-kit-components-toggle.js +2 -2
  788. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  789. package/fesm2015/taiga-ui-kit-components-tree.js +131 -120
  790. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  791. package/fesm2015/taiga-ui-kit-components.js +5 -3
  792. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  793. package/fesm2015/taiga-ui-kit-constants.js +3 -1
  794. package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
  795. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  796. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js.map +1 -1
  797. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +2 -1
  798. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  799. package/fesm2015/taiga-ui-kit-directives-highlight.js +6 -1
  800. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  801. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  802. package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
  803. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  804. package/fesm2015/taiga-ui-kit-directives-unfinished-validator.js.map +1 -1
  805. package/fesm2015/taiga-ui-kit-directives-value-accessor.js.map +1 -1
  806. package/fesm2015/taiga-ui-kit-directives.js +1 -1
  807. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  808. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  809. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +15 -15
  810. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  811. package/fesm2015/taiga-ui-kit-pipes-stringify-content.js.map +1 -1
  812. package/fesm2015/taiga-ui-kit-pipes-stringify.js.map +1 -1
  813. package/fesm2015/taiga-ui-kit-tokens.js +14 -14
  814. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  815. package/fesm2015/taiga-ui-kit-utils-format.js +0 -2
  816. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  817. package/fesm5/taiga-ui-kit-components-accordion.js +5 -6
  818. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  819. package/fesm5/taiga-ui-kit-components-action.js +2 -2
  820. package/fesm5/taiga-ui-kit-components-arrow.js.map +1 -1
  821. package/fesm5/taiga-ui-kit-components-avatar.js +1 -1
  822. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  823. package/fesm5/taiga-ui-kit-components-badge.js +2 -2
  824. package/fesm5/taiga-ui-kit-components-badge.js.map +1 -1
  825. package/fesm5/taiga-ui-kit-components-badged-content.js +1 -1
  826. package/fesm5/taiga-ui-kit-components-badged-content.js.map +1 -1
  827. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +4 -4
  828. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  829. package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
  830. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  831. package/fesm5/taiga-ui-kit-components-calendar-range.js +1 -1
  832. package/fesm5/taiga-ui-kit-components-calendar-range.js.map +1 -1
  833. package/fesm5/taiga-ui-kit-components-carousel.js +361 -0
  834. package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -0
  835. package/fesm5/taiga-ui-kit-components-checkbox.js.map +1 -1
  836. package/fesm5/taiga-ui-kit-components-combo-box.js +2 -2
  837. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  838. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  839. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  840. package/fesm5/taiga-ui-kit-components-field-error.js.map +1 -1
  841. package/fesm5/taiga-ui-kit-components-filter.js +1 -1
  842. package/fesm5/taiga-ui-kit-components-filter.js.map +1 -1
  843. package/fesm5/taiga-ui-kit-components-input-copy.js +2 -2
  844. package/fesm5/taiga-ui-kit-components-input-copy.js.map +1 -1
  845. package/fesm5/taiga-ui-kit-components-input-count.js +7 -2
  846. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  847. package/fesm5/taiga-ui-kit-components-input-date-range.js +2 -2
  848. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  849. package/fesm5/taiga-ui-kit-components-input-date-time.js +2 -2
  850. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  851. package/fesm5/taiga-ui-kit-components-input-date.js +2 -2
  852. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  853. package/fesm5/taiga-ui-kit-components-input-file.js +194 -194
  854. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  855. package/fesm5/taiga-ui-kit-components-input-inline.js +1 -1
  856. package/fesm5/taiga-ui-kit-components-input-inline.js.map +1 -1
  857. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  858. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  859. package/fesm5/taiga-ui-kit-components-input-number.js +8 -2
  860. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  861. package/fesm5/taiga-ui-kit-components-input-password.js +5 -4
  862. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  863. package/fesm5/taiga-ui-kit-components-input-phone-international.js +1 -1
  864. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  865. package/fesm5/taiga-ui-kit-components-input-phone.js +2 -2
  866. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  867. package/fesm5/taiga-ui-kit-components-input-range.js +2 -2
  868. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  869. package/fesm5/taiga-ui-kit-components-input-slider.js +2 -2
  870. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  871. package/fesm5/taiga-ui-kit-components-input-tag.js +2 -2
  872. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  873. package/fesm5/taiga-ui-kit-components-input-time.js +2 -2
  874. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  875. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  876. package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
  877. package/fesm5/taiga-ui-kit-components-island.js.map +1 -1
  878. package/fesm5/taiga-ui-kit-components-line-clamp.js +2 -2
  879. package/fesm5/taiga-ui-kit-components-line-clamp.js.map +1 -1
  880. package/fesm5/taiga-ui-kit-components-marker-icon.js.map +1 -1
  881. package/fesm5/taiga-ui-kit-components-multi-select-option.js +13 -10
  882. package/fesm5/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  883. package/fesm5/taiga-ui-kit-components-multi-select.js +29 -44
  884. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  885. package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
  886. package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
  887. package/fesm5/taiga-ui-kit-components-pdf-viewer.js +120 -0
  888. package/fesm5/taiga-ui-kit-components-pdf-viewer.js.map +1 -0
  889. package/fesm5/taiga-ui-kit-components-progress.js +55 -19
  890. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  891. package/fesm5/taiga-ui-kit-components-radio-group.js.map +1 -1
  892. package/fesm5/taiga-ui-kit-components-radio-labeled.js +1 -1
  893. package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
  894. package/fesm5/taiga-ui-kit-components-range.js +2 -2
  895. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  896. package/fesm5/taiga-ui-kit-components-select-option.js +23 -13
  897. package/fesm5/taiga-ui-kit-components-select-option.js.map +1 -1
  898. package/fesm5/taiga-ui-kit-components-select.js +2 -2
  899. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  900. package/fesm5/taiga-ui-kit-components-slider.js +2 -2
  901. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  902. package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
  903. package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
  904. package/fesm5/taiga-ui-kit-components-tabs.js +3 -3
  905. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  906. package/fesm5/taiga-ui-kit-components-tag.js +2 -2
  907. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  908. package/fesm5/taiga-ui-kit-components-text-area.js +20 -3
  909. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  910. package/fesm5/taiga-ui-kit-components-toggle.js +2 -2
  911. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  912. package/fesm5/taiga-ui-kit-components-tree.js +146 -135
  913. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -1
  914. package/fesm5/taiga-ui-kit-components.js +5 -3
  915. package/fesm5/taiga-ui-kit-components.js.map +1 -1
  916. package/fesm5/taiga-ui-kit-constants.js +3 -1
  917. package/fesm5/taiga-ui-kit-constants.js.map +1 -1
  918. package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  919. package/fesm5/taiga-ui-kit-directives-dropdown-hover.js.map +1 -1
  920. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js +2 -1
  921. package/fesm5/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
  922. package/fesm5/taiga-ui-kit-directives-highlight.js +6 -1
  923. package/fesm5/taiga-ui-kit-directives-highlight.js.map +1 -1
  924. package/fesm5/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  925. package/fesm5/taiga-ui-kit-directives-present.js.map +1 -1
  926. package/fesm5/taiga-ui-kit-directives-project-class.js.map +1 -1
  927. package/fesm5/taiga-ui-kit-directives-unfinished-validator.js.map +1 -1
  928. package/fesm5/taiga-ui-kit-directives-value-accessor.js.map +1 -1
  929. package/fesm5/taiga-ui-kit-directives.js +1 -1
  930. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  931. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  932. package/fesm5/taiga-ui-kit-pipes-filter-by-input.js +22 -22
  933. package/fesm5/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  934. package/fesm5/taiga-ui-kit-pipes-stringify-content.js.map +1 -1
  935. package/fesm5/taiga-ui-kit-pipes-stringify.js.map +1 -1
  936. package/fesm5/taiga-ui-kit-tokens.js +14 -14
  937. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  938. package/fesm5/taiga-ui-kit-utils-format.js +0 -2
  939. package/fesm5/taiga-ui-kit-utils-format.js.map +1 -1
  940. package/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.metadata.json +1 -1
  941. package/package.json +7 -6
  942. package/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.metadata.json +1 -1
  943. package/pipes/stringify/taiga-ui-kit-pipes-stringify.metadata.json +1 -1
  944. package/pipes/stringify-content/taiga-ui-kit-pipes-stringify-content.metadata.json +1 -1
  945. package/tokens/index.d.ts +1 -1
  946. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  947. package/utils/mask/index.d.ts +1 -1
  948. package/utils/mask/taiga-ui-kit-utils-mask.metadata.json +1 -1
  949. package/components/multi-select/multi-select-group/multi-select-group-reset.directive.d.ts +0 -3
  950. package/esm2015/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -20
  951. package/esm5/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -23
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-text-area.js","sources":["ng://@taiga-ui/kit/components/text-area/text-area.providers.ts","ng://@taiga-ui/kit/components/text-area/text-area.component.ts","ng://@taiga-ui/kit/components/text-area/text-area.module.ts","ng://@taiga-ui/kit/components/text-area/taiga-ui-kit-components-text-area.ts"],"sourcesContent":["import {forwardRef, Provider} from '@angular/core';\nimport {TUI_FOCUSABLE_ITEM_ACCESSOR} from '@taiga-ui/cdk';\nimport {\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n} from '@taiga-ui/core';\nimport {TuiTextAreaComponent} from './text-area.component';\n\nexport const TUI_TEXT_AREA_PROVIDERS: Provider[] = [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiTextAreaComponent),\n },\n TEXTFIELD_CONTROLLER_PROVIDER,\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n];\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n isNativeFocused,\n setNativeFocused,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n} from '@taiga-ui/cdk';\nimport {\n TUI_HINT_WATCHED_CONTROLLER,\n TUI_MODE,\n TUI_TEXTFIELD_APPEARANCE,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiBrightness,\n TuiHintControllerDirective,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\nimport {TUI_TEXT_AREA_PROVIDERS} from './text-area.providers';\n\nexport const DEFAULT_ROWS = 20;\nexport const LINE_HEIGHT_M = 20;\nexport const LINE_HEIGHT_L = 24;\n\n@Component({\n selector: 'tui-text-area',\n templateUrl: './text-area.template.html',\n styleUrls: ['./text-area.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TEXT_AREA_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n '[class._ios]': 'isIOS',\n },\n})\nexport class TuiTextAreaComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n rows = DEFAULT_ROWS;\n\n @Input()\n @HostBinding('class._expandable')\n @tuiDefaultProp()\n expandable = false;\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLTextAreaElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_APPEARANCE) readonly appearance: string,\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_HINT_WATCHED_CONTROLLER)\n readonly hintController: TuiHintControllerDirective,\n ) {\n super(control, changeDetectorRef);\n }\n\n @HostBinding('class._label-outside')\n get labelOutside(): boolean {\n return this.controller.labelOutside;\n }\n\n get nativeFocusableElement(): HTMLTextAreaElement | null {\n return this.computedDisabled || !this.focusableElement\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n @HostBinding('attr.data-tui-host-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.controller.size;\n }\n\n @HostBinding('class._has-tooltip')\n get hasTooltip(): boolean {\n return !!this.hintController.content && !this.disabled;\n }\n\n @HostBinding('class._has-value')\n get hasValue(): boolean {\n return this.value !== '';\n }\n\n @HostBinding('class._has-counter')\n get hasCounter(): boolean {\n return !!this.controller.maxLength && !this.disabled && !this.readOnly;\n }\n\n get hasPlaceholder(): boolean {\n return !this.controller.labelOutside || (!this.hasValue && !this.hasExampleText);\n }\n\n get hasExampleText(): boolean {\n return (\n !!this.controller.exampleText &&\n this.focused &&\n !this.hasValue &&\n !this.readOnly\n );\n }\n\n get computeMaxHeight(): number | null {\n return this.expandable ? this.rows * this.lineHeight : null;\n }\n\n get placeholderRaised(): boolean {\n return (\n !this.controller.labelOutside &&\n ((this.computedFocused && !this.readOnly) || this.hasValue)\n );\n }\n\n get fittedContent(): string {\n return this.value.slice(0, this.controller.maxLength || Infinity);\n }\n\n get extraContent(): string {\n return this.value.slice(this.controller.maxLength || Infinity);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onValue(value: string) {\n this.updateValue(value);\n }\n\n onMouseDown(event: MouseEvent) {\n if (event.target === this.nativeFocusableElement) {\n return;\n }\n\n event.preventDefault();\n\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement);\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get lineHeight(): number {\n return this.controller.size === 'm' ? LINE_HEIGHT_M : LINE_HEIGHT_L;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiFocusableModule, TuiFocusedModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {TuiScrollbarModule, TuiTooltipModule, TuiWrapperModule} from '@taiga-ui/core';\nimport {TuiTextAreaComponent} from './text-area.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiScrollbarModule,\n TuiTooltipModule,\n TuiWrapperModule,\n ],\n declarations: [TuiTextAreaComponent],\n exports: [TuiTextAreaComponent],\n})\nexport class TuiTextAreaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-text-area.js","sources":["ng://@taiga-ui/kit/components/text-area/text-area.providers.ts","ng://@taiga-ui/kit/components/text-area/text-area.component.ts","ng://@taiga-ui/kit/components/text-area/text-area.module.ts","ng://@taiga-ui/kit/components/text-area/taiga-ui-kit-components-text-area.ts"],"sourcesContent":["import {forwardRef, Provider} from '@angular/core';\nimport {TUI_FOCUSABLE_ITEM_ACCESSOR} from '@taiga-ui/cdk';\nimport {\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n} from '@taiga-ui/core';\n\nimport {TuiTextAreaComponent} from './text-area.component';\n\nexport const TUI_TEXT_AREA_PROVIDERS: Provider[] = [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiTextAreaComponent),\n },\n TEXTFIELD_CONTROLLER_PROVIDER,\n HINT_CONTROLLER_PROVIDER,\n MODE_PROVIDER,\n];\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n isNativeFocused,\n setNativeFocused,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n} from '@taiga-ui/cdk';\nimport {\n getBorder,\n TUI_HINT_WATCHED_CONTROLLER,\n TUI_MODE,\n TUI_TEXTFIELD_APPEARANCE,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiBrightness,\n TuiHintControllerDirective,\n TuiSizeL,\n TuiSizeS,\n TuiTextfieldController,\n} from '@taiga-ui/core';\nimport {Observable} from 'rxjs';\n\nimport {TUI_TEXT_AREA_PROVIDERS} from './text-area.providers';\n\nexport const DEFAULT_ROWS = 20;\nexport const LINE_HEIGHT_M = 20;\nexport const LINE_HEIGHT_L = 24;\n\n@Component({\n selector: 'tui-text-area',\n templateUrl: './text-area.template.html',\n styleUrls: ['./text-area.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TEXT_AREA_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n '[class._ios]': 'isIOS',\n },\n})\nexport class TuiTextAreaComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n rows = DEFAULT_ROWS;\n\n @Input()\n @HostBinding('class._expandable')\n @tuiDefaultProp()\n expandable = false;\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLTextAreaElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_APPEARANCE) readonly appearance: string,\n @Inject(TUI_IS_IOS) readonly isIOS: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n @Inject(TUI_HINT_WATCHED_CONTROLLER)\n readonly hintController: TuiHintControllerDirective,\n ) {\n super(control, changeDetectorRef);\n }\n\n @HostBinding('class._label-outside')\n get labelOutside(): boolean {\n return this.controller.labelOutside;\n }\n\n get nativeFocusableElement(): HTMLTextAreaElement | null {\n return this.computedDisabled || !this.focusableElement\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n @HostBinding('attr.data-tui-host-size')\n get size(): TuiSizeL | TuiSizeS {\n return this.controller.size;\n }\n\n get border(): number {\n return getBorder(false, this.hasCleaner, this.hasTooltip);\n }\n\n get hasCleaner(): boolean {\n return (\n this.controller.cleaner && this.hasValue && !this.disabled && !this.readOnly\n );\n }\n\n @HostBinding('class._has-tooltip')\n get hasTooltip(): boolean {\n return !!this.hintController.content && !this.disabled;\n }\n\n @HostBinding('class._has-value')\n get hasValue(): boolean {\n return this.value !== '';\n }\n\n @HostBinding('class._has-counter')\n get hasCounter(): boolean {\n return !!this.controller.maxLength && !this.disabled && !this.readOnly;\n }\n\n get hasPlaceholder(): boolean {\n return !this.controller.labelOutside || (!this.hasValue && !this.hasExampleText);\n }\n\n get hasExampleText(): boolean {\n return (\n !!this.controller.exampleText &&\n this.focused &&\n !this.hasValue &&\n !this.readOnly\n );\n }\n\n get computeMaxHeight(): number | null {\n return this.expandable ? this.rows * this.lineHeight : null;\n }\n\n get placeholderRaised(): boolean {\n return (\n !this.controller.labelOutside &&\n ((this.computedFocused && !this.readOnly) || this.hasValue)\n );\n }\n\n get fittedContent(): string {\n return this.value.slice(0, this.controller.maxLength || Infinity);\n }\n\n get extraContent(): string {\n return this.value.slice(this.controller.maxLength || Infinity);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onValue(value: string) {\n this.updateValue(value);\n }\n\n onMouseDown(event: MouseEvent) {\n if (event.target === this.nativeFocusableElement) {\n return;\n }\n\n event.preventDefault();\n\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement);\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get lineHeight(): number {\n return this.controller.size === 'm' ? LINE_HEIGHT_M : LINE_HEIGHT_L;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiFocusableModule, TuiFocusedModule, TuiHoveredModule} from '@taiga-ui/cdk';\nimport {\n TuiBorderModule,\n TuiDescribedByModule,\n TuiScrollbarModule,\n TuiSvgModule,\n TuiTooltipModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\n\nimport {TuiTextAreaComponent} from './text-area.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiScrollbarModule,\n TuiTooltipModule,\n TuiWrapperModule,\n TuiDescribedByModule,\n TuiBorderModule,\n TuiSvgModule,\n ],\n declarations: [TuiTextAreaComponent],\n exports: [TuiTextAreaComponent],\n})\nexport class TuiTextAreaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { InjectionToken, Optional, Self, Inject, ChangeDetectorRef, Input, HostBinding, ViewChild, Component, ChangeDetectionStrategy, forwardRef, NgModule } from '@angular/core';
2
1
  import { __extends, __decorate, __param } from 'tslib';
2
+ import { InjectionToken, Optional, Self, Inject, ChangeDetectorRef, Input, HostBinding, ViewChild, Component, ChangeDetectionStrategy, forwardRef, NgModule } from '@angular/core';
3
3
  import { NgControl } from '@angular/forms';
4
4
  import { isNativeFocused, tuiDefaultProp, TUI_FOCUSABLE_ITEM_ACCESSOR, AbstractTuiControl, TuiFocusedModule, TuiFocusableModule, TuiHoveredModule, TuiPressedModule, TuiFocusVisibleModule, TuiCheckedModule } from '@taiga-ui/cdk';
5
5
  import { TuiModeDirective, TuiWrapperModule, TuiSvgModule, TuiLoaderModule } from '@taiga-ui/core';
@@ -158,7 +158,7 @@ var TuiToggleComponent = /** @class */ (function (_super) {
158
158
  TuiToggleComponent = TuiToggleComponent_1 = __decorate([
159
159
  Component({
160
160
  selector: 'tui-toggle',
161
- template: "<tui-wrapper\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"computedHovered\"\n [pressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n>\n <div class=\"toggle\">\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n [showLoader]=\"checked\"\n ></tui-loader>\n <span\n polymorpheus-outlet\n class=\"icon-wrapper\"\n [content]=\"iconOn\"\n [context]=\"{ $implicit: size }\"\n >\n <ng-template let-icon>\n <tui-svg\n *ngIf=\"showIcons && !showLoader\"\n class=\"icon\"\n automation-id=\"tui-toggle__check-icon\"\n [src]=\"icon\"\n ></tui-svg>\n </ng-template>\n </span>\n <div class=\"circle\"></div>\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n [showLoader]=\"!checked\"\n ></tui-loader>\n <span\n polymorpheus-outlet\n class=\"icon-wrapper\"\n [content]=\"iconOff\"\n [context]=\"{ $implicit: size }\"\n >\n <ng-template let-icon>\n <tui-svg\n *ngIf=\"showIcons && !showLoader\"\n class=\"icon icon_off\"\n automation-id=\"tui-toggle__cancel-icon\"\n [src]=\"icon\"\n ></tui-svg>\n </ng-template>\n </span>\n </div>\n</tui-wrapper>\n<input\n #focusableElement\n type=\"checkbox\"\n class=\"checkbox\"\n role=\"switch\"\n automation-id=\"tui-toggle__checkbox\"\n [attr.aria-checked]=\"value\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [tuiChecked]=\"checked\"\n [tuiFocusable]=\"focusable\"\n (tuiCheckedChange)=\"onChecked($event)\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (tuiPressedChange)=\"onPressed($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n/>\n",
161
+ template: "<tui-wrapper\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"computedHovered\"\n [pressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n>\n <div class=\"toggle\">\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n [showLoader]=\"checked\"\n ></tui-loader>\n <span\n polymorpheus-outlet\n class=\"icon-wrapper\"\n [content]=\"iconOn\"\n [context]=\"{$implicit: size}\"\n >\n <ng-template let-icon>\n <tui-svg\n *ngIf=\"showIcons && !showLoader\"\n automation-id=\"tui-toggle__check-icon\"\n class=\"icon\"\n [src]=\"icon\"\n ></tui-svg>\n </ng-template>\n </span>\n <div class=\"circle\"></div>\n <tui-loader\n *ngIf=\"showLoader\"\n class=\"loader\"\n [size]=\"loaderSize\"\n [inheritColor]=\"true\"\n [showLoader]=\"!checked\"\n ></tui-loader>\n <span\n polymorpheus-outlet\n class=\"icon-wrapper\"\n [content]=\"iconOff\"\n [context]=\"{$implicit: size}\"\n >\n <ng-template let-icon>\n <tui-svg\n *ngIf=\"showIcons && !showLoader\"\n automation-id=\"tui-toggle__cancel-icon\"\n class=\"icon icon_off\"\n [src]=\"icon\"\n ></tui-svg>\n </ng-template>\n </span>\n </div>\n</tui-wrapper>\n<input\n #focusableElement\n type=\"checkbox\"\n role=\"switch\"\n automation-id=\"tui-toggle__checkbox\"\n class=\"checkbox\"\n [attr.aria-checked]=\"value\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [tuiChecked]=\"checked\"\n [tuiFocusable]=\"focusable\"\n (tuiCheckedChange)=\"onChecked($event)\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (tuiPressedChange)=\"onPressed($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n/>\n",
162
162
  changeDetection: ChangeDetectionStrategy.OnPush,
163
163
  providers: [
164
164
  {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-toggle.js","sources":["ng://@taiga-ui/kit/components/toggle/toggle-options.ts","ng://@taiga-ui/kit/components/toggle/toggle.component.ts","ng://@taiga-ui/kit/components/toggle/toggle.module.ts","ng://@taiga-ui/kit/components/toggle/taiga-ui-kit-components-toggle.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface ToggleOptions {\n readonly icons: Readonly<{\n toggleOff: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n toggleOn: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n readonly singleColor: boolean;\n readonly showIcons: boolean;\n readonly size: TuiSizeL;\n}\n\n/** Default values for the toggle options. */\nexport const TUI_TOGGLE_DEFAULT_OPTIONS: ToggleOptions = {\n icons: {\n toggleOff({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconToggleOff' : 'tuiIconToggleOffLarge';\n },\n toggleOn({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconToggleOn' : 'tuiIconToggleOnLarge';\n },\n },\n singleColor: false,\n showIcons: false,\n size: 'm',\n};\n\nexport const TUI_TOGGLE_OPTIONS = new InjectionToken<ToggleOptions>(\n 'Default parameters for toggle component',\n {\n factory: () => TUI_TOGGLE_DEFAULT_OPTIONS,\n },\n);\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiBrightness,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {ToggleOptions, TUI_TOGGLE_OPTIONS} from './toggle-options';\n\n@Component({\n selector: 'tui-toggle',\n templateUrl: './toggle.template.html',\n styleUrls: ['./toggle.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiToggleComponent),\n },\n ],\n})\nexport class TuiToggleComponent\n extends AbstractTuiControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n singleColor = this.options.singleColor;\n\n @Input()\n @tuiDefaultProp()\n showIcons = this.options.showIcons;\n\n @Input()\n @tuiDefaultProp()\n showLoader = false;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<TuiNativeFocusableElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n @Inject(TUI_TOGGLE_OPTIONS)\n public readonly options: ToggleOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get iconOn(): PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> {\n return this.options.icons.toggleOn;\n }\n\n get iconOff(): PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> {\n return this.options.icons.toggleOff;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.focusableElement ? this.focusableElement.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n return this.singleColor || this.checked\n ? TuiAppearance.Primary\n : TuiAppearance.Secondary;\n }\n\n get sizeM(): boolean {\n return this.size === 'm';\n }\n\n @HostBinding('class._checked')\n get checked(): boolean {\n return this.value;\n }\n\n get loaderSize(): TuiSizeXS {\n return this.sizeM ? 'xs' : 's';\n }\n\n @HostBinding('attr.data-mode')\n get hostMode(): TuiBrightness | null {\n return this.modeDirective ? this.modeDirective.mode : null;\n }\n\n onChecked(checked: boolean) {\n this.updateValue(checked);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.updateFocusVisible(focusVisible);\n }\n\n protected getFallbackValue(): boolean {\n return false;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {TuiLoaderModule, TuiSvgModule, TuiWrapperModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiToggleComponent} from './toggle.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiFocusedModule,\n TuiFocusableModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusVisibleModule,\n TuiCheckedModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLoaderModule,\n PolymorpheusModule,\n ],\n declarations: [TuiToggleComponent],\n exports: [TuiToggleComponent],\n})\nexport class TuiToggleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-toggle.js","sources":["ng://@taiga-ui/kit/components/toggle/toggle-options.ts","ng://@taiga-ui/kit/components/toggle/toggle.component.ts","ng://@taiga-ui/kit/components/toggle/toggle.module.ts","ng://@taiga-ui/kit/components/toggle/taiga-ui-kit-components-toggle.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface ToggleOptions {\n readonly icons: Readonly<{\n toggleOff: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n toggleOn: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>>;\n }>;\n readonly singleColor: boolean;\n readonly showIcons: boolean;\n readonly size: TuiSizeL;\n}\n\n/** Default values for the toggle options. */\nexport const TUI_TOGGLE_DEFAULT_OPTIONS: ToggleOptions = {\n icons: {\n toggleOff({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconToggleOff' : 'tuiIconToggleOffLarge';\n },\n toggleOn({$implicit}: TuiContextWithImplicit<TuiSizeL>): string {\n return $implicit === 'm' ? 'tuiIconToggleOn' : 'tuiIconToggleOnLarge';\n },\n },\n singleColor: false,\n showIcons: false,\n size: 'm',\n};\n\nexport const TUI_TOGGLE_OPTIONS = new InjectionToken<ToggleOptions>(\n 'Default parameters for toggle component',\n {\n factory: () => TUI_TOGGLE_DEFAULT_OPTIONS,\n },\n);\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {\n TuiAppearance,\n TuiBrightness,\n TuiModeDirective,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {ToggleOptions, TUI_TOGGLE_OPTIONS} from './toggle-options';\n\n@Component({\n selector: 'tui-toggle',\n templateUrl: './toggle.template.html',\n styleUrls: ['./toggle.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiToggleComponent),\n },\n ],\n})\nexport class TuiToggleComponent\n extends AbstractTuiControl<boolean>\n implements TuiFocusableElementAccessor\n{\n @Input()\n @tuiDefaultProp()\n singleColor = this.options.singleColor;\n\n @Input()\n @tuiDefaultProp()\n showIcons = this.options.showIcons;\n\n @Input()\n @tuiDefaultProp()\n showLoader = false;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<TuiNativeFocusableElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Optional()\n @Inject(TuiModeDirective)\n private readonly modeDirective: TuiModeDirective | null,\n @Inject(TUI_TOGGLE_OPTIONS)\n public readonly options: ToggleOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get iconOn(): PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> {\n return this.options.icons.toggleOn;\n }\n\n get iconOff(): PolymorpheusContent<TuiContextWithImplicit<TuiSizeL>> {\n return this.options.icons.toggleOff;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.focusableElement ? this.focusableElement.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get appearance(): TuiAppearance {\n return this.singleColor || this.checked\n ? TuiAppearance.Primary\n : TuiAppearance.Secondary;\n }\n\n get sizeM(): boolean {\n return this.size === 'm';\n }\n\n @HostBinding('class._checked')\n get checked(): boolean {\n return this.value;\n }\n\n get loaderSize(): TuiSizeXS {\n return this.sizeM ? 'xs' : 's';\n }\n\n @HostBinding('attr.data-mode')\n get hostMode(): TuiBrightness | null {\n return this.modeDirective ? this.modeDirective.mode : null;\n }\n\n onChecked(checked: boolean) {\n this.updateValue(checked);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.updateFocusVisible(focusVisible);\n }\n\n protected getFallbackValue(): boolean {\n return false;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {TuiLoaderModule, TuiSvgModule, TuiWrapperModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiToggleComponent} from './toggle.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiFocusedModule,\n TuiFocusableModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusVisibleModule,\n TuiCheckedModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLoaderModule,\n PolymorpheusModule,\n ],\n declarations: [TuiToggleComponent],\n exports: [TuiToggleComponent],\n})\nexport class TuiToggleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,26 +1,32 @@
1
- import { ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION, EMPTY_ARRAY, tuiDefaultProp, EMPTY_QUERY, isPresent } from '@taiga-ui/cdk';
2
- import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
3
1
  import { __decorate, __param } from 'tslib';
4
- import { InjectionToken, Inject, HostBinding, Component, ChangeDetectionStrategy, Injectable, Input, Directive, Optional, SkipSelf, forwardRef, ElementRef, ContentChildren, EventEmitter, Output, NgModule } from '@angular/core';
2
+ import { Input, Directive, Inject, forwardRef, HostBinding, Component, ChangeDetectionStrategy, InjectionToken, SkipSelf, ElementRef, ContentChildren, Optional, ViewChild, EventEmitter, Output, Injectable, NgModule } from '@angular/core';
3
+ import { EMPTY_ARRAY, tuiDefaultProp, ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION, EMPTY_QUERY, isPresent } from '@taiga-ui/cdk';
4
+ import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent, PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
5
5
  import { Subject } from 'rxjs';
6
- import { switchMap, tap, map, startWith, mapTo, distinctUntilChanged } from 'rxjs/operators';
6
+ import { startWith, map, distinctUntilChanged, switchMap, tap, mapTo } from 'rxjs/operators';
7
7
  import { CommonModule } from '@angular/common';
8
8
  import { TuiExpandModule, TuiButtonModule } from '@taiga-ui/core';
9
9
 
10
- var TUI_TREE_ACCESSOR = new InjectionToken('Controller for tracking value - TuiTreeItemComponent pairs');
11
- var TUI_TREE_CONTROLLER = new InjectionToken('Controller for expanding the tree', {
12
- factory: function () { return TUI_DEFAULT_TREE_CONTROLLER; },
13
- });
14
- var TUI_TREE_NODE = new InjectionToken('A node of a tree view');
15
- var TUI_TREE_LOADING = new InjectionToken('A tree node placeholder for loading', { factory: function () { return ({}); } });
16
- var TUI_TREE_START = new InjectionToken('A tree node starting point');
17
- var TUI_TREE_LOADER = new InjectionToken('A service to load tree progressively');
18
- var TUI_TREE_CONTENT = new InjectionToken('Content for a tree item', {
19
- factory: function () { return TUI_TREE_ITEM_CONTENT; },
20
- });
21
- var TUI_TREE_LEVEL = new InjectionToken('Nesting level of current TreeView node', {
22
- factory: function () { return -1; },
23
- });
10
+ var TuiTreeChildrenDirective = /** @class */ (function () {
11
+ function TuiTreeChildrenDirective() {
12
+ this.childrenHandler = TuiTreeChildrenDirective_1.defaultHandler;
13
+ }
14
+ TuiTreeChildrenDirective_1 = TuiTreeChildrenDirective;
15
+ TuiTreeChildrenDirective.defaultHandler = function (item) {
16
+ return Array.isArray(item) ? item : EMPTY_ARRAY;
17
+ };
18
+ var TuiTreeChildrenDirective_1;
19
+ __decorate([
20
+ Input(),
21
+ tuiDefaultProp()
22
+ ], TuiTreeChildrenDirective.prototype, "childrenHandler", void 0);
23
+ TuiTreeChildrenDirective = TuiTreeChildrenDirective_1 = __decorate([
24
+ Directive({
25
+ selector: 'tui-tree[childrenHandler]',
26
+ })
27
+ ], TuiTreeChildrenDirective);
28
+ return TuiTreeChildrenDirective;
29
+ }());
24
30
 
25
31
  var TuiTreeItemContentComponent = /** @class */ (function () {
26
32
  function TuiTreeItemContentComponent(context, controller) {
@@ -43,12 +49,11 @@ var TuiTreeItemContentComponent = /** @class */ (function () {
43
49
  configurable: true
44
50
  });
45
51
  TuiTreeItemContentComponent.prototype.onClick = function () {
46
- var _a;
47
- (_a = this.controller) === null || _a === void 0 ? void 0 : _a.toggle(this.context.$implicit);
52
+ this.controller.toggle(this.context.$implicit);
48
53
  };
49
54
  TuiTreeItemContentComponent.ctorParameters = function () { return [
50
55
  { type: undefined, decorators: [{ type: Inject, args: [POLYMORPHEUS_CONTEXT,] }] },
51
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_CONTROLLER,] }] }
56
+ { type: undefined, decorators: [{ type: Inject, args: [forwardRef(function () { return TUI_TREE_CONTROLLER; }),] }] }
52
57
  ]; };
53
58
  __decorate([
54
59
  HostBinding('class._expandable')
@@ -61,7 +66,7 @@ var TuiTreeItemContentComponent = /** @class */ (function () {
61
66
  styles: [":host{display:flex;align-items:center}:host :host-context(tui-tree-item._expandable):not(._expandable){padding-left:2rem}.t-button{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;margin-right:.5rem}.t-button_expanded{transform:rotate(90deg)}"]
62
67
  }),
63
68
  __param(0, Inject(POLYMORPHEUS_CONTEXT)),
64
- __param(1, Inject(TUI_TREE_CONTROLLER))
69
+ __param(1, Inject(forwardRef(function () { return TUI_TREE_CONTROLLER; })))
65
70
  ], TuiTreeItemContentComponent);
66
71
  return TuiTreeItemContentComponent;
67
72
  }());
@@ -72,112 +77,20 @@ var TUI_DEFAULT_TREE_CONTROLLER = {
72
77
  toggle: EMPTY_FUNCTION,
73
78
  };
74
79
 
75
- // @dynamic
76
- var TuiTreeService = /** @class */ (function () {
77
- function TuiTreeService(loading, start, loader) {
78
- var _this = this;
79
- this.loading = loading;
80
- this.start = start;
81
- this.loader = loader;
82
- this.map = new Map([[this.loading, []]]);
83
- this.load$ = new Subject();
84
- this.data$ = this.load$.pipe(switchMap(function (item) {
85
- return _this.loader.loadChildren(item).pipe(tap(function (children) { return _this.map.set(item, children); }), map(function (children) { return children.filter(function (item) { return !_this.loader.hasChildren(item); }); }), tap(function (children) { return children.forEach(function (child) { return _this.map.set(child, []); }); }));
86
- }), startWith(null), mapTo(this.start));
87
- }
88
- TuiTreeService.prototype.getChildren = function (item) {
89
- var _a;
90
- return (_a = this.map.get(item)) !== null && _a !== void 0 ? _a : [this.loading];
91
- };
92
- TuiTreeService.prototype.loadChildren = function (item) {
93
- if (this.map.get(item)) {
94
- return;
95
- }
96
- this.map.set(item, [this.loading]);
97
- this.load$.next(item);
98
- };
99
- TuiTreeService.ctorParameters = function () { return [
100
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_LOADING,] }] },
101
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_START,] }] },
102
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_LOADER,] }] }
103
- ]; };
104
- TuiTreeService = __decorate([
105
- Injectable(),
106
- __param(0, Inject(TUI_TREE_LOADING)),
107
- __param(1, Inject(TUI_TREE_START)),
108
- __param(2, Inject(TUI_TREE_LOADER))
109
- ], TuiTreeService);
110
- return TuiTreeService;
111
- }());
112
-
113
- var TuiTreeChildrenDirective = /** @class */ (function () {
114
- function TuiTreeChildrenDirective() {
115
- this.childrenHandler = TuiTreeChildrenDirective_1.defaultHandler;
116
- }
117
- TuiTreeChildrenDirective_1 = TuiTreeChildrenDirective;
118
- TuiTreeChildrenDirective.defaultHandler = function (item) {
119
- return Array.isArray(item) ? item : EMPTY_ARRAY;
120
- };
121
- var TuiTreeChildrenDirective_1;
122
- __decorate([
123
- Input(),
124
- tuiDefaultProp()
125
- ], TuiTreeChildrenDirective.prototype, "childrenHandler", void 0);
126
- TuiTreeChildrenDirective = TuiTreeChildrenDirective_1 = __decorate([
127
- Directive({
128
- selector: 'tui-tree[childrenHandler]',
129
- })
130
- ], TuiTreeChildrenDirective);
131
- return TuiTreeChildrenDirective;
132
- }());
133
-
134
- var TuiTreeComponent = /** @class */ (function () {
135
- function TuiTreeComponent(directive) {
136
- this.directive = directive;
137
- this.content = function (_a) {
138
- var $implicit = _a.$implicit;
139
- return String($implicit);
140
- };
141
- }
142
- TuiTreeComponent_1 = TuiTreeComponent;
143
- Object.defineProperty(TuiTreeComponent.prototype, "children", {
144
- get: function () {
145
- var _a, _b;
146
- return ((_b = (_a = this.directive) === null || _a === void 0 ? void 0 : _a.childrenHandler(this.value)) !== null && _b !== void 0 ? _b : TuiTreeChildrenDirective.defaultHandler(this.value));
147
- },
148
- enumerable: true,
149
- configurable: true
150
- });
151
- var TuiTreeComponent_1;
152
- TuiTreeComponent.ctorParameters = function () { return [
153
- { type: TuiTreeChildrenDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiTreeChildrenDirective,] }] }
154
- ]; };
155
- __decorate([
156
- Input()
157
- ], TuiTreeComponent.prototype, "value", void 0);
158
- __decorate([
159
- Input()
160
- ], TuiTreeComponent.prototype, "content", void 0);
161
- TuiTreeComponent = TuiTreeComponent_1 = __decorate([
162
- Component({
163
- selector: 'tui-tree[value]',
164
- template: "<tui-tree-item #view [tuiTreeNode]=\"value\">\n <div\n *ngIf=\"value !== children\"\n polymorpheus-outlet\n [content]=\"content\"\n [context]=\"{ $implicit: value, node: view }\"\n ></div>\n <tui-tree\n *ngFor=\"let child of children\"\n [value]=\"child\"\n [content]=\"content\"\n ></tui-tree>\n</tui-tree-item>\n",
165
- providers: [
166
- {
167
- provide: TUI_TREE_NODE,
168
- useExisting: TuiTreeComponent_1,
169
- },
170
- ],
171
- host: {
172
- role: 'tree',
173
- },
174
- styles: [":host{position:relative;display:block}"]
175
- }),
176
- __param(0, Optional()),
177
- __param(0, Inject(TuiTreeChildrenDirective))
178
- ], TuiTreeComponent);
179
- return TuiTreeComponent;
180
- }());
80
+ var TUI_TREE_ACCESSOR = new InjectionToken('Controller for tracking value - TuiTreeItemComponent pairs');
81
+ var TUI_TREE_CONTROLLER = new InjectionToken('Controller for expanding the tree', {
82
+ factory: function () { return TUI_DEFAULT_TREE_CONTROLLER; },
83
+ });
84
+ var TUI_TREE_NODE = new InjectionToken('A node of a tree view');
85
+ var TUI_TREE_LOADING = new InjectionToken('A tree node placeholder for loading', { factory: function () { return ({}); } });
86
+ var TUI_TREE_START = new InjectionToken('A tree node starting point');
87
+ var TUI_TREE_LOADER = new InjectionToken('A service to load tree progressively');
88
+ var TUI_TREE_CONTENT = new InjectionToken('Content for a tree item', {
89
+ factory: function () { return TUI_TREE_ITEM_CONTENT; },
90
+ });
91
+ var TUI_TREE_LEVEL = new InjectionToken('Nesting level of current TreeView node', {
92
+ factory: function () { return -1; },
93
+ });
181
94
 
182
95
  var TUI_TREE_ITEM_PROVIDERS = [
183
96
  {
@@ -225,9 +138,9 @@ var TuiTreeItemComponent = /** @class */ (function () {
225
138
  };
226
139
  TuiTreeItemComponent.ctorParameters = function () { return [
227
140
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
228
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_CONTROLLER,] }] },
229
- { type: Number, decorators: [{ type: Inject, args: [TUI_TREE_LEVEL,] }] },
230
- { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_CONTENT,] }] }
141
+ { type: undefined, decorators: [{ type: Inject, args: [forwardRef(function () { return TUI_TREE_CONTROLLER; }),] }] },
142
+ { type: Number, decorators: [{ type: Inject, args: [forwardRef(function () { return TUI_TREE_LEVEL; }),] }] },
143
+ { type: undefined, decorators: [{ type: Inject, args: [forwardRef(function () { return TUI_TREE_CONTENT; }),] }] }
231
144
  ]; };
232
145
  __decorate([
233
146
  ContentChildren(TUI_TREE_NODE)
@@ -238,7 +151,7 @@ var TuiTreeItemComponent = /** @class */ (function () {
238
151
  TuiTreeItemComponent = __decorate([
239
152
  Component({
240
153
  selector: 'tui-tree-item',
241
- template: "<ng-template #template><ng-content></ng-content></ng-template>\n<div\n polymorpheus-outlet\n class=\"t-content\"\n [content]=\"content\"\n [context]=\"{ $implicit: this, template: template }\"\n></div>\n<tui-expand\n *ngIf=\"isExpandable\"\n class=\"t-children\"\n role=\"group\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\"></ng-content>\n <ng-content select=\"tui-tree\"></ng-content>\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\"></ng-container>\n",
154
+ template: "<ng-template #template><ng-content></ng-content></ng-template>\n<div\n polymorpheus-outlet\n [content]=\"content\"\n [context]=\"{$implicit: this, template: template}\"\n></div>\n<tui-expand\n *ngIf=\"isExpandable\"\n role=\"group\"\n class=\"t-children\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\"></ng-content>\n <ng-content select=\"tui-tree\"></ng-content>\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\"></ng-container>\n",
242
155
  changeDetection: ChangeDetectionStrategy.OnPush,
243
156
  providers: TUI_TREE_ITEM_PROVIDERS,
244
157
  host: {
@@ -247,13 +160,73 @@ var TuiTreeItemComponent = /** @class */ (function () {
247
160
  styles: [":host{display:block}.t-children{position:relative;margin-left:var(--tui-tree-item-indent,1.5rem)}"]
248
161
  }),
249
162
  __param(0, Inject(ElementRef)),
250
- __param(1, Inject(TUI_TREE_CONTROLLER)),
251
- __param(2, Inject(TUI_TREE_LEVEL)),
252
- __param(3, Inject(TUI_TREE_CONTENT))
163
+ __param(1, Inject(forwardRef(function () { return TUI_TREE_CONTROLLER; }))),
164
+ __param(2, Inject(forwardRef(function () { return TUI_TREE_LEVEL; }))),
165
+ __param(3, Inject(forwardRef(function () { return TUI_TREE_CONTENT; })))
253
166
  ], TuiTreeItemComponent);
254
167
  return TuiTreeItemComponent;
255
168
  }());
256
169
 
170
+ var TuiTreeComponent = /** @class */ (function () {
171
+ function TuiTreeComponent(directive) {
172
+ this.directive = directive;
173
+ this.content = function (_a) {
174
+ var $implicit = _a.$implicit;
175
+ return String($implicit);
176
+ };
177
+ }
178
+ TuiTreeComponent_1 = TuiTreeComponent;
179
+ Object.defineProperty(TuiTreeComponent.prototype, "children", {
180
+ get: function () {
181
+ var _a, _b;
182
+ return ((_b = (_a = this.directive) === null || _a === void 0 ? void 0 : _a.childrenHandler(this.value)) !== null && _b !== void 0 ? _b : TuiTreeChildrenDirective.defaultHandler(this.value));
183
+ },
184
+ enumerable: true,
185
+ configurable: true
186
+ });
187
+ TuiTreeComponent.prototype.ngDoCheck = function () {
188
+ var _a, _b;
189
+ (_a = this.item) === null || _a === void 0 ? void 0 : _a.ngDoCheck();
190
+ (_b = this.child) === null || _b === void 0 ? void 0 : _b.ngDoCheck();
191
+ };
192
+ var TuiTreeComponent_1;
193
+ TuiTreeComponent.ctorParameters = function () { return [
194
+ { type: TuiTreeChildrenDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiTreeChildrenDirective,] }] }
195
+ ]; };
196
+ __decorate([
197
+ Input()
198
+ ], TuiTreeComponent.prototype, "value", void 0);
199
+ __decorate([
200
+ Input()
201
+ ], TuiTreeComponent.prototype, "content", void 0);
202
+ __decorate([
203
+ ViewChild(TuiTreeItemComponent)
204
+ ], TuiTreeComponent.prototype, "item", void 0);
205
+ __decorate([
206
+ ViewChild(TuiTreeComponent_1)
207
+ ], TuiTreeComponent.prototype, "child", void 0);
208
+ TuiTreeComponent = TuiTreeComponent_1 = __decorate([
209
+ Component({
210
+ selector: 'tui-tree[value]',
211
+ template: "<tui-tree-item #view [tuiTreeNode]=\"value\">\n <div\n *ngIf=\"value !== children\"\n polymorpheus-outlet\n [content]=\"content\"\n [context]=\"{$implicit: value, node: view}\"\n ></div>\n <tui-tree\n *ngFor=\"let child of children\"\n [value]=\"child\"\n [content]=\"content\"\n ></tui-tree>\n</tui-tree-item>\n",
212
+ changeDetection: ChangeDetectionStrategy.OnPush,
213
+ providers: [
214
+ {
215
+ provide: TUI_TREE_NODE,
216
+ useExisting: TuiTreeComponent_1,
217
+ },
218
+ ],
219
+ host: {
220
+ role: 'tree',
221
+ },
222
+ styles: [":host{position:relative;display:block}"]
223
+ }),
224
+ __param(0, Optional()),
225
+ __param(0, Inject(TuiTreeChildrenDirective))
226
+ ], TuiTreeComponent);
227
+ return TuiTreeComponent;
228
+ }());
229
+
257
230
  var TuiTreeControllerDirective = /** @class */ (function () {
258
231
  function TuiTreeControllerDirective() {
259
232
  this.fallback = true;
@@ -381,6 +354,44 @@ var TuiTreeNodeDirective = /** @class */ (function () {
381
354
  return TuiTreeNodeDirective;
382
355
  }());
383
356
 
357
+ // @dynamic
358
+ var TuiTreeService = /** @class */ (function () {
359
+ function TuiTreeService(loading, start, loader) {
360
+ var _this = this;
361
+ this.loading = loading;
362
+ this.start = start;
363
+ this.loader = loader;
364
+ this.map = new Map([[this.loading, []]]);
365
+ this.load$ = new Subject();
366
+ this.data$ = this.load$.pipe(switchMap(function (item) {
367
+ return _this.loader.loadChildren(item).pipe(tap(function (children) { return _this.map.set(item, children); }), map(function (children) { return children.filter(function (item) { return !_this.loader.hasChildren(item); }); }), tap(function (children) { return children.forEach(function (child) { return _this.map.set(child, []); }); }));
368
+ }), startWith(null), mapTo(this.start));
369
+ }
370
+ TuiTreeService.prototype.getChildren = function (item) {
371
+ var _a;
372
+ return (_a = this.map.get(item)) !== null && _a !== void 0 ? _a : [this.loading];
373
+ };
374
+ TuiTreeService.prototype.loadChildren = function (item) {
375
+ if (this.map.get(item)) {
376
+ return;
377
+ }
378
+ this.map.set(item, [this.loading]);
379
+ this.load$.next(item);
380
+ };
381
+ TuiTreeService.ctorParameters = function () { return [
382
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_LOADING,] }] },
383
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_START,] }] },
384
+ { type: undefined, decorators: [{ type: Inject, args: [TUI_TREE_LOADER,] }] }
385
+ ]; };
386
+ TuiTreeService = __decorate([
387
+ Injectable(),
388
+ __param(0, Inject(TUI_TREE_LOADING)),
389
+ __param(1, Inject(TUI_TREE_START)),
390
+ __param(2, Inject(TUI_TREE_LOADER))
391
+ ], TuiTreeService);
392
+ return TuiTreeService;
393
+ }());
394
+
384
395
  var TuiTreeModule = /** @class */ (function () {
385
396
  function TuiTreeModule() {
386
397
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-tree.js","sources":["ng://@taiga-ui/kit/components/tree/misc/tree.tokens.ts","ng://@taiga-ui/kit/components/tree/components/tree-item-content/tree-item-content.component.ts","ng://@taiga-ui/kit/components/tree/misc/tree.constants.ts","ng://@taiga-ui/kit/components/tree/misc/tree.service.ts","ng://@taiga-ui/kit/components/tree/directives/tree-children.directive.ts","ng://@taiga-ui/kit/components/tree/components/tree/tree.component.ts","ng://@taiga-ui/kit/components/tree/components/tree-item/tree-item.providers.ts","ng://@taiga-ui/kit/components/tree/components/tree-item/tree-item.component.ts","ng://@taiga-ui/kit/components/tree/directives/tree-controller.directive.ts","ng://@taiga-ui/kit/components/tree/directives/tree-item-controller.directive.ts","ng://@taiga-ui/kit/components/tree/directives/tree-node.directive.ts","ng://@taiga-ui/kit/components/tree/tree.module.ts","ng://@taiga-ui/kit/components/tree/taiga-ui-kit-components-tree.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {TUI_DEFAULT_TREE_CONTROLLER, TUI_TREE_ITEM_CONTENT} from './tree.constants';\nimport {\n TuiTreeAccessor,\n TuiTreeController,\n TuiTreeItemContext,\n TuiTreeLoader,\n} from './tree.interfaces';\n\nexport const TUI_TREE_ACCESSOR = new InjectionToken<TuiTreeAccessor<any>>(\n 'Controller for tracking value - TuiTreeItemComponent pairs',\n);\n\nexport const TUI_TREE_CONTROLLER = new InjectionToken<TuiTreeController>(\n 'Controller for expanding the tree',\n {\n factory: () => TUI_DEFAULT_TREE_CONTROLLER,\n },\n);\n\nexport const TUI_TREE_NODE = new InjectionToken('A node of a tree view');\n\nexport const TUI_TREE_LOADING = new InjectionToken(\n 'A tree node placeholder for loading',\n {factory: () => ({})},\n);\n\nexport const TUI_TREE_START = new InjectionToken('A tree node starting point');\n\nexport const TUI_TREE_LOADER = new InjectionToken<TuiTreeLoader<any>>(\n 'A service to load tree progressively',\n);\n\nexport const TUI_TREE_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiTreeItemContext>\n>('Content for a tree item', {\n factory: () => TUI_TREE_ITEM_CONTENT,\n});\n\nexport const TUI_TREE_LEVEL = new InjectionToken<number>(\n 'Nesting level of current TreeView node',\n {\n factory: () => -1,\n },\n);\n","import {ChangeDetectionStrategy, Component, HostBinding, Inject} from '@angular/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\nimport {TUI_DEFAULT_TREE_CONTROLLER} from '../../misc/tree.constants';\nimport {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../../misc/tree.tokens';\n\n@Component({\n selector: 'tui-tree-item-content',\n templateUrl: 'tree-item-content.template.html',\n styleUrls: ['tree-item-content.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTreeItemContentComponent {\n constructor(\n @Inject(POLYMORPHEUS_CONTEXT) readonly context: TuiTreeItemContext,\n @Inject(TUI_TREE_CONTROLLER)\n private readonly controller: TuiTreeController,\n ) {}\n\n get isExpanded(): boolean {\n return this.context.$implicit.isExpanded;\n }\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return (\n this.context.$implicit.isExpandable &&\n this.controller !== TUI_DEFAULT_TREE_CONTROLLER\n );\n }\n\n onClick() {\n this.controller?.toggle(this.context.$implicit);\n }\n}\n","import {ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {TuiTreeItemContentComponent} from '../components/tree-item-content/tree-item-content.component';\nimport {TuiTreeController} from './tree.interfaces';\n\nexport const TUI_TREE_ITEM_CONTENT = new PolymorpheusComponent(\n TuiTreeItemContentComponent,\n);\n\nexport const TUI_DEFAULT_TREE_CONTROLLER: TuiTreeController = {\n isExpanded: ALWAYS_TRUE_HANDLER,\n toggle: EMPTY_FUNCTION as () => void,\n};\n","import {Inject, Injectable} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {map, mapTo, startWith, switchMap, tap} from 'rxjs/operators';\nimport {TuiTreeLoader} from './tree.interfaces';\nimport {TUI_TREE_LOADER, TUI_TREE_LOADING, TUI_TREE_START} from './tree.tokens';\n\n// @dynamic\n@Injectable()\nexport class TuiTreeService<T> {\n private readonly map = new Map<T, readonly T[]>([[this.loading, []]]);\n\n private readonly load$ = new Subject<T>();\n\n readonly data$ = this.load$.pipe(\n switchMap(item =>\n this.loader.loadChildren(item).pipe(\n tap(children => this.map.set(item, children)),\n map(children => children.filter(item => !this.loader.hasChildren(item))),\n tap(children => children.forEach(child => this.map.set(child, []))),\n ),\n ),\n startWith(null),\n mapTo(this.start),\n );\n\n constructor(\n @Inject(TUI_TREE_LOADING) private readonly loading: T,\n @Inject(TUI_TREE_START) private readonly start: T,\n @Inject(TUI_TREE_LOADER) private readonly loader: TuiTreeLoader<T>,\n ) {}\n\n getChildren(item: T): readonly T[] {\n return this.map.get(item) ?? [this.loading];\n }\n\n loadChildren(item: T) {\n if (this.map.get(item)) {\n return;\n }\n\n this.map.set(item, [this.loading]);\n this.load$.next(item);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {EMPTY_ARRAY, tuiDefaultProp, TuiHandler} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-tree[childrenHandler]',\n})\nexport class TuiTreeChildrenDirective<T> {\n @Input()\n @tuiDefaultProp()\n childrenHandler: TuiHandler<T, readonly T[]> =\n TuiTreeChildrenDirective.defaultHandler;\n\n static defaultHandler<G>(item: G): readonly G[] {\n return Array.isArray(item) ? item : EMPTY_ARRAY;\n }\n}\n","import {Component, Inject, Input, Optional} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {TuiTreeChildrenDirective} from '../../directives/tree-children.directive';\nimport {TuiTreeContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_NODE} from '../../misc/tree.tokens';\n\n@Component({\n selector: 'tui-tree[value]',\n templateUrl: 'tree.template.html',\n styleUrls: ['tree.style.less'],\n providers: [\n {\n provide: TUI_TREE_NODE,\n useExisting: TuiTreeComponent,\n },\n ],\n host: {\n role: 'tree',\n },\n})\nexport class TuiTreeComponent<T> {\n @Input()\n value!: T;\n\n @Input()\n content: PolymorpheusContent<TuiTreeContext<T>> = ({$implicit}) => String($implicit);\n\n constructor(\n @Optional()\n @Inject(TuiTreeChildrenDirective)\n readonly directive: TuiTreeChildrenDirective<T> | null,\n ) {}\n\n get children(): readonly T[] {\n return (\n this.directive?.childrenHandler(this.value) ??\n TuiTreeChildrenDirective.defaultHandler(this.value)\n );\n }\n}\n","import {forwardRef, Provider, SkipSelf} from '@angular/core';\nimport {TUI_TREE_LEVEL, TUI_TREE_NODE} from '../../misc/tree.tokens';\nimport {TuiTreeItemComponent} from './tree-item.component';\n\nexport const TUI_TREE_ITEM_PROVIDERS: Provider[] = [\n {\n provide: TUI_TREE_LEVEL,\n deps: [[new SkipSelf(), TUI_TREE_LEVEL]],\n useFactory: treeLevelFactory,\n },\n {\n provide: TUI_TREE_NODE,\n useExisting: forwardRef(() => TuiTreeItemComponent),\n },\n];\n\nexport function treeLevelFactory(level: number): number {\n return ++level;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DoCheck,\n ElementRef,\n HostBinding,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\nimport {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {\n TUI_TREE_CONTENT,\n TUI_TREE_CONTROLLER,\n TUI_TREE_LEVEL,\n TUI_TREE_NODE,\n} from '../../misc/tree.tokens';\nimport {TUI_TREE_ITEM_PROVIDERS} from './tree-item.providers';\n\n@Component({\n selector: 'tui-tree-item',\n templateUrl: './tree-item.template.html',\n styleUrls: ['./tree-item.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TREE_ITEM_PROVIDERS,\n host: {\n role: 'treeitem',\n },\n})\nexport class TuiTreeItemComponent implements DoCheck {\n private readonly change$ = new Subject<void>();\n\n @ContentChildren(TUI_TREE_NODE as any)\n private readonly nested: QueryList<unknown> = EMPTY_QUERY;\n\n readonly expanded$ = this.change$.pipe(\n startWith(null),\n map(() => this.isExpanded),\n distinctUntilChanged(),\n );\n\n readonly attached$ = this.change$.pipe(\n map(() => this.elementRef.nativeElement.isConnected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_TREE_CONTROLLER)\n private readonly controller: TuiTreeController,\n @Inject(TUI_TREE_LEVEL)\n readonly level: number,\n @Inject(TUI_TREE_CONTENT)\n readonly content: PolymorpheusContent<TuiTreeItemContext>,\n ) {}\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return !!this.nested.length;\n }\n\n get isExpanded(): boolean {\n return this.controller.isExpanded(this);\n }\n\n ngDoCheck() {\n this.change$.next();\n }\n}\n","import {Directive, EventEmitter, Input, Output} from '@angular/core';\nimport {isPresent, tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor, TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR, TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController][map]',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_ACCESSOR,\n useExisting: TuiTreeControllerDirective,\n },\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeControllerDirective,\n },\n ],\n})\nexport class TuiTreeControllerDirective<T>\n implements TuiTreeController, TuiTreeAccessor<T>\n{\n @Input('tuiTreeController')\n @tuiDefaultProp()\n fallback = true;\n\n @Input()\n @tuiDefaultProp()\n map: Map<T, boolean> = new Map();\n\n @Output()\n readonly toggled = new EventEmitter<T>();\n\n readonly items = new Map<TuiTreeItemComponent, T>();\n\n register(item: TuiTreeItemComponent, value: T) {\n this.items.set(item, value);\n }\n\n unregister(item: TuiTreeItemComponent) {\n this.items.delete(item);\n }\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n const value = this.items.get(item);\n\n return (value && this.map.get(value)) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent) {\n const value = this.items.get(item);\n const expanded = this.isExpanded(item);\n\n if (!isPresent(value)) {\n return;\n }\n\n this.toggled.emit(value);\n this.map.set(value, !expanded);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController]:not([map])',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeItemControllerDirective,\n },\n ],\n})\nexport class TuiTreeItemControllerDirective implements TuiTreeController {\n @Input('tuiTreeController')\n @tuiDefaultProp()\n fallback = true;\n\n private readonly map = new WeakMap<TuiTreeItemComponent, boolean>();\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n return this.map.get(item) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent) {\n this.map.set(item, !this.isExpanded(item));\n }\n}\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR} from '../misc/tree.tokens';\n\n@Directive({\n selector: 'tui-tree-item[tuiTreeNode]',\n})\nexport class TuiTreeNodeDirective<T> implements OnDestroy {\n @Input('tuiTreeNode')\n set value(value: T) {\n this.directive?.register(this.component, value);\n }\n\n constructor(\n @Optional()\n @Inject(TUI_TREE_ACCESSOR)\n private readonly directive: TuiTreeAccessor<T>,\n @Inject(TuiTreeItemComponent)\n private readonly component: TuiTreeItemComponent,\n ) {}\n\n ngOnDestroy() {\n this.directive?.unregister(this.component);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule, TuiExpandModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTreeItemContentComponent} from './components/tree-item-content/tree-item-content.component';\nimport {TuiTreeItemComponent} from './components/tree-item/tree-item.component';\nimport {TuiTreeComponent} from './components/tree/tree.component';\nimport {TuiTreeChildrenDirective} from './directives/tree-children.directive';\nimport {TuiTreeControllerDirective} from './directives/tree-controller.directive';\nimport {TuiTreeItemControllerDirective} from './directives/tree-item-controller.directive';\nimport {TuiTreeNodeDirective} from './directives/tree-node.directive';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiExpandModule, TuiButtonModule],\n entryComponents: [TuiTreeItemContentComponent],\n declarations: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeItemContentComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n TuiTreeNodeDirective,\n ],\n exports: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n ],\n})\nexport class TuiTreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-tree.js","sources":["ng://@taiga-ui/kit/components/tree/directives/tree-children.directive.ts","ng://@taiga-ui/kit/components/tree/components/tree-item-content/tree-item-content.component.ts","ng://@taiga-ui/kit/components/tree/misc/tree.constants.ts","ng://@taiga-ui/kit/components/tree/misc/tree.tokens.ts","ng://@taiga-ui/kit/components/tree/components/tree-item/tree-item.providers.ts","ng://@taiga-ui/kit/components/tree/components/tree-item/tree-item.component.ts","ng://@taiga-ui/kit/components/tree/components/tree/tree.component.ts","ng://@taiga-ui/kit/components/tree/directives/tree-controller.directive.ts","ng://@taiga-ui/kit/components/tree/directives/tree-item-controller.directive.ts","ng://@taiga-ui/kit/components/tree/directives/tree-node.directive.ts","ng://@taiga-ui/kit/components/tree/misc/tree.service.ts","ng://@taiga-ui/kit/components/tree/tree.module.ts","ng://@taiga-ui/kit/components/tree/taiga-ui-kit-components-tree.ts"],"sourcesContent":["import {Directive, Input} from '@angular/core';\nimport {EMPTY_ARRAY, tuiDefaultProp, TuiHandler} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-tree[childrenHandler]',\n})\nexport class TuiTreeChildrenDirective<T> {\n @Input()\n @tuiDefaultProp()\n childrenHandler: TuiHandler<T, readonly T[]> =\n TuiTreeChildrenDirective.defaultHandler;\n\n static defaultHandler<G>(item: G): readonly G[] {\n return Array.isArray(item) ? item : EMPTY_ARRAY;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n HostBinding,\n Inject,\n} from '@angular/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER} from '../../misc/tree.constants';\nimport {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../../misc/tree.tokens';\n\n@Component({\n selector: 'tui-tree-item-content',\n templateUrl: 'tree-item-content.template.html',\n styleUrls: ['tree-item-content.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTreeItemContentComponent {\n constructor(\n @Inject(POLYMORPHEUS_CONTEXT) readonly context: TuiTreeItemContext,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n ) {}\n\n get isExpanded(): boolean {\n return this.context.$implicit.isExpanded;\n }\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return (\n this.context.$implicit.isExpandable &&\n this.controller !== TUI_DEFAULT_TREE_CONTROLLER\n );\n }\n\n onClick() {\n this.controller.toggle(this.context.$implicit);\n }\n}\n","import {ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeItemContentComponent} from '../components/tree-item-content/tree-item-content.component';\nimport {TuiTreeController} from './tree.interfaces';\n\nexport const TUI_TREE_ITEM_CONTENT = new PolymorpheusComponent(\n TuiTreeItemContentComponent,\n);\n\nexport const TUI_DEFAULT_TREE_CONTROLLER: TuiTreeController = {\n isExpanded: ALWAYS_TRUE_HANDLER,\n toggle: EMPTY_FUNCTION as () => void,\n};\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER, TUI_TREE_ITEM_CONTENT} from './tree.constants';\nimport {\n TuiTreeAccessor,\n TuiTreeController,\n TuiTreeItemContext,\n TuiTreeLoader,\n} from './tree.interfaces';\n\nexport const TUI_TREE_ACCESSOR = new InjectionToken<TuiTreeAccessor<any>>(\n 'Controller for tracking value - TuiTreeItemComponent pairs',\n);\n\nexport const TUI_TREE_CONTROLLER = new InjectionToken<TuiTreeController>(\n 'Controller for expanding the tree',\n {\n factory: () => TUI_DEFAULT_TREE_CONTROLLER,\n },\n);\n\nexport const TUI_TREE_NODE = new InjectionToken('A node of a tree view');\n\nexport const TUI_TREE_LOADING = new InjectionToken(\n 'A tree node placeholder for loading',\n {factory: () => ({})},\n);\n\nexport const TUI_TREE_START = new InjectionToken('A tree node starting point');\n\nexport const TUI_TREE_LOADER = new InjectionToken<TuiTreeLoader<any>>(\n 'A service to load tree progressively',\n);\n\nexport const TUI_TREE_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiTreeItemContext>\n>('Content for a tree item', {\n factory: () => TUI_TREE_ITEM_CONTENT,\n});\n\nexport const TUI_TREE_LEVEL = new InjectionToken<number>(\n 'Nesting level of current TreeView node',\n {\n factory: () => -1,\n },\n);\n","import {forwardRef, Provider, SkipSelf} from '@angular/core';\n\nimport {TUI_TREE_LEVEL, TUI_TREE_NODE} from '../../misc/tree.tokens';\nimport {TuiTreeItemComponent} from './tree-item.component';\n\nexport const TUI_TREE_ITEM_PROVIDERS: Provider[] = [\n {\n provide: TUI_TREE_LEVEL,\n deps: [[new SkipSelf(), TUI_TREE_LEVEL]],\n useFactory: treeLevelFactory,\n },\n {\n provide: TUI_TREE_NODE,\n useExisting: forwardRef(() => TuiTreeItemComponent),\n },\n];\n\nexport function treeLevelFactory(level: number): number {\n return ++level;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DoCheck,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {\n TUI_TREE_CONTENT,\n TUI_TREE_CONTROLLER,\n TUI_TREE_LEVEL,\n TUI_TREE_NODE,\n} from '../../misc/tree.tokens';\nimport {TUI_TREE_ITEM_PROVIDERS} from './tree-item.providers';\n\n@Component({\n selector: 'tui-tree-item',\n templateUrl: './tree-item.template.html',\n styleUrls: ['./tree-item.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TREE_ITEM_PROVIDERS,\n host: {\n role: 'treeitem',\n },\n})\nexport class TuiTreeItemComponent implements DoCheck {\n private readonly change$ = new Subject<void>();\n\n @ContentChildren(TUI_TREE_NODE as any)\n private readonly nested: QueryList<unknown> = EMPTY_QUERY;\n\n readonly expanded$ = this.change$.pipe(\n startWith(null),\n map(() => this.isExpanded),\n distinctUntilChanged(),\n );\n\n readonly attached$ = this.change$.pipe(\n map(() => this.elementRef.nativeElement.isConnected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n @Inject(forwardRef(() => TUI_TREE_LEVEL))\n readonly level: number,\n @Inject(forwardRef(() => TUI_TREE_CONTENT))\n readonly content: PolymorpheusContent<TuiTreeItemContext>,\n ) {}\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return !!this.nested.length;\n }\n\n get isExpanded(): boolean {\n return this.controller.isExpanded(this);\n }\n\n ngDoCheck() {\n this.change$.next();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DoCheck,\n Inject,\n Input,\n Optional,\n ViewChild,\n} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeChildrenDirective} from '../../directives/tree-children.directive';\nimport {TuiTreeContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_NODE} from '../../misc/tree.tokens';\nimport {TuiTreeItemComponent} from '../tree-item/tree-item.component';\n\n@Component({\n selector: 'tui-tree[value]',\n templateUrl: 'tree.template.html',\n styleUrls: ['tree.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_TREE_NODE,\n useExisting: TuiTreeComponent,\n },\n ],\n host: {\n role: 'tree',\n },\n})\nexport class TuiTreeComponent<T> implements DoCheck {\n @Input()\n value!: T;\n\n @Input()\n content: PolymorpheusContent<TuiTreeContext<T>> = ({$implicit}) => String($implicit);\n\n @ViewChild(TuiTreeItemComponent)\n readonly item?: TuiTreeItemComponent;\n\n @ViewChild(TuiTreeComponent)\n readonly child?: TuiTreeComponent<T>;\n\n constructor(\n @Optional()\n @Inject(TuiTreeChildrenDirective)\n readonly directive: TuiTreeChildrenDirective<T> | null,\n ) {}\n\n get children(): readonly T[] {\n return (\n this.directive?.childrenHandler(this.value) ??\n TuiTreeChildrenDirective.defaultHandler(this.value)\n );\n }\n\n ngDoCheck() {\n this.item?.ngDoCheck();\n this.child?.ngDoCheck();\n }\n}\n","import {Directive, EventEmitter, Input, Output} from '@angular/core';\nimport {isPresent, tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor, TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR, TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController][map]',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_ACCESSOR,\n useExisting: TuiTreeControllerDirective,\n },\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeControllerDirective,\n },\n ],\n})\nexport class TuiTreeControllerDirective<T>\n implements TuiTreeController, TuiTreeAccessor<T>\n{\n @Input('tuiTreeController')\n @tuiDefaultProp()\n fallback = true;\n\n @Input()\n @tuiDefaultProp()\n map: Map<T, boolean> = new Map();\n\n @Output()\n readonly toggled = new EventEmitter<T>();\n\n readonly items = new Map<TuiTreeItemComponent, T>();\n\n register(item: TuiTreeItemComponent, value: T) {\n this.items.set(item, value);\n }\n\n unregister(item: TuiTreeItemComponent) {\n this.items.delete(item);\n }\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n const value = this.items.get(item);\n\n return (value && this.map.get(value)) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent) {\n const value = this.items.get(item);\n const expanded = this.isExpanded(item);\n\n if (!isPresent(value)) {\n return;\n }\n\n this.toggled.emit(value);\n this.map.set(value, !expanded);\n }\n}\n","import {Directive, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController]:not([map])',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeItemControllerDirective,\n },\n ],\n})\nexport class TuiTreeItemControllerDirective implements TuiTreeController {\n @Input('tuiTreeController')\n @tuiDefaultProp()\n fallback = true;\n\n private readonly map = new WeakMap<TuiTreeItemComponent, boolean>();\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n return this.map.get(item) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent) {\n this.map.set(item, !this.isExpanded(item));\n }\n}\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR} from '../misc/tree.tokens';\n\n@Directive({\n selector: 'tui-tree-item[tuiTreeNode]',\n})\nexport class TuiTreeNodeDirective<T> implements OnDestroy {\n @Input('tuiTreeNode')\n set value(value: T) {\n this.directive?.register(this.component, value);\n }\n\n constructor(\n @Optional()\n @Inject(TUI_TREE_ACCESSOR)\n private readonly directive: TuiTreeAccessor<T>,\n @Inject(TuiTreeItemComponent)\n private readonly component: TuiTreeItemComponent,\n ) {}\n\n ngOnDestroy() {\n this.directive?.unregister(this.component);\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {map, mapTo, startWith, switchMap, tap} from 'rxjs/operators';\n\nimport {TuiTreeLoader} from './tree.interfaces';\nimport {TUI_TREE_LOADER, TUI_TREE_LOADING, TUI_TREE_START} from './tree.tokens';\n\n// @dynamic\n@Injectable()\nexport class TuiTreeService<T> {\n private readonly map = new Map<T, readonly T[]>([[this.loading, []]]);\n\n private readonly load$ = new Subject<T>();\n\n readonly data$ = this.load$.pipe(\n switchMap(item =>\n this.loader.loadChildren(item).pipe(\n tap(children => this.map.set(item, children)),\n map(children => children.filter(item => !this.loader.hasChildren(item))),\n tap(children => children.forEach(child => this.map.set(child, []))),\n ),\n ),\n startWith(null),\n mapTo(this.start),\n );\n\n constructor(\n @Inject(TUI_TREE_LOADING) private readonly loading: T,\n @Inject(TUI_TREE_START) private readonly start: T,\n @Inject(TUI_TREE_LOADER) private readonly loader: TuiTreeLoader<T>,\n ) {}\n\n getChildren(item: T): readonly T[] {\n return this.map.get(item) ?? [this.loading];\n }\n\n loadChildren(item: T) {\n if (this.map.get(item)) {\n return;\n }\n\n this.map.set(item, [this.loading]);\n this.load$.next(item);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiButtonModule, TuiExpandModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeComponent} from './components/tree/tree.component';\nimport {TuiTreeItemComponent} from './components/tree-item/tree-item.component';\nimport {TuiTreeItemContentComponent} from './components/tree-item-content/tree-item-content.component';\nimport {TuiTreeChildrenDirective} from './directives/tree-children.directive';\nimport {TuiTreeControllerDirective} from './directives/tree-controller.directive';\nimport {TuiTreeItemControllerDirective} from './directives/tree-item-controller.directive';\nimport {TuiTreeNodeDirective} from './directives/tree-node.directive';\n\n@NgModule({\n imports: [CommonModule, PolymorpheusModule, TuiExpandModule, TuiButtonModule],\n entryComponents: [TuiTreeItemContentComponent],\n declarations: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeItemContentComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n TuiTreeNodeDirective,\n ],\n exports: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n ],\n})\nexport class TuiTreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}