@taiga-ui/kit 2.20.0 → 2.24.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 (572) 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-avatar.umd.js +1 -1
  9. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-avatar.umd.min.js +1 -1
  11. package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-badge.umd.js +2 -2
  13. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-badge.umd.min.js +1 -1
  15. package/bundles/taiga-ui-kit-components-badge.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  17. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js +1 -1
  18. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +2 -2
  19. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
  21. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  23. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
  25. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +1 -1
  27. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js +1 -1
  29. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-combo-box.umd.js +13 -4
  31. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  35. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  37. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  39. package/bundles/taiga-ui-kit-components-filter.umd.min.js +1 -1
  40. package/bundles/taiga-ui-kit-components-input-copy.umd.js +2 -2
  41. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
  42. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-count.umd.js +7 -2
  44. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +2 -2
  46. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +2 -2
  48. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  49. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +2 -2
  51. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
  52. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-date.umd.js +2 -2
  54. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
  56. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-file.umd.js +4 -4
  58. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
  60. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-inline.umd.js +1 -1
  62. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js +1 -1
  63. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  64. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  65. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  67. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  68. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-number.umd.js +8 -2
  70. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  72. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-input-password.umd.js +3 -2
  74. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  76. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +1 -1
  78. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  80. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  82. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  83. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-input-range.umd.js +2 -2
  85. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  87. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-input-slider.umd.js +2 -2
  89. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  91. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-input-tag.umd.js +2 -2
  93. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +2 -2
  95. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
  97. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-input-time.umd.min.js +1 -1
  99. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  101. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  102. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +1 -1
  104. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js +1 -1
  105. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +16 -12
  106. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js +2 -2
  108. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-multi-select.umd.js +18 -45
  110. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +2 -2
  112. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  114. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  115. package/bundles/taiga-ui-kit-components-progress.umd.js +54 -18
  116. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  117. package/bundles/taiga-ui-kit-components-progress.umd.min.js +2 -2
  118. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +1 -1
  120. package/bundles/taiga-ui-kit-components-radio-labeled.umd.min.js +1 -1
  121. package/bundles/taiga-ui-kit-components-range.umd.js +2 -2
  122. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
  124. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-kit-components-select-option.umd.js +23 -14
  126. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-components-select-option.umd.min.js +2 -2
  128. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-kit-components-select.umd.js +9 -3
  130. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-components-select.umd.min.js +2 -2
  132. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  133. package/bundles/taiga-ui-kit-components-slider.umd.js +2 -2
  134. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  135. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  136. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  137. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
  138. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +1 -1
  139. package/bundles/taiga-ui-kit-components-tabs.umd.js +3 -3
  140. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  142. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
  144. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-components-tag.umd.min.js +2 -2
  146. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  147. package/bundles/taiga-ui-kit-components-text-area.umd.js +19 -2
  148. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  149. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +2 -2
  150. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  151. package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
  152. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  153. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  154. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  155. package/bundles/taiga-ui-kit-components-tree.umd.js +653 -0
  156. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -0
  157. package/bundles/taiga-ui-kit-components-tree.umd.min.js +16 -0
  158. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -0
  159. package/bundles/taiga-ui-kit-components.umd.js +12 -4
  160. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  161. package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
  162. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +1 -1
  163. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  164. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js +1 -1
  165. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-kit-utils-format.umd.js +0 -2
  167. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  168. package/bundles/taiga-ui-kit-utils-format.umd.min.js.map +1 -1
  169. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  170. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  171. package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
  172. package/components/badge/taiga-ui-kit-components-badge.metadata.json +1 -1
  173. package/components/badged-content/taiga-ui-kit-components-badged-content.metadata.json +1 -1
  174. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  175. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  176. package/components/calendar-range/taiga-ui-kit-components-calendar-range.metadata.json +1 -1
  177. package/components/combo-box/combo-box.component.d.ts +3 -3
  178. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  179. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  180. package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
  181. package/components/index.d.ts +1 -0
  182. package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
  183. package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
  184. package/components/input-count/input-count.component.d.ts +1 -0
  185. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  186. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  187. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  188. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  189. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  190. package/components/input-inline/taiga-ui-kit-components-input-inline.metadata.json +1 -1
  191. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  192. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  193. package/components/input-number/input-number.component.d.ts +1 -0
  194. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  195. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  196. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  197. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  198. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  199. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  200. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  201. package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
  202. package/components/line-clamp/taiga-ui-kit-components-line-clamp.metadata.json +1 -1
  203. package/components/multi-select/index.d.ts +0 -1
  204. package/components/multi-select/multi-select.component.d.ts +6 -5
  205. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  206. package/components/multi-select-option/multi-select-option.component.d.ts +1 -1
  207. package/components/multi-select-option/taiga-ui-kit-components-multi-select-option.metadata.json +1 -1
  208. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  209. package/components/progress/index.d.ts +2 -0
  210. package/components/progress/pipes/abstract-color-segments.d.ts +9 -0
  211. package/components/progress/pipes/progress-color-segments-async.pipe.d.ts +5 -0
  212. package/components/progress/pipes/progress-color-segments.pipe.d.ts +7 -6
  213. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  214. package/components/radio-labeled/taiga-ui-kit-components-radio-labeled.metadata.json +1 -1
  215. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  216. package/components/select/select.component.d.ts +1 -1
  217. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  218. package/components/select-option/select-option.component.d.ts +4 -2
  219. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  220. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  221. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  222. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  223. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  224. package/components/taiga-ui-kit-components.metadata.json +1 -1
  225. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  226. package/components/text-area/text-area.component.d.ts +2 -0
  227. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  228. package/components/tree/components/tree/tree.component.d.ts +10 -0
  229. package/components/tree/components/tree-item/tree-item.component.d.ts +17 -0
  230. package/components/tree/components/tree-item/tree-item.providers.d.ts +3 -0
  231. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +9 -0
  232. package/components/tree/directives/tree-children.directive.d.ts +5 -0
  233. package/components/tree/directives/tree-controller.directive.d.ts +13 -0
  234. package/components/tree/directives/tree-item-controller.directive.d.ts +8 -0
  235. package/components/tree/directives/tree-node.directive.d.ts +10 -0
  236. package/components/tree/index.d.ts +13 -0
  237. package/components/tree/misc/tree.constants.d.ts +5 -0
  238. package/components/tree/misc/tree.interfaces.d.ts +22 -0
  239. package/components/tree/misc/tree.service.d.ts +12 -0
  240. package/components/tree/misc/tree.tokens.d.ts +11 -0
  241. package/components/tree/package.json +13 -0
  242. package/components/tree/taiga-ui-kit-components-tree.d.ts +4 -0
  243. package/components/tree/taiga-ui-kit-components-tree.metadata.json +1 -0
  244. package/components/tree/tree.module.d.ts +2 -0
  245. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -6
  246. package/esm2015/components/accordion/accordion.component.js +1 -1
  247. package/esm2015/components/action/action.component.js +2 -2
  248. package/esm2015/components/avatar/avatar.component.js +2 -2
  249. package/esm2015/components/badge/badge.component.js +3 -3
  250. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  251. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  252. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
  253. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  254. package/esm2015/components/calendar-range/calendar-range.component.js +2 -2
  255. package/esm2015/components/combo-box/combo-box.component.js +10 -5
  256. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  257. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  258. package/esm2015/components/filter/filter.component.js +1 -1
  259. package/esm2015/components/index.js +2 -1
  260. package/esm2015/components/input/input.component.js +1 -1
  261. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  262. package/esm2015/components/input-count/input-count.component.js +8 -3
  263. package/esm2015/components/input-date/input-date.component.js +3 -3
  264. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  265. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  266. package/esm2015/components/input-file/file/file.component.js +3 -3
  267. package/esm2015/components/input-file/input-file.component.js +3 -3
  268. package/esm2015/components/input-inline/input-inline.component.js +1 -1
  269. package/esm2015/components/input-month/input-month.component.js +1 -1
  270. package/esm2015/components/input-month-range/input-month-range.component.js +1 -1
  271. package/esm2015/components/input-number/input-number.component.js +9 -3
  272. package/esm2015/components/input-password/input-password.component.js +3 -3
  273. package/esm2015/components/input-password/input-password.module.js +3 -1
  274. package/esm2015/components/input-phone/input-phone.component.js +2 -2
  275. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  276. package/esm2015/components/input-range/input-range.component.js +3 -3
  277. package/esm2015/components/input-slider/input-slider.component.js +3 -3
  278. package/esm2015/components/input-tag/input-tag.component.js +3 -3
  279. package/esm2015/components/input-time/input-time.component.js +3 -3
  280. package/esm2015/components/line-clamp/line-clamp.component.js +1 -1
  281. package/esm2015/components/multi-select/index.js +1 -2
  282. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  283. package/esm2015/components/multi-select/multi-select.component.js +12 -20
  284. package/esm2015/components/multi-select/multi-select.module.js +1 -3
  285. package/esm2015/components/multi-select-option/multi-select-option.component.js +8 -10
  286. package/esm2015/components/pagination/pagination.component.js +1 -1
  287. package/esm2015/components/progress/index.js +3 -1
  288. package/esm2015/components/progress/pipes/abstract-color-segments.js +32 -0
  289. package/esm2015/components/progress/pipes/progress-color-segments-async.pipe.js +15 -0
  290. package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +12 -28
  291. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  292. package/esm2015/components/progress/progress-label/progress-label.component.js +1 -1
  293. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  294. package/esm2015/components/progress/progress.module.js +4 -1
  295. package/esm2015/components/radio-labeled/radio-labeled.component.js +1 -1
  296. package/esm2015/components/range/range.component.js +3 -3
  297. package/esm2015/components/select/select.component.js +6 -4
  298. package/esm2015/components/select-option/select-option.component.js +20 -12
  299. package/esm2015/components/slider/slider.component.js +3 -3
  300. package/esm2015/components/stepper/step/step.component.js +1 -1
  301. package/esm2015/components/tabs/tabs/tabs.component.js +1 -1
  302. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  303. package/esm2015/components/tag/tag.component.js +3 -3
  304. package/esm2015/components/text-area/text-area.component.js +10 -4
  305. package/esm2015/components/text-area/text-area.module.js +5 -2
  306. package/esm2015/components/toggle/toggle.component.js +2 -2
  307. package/esm2015/components/tree/components/tree/tree.component.js +44 -0
  308. package/esm2015/components/tree/components/tree-item/tree-item.component.js +58 -0
  309. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +18 -0
  310. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +41 -0
  311. package/esm2015/components/tree/directives/tree-children.directive.js +23 -0
  312. package/esm2015/components/tree/directives/tree-controller.directive.js +62 -0
  313. package/esm2015/components/tree/directives/tree-item-controller.directive.js +36 -0
  314. package/esm2015/components/tree/directives/tree-node.directive.js +35 -0
  315. package/esm2015/components/tree/index.js +13 -0
  316. package/esm2015/components/tree/misc/tree.constants.js +9 -0
  317. package/esm2015/components/tree/misc/tree.interfaces.js +1 -0
  318. package/esm2015/components/tree/misc/tree.service.js +40 -0
  319. package/esm2015/components/tree/misc/tree.tokens.js +17 -0
  320. package/esm2015/components/tree/taiga-ui-kit-components-tree.js +5 -0
  321. package/esm2015/components/tree/tree.module.js +38 -0
  322. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  323. package/esm2015/types/status.js +1 -1
  324. package/esm2015/utils/format/string-hash-to-hsl.js +1 -3
  325. package/esm5/components/accordion/accordion-item/accordion-item.component.js +5 -6
  326. package/esm5/components/accordion/accordion.component.js +1 -1
  327. package/esm5/components/action/action.component.js +2 -2
  328. package/esm5/components/avatar/avatar.component.js +2 -2
  329. package/esm5/components/badge/badge.component.js +3 -3
  330. package/esm5/components/badged-content/badged-content.component.js +1 -1
  331. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  332. package/esm5/components/breadcrumbs/breadcrumbs.component.js +2 -2
  333. package/esm5/components/calendar-month/calendar-month.component.js +2 -2
  334. package/esm5/components/calendar-range/calendar-range.component.js +2 -2
  335. package/esm5/components/combo-box/combo-box.component.js +14 -5
  336. package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  337. package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  338. package/esm5/components/filter/filter.component.js +1 -1
  339. package/esm5/components/index.js +2 -1
  340. package/esm5/components/input/input.component.js +1 -1
  341. package/esm5/components/input-copy/input-copy.component.js +2 -2
  342. package/esm5/components/input-count/input-count.component.js +8 -3
  343. package/esm5/components/input-date/input-date.component.js +3 -3
  344. package/esm5/components/input-date-range/input-date-range.component.js +2 -2
  345. package/esm5/components/input-date-time/input-date-time.component.js +2 -2
  346. package/esm5/components/input-file/file/file.component.js +3 -3
  347. package/esm5/components/input-file/input-file.component.js +3 -3
  348. package/esm5/components/input-inline/input-inline.component.js +1 -1
  349. package/esm5/components/input-month/input-month.component.js +1 -1
  350. package/esm5/components/input-month-range/input-month-range.component.js +1 -1
  351. package/esm5/components/input-number/input-number.component.js +9 -3
  352. package/esm5/components/input-password/input-password.component.js +3 -3
  353. package/esm5/components/input-password/input-password.module.js +3 -1
  354. package/esm5/components/input-phone/input-phone.component.js +2 -2
  355. package/esm5/components/input-phone-international/input-phone-international.component.js +2 -2
  356. package/esm5/components/input-range/input-range.component.js +3 -3
  357. package/esm5/components/input-slider/input-slider.component.js +3 -3
  358. package/esm5/components/input-tag/input-tag.component.js +3 -3
  359. package/esm5/components/input-time/input-time.component.js +3 -3
  360. package/esm5/components/line-clamp/line-clamp.component.js +1 -1
  361. package/esm5/components/multi-select/index.js +1 -2
  362. package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  363. package/esm5/components/multi-select/multi-select.component.js +12 -24
  364. package/esm5/components/multi-select/multi-select.module.js +1 -3
  365. package/esm5/components/multi-select-option/multi-select-option.component.js +14 -11
  366. package/esm5/components/pagination/pagination.component.js +1 -1
  367. package/esm5/components/progress/index.js +3 -1
  368. package/esm5/components/progress/pipes/abstract-color-segments.js +35 -0
  369. package/esm5/components/progress/pipes/progress-color-segments-async.pipe.js +21 -0
  370. package/esm5/components/progress/pipes/progress-color-segments.pipe.js +16 -30
  371. package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
  372. package/esm5/components/progress/progress-label/progress-label.component.js +1 -1
  373. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  374. package/esm5/components/progress/progress.module.js +4 -1
  375. package/esm5/components/radio-labeled/radio-labeled.component.js +1 -1
  376. package/esm5/components/range/range.component.js +3 -3
  377. package/esm5/components/select/select.component.js +10 -4
  378. package/esm5/components/select-option/select-option.component.js +24 -14
  379. package/esm5/components/slider/slider.component.js +3 -3
  380. package/esm5/components/stepper/step/step.component.js +1 -1
  381. package/esm5/components/tabs/tabs/tabs.component.js +1 -1
  382. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  383. package/esm5/components/tag/tag.component.js +3 -3
  384. package/esm5/components/text-area/text-area.component.js +18 -4
  385. package/esm5/components/text-area/text-area.module.js +5 -2
  386. package/esm5/components/toggle/toggle.component.js +2 -2
  387. package/esm5/components/tree/components/tree/tree.component.js +53 -0
  388. package/esm5/components/tree/components/tree-item/tree-item.component.js +68 -0
  389. package/esm5/components/tree/components/tree-item/tree-item.providers.js +18 -0
  390. package/esm5/components/tree/components/tree-item-content/tree-item-content.component.js +50 -0
  391. package/esm5/components/tree/directives/tree-children.directive.js +25 -0
  392. package/esm5/components/tree/directives/tree-controller.directive.js +64 -0
  393. package/esm5/components/tree/directives/tree-item-controller.directive.js +38 -0
  394. package/esm5/components/tree/directives/tree-node.directive.js +40 -0
  395. package/esm5/components/tree/index.js +13 -0
  396. package/esm5/components/tree/misc/tree.constants.js +9 -0
  397. package/esm5/components/tree/misc/tree.interfaces.js +1 -0
  398. package/esm5/components/tree/misc/tree.service.js +44 -0
  399. package/esm5/components/tree/misc/tree.tokens.js +17 -0
  400. package/esm5/components/tree/taiga-ui-kit-components-tree.js +5 -0
  401. package/esm5/components/tree/tree.module.js +41 -0
  402. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  403. package/esm5/types/status.js +1 -1
  404. package/esm5/utils/format/string-hash-to-hsl.js +1 -3
  405. package/fesm2015/taiga-ui-kit-components-accordion.js +5 -6
  406. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  407. package/fesm2015/taiga-ui-kit-components-action.js +2 -2
  408. package/fesm2015/taiga-ui-kit-components-avatar.js +1 -1
  409. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-components-badge.js +2 -2
  411. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  412. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  413. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +2 -2
  414. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  415. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  416. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  417. package/fesm2015/taiga-ui-kit-components-calendar-range.js +1 -1
  418. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  419. package/fesm2015/taiga-ui-kit-components-combo-box.js +9 -4
  420. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  421. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  422. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  423. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  424. package/fesm2015/taiga-ui-kit-components-input-copy.js +2 -2
  425. package/fesm2015/taiga-ui-kit-components-input-count.js +7 -2
  426. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  427. package/fesm2015/taiga-ui-kit-components-input-date-range.js +2 -2
  428. package/fesm2015/taiga-ui-kit-components-input-date-time.js +2 -2
  429. package/fesm2015/taiga-ui-kit-components-input-date.js +2 -2
  430. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  431. package/fesm2015/taiga-ui-kit-components-input-file.js +4 -4
  432. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  433. package/fesm2015/taiga-ui-kit-components-input-inline.js +1 -1
  434. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  435. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  436. package/fesm2015/taiga-ui-kit-components-input-number.js +8 -2
  437. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  438. package/fesm2015/taiga-ui-kit-components-input-password.js +4 -3
  439. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  440. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +1 -1
  441. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  442. package/fesm2015/taiga-ui-kit-components-input-phone.js +2 -2
  443. package/fesm2015/taiga-ui-kit-components-input-range.js +2 -2
  444. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  445. package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
  446. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  447. package/fesm2015/taiga-ui-kit-components-input-tag.js +2 -2
  448. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  449. package/fesm2015/taiga-ui-kit-components-input-time.js +2 -2
  450. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  452. package/fesm2015/taiga-ui-kit-components-line-clamp.js +1 -1
  453. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +7 -9
  454. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-components-multi-select.js +21 -40
  456. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  458. package/fesm2015/taiga-ui-kit-components-progress.js +39 -14
  459. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  460. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +1 -1
  461. package/fesm2015/taiga-ui-kit-components-range.js +2 -2
  462. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  463. package/fesm2015/taiga-ui-kit-components-select-option.js +19 -11
  464. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  465. package/fesm2015/taiga-ui-kit-components-select.js +5 -3
  466. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  467. package/fesm2015/taiga-ui-kit-components-slider.js +2 -2
  468. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
  470. package/fesm2015/taiga-ui-kit-components-tabs.js +3 -3
  471. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  472. package/fesm2015/taiga-ui-kit-components-tag.js +2 -2
  473. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  474. package/fesm2015/taiga-ui-kit-components-text-area.js +12 -3
  475. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  476. package/fesm2015/taiga-ui-kit-components-toggle.js +1 -1
  477. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  478. package/fesm2015/taiga-ui-kit-components-tree.js +371 -0
  479. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -0
  480. package/fesm2015/taiga-ui-kit-components.js +1 -0
  481. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  482. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  483. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  484. package/fesm2015/taiga-ui-kit-utils-format.js +0 -2
  485. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  486. package/fesm5/taiga-ui-kit-components-accordion.js +5 -6
  487. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  488. package/fesm5/taiga-ui-kit-components-action.js +2 -2
  489. package/fesm5/taiga-ui-kit-components-avatar.js +1 -1
  490. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  491. package/fesm5/taiga-ui-kit-components-badge.js +2 -2
  492. package/fesm5/taiga-ui-kit-components-badge.js.map +1 -1
  493. package/fesm5/taiga-ui-kit-components-badged-content.js +1 -1
  494. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +2 -2
  495. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  496. package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
  497. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  498. package/fesm5/taiga-ui-kit-components-calendar-range.js +1 -1
  499. package/fesm5/taiga-ui-kit-components-calendar-range.js.map +1 -1
  500. package/fesm5/taiga-ui-kit-components-combo-box.js +13 -4
  501. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  502. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  503. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  504. package/fesm5/taiga-ui-kit-components-filter.js +1 -1
  505. package/fesm5/taiga-ui-kit-components-input-copy.js +2 -2
  506. package/fesm5/taiga-ui-kit-components-input-count.js +7 -2
  507. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  508. package/fesm5/taiga-ui-kit-components-input-date-range.js +2 -2
  509. package/fesm5/taiga-ui-kit-components-input-date-time.js +2 -2
  510. package/fesm5/taiga-ui-kit-components-input-date.js +2 -2
  511. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  512. package/fesm5/taiga-ui-kit-components-input-file.js +4 -4
  513. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  514. package/fesm5/taiga-ui-kit-components-input-inline.js +1 -1
  515. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  516. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  517. package/fesm5/taiga-ui-kit-components-input-number.js +8 -2
  518. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  519. package/fesm5/taiga-ui-kit-components-input-password.js +4 -3
  520. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  521. package/fesm5/taiga-ui-kit-components-input-phone-international.js +1 -1
  522. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  523. package/fesm5/taiga-ui-kit-components-input-phone.js +2 -2
  524. package/fesm5/taiga-ui-kit-components-input-range.js +2 -2
  525. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  526. package/fesm5/taiga-ui-kit-components-input-slider.js +2 -2
  527. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  528. package/fesm5/taiga-ui-kit-components-input-tag.js +2 -2
  529. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  530. package/fesm5/taiga-ui-kit-components-input-time.js +2 -2
  531. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  532. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  533. package/fesm5/taiga-ui-kit-components-line-clamp.js +1 -1
  534. package/fesm5/taiga-ui-kit-components-multi-select-option.js +13 -10
  535. package/fesm5/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  536. package/fesm5/taiga-ui-kit-components-multi-select.js +21 -47
  537. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  538. package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
  539. package/fesm5/taiga-ui-kit-components-progress.js +53 -17
  540. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  541. package/fesm5/taiga-ui-kit-components-radio-labeled.js +1 -1
  542. package/fesm5/taiga-ui-kit-components-range.js +2 -2
  543. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  544. package/fesm5/taiga-ui-kit-components-select-option.js +23 -13
  545. package/fesm5/taiga-ui-kit-components-select-option.js.map +1 -1
  546. package/fesm5/taiga-ui-kit-components-select.js +9 -3
  547. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  548. package/fesm5/taiga-ui-kit-components-slider.js +2 -2
  549. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  550. package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
  551. package/fesm5/taiga-ui-kit-components-tabs.js +3 -3
  552. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  553. package/fesm5/taiga-ui-kit-components-tag.js +2 -2
  554. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  555. package/fesm5/taiga-ui-kit-components-text-area.js +20 -3
  556. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  557. package/fesm5/taiga-ui-kit-components-toggle.js +1 -1
  558. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  559. package/fesm5/taiga-ui-kit-components-tree.js +417 -0
  560. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -0
  561. package/fesm5/taiga-ui-kit-components.js +1 -0
  562. package/fesm5/taiga-ui-kit-components.js.map +1 -1
  563. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  564. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  565. package/fesm5/taiga-ui-kit-utils-format.js +0 -2
  566. package/fesm5/taiga-ui-kit-utils-format.js.map +1 -1
  567. package/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.metadata.json +1 -1
  568. package/package.json +5 -5
  569. package/types/status.d.ts +1 -1
  570. package/components/multi-select/multi-select-group/multi-select-group-reset.directive.d.ts +0 -3
  571. package/esm2015/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -20
  572. package/esm5/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -23
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/multi-select/multi-select.component.ts","ng://@taiga-ui/kit/components/multi-select/hide-selected.pipe.ts","ng://@taiga-ui/kit/components/multi-select/multi-select-group/multi-select-group-reset.directive.ts","ng://@taiga-ui/kit/components/multi-select/multi-select-group/multi-select-group.component.ts","ng://@taiga-ui/kit/components/multi-select/multi-select-group/multi-select-group.directive.ts","ng://@taiga-ui/kit/components/multi-select/multi-select.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TuiMultiSelectComponent","control","changeDetectorRef","svgService","textfieldLabelOutside","controller","_this","_super","this","stringify","TUI_DEFAULT_STRINGIFY","identityMatcher","TUI_DEFAULT_IDENTITY_MATCHER","expandable","search","editable","disabledItemHandler","ALWAYS_FALSE_HANDLER","valueContent","searchChange","EventEmitter","open","valueMapper","group","EMPTY_ARRAY","map","item","TuiStringifiableItem","disabledItemHandlerWrapper","handler","stringifiable","datalist","define","iconBlank","constants","__","constructor","prototype","create","__extends","input","nativeFocusableElement","focused","hostedDropdown","computedGroup","searchString","interactive","arrowIcon","disabled","readOnly","getContext","size","getStringifier","_a","$implicit","onHoveredChange","hovered","updateHovered","onSpace","event","preventDefault","handleOption","option","index","findIndex","updateValue","filter","_","updateSearch","onEnter","options","accessor","getOptions","indexOf","slice","onClick","isNativeFocused","onArrowClick","focusInput","onInput","onSearch","onActiveZone","active","updateFocused","setDisabledState","emit","preventScroll","setNativeFocused","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","TuiSvgService","TuiTextfieldLabelOutsideDirective","TUI_TEXTFIELD_LABEL_OUTSIDE","TuiTextfieldController","TUI_TEXTFIELD_WATCHED_CONTROLLER","Input","tuiDefaultProp","HostBinding","Output","ContentChild","TuiDataListDirective","read","TemplateRef","TUI_DATA_LIST_ACCESSOR","ViewChild","TuiHostedDropdownComponent","TuiInputTagComponent","tuiPure","TuiMultiSelectComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_DATA_LIST_HOST","FIXED_DROPDOWN_CONTROLLER_PROVIDER","TEXTFIELD_CONTROLLER_PROVIDER","AbstractTuiMultipleControl","TuiHideSelectedPipe","component","transform","items","_b","isFlat","filter2d","matcher","subitems","every","selected","Pipe","name","pure","TuiMultiSelectGroupResetDirective","Directive","TUI_OPTION_CONTENT","useValue","TuiMultiSelectGroupComponent","host","label","EMPTY_QUERY","first","sizeBigger","itemsQueryListObservable","pipe","combineLatest","items$","valueChanges$","current","result","some","checked","controlValue","values","filtered","setValue","getOriginalArrayFromQueryList","isPresent","tuiReplayedValueChangesFrom","ContentChildren","TuiOptionComponent","hostFallbackFactory","TUI_MULTI_SELECT_OPTION","PolymorpheusComponent","TuiMultiSelectOptionComponent","MULTI_SELECT_ACCESSOR","writeValue","EMPTY_FUNCTION","registerOnChange","registerOnTouched","TuiMultiSelectGroupDirective","deps","useFactory","NG_VALUE_ACCESSOR","multi","TuiMultiSelectModule","NgModule","imports","CommonModule","FormsModule","PolymorpheusModule","TuiPreventDefaultModule","TuiActiveZoneModule","TuiLetModule","TuiMapperPipeModule","TuiHoveredModule","TuiSvgModule","TuiHostedDropdownModule","TuiInputTagModule","TuiMultiSelectOptionModule","TuiPrimitiveCheckboxModule","TuiDataListModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiMultipleControl,\n ALWAYS_FALSE_HANDLER,\n EMPTY_ARRAY,\n isNativeFocused,\n setNativeFocused,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiBooleanHandler,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiIdentityMatcher,\n TuiMapper,\n tuiPure,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_DATA_LIST_ACCESSOR,\n TUI_DATA_LIST_HOST,\n TUI_TEXTFIELD_LABEL_OUTSIDE,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiSvgService,\n TuiTextfieldController,\n TuiTextfieldLabelOutsideDirective,\n} from '@taiga-ui/core';\nimport {TuiStringifiableItem} from '@taiga-ui/kit/classes';\nimport {TuiInputTagComponent} from '@taiga-ui/kit/components/input-tag';\nimport {iconBlank} from '@taiga-ui/kit/constants';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-multi-select',\n templateUrl: './multi-select.template.html',\n styleUrls: ['./multi-select.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiMultiSelectComponent),\n },\n {\n provide: TUI_DATA_LIST_HOST,\n useExisting: forwardRef(() => TuiMultiSelectComponent),\n },\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiMultiSelectComponent<T>\n extends AbstractTuiMultipleControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @Input()\n @tuiDefaultProp()\n stringify: TuiStringHandler<T> = TUI_DEFAULT_STRINGIFY;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n expandable = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = '';\n\n @Input()\n @HostBinding('class._editable')\n @tuiDefaultProp()\n editable = true;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<T>>> = '';\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n open = false;\n\n readonly valueMapper: TuiMapper<\n ReadonlyArray<T>,\n ReadonlyArray<TuiStringifiableItem<T>>\n > = (value, stringify: TuiStringHandler<T>, group: boolean) =>\n group\n ? EMPTY_ARRAY\n : value.map(item => new TuiStringifiableItem(item, stringify));\n\n readonly disabledItemHandlerWrapper: TuiMapper<\n TuiBooleanHandler<T>,\n TuiBooleanHandler<TuiStringifiableItem<T>>\n > = handler => stringifiable =>\n typeof stringifiable === 'string' || handler(stringifiable.item);\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent = '';\n\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiInputTagComponent)\n private readonly input?: TuiInputTagComponent;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiSvgService) svgService: TuiSvgService,\n @Inject(TUI_TEXTFIELD_LABEL_OUTSIDE)\n readonly textfieldLabelOutside: TuiTextfieldLabelOutsideDirective,\n @Inject(TUI_TEXTFIELD_WATCHED_CONTROLLER)\n readonly controller: TuiTextfieldController,\n ) {\n super(control, changeDetectorRef);\n\n svgService.define({iconBlank});\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return (\n (!!this.input && this.input.focused) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get computedValue(): ReadonlyArray<T> {\n return this.computedGroup ? EMPTY_ARRAY : this.value;\n }\n\n // @bad TODO: think of a better way\n get searchOrSpace(): string {\n return this.computedGroup ? ' ' : this.searchString;\n }\n\n get searchString(): string {\n return this.search === null ? '' : this.search;\n }\n\n get tagIcon(): string {\n return this.interactive ? 'iconBlank' : this.arrowIcon;\n }\n\n get interactive(): boolean {\n return !this.disabled && !this.readOnly;\n }\n\n get inputHidden(): boolean {\n return !this.editable && !this.computedGroup;\n }\n\n get computedGroup(): boolean {\n return (\n !!this.valueContent &&\n this.value.length > 0 &&\n (!this.focused || !this.editable)\n );\n }\n\n get context(): TuiContextWithImplicit<ReadonlyArray<T>> {\n return this.getContext(this.value);\n }\n\n get arrowIcon(): string {\n return this.controller.size === 's'\n ? 'tuiIconChevronDown'\n : 'tuiIconChevronDownLarge';\n }\n\n @tuiPure\n getStringifier(\n stringify: TuiStringHandler<T>,\n ): TuiStringHandler<TuiContextWithImplicit<T>> {\n return ({$implicit}) => stringify($implicit);\n }\n\n onHoveredChange(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onSpace(event: KeyboardEvent) {\n if (!this.editable) {\n event.preventDefault();\n }\n\n if (!this.readOnly) {\n this.open = true;\n }\n }\n\n handleOption(option: T) {\n const {value, identityMatcher} = this;\n const index = value.findIndex(item => identityMatcher(item, option));\n\n this.updateValue(\n index === -1 ? [...value, option] : value.filter((_, i) => i !== index),\n );\n this.updateSearch(null);\n }\n\n onEnter(event: KeyboardEvent) {\n const {value} = this;\n const options = this.accessor ? this.accessor.getOptions() : [];\n\n if (options.length !== 1) {\n return;\n }\n\n const index = value.indexOf(options[0]);\n\n event.preventDefault();\n this.updateValue(\n index === -1\n ? [...value, options[0]]\n : [...value.slice(0, index), ...value.slice(index + 1)],\n );\n this.updateSearch(null);\n }\n\n onClick({nativeFocusableElement}: TuiInputTagComponent) {\n if (\n this.editable &&\n this.interactive &&\n nativeFocusableElement &&\n isNativeFocused(nativeFocusableElement)\n ) {\n this.open = !this.open;\n }\n }\n\n onArrowClick() {\n this.open = !this.open;\n this.focusInput();\n }\n\n onInput(value: ReadonlyArray<TuiStringifiableItem<T>>) {\n this.updateValue(value.map(({item}) => item));\n }\n\n onSearch(search: string | null) {\n this.open = true;\n this.updateSearch(search);\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n }\n\n setDisabledState() {\n super.setDisabledState();\n this.open = false;\n }\n\n private updateSearch(search: string | null) {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private focusInput(preventScroll: boolean = false) {\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement, true, preventScroll);\n }\n }\n\n @tuiPure\n private getContext(\n $implicit: ReadonlyArray<T>,\n ): TuiContextWithImplicit<ReadonlyArray<T>> {\n return {$implicit};\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiIdentityMatcher, tuiPure} from '@taiga-ui/cdk';\nimport {isFlat} from '@taiga-ui/kit/utils';\nimport {TuiMultiSelectComponent} from './multi-select.component';\n\n@Pipe({\n name: 'tuiHideSelected',\n pure: false,\n})\nexport class TuiHideSelectedPipe implements PipeTransform {\n constructor(\n @Inject(TuiMultiSelectComponent)\n private readonly component: TuiMultiSelectComponent<any>,\n ) {}\n\n transform<T>(items: T): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n {value, identityMatcher}: TuiMultiSelectComponent<T> = this.component,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n if (!items) {\n return null;\n }\n\n return isFlat(items)\n ? this.filter(items, value, identityMatcher)\n : this.filter2d(items, value, identityMatcher);\n }\n\n @tuiPure\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n value: readonly T[],\n matcher: TuiIdentityMatcher<T>,\n ): ReadonlyArray<readonly T[]> {\n return items.map(subitems => this.filter(subitems, value, matcher));\n }\n\n @tuiPure\n private filter<T>(\n items: readonly T[],\n value: readonly T[],\n matcher: TuiIdentityMatcher<T>,\n ): readonly T[] {\n return items.filter(item => value.every(selected => !matcher(selected, item)));\n }\n}\n","import {Directive} from '@angular/core';\nimport {TUI_OPTION_CONTENT} from '@taiga-ui/core';\n\n// TODO: Remove and switch to viewProviders when Angular is updated to Ivy\n/** @deprecated */\n@Directive({\n selector: '[tuiMultiSelectGroupReset]',\n providers: [\n {\n provide: TUI_OPTION_CONTENT,\n useValue: null,\n },\n ],\n})\nexport class TuiMultiSelectGroupResetDirective {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Inject,\n Input,\n QueryList,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n EMPTY_QUERY,\n getOriginalArrayFromQueryList,\n isPresent,\n itemsQueryListObservable,\n TUI_DEFAULT_IDENTITY_MATCHER,\n tuiDefaultProp,\n TuiIdentityMatcher,\n tuiPure,\n tuiReplayedValueChangesFrom,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_DATA_LIST_HOST,\n TuiDataListHost,\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {combineLatest, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-opt-group[tuiMultiSelectGroup]',\n templateUrl: './multi-select-group.template.html',\n styleUrls: ['./multi-select-group.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiMultiSelectGroupComponent<T> {\n @Input()\n @tuiDefaultProp()\n label = '';\n\n @ContentChildren(TuiOptionComponent)\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n constructor(\n @Inject(TUI_DATA_LIST_HOST) private readonly host: TuiDataListHost<T>,\n @Inject(NgControl) private readonly control: NgControl,\n ) {}\n\n get size(): TuiSizeXS | TuiSizeL {\n return (this.options.first && this.options.first.size) || 'm';\n }\n\n get checkboxSize(): TuiSizeL {\n return this.options.first && sizeBigger(this.options.first.size) ? 'l' : 'm';\n }\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @tuiPure\n get disabled$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(\n map(items => items.every(({disabled}) => disabled)),\n );\n }\n\n @tuiPure\n get value$(): Observable<boolean | null> {\n return combineLatest(this.items$, this.valueChanges$).pipe(\n map(([items, current]) => {\n let result = false;\n\n for (let i = 0; i < items.length; i++) {\n const selected = current.some(selected =>\n this.matcher(selected, items[i]),\n );\n\n if ((!selected && result) || (selected && !result && i)) {\n return null;\n }\n\n result = selected;\n }\n\n return result;\n }),\n );\n }\n\n onClick(checked: boolean | null) {\n if (!this.control.control) {\n return;\n }\n\n const controlValue: ReadonlyArray<T> = this.control.value || [];\n const {values} = this;\n const filtered = controlValue.filter(current =>\n values.every(item => !this.matcher(current, item)),\n );\n\n this.control.control.setValue(checked ? filtered : [...filtered, ...values]);\n }\n\n private get values(): ReadonlyArray<T> {\n return this.filter(getOriginalArrayFromQueryList(this.options));\n }\n\n private get matcher(): TuiIdentityMatcher<T> {\n return this.host.identityMatcher || TUI_DEFAULT_IDENTITY_MATCHER;\n }\n\n @tuiPure\n private get items$(): Observable<ReadonlyArray<T>> {\n return itemsQueryListObservable(this.options).pipe(\n map(options => options.map(({value}) => value).filter(isPresent)),\n );\n }\n\n @tuiPure\n private get valueChanges$(): Observable<ReadonlyArray<T>> {\n return tuiReplayedValueChangesFrom<ReadonlyArray<T>>(this.control).pipe(\n map(value => value || []),\n );\n }\n\n @tuiPure\n private filter(items: ReadonlyArray<TuiOptionComponent<T>>): ReadonlyArray<T> {\n return items.map(({value}) => value).filter(isPresent);\n }\n}\n","import {Directive, forwardRef, Optional} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, NgControl} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT, TuiDataListHost} from '@taiga-ui/core';\nimport {TuiMultiSelectOptionComponent} from '@taiga-ui/kit/components/multi-select-option';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {TuiMultiSelectComponent} from '../multi-select.component';\n\nexport function hostFallbackFactory<T>(\n control: NgControl,\n host: TuiDataListHost<T> | null,\n): TuiDataListHost<T> {\n return (\n host || {\n handleOption: option => {\n if (!control.control) {\n return;\n }\n\n const value = control.value || [];\n const index = value.indexOf(option);\n\n control.control.setValue(\n index === -1\n ? [...value, option]\n : [...value.slice(0, index), ...value.slice(index + 1)],\n );\n },\n }\n );\n}\n\nexport const TUI_MULTI_SELECT_OPTION = new PolymorpheusComponent(\n TuiMultiSelectOptionComponent,\n);\n\n// TODO: remove in ivy compilation\nexport const MULTI_SELECT_ACCESSOR = {\n writeValue: EMPTY_FUNCTION,\n registerOnChange: EMPTY_FUNCTION,\n registerOnTouched: EMPTY_FUNCTION,\n};\n\n@Directive({\n selector: '[tuiMultiSelectGroup]',\n providers: [\n {\n provide: TUI_OPTION_CONTENT,\n useValue: TUI_MULTI_SELECT_OPTION,\n },\n {\n provide: TUI_DATA_LIST_HOST,\n deps: [\n NgControl,\n [new Optional(), forwardRef(() => TuiMultiSelectComponent)],\n ],\n useFactory: hostFallbackFactory,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useValue: MULTI_SELECT_ACCESSOR,\n },\n ],\n})\nexport class TuiMultiSelectGroupDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {\n TuiActiveZoneModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveCheckboxModule,\n TuiSvgModule,\n} from '@taiga-ui/core';\nimport {TuiInputTagModule} from '@taiga-ui/kit/components/input-tag';\nimport {TuiMultiSelectOptionModule} from '@taiga-ui/kit/components/multi-select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiHideSelectedPipe} from './hide-selected.pipe';\nimport {TuiMultiSelectGroupResetDirective} from './multi-select-group/multi-select-group-reset.directive';\nimport {TuiMultiSelectGroupComponent} from './multi-select-group/multi-select-group.component';\nimport {TuiMultiSelectGroupDirective} from './multi-select-group/multi-select-group.directive';\nimport {TuiMultiSelectComponent} from './multi-select.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiPreventDefaultModule,\n TuiActiveZoneModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiHoveredModule,\n TuiSvgModule,\n TuiHostedDropdownModule,\n TuiInputTagModule,\n TuiMultiSelectOptionModule,\n TuiPrimitiveCheckboxModule,\n TuiDataListModule,\n ],\n declarations: [\n TuiMultiSelectComponent,\n TuiMultiSelectGroupComponent,\n TuiMultiSelectGroupDirective,\n TuiMultiSelectGroupResetDirective,\n TuiHideSelectedPipe,\n ],\n exports: [\n TuiMultiSelectComponent,\n TuiMultiSelectGroupComponent,\n TuiMultiSelectGroupDirective,\n TuiHideSelectedPipe,\n ],\n})\nexport class TuiMultiSelectModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/multi-select/multi-select.component.ts","ng://@taiga-ui/kit/components/multi-select/hide-selected.pipe.ts","ng://@taiga-ui/kit/components/multi-select/multi-select-group/multi-select-group.component.ts","ng://@taiga-ui/kit/components/multi-select/multi-select-group/multi-select-group.directive.ts","ng://@taiga-ui/kit/components/multi-select/multi-select.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TuiMultiSelectComponent","control","changeDetectorRef","svgService","_this","_super","this","stringify","TUI_DEFAULT_STRINGIFY","identityMatcher","TUI_DEFAULT_IDENTITY_MATCHER","expandable","search","editable","disabledItemHandler","ALWAYS_FALSE_HANDLER","valueContent","searchChange","EventEmitter","open","valueMapper","group","EMPTY_ARRAY","map","item","TuiStringifiableItem","disabledItemHandlerWrapper","handler","stringifiable","datalist","define","iconBlank","constants","__","constructor","prototype","create","__extends","input","nativeFocusableElement","focused","hostedDropdown","computedGroup","searchString","interactive","disabled","readOnly","getContext","getStringifier","_a","$implicit","onHoveredChange","hovered","updateHovered","onSpace","event","preventDefault","handleOption","option","index","findIndex","updateValue","filter","_","updateSearch","onEnter","options","accessor","getOptions","indexOf","slice","onClick","isNativeFocused","onArrowClick","focusInput","onInput","onSearch","onActiveZone","active","updateFocused","setDisabledState","emit","preventScroll","setNativeFocused","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","TuiSvgService","Input","tuiDefaultProp","HostBinding","Output","ContentChild","TuiDataListDirective","read","TemplateRef","TUI_DATA_LIST_ACCESSOR","ViewChild","TuiHostedDropdownComponent","TuiInputTagComponent","tuiPure","TuiMultiSelectComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_DATA_LIST_HOST","FIXED_DROPDOWN_CONTROLLER_PROVIDER","AbstractTuiMultipleControl","TuiHideSelectedPipe","component","transform","items","_b","isFlat","filter2d","matcher","subitems","every","selected","Pipe","name","pure","TuiMultiSelectGroupComponent","host","label","EMPTY_QUERY","first","size","sizeBigger","itemsQueryListObservable","pipe","combineLatest","items$","valueChanges$","current","result","some","checked","controlValue","values","filtered","setValue","getOriginalArrayFromQueryList","isPresent","tuiReplayedValueChangesFrom","ContentChildren","TuiOptionComponent","viewProviders","TUI_OPTION_CONTENT","useValue","hostFallbackFactory","TUI_MULTI_SELECT_OPTION","PolymorpheusComponent","TuiMultiSelectOptionComponent","MULTI_SELECT_ACCESSOR","writeValue","EMPTY_FUNCTION","registerOnChange","registerOnTouched","TuiMultiSelectGroupDirective","Directive","deps","useFactory","NG_VALUE_ACCESSOR","multi","TuiMultiSelectModule","NgModule","imports","CommonModule","FormsModule","PolymorpheusModule","TuiPreventDefaultModule","TuiActiveZoneModule","TuiLetModule","TuiMapperPipeModule","TuiHoveredModule","TuiSvgModule","TuiHostedDropdownModule","TuiInputTagModule","TuiMultiSelectOptionModule","TuiPrimitiveCheckboxModule","TuiDataListModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiMultipleControl,\n ALWAYS_FALSE_HANDLER,\n EMPTY_ARRAY,\n isNativeFocused,\n setNativeFocused,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiBooleanHandler,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiIdentityMatcher,\n TuiMapper,\n tuiPure,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n TUI_DATA_LIST_HOST,\n TuiDataListAccessor,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiSvgService,\n} from '@taiga-ui/core';\nimport {TuiStringifiableItem} from '@taiga-ui/kit/classes';\nimport {TuiInputTagComponent} from '@taiga-ui/kit/components/input-tag';\nimport {iconBlank} from '@taiga-ui/kit/constants';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-multi-select',\n templateUrl: './multi-select.template.html',\n styleUrls: ['./multi-select.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiMultiSelectComponent),\n },\n {\n provide: TUI_DATA_LIST_HOST,\n useExisting: forwardRef(() => TuiMultiSelectComponent),\n },\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiMultiSelectComponent<T>\n extends AbstractTuiMultipleControl<T>\n implements TuiFocusableElementAccessor, TuiDataListHost<T>\n{\n @Input()\n @tuiDefaultProp()\n stringify: TuiStringHandler<T> = TUI_DEFAULT_STRINGIFY;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n expandable = true;\n\n @Input()\n @tuiDefaultProp()\n search: string | null = '';\n\n @Input()\n @HostBinding('class._editable')\n @tuiDefaultProp()\n editable = true;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n valueContent: PolymorpheusContent<TuiContextWithImplicit<ReadonlyArray<T>>> = '';\n\n @Output()\n readonly searchChange = new EventEmitter<string | null>();\n\n open = false;\n\n readonly valueMapper: TuiMapper<\n ReadonlyArray<T>,\n ReadonlyArray<TuiStringifiableItem<T>>\n > = (value, stringify: TuiStringHandler<T>, group: boolean) =>\n group\n ? EMPTY_ARRAY\n : value.map(item => new TuiStringifiableItem(item, stringify));\n\n readonly disabledItemHandlerWrapper: TuiMapper<\n TuiBooleanHandler<T>,\n TuiBooleanHandler<TuiStringifiableItem<T>>\n > = handler => stringifiable =>\n typeof stringifiable === 'string' || handler(stringifiable.item);\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent = '';\n\n @ContentChild(TUI_DATA_LIST_ACCESSOR as any)\n private readonly accessor?: TuiDataListAccessor<T>;\n\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiInputTagComponent)\n private readonly input?: TuiInputTagComponent;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiSvgService) svgService: TuiSvgService,\n ) {\n super(control, changeDetectorRef);\n\n svgService.define({iconBlank});\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.input ? this.input.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return (\n (!!this.input && this.input.focused) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get computedValue(): ReadonlyArray<T> {\n return this.computedGroup ? EMPTY_ARRAY : this.value;\n }\n\n // @bad TODO: think of a better way\n get searchOrSpace(): string {\n return this.computedGroup ? ' ' : this.searchString;\n }\n\n get searchString(): string {\n return this.search === null ? '' : this.search;\n }\n\n /**\n * Pass empty icon to InputTag (inside this component)\n * to prevent overflow of arrow icon by many tags\n */\n get tagIcon(): string {\n return this.interactive ? 'iconBlank' : '';\n }\n\n get interactive(): boolean {\n return !this.disabled && !this.readOnly;\n }\n\n get inputHidden(): boolean {\n return !this.editable && !this.computedGroup;\n }\n\n get computedGroup(): boolean {\n return (\n !!this.valueContent &&\n this.value.length > 0 &&\n (!this.focused || !this.editable)\n );\n }\n\n get context(): TuiContextWithImplicit<ReadonlyArray<T>> {\n return this.getContext(this.value);\n }\n\n @tuiPure\n getStringifier(\n stringify: TuiStringHandler<T>,\n ): TuiStringHandler<TuiContextWithImplicit<T>> {\n return ({$implicit}) => stringify($implicit);\n }\n\n onHoveredChange(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onSpace(event: KeyboardEvent) {\n if (!this.editable) {\n event.preventDefault();\n }\n\n if (!this.readOnly) {\n this.open = true;\n }\n }\n\n handleOption(option: T) {\n const {value, identityMatcher} = this;\n const index = value.findIndex(item => identityMatcher(item, option));\n\n this.updateValue(\n index === -1 ? [...value, option] : value.filter((_, i) => i !== index),\n );\n this.updateSearch(null);\n }\n\n onEnter(event: KeyboardEvent) {\n const {value} = this;\n const options = this.accessor ? this.accessor.getOptions() : [];\n\n if (options.length !== 1) {\n return;\n }\n\n const index = value.indexOf(options[0]);\n\n event.preventDefault();\n this.updateValue(\n index === -1\n ? [...value, options[0]]\n : [...value.slice(0, index), ...value.slice(index + 1)],\n );\n this.updateSearch(null);\n }\n\n onClick({nativeFocusableElement}: TuiInputTagComponent) {\n if (\n this.editable &&\n this.interactive &&\n nativeFocusableElement &&\n isNativeFocused(nativeFocusableElement)\n ) {\n this.open = !this.open;\n }\n }\n\n onArrowClick() {\n this.open = !this.open;\n this.focusInput();\n }\n\n onInput(value: ReadonlyArray<TuiStringifiableItem<T>>) {\n this.updateValue(value.map(({item}) => item));\n }\n\n onSearch(search: string | null) {\n this.open = true;\n this.updateSearch(search);\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n }\n\n setDisabledState() {\n super.setDisabledState();\n this.open = false;\n }\n\n private updateSearch(search: string | null) {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private focusInput(preventScroll: boolean = false) {\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement, true, preventScroll);\n }\n }\n\n @tuiPure\n private getContext(\n $implicit: ReadonlyArray<T>,\n ): TuiContextWithImplicit<ReadonlyArray<T>> {\n return {$implicit};\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiIdentityMatcher, tuiPure} from '@taiga-ui/cdk';\nimport {isFlat} from '@taiga-ui/kit/utils';\nimport {TuiMultiSelectComponent} from './multi-select.component';\n\n@Pipe({\n name: 'tuiHideSelected',\n pure: false,\n})\nexport class TuiHideSelectedPipe implements PipeTransform {\n constructor(\n @Inject(TuiMultiSelectComponent)\n private readonly component: TuiMultiSelectComponent<any>,\n ) {}\n\n transform<T>(items: T): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n {value, identityMatcher}: TuiMultiSelectComponent<T> = this.component,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n if (!items) {\n return null;\n }\n\n return isFlat(items)\n ? this.filter(items, value, identityMatcher)\n : this.filter2d(items, value, identityMatcher);\n }\n\n @tuiPure\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n value: readonly T[],\n matcher: TuiIdentityMatcher<T>,\n ): ReadonlyArray<readonly T[]> {\n return items.map(subitems => this.filter(subitems, value, matcher));\n }\n\n @tuiPure\n private filter<T>(\n items: readonly T[],\n value: readonly T[],\n matcher: TuiIdentityMatcher<T>,\n ): readonly T[] {\n return items.filter(item => value.every(selected => !matcher(selected, item)));\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Inject,\n Input,\n QueryList,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n EMPTY_QUERY,\n getOriginalArrayFromQueryList,\n isPresent,\n itemsQueryListObservable,\n TUI_DEFAULT_IDENTITY_MATCHER,\n tuiDefaultProp,\n TuiIdentityMatcher,\n tuiPure,\n tuiReplayedValueChangesFrom,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_DATA_LIST_HOST,\n TUI_OPTION_CONTENT,\n TuiDataListHost,\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n} from '@taiga-ui/core';\nimport {combineLatest, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-opt-group[tuiMultiSelectGroup]',\n templateUrl: './multi-select-group.template.html',\n styleUrls: ['./multi-select-group.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n viewProviders: [\n {\n provide: TUI_OPTION_CONTENT,\n useValue: null,\n },\n ],\n})\nexport class TuiMultiSelectGroupComponent<T> {\n @Input()\n @tuiDefaultProp()\n label = '';\n\n @ContentChildren(TuiOptionComponent)\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n constructor(\n @Inject(TUI_DATA_LIST_HOST) private readonly host: TuiDataListHost<T>,\n @Inject(NgControl) private readonly control: NgControl,\n ) {}\n\n get size(): TuiSizeXS | TuiSizeL {\n return (this.options.first && this.options.first.size) || 'm';\n }\n\n get checkboxSize(): TuiSizeL {\n return this.options.first && sizeBigger(this.options.first.size) ? 'l' : 'm';\n }\n\n @tuiPure\n get empty$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(map(({length}) => !length));\n }\n\n @tuiPure\n get disabled$(): Observable<boolean> {\n return itemsQueryListObservable(this.options).pipe(\n map(items => items.every(({disabled}) => disabled)),\n );\n }\n\n @tuiPure\n get value$(): Observable<boolean | null> {\n return combineLatest(this.items$, this.valueChanges$).pipe(\n map(([items, current]) => {\n let result = false;\n\n for (let i = 0; i < items.length; i++) {\n const selected = current.some(selected =>\n this.matcher(selected, items[i]),\n );\n\n if ((!selected && result) || (selected && !result && i)) {\n return null;\n }\n\n result = selected;\n }\n\n return result;\n }),\n );\n }\n\n onClick(checked: boolean | null) {\n if (!this.control.control) {\n return;\n }\n\n const controlValue: ReadonlyArray<T> = this.control.value || [];\n const {values} = this;\n const filtered = controlValue.filter(current =>\n values.every(item => !this.matcher(current, item)),\n );\n\n this.control.control.setValue(checked ? filtered : [...filtered, ...values]);\n }\n\n private get values(): ReadonlyArray<T> {\n return this.filter(getOriginalArrayFromQueryList(this.options));\n }\n\n private get matcher(): TuiIdentityMatcher<T> {\n return this.host.identityMatcher || TUI_DEFAULT_IDENTITY_MATCHER;\n }\n\n @tuiPure\n private get items$(): Observable<ReadonlyArray<T>> {\n return itemsQueryListObservable(this.options).pipe(\n map(options => options.map(({value}) => value).filter(isPresent)),\n );\n }\n\n @tuiPure\n private get valueChanges$(): Observable<ReadonlyArray<T>> {\n return tuiReplayedValueChangesFrom<ReadonlyArray<T>>(this.control).pipe(\n map(value => value || []),\n );\n }\n\n @tuiPure\n private filter(items: ReadonlyArray<TuiOptionComponent<T>>): ReadonlyArray<T> {\n return items.map(({value}) => value).filter(isPresent);\n }\n}\n","import {Directive, forwardRef, Optional} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, NgControl} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_HOST, TUI_OPTION_CONTENT, TuiDataListHost} from '@taiga-ui/core';\nimport {TuiMultiSelectOptionComponent} from '@taiga-ui/kit/components/multi-select-option';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {TuiMultiSelectComponent} from '../multi-select.component';\n\nexport function hostFallbackFactory<T>(\n control: NgControl,\n host: TuiDataListHost<T> | null,\n): TuiDataListHost<T> {\n return (\n host || {\n handleOption: option => {\n if (!control.control) {\n return;\n }\n\n const value = control.value || [];\n const index = value.indexOf(option);\n\n control.control.setValue(\n index === -1\n ? [...value, option]\n : [...value.slice(0, index), ...value.slice(index + 1)],\n );\n },\n }\n );\n}\n\nexport const TUI_MULTI_SELECT_OPTION = new PolymorpheusComponent(\n TuiMultiSelectOptionComponent,\n);\n\n// TODO: remove in ivy compilation\nexport const MULTI_SELECT_ACCESSOR = {\n writeValue: EMPTY_FUNCTION,\n registerOnChange: EMPTY_FUNCTION,\n registerOnTouched: EMPTY_FUNCTION,\n};\n\n@Directive({\n selector: '[tuiMultiSelectGroup]',\n providers: [\n {\n provide: TUI_OPTION_CONTENT,\n useValue: TUI_MULTI_SELECT_OPTION,\n },\n {\n provide: TUI_DATA_LIST_HOST,\n deps: [\n NgControl,\n [new Optional(), forwardRef(() => TuiMultiSelectComponent)],\n ],\n useFactory: hostFallbackFactory,\n },\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useValue: MULTI_SELECT_ACCESSOR,\n },\n ],\n})\nexport class TuiMultiSelectGroupDirective {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {\n TuiActiveZoneModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveCheckboxModule,\n TuiSvgModule,\n} from '@taiga-ui/core';\nimport {TuiInputTagModule} from '@taiga-ui/kit/components/input-tag';\nimport {TuiMultiSelectOptionModule} from '@taiga-ui/kit/components/multi-select-option';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiHideSelectedPipe} from './hide-selected.pipe';\nimport {TuiMultiSelectGroupComponent} from './multi-select-group/multi-select-group.component';\nimport {TuiMultiSelectGroupDirective} from './multi-select-group/multi-select-group.directive';\nimport {TuiMultiSelectComponent} from './multi-select.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiPreventDefaultModule,\n TuiActiveZoneModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiHoveredModule,\n TuiSvgModule,\n TuiHostedDropdownModule,\n TuiInputTagModule,\n TuiMultiSelectOptionModule,\n TuiPrimitiveCheckboxModule,\n TuiDataListModule,\n ],\n declarations: [\n TuiMultiSelectComponent,\n TuiMultiSelectGroupComponent,\n TuiMultiSelectGroupDirective,\n TuiHideSelectedPipe,\n ],\n exports: [\n TuiMultiSelectComponent,\n TuiMultiSelectGroupComponent,\n TuiMultiSelectGroupDirective,\n TuiHideSelectedPipe,\n ],\n})\nexport class TuiMultiSelectModule {}\n"]}
@@ -516,7 +516,7 @@
516
516
  TuiPaginationComponent = TuiPaginationComponent_1 = __decorate([
517
517
  core.Component({
518
518
  selector: 'tui-pagination',
519
- template: "<div class=\"content\" (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <ng-container *ngIf=\"sizeM && (texts$ | async) as texts; else smallButtons\">\n <button\n tuiIconButton\n type=\"button\"\n tuiPreventDefault=\"mousedown\"\n class=\"button\"\n size=\"s\"\n appearance=\"flat\"\n icon=\"tuiIconChevronLeft\"\n [title]=\"texts[0]\"\n [disabled]=\"arrowIsDisabledLeft\"\n [focusable]=\"false\"\n (click)=\"onArrowClick('left')\"\n ></button>\n <ng-container *tuiRepeatTimes=\"let elementIndex of elementsLength\">\n <ng-container\n *tuiLet=\"getItemIndexByElementIndex(elementIndex) as index\"\n >\n <button\n *ngIf=\"index !== null; else dotsTemplate\"\n #element\n tuiButton\n type=\"button\"\n automation-id=\"tui-pagination__element\"\n class=\"button\"\n shape=\"square\"\n size=\"s\"\n [disabled]=\"disabled\"\n [focusable]=\"elementIsFocusable(index)\"\n [appearance]=\"getElementMode(index)\"\n (click)=\"onElementClick(index)\"\n (keydown.arrowLeft.prevent)=\"onElementKeyDownArrowLeft(element)\"\n (keydown.arrowRight.prevent)=\"onElementKeyDownArrowRight(element)\"\n >\n <div\n polymorpheus-outlet\n [content]=\"content || index + 1\"\n [context]=\"getItemContext(index)\"\n ></div>\n </button>\n </ng-container>\n </ng-container>\n <button\n tuiIconButton\n type=\"button\"\n tuiPreventDefault=\"mousedown\"\n class=\"button\"\n size=\"s\"\n appearance=\"flat\"\n icon=\"tuiIconChevronRight\"\n [title]=\"texts[1]\"\n [disabled]=\"arrowIsDisabledRight\"\n [focusable]=\"false\"\n (click)=\"onArrowClick('right')\"\n ></button>\n </ng-container>\n <ng-template #smallButtons>\n <button\n *tuiRepeatTimes=\"let indexItem of length\"\n #element\n tuiButton\n type=\"button\"\n class=\"button button_small\"\n shape=\"square\"\n [class.button_active]=\"indexItem === index\"\n [disabled]=\"disabled\"\n [focusable]=\"elementIsFocusable(indexItem)\"\n [appearance]=\"getSmallElementMode(indexItem, mode)\"\n (click)=\"onElementClick(indexItem)\"\n (keydown.arrowLeft.prevent)=\"onElementKeyDownArrowLeft(element)\"\n (keydown.arrowRight.prevent)=\"onElementKeyDownArrowRight(element)\"\n ></button>\n </ng-template>\n <ng-template #dotsTemplate>\n <div automation-id=\"tui-pagination__element\" class=\"dots\"></div>\n </ng-template>\n</div>\n",
519
+ template: "<div class=\"content\" (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <ng-container *ngIf=\"sizeM && (texts$ | async) as texts; else smallButtons\">\n <button\n tuiIconButton\n type=\"button\"\n tuiPreventDefault=\"mousedown\"\n size=\"s\"\n appearance=\"flat\"\n icon=\"tuiIconChevronLeft\"\n class=\"button\"\n [title]=\"texts[0]\"\n [disabled]=\"arrowIsDisabledLeft\"\n [focusable]=\"false\"\n (click)=\"onArrowClick('left')\"\n ></button>\n <ng-container *tuiRepeatTimes=\"let elementIndex of elementsLength\">\n <ng-container\n *tuiLet=\"getItemIndexByElementIndex(elementIndex) as index\"\n >\n <button\n *ngIf=\"index !== null; else dotsTemplate\"\n #element\n tuiButton\n type=\"button\"\n automation-id=\"tui-pagination__element\"\n shape=\"square\"\n size=\"s\"\n class=\"button\"\n [disabled]=\"disabled\"\n [focusable]=\"elementIsFocusable(index)\"\n [appearance]=\"getElementMode(index)\"\n (click)=\"onElementClick(index)\"\n (keydown.arrowLeft.prevent)=\"onElementKeyDownArrowLeft(element)\"\n (keydown.arrowRight.prevent)=\"onElementKeyDownArrowRight(element)\"\n >\n <div\n polymorpheus-outlet\n [content]=\"content || index + 1\"\n [context]=\"getItemContext(index)\"\n ></div>\n </button>\n </ng-container>\n </ng-container>\n <button\n tuiIconButton\n type=\"button\"\n tuiPreventDefault=\"mousedown\"\n size=\"s\"\n appearance=\"flat\"\n icon=\"tuiIconChevronRight\"\n class=\"button\"\n [title]=\"texts[1]\"\n [disabled]=\"arrowIsDisabledRight\"\n [focusable]=\"false\"\n (click)=\"onArrowClick('right')\"\n ></button>\n </ng-container>\n <ng-template #smallButtons>\n <button\n *tuiRepeatTimes=\"let indexItem of length\"\n #element\n tuiButton\n type=\"button\"\n shape=\"square\"\n class=\"button button_small\"\n [class.button_active]=\"indexItem === index\"\n [disabled]=\"disabled\"\n [focusable]=\"elementIsFocusable(indexItem)\"\n [appearance]=\"getSmallElementMode(indexItem, mode)\"\n (click)=\"onElementClick(indexItem)\"\n (keydown.arrowLeft.prevent)=\"onElementKeyDownArrowLeft(element)\"\n (keydown.arrowRight.prevent)=\"onElementKeyDownArrowRight(element)\"\n ></button>\n </ng-template>\n <ng-template #dotsTemplate>\n <div automation-id=\"tui-pagination__element\" class=\"dots\"></div>\n </ng-template>\n</div>\n",
520
520
  changeDetection: core.ChangeDetectionStrategy.OnPush,
521
521
  providers: [
522
522
  {
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var l=function(e,t){return(l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function c(e,t,n,i){var o,r=arguments.length,a=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(a=(r<3?o(a):r>3?o(t,n,a):o(t,n))||a);return r>3&&a&&Object.defineProperty(t,n,a),a}function d(e,t){return function(n,i){t(n,i,e)}}function p(e){return Number.isInteger(e)&&e>=0}var f=function(e){function u(i,o,r){var a=e.call(this)||this;return a.elementRef=i,a.modeDirective=o,a.texts$=r,a.length=1,a.size="m",a.disabled=!1,a.activePadding=1,a.sidePadding=1,a.content=null,a.index=0,a.indexChange=new t.EventEmitter,a.elements=n.EMPTY_QUERY,a}var s;return function(e,t){function n(){this.constructor=e}l(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(u,e),s=u,Object.defineProperty(u.prototype,"nativeFocusableElement",{get:function(){if(this.disabled)return null;for(var e=0,t=this.elementsLength,n=0;n<t;n++){var i=this.getItemIndexByElementIndex(n);if(i&&e++,i===this.index)break}var o=this.elements.find((function(t,n){return n===e}));return o?o.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"focused",{get:function(){return n.isNativeFocusedIn(this.elementRef.nativeElement)},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"elementsLength",{get:function(){return this.itemsFit?this.length:this.maxElementsLength},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"sizeM",{get:function(){return"m"===this.size},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"mode",{get:function(){return this.modeDirective?this.modeDirective.mode:null},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"arrowIsDisabledLeft",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"arrowIsDisabledRight",{get:function(){return 0===this.reverseIndex},enumerable:!0,configurable:!0}),u.prototype.elementIsFocusable=function(e){return this.index===e&&!this.focused},u.prototype.getItemContext=function(e){return{$implicit:e}},u.prototype.getItemIndexByElementIndex=function(e){if(!this.sizeM)return e;if(e<this.sidePadding)return e;if(e===this.sidePadding&&this.hasCollapsedItems(this.index))return null;var t=this.lastElementIndex-e;if(t===this.sidePadding&&this.hasCollapsedItems(this.reverseIndex))return null;if(t<this.sidePadding)return this.lastIndex-t;var i=this.index-this.maxHalfLength+e;return n.clamp(i,e,this.lastIndex-t)},u.prototype.getElementMode=function(e){return this.index===e?"primary":"flat"},u.prototype.getSmallElementMode=function(e,t){return this.index===e&&"onLight"!==t?"primary":"secondary"},u.prototype.onElementClick=function(e){this.updateIndex(e)},u.prototype.onElementKeyDownArrowLeft=function(e){if(e!==this.elements.first){var t=this.elements.find((function(t,n,i){return i[n+1]===e}));t&&t.nativeFocusableElement&&n.setNativeFocused(t.nativeFocusableElement)}},u.prototype.onElementKeyDownArrowRight=function(e){if(e!==this.elements.last){var t=this.elements.find((function(t,n,i){return i[n-1]===e}));t&&t.nativeFocusableElement&&n.setNativeFocused(t.nativeFocusableElement)}},u.prototype.onArrowClick=function(e){this.tryChangeTo(e),this.focusActive()},u.prototype.onActiveZone=function(e){this.updateFocused(e)},Object.defineProperty(u.prototype,"reverseIndex",{get:function(){return this.lastIndex-this.index},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"maxHalfLength",{get:function(){return this.sidePadding+1+this.activePadding},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"itemsFit",{get:function(){return this.length<=this.maxElementsLength},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"maxElementsLength",{get:function(){return 2*this.maxHalfLength+1},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"lastIndex",{get:function(){return this.length-1},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"lastElementIndex",{get:function(){return this.elementsLength-1},enumerable:!0,configurable:!0}),u.prototype.hasCollapsedItems=function(e){return!this.itemsFit&&e>this.maxHalfLength},u.prototype.tryChangeTo=function(e){this.updateIndex(n.clamp(this.index+r.horizontalDirectionToNumber(e),0,this.lastIndex))},u.prototype.focusActive=function(){var e=this.nativeFocusableElement;e&&n.setNativeFocused(e)},u.prototype.updateIndex=function(e){this.index!==e&&(this.index=e,this.indexChange.emit(e))},u.ctorParameters=function(){return[{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:i.TuiModeDirective,decorators:[{type:t.Optional},{type:t.Inject,args:[i.TuiModeDirective]}]},{type:a.Observable,decorators:[{type:t.Inject,args:[o.TUI_PAGINATION_TEXTS]}]}]},c([t.Input(),n.tuiDefaultProp(p,"Must be non-negative integer")],u.prototype,"length",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"size",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"disabled",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"activePadding",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"sidePadding",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"content",void 0),c([t.Input(),n.tuiDefaultProp(p,"Must be non-negative integer")],u.prototype,"index",void 0),c([t.Output()],u.prototype,"indexChange",void 0),c([t.ViewChildren("element",{read:n.TUI_FOCUSABLE_ITEM_ACCESSOR})],u.prototype,"elements",void 0),u=s=c([t.Component({selector:"tui-pagination",template:'<div class="content" (tuiActiveZoneChange)="onActiveZone($event)">\n <ng-container *ngIf="sizeM && (texts$ | async) as texts; else smallButtons">\n <button\n tuiIconButton\n type="button"\n tuiPreventDefault="mousedown"\n class="button"\n size="s"\n appearance="flat"\n icon="tuiIconChevronLeft"\n [title]="texts[0]"\n [disabled]="arrowIsDisabledLeft"\n [focusable]="false"\n (click)="onArrowClick(\'left\')"\n ></button>\n <ng-container *tuiRepeatTimes="let elementIndex of elementsLength">\n <ng-container\n *tuiLet="getItemIndexByElementIndex(elementIndex) as index"\n >\n <button\n *ngIf="index !== null; else dotsTemplate"\n #element\n tuiButton\n type="button"\n automation-id="tui-pagination__element"\n class="button"\n shape="square"\n size="s"\n [disabled]="disabled"\n [focusable]="elementIsFocusable(index)"\n [appearance]="getElementMode(index)"\n (click)="onElementClick(index)"\n (keydown.arrowLeft.prevent)="onElementKeyDownArrowLeft(element)"\n (keydown.arrowRight.prevent)="onElementKeyDownArrowRight(element)"\n >\n <div\n polymorpheus-outlet\n [content]="content || index + 1"\n [context]="getItemContext(index)"\n ></div>\n </button>\n </ng-container>\n </ng-container>\n <button\n tuiIconButton\n type="button"\n tuiPreventDefault="mousedown"\n class="button"\n size="s"\n appearance="flat"\n icon="tuiIconChevronRight"\n [title]="texts[1]"\n [disabled]="arrowIsDisabledRight"\n [focusable]="false"\n (click)="onArrowClick(\'right\')"\n ></button>\n </ng-container>\n <ng-template #smallButtons>\n <button\n *tuiRepeatTimes="let indexItem of length"\n #element\n tuiButton\n type="button"\n class="button button_small"\n shape="square"\n [class.button_active]="indexItem === index"\n [disabled]="disabled"\n [focusable]="elementIsFocusable(indexItem)"\n [appearance]="getSmallElementMode(indexItem, mode)"\n (click)="onElementClick(indexItem)"\n (keydown.arrowLeft.prevent)="onElementKeyDownArrowLeft(element)"\n (keydown.arrowRight.prevent)="onElementKeyDownArrowRight(element)"\n ></button>\n </ng-template>\n <ng-template #dotsTemplate>\n <div automation-id="tui-pagination__element" class="dots"></div>\n </ng-template>\n</div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:n.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return s}))}],styles:[":host{font:var(--tui-font-text-s);color:var(--tui-text-01);display:block;text-align:center}.content{display:flex;justify-content:center}.button{margin:0 .125rem;flex-shrink:0}.button_active{background:currentColor}.button.button.button_small{width:.5rem;height:.5rem;margin:0}.button.button.button_small:not(:first-child){margin-left:.5rem}.dots{width:var(--tui-height-s);height:var(--tui-height-s);line-height:var(--tui-height-s);margin:0 .125rem;flex-shrink:0;color:var(--tui-text-03);text-align:center;cursor:default}.dots:before{content:'\\2026'}"]}),d(0,t.Inject(t.ElementRef)),d(1,t.Optional()),d(1,t.Inject(i.TuiModeDirective)),d(2,t.Inject(o.TUI_PAGINATION_TEXTS))],u)}(n.AbstractTuiInteractive),m=function(){function e(){}return e=c([t.NgModule({imports:[u.CommonModule,n.TuiRepeatTimesModule,n.TuiLetModule,s.PolymorpheusModule,n.TuiPreventDefaultModule,n.TuiActiveZoneModule,i.TuiButtonModule],declarations:[f],exports:[f]})],e)}();e.TuiPaginationComponent=f,e.TuiPaginationModule=m,e.nonNegativeInteger=p,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var l=function(e,t){return(l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function c(e,t,n,i){var o,r=arguments.length,a=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(a=(r<3?o(a):r>3?o(t,n,a):o(t,n))||a);return r>3&&a&&Object.defineProperty(t,n,a),a}function d(e,t){return function(n,i){t(n,i,e)}}function p(e){return Number.isInteger(e)&&e>=0}var f=function(e){function u(i,o,r){var a=e.call(this)||this;return a.elementRef=i,a.modeDirective=o,a.texts$=r,a.length=1,a.size="m",a.disabled=!1,a.activePadding=1,a.sidePadding=1,a.content=null,a.index=0,a.indexChange=new t.EventEmitter,a.elements=n.EMPTY_QUERY,a}var s;return function(e,t){function n(){this.constructor=e}l(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(u,e),s=u,Object.defineProperty(u.prototype,"nativeFocusableElement",{get:function(){if(this.disabled)return null;for(var e=0,t=this.elementsLength,n=0;n<t;n++){var i=this.getItemIndexByElementIndex(n);if(i&&e++,i===this.index)break}var o=this.elements.find((function(t,n){return n===e}));return o?o.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"focused",{get:function(){return n.isNativeFocusedIn(this.elementRef.nativeElement)},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"elementsLength",{get:function(){return this.itemsFit?this.length:this.maxElementsLength},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"sizeM",{get:function(){return"m"===this.size},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"mode",{get:function(){return this.modeDirective?this.modeDirective.mode:null},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"arrowIsDisabledLeft",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"arrowIsDisabledRight",{get:function(){return 0===this.reverseIndex},enumerable:!0,configurable:!0}),u.prototype.elementIsFocusable=function(e){return this.index===e&&!this.focused},u.prototype.getItemContext=function(e){return{$implicit:e}},u.prototype.getItemIndexByElementIndex=function(e){if(!this.sizeM)return e;if(e<this.sidePadding)return e;if(e===this.sidePadding&&this.hasCollapsedItems(this.index))return null;var t=this.lastElementIndex-e;if(t===this.sidePadding&&this.hasCollapsedItems(this.reverseIndex))return null;if(t<this.sidePadding)return this.lastIndex-t;var i=this.index-this.maxHalfLength+e;return n.clamp(i,e,this.lastIndex-t)},u.prototype.getElementMode=function(e){return this.index===e?"primary":"flat"},u.prototype.getSmallElementMode=function(e,t){return this.index===e&&"onLight"!==t?"primary":"secondary"},u.prototype.onElementClick=function(e){this.updateIndex(e)},u.prototype.onElementKeyDownArrowLeft=function(e){if(e!==this.elements.first){var t=this.elements.find((function(t,n,i){return i[n+1]===e}));t&&t.nativeFocusableElement&&n.setNativeFocused(t.nativeFocusableElement)}},u.prototype.onElementKeyDownArrowRight=function(e){if(e!==this.elements.last){var t=this.elements.find((function(t,n,i){return i[n-1]===e}));t&&t.nativeFocusableElement&&n.setNativeFocused(t.nativeFocusableElement)}},u.prototype.onArrowClick=function(e){this.tryChangeTo(e),this.focusActive()},u.prototype.onActiveZone=function(e){this.updateFocused(e)},Object.defineProperty(u.prototype,"reverseIndex",{get:function(){return this.lastIndex-this.index},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"maxHalfLength",{get:function(){return this.sidePadding+1+this.activePadding},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"itemsFit",{get:function(){return this.length<=this.maxElementsLength},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"maxElementsLength",{get:function(){return 2*this.maxHalfLength+1},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"lastIndex",{get:function(){return this.length-1},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"lastElementIndex",{get:function(){return this.elementsLength-1},enumerable:!0,configurable:!0}),u.prototype.hasCollapsedItems=function(e){return!this.itemsFit&&e>this.maxHalfLength},u.prototype.tryChangeTo=function(e){this.updateIndex(n.clamp(this.index+r.horizontalDirectionToNumber(e),0,this.lastIndex))},u.prototype.focusActive=function(){var e=this.nativeFocusableElement;e&&n.setNativeFocused(e)},u.prototype.updateIndex=function(e){this.index!==e&&(this.index=e,this.indexChange.emit(e))},u.ctorParameters=function(){return[{type:t.ElementRef,decorators:[{type:t.Inject,args:[t.ElementRef]}]},{type:i.TuiModeDirective,decorators:[{type:t.Optional},{type:t.Inject,args:[i.TuiModeDirective]}]},{type:a.Observable,decorators:[{type:t.Inject,args:[o.TUI_PAGINATION_TEXTS]}]}]},c([t.Input(),n.tuiDefaultProp(p,"Must be non-negative integer")],u.prototype,"length",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"size",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"disabled",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"activePadding",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"sidePadding",void 0),c([t.Input(),n.tuiDefaultProp()],u.prototype,"content",void 0),c([t.Input(),n.tuiDefaultProp(p,"Must be non-negative integer")],u.prototype,"index",void 0),c([t.Output()],u.prototype,"indexChange",void 0),c([t.ViewChildren("element",{read:n.TUI_FOCUSABLE_ITEM_ACCESSOR})],u.prototype,"elements",void 0),u=s=c([t.Component({selector:"tui-pagination",template:'<div class="content" (tuiActiveZoneChange)="onActiveZone($event)">\n <ng-container *ngIf="sizeM && (texts$ | async) as texts; else smallButtons">\n <button\n tuiIconButton\n type="button"\n tuiPreventDefault="mousedown"\n size="s"\n appearance="flat"\n icon="tuiIconChevronLeft"\n class="button"\n [title]="texts[0]"\n [disabled]="arrowIsDisabledLeft"\n [focusable]="false"\n (click)="onArrowClick(\'left\')"\n ></button>\n <ng-container *tuiRepeatTimes="let elementIndex of elementsLength">\n <ng-container\n *tuiLet="getItemIndexByElementIndex(elementIndex) as index"\n >\n <button\n *ngIf="index !== null; else dotsTemplate"\n #element\n tuiButton\n type="button"\n automation-id="tui-pagination__element"\n shape="square"\n size="s"\n class="button"\n [disabled]="disabled"\n [focusable]="elementIsFocusable(index)"\n [appearance]="getElementMode(index)"\n (click)="onElementClick(index)"\n (keydown.arrowLeft.prevent)="onElementKeyDownArrowLeft(element)"\n (keydown.arrowRight.prevent)="onElementKeyDownArrowRight(element)"\n >\n <div\n polymorpheus-outlet\n [content]="content || index + 1"\n [context]="getItemContext(index)"\n ></div>\n </button>\n </ng-container>\n </ng-container>\n <button\n tuiIconButton\n type="button"\n tuiPreventDefault="mousedown"\n size="s"\n appearance="flat"\n icon="tuiIconChevronRight"\n class="button"\n [title]="texts[1]"\n [disabled]="arrowIsDisabledRight"\n [focusable]="false"\n (click)="onArrowClick(\'right\')"\n ></button>\n </ng-container>\n <ng-template #smallButtons>\n <button\n *tuiRepeatTimes="let indexItem of length"\n #element\n tuiButton\n type="button"\n shape="square"\n class="button button_small"\n [class.button_active]="indexItem === index"\n [disabled]="disabled"\n [focusable]="elementIsFocusable(indexItem)"\n [appearance]="getSmallElementMode(indexItem, mode)"\n (click)="onElementClick(indexItem)"\n (keydown.arrowLeft.prevent)="onElementKeyDownArrowLeft(element)"\n (keydown.arrowRight.prevent)="onElementKeyDownArrowRight(element)"\n ></button>\n </ng-template>\n <ng-template #dotsTemplate>\n <div automation-id="tui-pagination__element" class="dots"></div>\n </ng-template>\n</div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:n.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return s}))}],styles:[":host{font:var(--tui-font-text-s);color:var(--tui-text-01);display:block;text-align:center}.content{display:flex;justify-content:center}.button{margin:0 .125rem;flex-shrink:0}.button_active{background:currentColor}.button.button.button_small{width:.5rem;height:.5rem;margin:0}.button.button.button_small:not(:first-child){margin-left:.5rem}.dots{width:var(--tui-height-s);height:var(--tui-height-s);line-height:var(--tui-height-s);margin:0 .125rem;flex-shrink:0;color:var(--tui-text-03);text-align:center;cursor:default}.dots:before{content:'\\2026'}"]}),d(0,t.Inject(t.ElementRef)),d(1,t.Optional()),d(1,t.Inject(i.TuiModeDirective)),d(2,t.Inject(o.TUI_PAGINATION_TEXTS))],u)}(n.AbstractTuiInteractive),m=function(){function e(){}return e=c([t.NgModule({imports:[u.CommonModule,n.TuiRepeatTimesModule,n.TuiLetModule,s.PolymorpheusModule,n.TuiPreventDefaultModule,n.TuiActiveZoneModule,i.TuiButtonModule],declarations:[f],exports:[f]})],e)}();e.TuiPaginationComponent=f,e.TuiPaginationModule=m,e.nonNegativeInteger=p,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-pagination.umd.min.js.map
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@taiga-ui/cdk'), require('@ng-web-apis/common')) :
3
- typeof define === 'function' && define.amd ? define('@taiga-ui/kit/components/progress', ['exports', '@angular/common', '@angular/core', '@taiga-ui/cdk', '@ng-web-apis/common'], factory) :
4
- (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].kit = global['taiga-ui'].kit || {}, global['taiga-ui'].kit.components = global['taiga-ui'].kit.components || {}, global['taiga-ui'].kit.components.progress = {}), global.ng.common, global.ng.core, global.cdk, global.common$1));
5
- }(this, (function (exports, common, core, cdk, common$1) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@taiga-ui/cdk'), require('rxjs'), require('rxjs/operators'), require('@ng-web-apis/common')) :
3
+ typeof define === 'function' && define.amd ? define('@taiga-ui/kit/components/progress', ['exports', '@angular/common', '@angular/core', '@taiga-ui/cdk', 'rxjs', 'rxjs/operators', '@ng-web-apis/common'], factory) :
4
+ (global = global || self, factory((global['taiga-ui'] = global['taiga-ui'] || {}, global['taiga-ui'].kit = global['taiga-ui'].kit || {}, global['taiga-ui'].kit.components = global['taiga-ui'].kit.components || {}, global['taiga-ui'].kit.components.progress = {}), global.ng.common, global.ng.core, global.cdk, global.rxjs, global.rxjs.operators, global.common$1));
5
+ }(this, (function (exports, common, core, cdk, rxjs, operators, common$1) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -223,14 +223,14 @@
223
223
  return value;
224
224
  }
225
225
 
226
- var TuiProgressColorSegmentsPipe = /** @class */ (function () {
227
- function TuiProgressColorSegmentsPipe(userAgent, elementRef) {
226
+ var AbstractTuiColorSegments = /** @class */ (function () {
227
+ function AbstractTuiColorSegments(userAgent, elementRef) {
228
228
  this.userAgent = userAgent;
229
229
  this.elementRef = elementRef;
230
230
  this.isOldBrowsers = cdk.isEdgeOlderThan(cdk.CHROMIUM_EDGE_START_VERSION, this.userAgent) ||
231
231
  cdk.isIE(this.userAgent);
232
232
  }
233
- TuiProgressColorSegmentsPipe.prototype.transform = function (colors) {
233
+ AbstractTuiColorSegments.prototype.calculate = function (colors) {
234
234
  if (this.isOldBrowsers) {
235
235
  return colors[0];
236
236
  }
@@ -241,19 +241,51 @@
241
241
  }, '');
242
242
  return "linear-gradient(to right " + colorsString + ")";
243
243
  };
244
- TuiProgressColorSegmentsPipe.ctorParameters = function () { return [
244
+ AbstractTuiColorSegments.ctorParameters = function () { return [
245
245
  { type: String, decorators: [{ type: core.Inject, args: [common$1.USER_AGENT,] }] },
246
246
  { type: core.ElementRef, decorators: [{ type: core.Inject, args: [core.ElementRef,] }] }
247
247
  ]; };
248
- TuiProgressColorSegmentsPipe = __decorate([
249
- core.Pipe({
250
- name: 'tuiProgressColorSegments',
251
- }),
248
+ AbstractTuiColorSegments = __decorate([
249
+ core.Injectable(),
252
250
  __param(0, core.Inject(common$1.USER_AGENT)),
253
251
  __param(1, core.Inject(core.ElementRef))
252
+ ], AbstractTuiColorSegments);
253
+ return AbstractTuiColorSegments;
254
+ }());
255
+
256
+ var TuiProgressColorSegmentsAsyncPipe = /** @class */ (function (_super) {
257
+ __extends(TuiProgressColorSegmentsAsyncPipe, _super);
258
+ function TuiProgressColorSegmentsAsyncPipe() {
259
+ return _super !== null && _super.apply(this, arguments) || this;
260
+ }
261
+ TuiProgressColorSegmentsAsyncPipe.prototype.transform = function (colors) {
262
+ var _this = this;
263
+ return rxjs.timer(0).pipe(operators.map(function () { return _this.calculate(colors); }));
264
+ };
265
+ TuiProgressColorSegmentsAsyncPipe = __decorate([
266
+ core.Pipe({ name: 'tuiProgressColorSegmentsAsync' })
267
+ ], TuiProgressColorSegmentsAsyncPipe);
268
+ return TuiProgressColorSegmentsAsyncPipe;
269
+ }(AbstractTuiColorSegments));
270
+
271
+ /**
272
+ * @deprecated use tuiProgressColorSegmentsAsync instead
273
+ * {@link TuiProgressColorSegmentsAsyncPipe}
274
+ * example: `<progress [color]="colors | tuiProgressColorSegmentsAsync | async">`
275
+ */
276
+ var TuiProgressColorSegmentsPipe = /** @class */ (function (_super) {
277
+ __extends(TuiProgressColorSegmentsPipe, _super);
278
+ function TuiProgressColorSegmentsPipe() {
279
+ return _super !== null && _super.apply(this, arguments) || this;
280
+ }
281
+ TuiProgressColorSegmentsPipe.prototype.transform = function (colors) {
282
+ return this.calculate(colors);
283
+ };
284
+ TuiProgressColorSegmentsPipe = __decorate([
285
+ core.Pipe({ name: 'tuiProgressColorSegments' })
254
286
  ], TuiProgressColorSegmentsPipe);
255
287
  return TuiProgressColorSegmentsPipe;
256
- }());
288
+ }(AbstractTuiColorSegments));
257
289
 
258
290
  var TuiProgressBarComponent = /** @class */ (function () {
259
291
  function TuiProgressBarComponent() {
@@ -341,9 +373,9 @@
341
373
  TuiProgressCircleComponent = __decorate([
342
374
  core.Component({
343
375
  selector: 'tui-progress-circle',
344
- template: "<progress class=\"t-hidden-progress\" [value]=\"value\" [max]=\"max\"></progress>\n\n<svg class=\"t-svg\" height=\"100%\" width=\"100%\" aria-hidden=\"true\">\n <circle\n class=\"t-track\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"oldEdgeRadiusFallback\"\n ></circle>\n\n <circle\n #progressCircle\n class=\"t-progress\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"oldEdgeRadiusFallback\"\n ></circle>\n</svg>\n",
376
+ template: "<progress class=\"t-hidden-progress\" [value]=\"value\" [max]=\"max\"></progress>\n\n<svg height=\"100%\" width=\"100%\" aria-hidden=\"true\" class=\"t-svg\">\n <circle\n cx=\"50%\"\n cy=\"50%\"\n class=\"t-track\"\n [attr.r]=\"oldEdgeRadiusFallback\"\n ></circle>\n\n <circle\n #progressCircle\n cx=\"50%\"\n cy=\"50%\"\n class=\"t-progress\"\n [attr.r]=\"oldEdgeRadiusFallback\"\n ></circle>\n</svg>\n",
345
377
  changeDetection: core.ChangeDetectionStrategy.OnPush,
346
- styles: [":host{display:block;position:relative;color:var(--tui-primary);transform:rotate(-90deg);transform-origin:center;font-size:1rem}:host[data-size='s']{width:2em;height:2em}:host[data-size='s'] .t-track{\n r: 0.75em;\n stroke-width:.5em}:host[data-size='s'] .t-progress{\n r: 0.75em;\n stroke-width:.5em;stroke-dasharray:4.71238898em;stroke-dashoffset:calc(4.71238898em - var(--progress-percentage) * 4.71238898em)}:host[data-size='m']{width:3em;height:3em}:host[data-size='m'] .t-track{\n r: 1.375em;\n stroke-width:.25em}:host[data-size='m'] .t-progress{\n r: 1.3125em;\n stroke-width:.375em;stroke-dasharray:8.24668072em;stroke-dashoffset:calc(8.24668072em - var(--progress-percentage) * 8.24668072em)}:host[data-size='l']{width:4em;height:4em}:host[data-size='l'] .t-track{\n r: 1.875em;\n stroke-width:.25em}:host[data-size='l'] .t-progress{\n r: 1.8125em;\n stroke-width:.375em;stroke-dasharray:11.38827337em;stroke-dashoffset:calc(11.38827337em - var(--progress-percentage) * 11.38827337em)}:host[data-size=xl]{width:7em;height:7em}:host[data-size=xl] .t-track{\n r: 3.375em;\n stroke-width:.25em}:host[data-size=xl] .t-progress{\n r: 3.3125em;\n stroke-width:.375em;stroke-dasharray:20.81305133em;stroke-dashoffset:calc(20.81305133em - var(--progress-percentage) * 20.81305133em)}.t-track{fill:transparent;stroke:var(--tui-base-03)}.t-progress{fill:transparent;stroke:var(--tui-progress-color,currentColor);transition:stroke-dashoffset var(--tui-duration) linear}.t-hidden-progress{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.t-svg{overflow:unset}"]
378
+ styles: [":host{position:relative;display:block;color:var(--tui-primary);transform:rotate(-90deg);transform-origin:center;font-size:1rem}:host[data-size='s']{width:2em;height:2em}:host[data-size='s'] .t-track{\n r: 0.75em;\n stroke-width:.5em}:host[data-size='s'] .t-progress{\n r: 0.75em;\n stroke-width:.5em;stroke-dasharray:4.71238898em;stroke-dashoffset:calc(4.71238898em - var(--progress-percentage) * 4.71238898em)}:host[data-size='m']{width:3em;height:3em}:host[data-size='m'] .t-track{\n r: 1.375em;\n stroke-width:.25em}:host[data-size='m'] .t-progress{\n r: 1.3125em;\n stroke-width:.375em;stroke-dasharray:8.24668072em;stroke-dashoffset:calc(8.24668072em - var(--progress-percentage) * 8.24668072em)}:host[data-size='l']{width:4em;height:4em}:host[data-size='l'] .t-track{\n r: 1.875em;\n stroke-width:.25em}:host[data-size='l'] .t-progress{\n r: 1.8125em;\n stroke-width:.375em;stroke-dasharray:11.38827337em;stroke-dashoffset:calc(11.38827337em - var(--progress-percentage) * 11.38827337em)}:host[data-size=xl]{width:7em;height:7em}:host[data-size=xl] .t-track{\n r: 3.375em;\n stroke-width:.25em}:host[data-size=xl] .t-progress{\n r: 3.3125em;\n stroke-width:.375em;stroke-dasharray:20.81305133em;stroke-dashoffset:calc(20.81305133em - var(--progress-percentage) * 20.81305133em)}.t-track{fill:transparent;stroke:var(--tui-base-03)}.t-progress{fill:transparent;stroke:var(--tui-progress-color,currentColor);transition:stroke-dashoffset var(--tui-duration) linear}.t-hidden-progress{position:absolute;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0}.t-svg{overflow:unset}"]
347
379
  }),
348
380
  __param(0, core.Inject(common$1.USER_AGENT)),
349
381
  __param(1, core.Inject(common$1.WINDOW)),
@@ -360,7 +392,7 @@
360
392
  selector: 'label[tuiProgressLabel]',
361
393
  template: "<ng-content select=\"progress\"></ng-content>\n<ng-content select=\"tui-progress-circle\"></ng-content>\n<span class=\"t-label\">\n <ng-content></ng-content>\n</span>\n",
362
394
  changeDetection: core.ChangeDetectionStrategy.OnPush,
363
- styles: [":host{position:relative;display:inline-block}.t-label{position:absolute;top:0;left:0;width:100%;height:100%;font:var(--tui-font-text-s);color:var(--tui-text-01);display:flex;flex-direction:column;justify-content:center;align-items:center}"]
395
+ styles: [":host{position:relative;display:inline-block}.t-label{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;font:var(--tui-font-text-s);color:var(--tui-text-01);flex-direction:column;justify-content:center;align-items:center}"]
364
396
  })
365
397
  ], TuiProgressLabelComponent);
366
398
  return TuiProgressLabelComponent;
@@ -404,9 +436,9 @@
404
436
  TuiProgressSegmentedComponent = __decorate([
405
437
  core.Component({
406
438
  selector: 'tui-progress-segmented',
407
- template: "<progress class=\"t-hidden-progress\" [value]=\"value\" [max]=\"max\"></progress>\n\n<span\n *tuiRepeatTimes=\"let index of max\"\n class=\"t-segment\"\n aria-hidden=\"true\"\n [style.background]=\"index < value ? getActiveColor(index) : null\"\n></span>\n",
439
+ template: "<progress class=\"t-hidden-progress\" [value]=\"value\" [max]=\"max\"></progress>\n\n<span\n *tuiRepeatTimes=\"let index of max\"\n aria-hidden=\"true\"\n class=\"t-segment\"\n [style.background]=\"index < value ? getActiveColor(index) : null\"\n></span>\n",
408
440
  changeDetection: core.ChangeDetectionStrategy.OnPush,
409
- styles: [":host{display:flex}.t-segment{transition-property:background-color;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;flex:1 1 100%;border-radius:var(--tui-radius-xs);background-color:var(--tui-base-03)}.t-segment:not(:last-child){margin-right:.25rem}:host[data-size='s'] .t-segment{height:.25rem}:host[data-size='m'] .t-segment{height:.5rem}.t-hidden-progress{clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}"]
441
+ styles: [":host{display:flex}.t-segment{transition-property:background-color;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;flex:1 1 100%;border-radius:var(--tui-radius-xs);background-color:var(--tui-base-03)}.t-segment:not(:last-child){margin-right:.25rem}:host[data-size='s'] .t-segment{height:.25rem}:host[data-size='m'] .t-segment{height:.5rem}.t-hidden-progress{position:absolute;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0}"]
410
442
  })
411
443
  ], TuiProgressSegmentedComponent);
412
444
  return TuiProgressSegmentedComponent;
@@ -421,6 +453,7 @@
421
453
  declarations: [
422
454
  TuiProgressBarComponent,
423
455
  TuiProgressColorSegmentsPipe,
456
+ TuiProgressColorSegmentsAsyncPipe,
424
457
  TuiProgressCircleComponent,
425
458
  TuiProgressLabelComponent,
426
459
  TuiProgressSegmentedComponent,
@@ -429,6 +462,7 @@
429
462
  TuiProgressBarComponent,
430
463
  TuiProgressCircleComponent,
431
464
  TuiProgressColorSegmentsPipe,
465
+ TuiProgressColorSegmentsAsyncPipe,
432
466
  TuiProgressLabelComponent,
433
467
  TuiProgressSegmentedComponent,
434
468
  ],
@@ -437,8 +471,10 @@
437
471
  return TuiProgressModule;
438
472
  }());
439
473
 
474
+ exports.AbstractTuiColorSegments = AbstractTuiColorSegments;
440
475
  exports.TuiProgressBarComponent = TuiProgressBarComponent;
441
476
  exports.TuiProgressCircleComponent = TuiProgressCircleComponent;
477
+ exports.TuiProgressColorSegmentsAsyncPipe = TuiProgressColorSegmentsAsyncPipe;
442
478
  exports.TuiProgressColorSegmentsPipe = TuiProgressColorSegmentsPipe;
443
479
  exports.TuiProgressLabelComponent = TuiProgressLabelComponent;
444
480
  exports.TuiProgressModule = TuiProgressModule;