@taiga-ui/kit 2.28.0 → 2.32.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 (501) hide show
  1. package/README.md +4 -5
  2. package/abstract/slider/slider.d.ts +1 -1
  3. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-kit-abstract.umd.js +6 -5
  5. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-abstract.umd.min.js +2 -2
  7. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-arrow.umd.js +31 -8
  9. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-arrow.umd.min.js +2 -2
  11. package/bundles/taiga-ui-kit-components-arrow.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +4 -1
  13. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +2 -2
  15. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-carousel.umd.js +5 -4
  17. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-carousel.umd.min.js +1 -1
  19. package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox-block.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
  25. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
  27. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-combo-box.umd.js +13 -19
  29. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +2 -2
  31. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-count.umd.js +2 -6
  33. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +1 -1
  35. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +28 -13
  37. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +40 -23
  41. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +2 -2
  43. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-input-date.umd.js +27 -12
  45. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +2 -2
  47. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -8
  49. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
  51. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -15
  53. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js +1 -1
  55. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -8
  57. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  59. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -8
  61. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  63. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-input-number.umd.js +12 -12
  65. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  67. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  68. package/bundles/taiga-ui-kit-components-input-password.umd.js +2 -9
  69. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  70. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  71. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  72. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +46 -25
  73. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  74. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  75. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-input-phone.umd.js +3 -3
  77. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  79. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-input-range.umd.js +7 -4
  81. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  83. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-input-slider.umd.js +7 -4
  85. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  87. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-input-tag.umd.js +3 -3
  89. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  91. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-input-time.umd.js +14 -14
  93. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-input-time.umd.min.js +2 -2
  95. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  97. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  99. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-multi-select.umd.js +23 -18
  101. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +2 -2
  103. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components-rating.umd.js +368 -0
  105. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -0
  106. package/bundles/taiga-ui-kit-components-rating.umd.min.js +16 -0
  107. package/bundles/taiga-ui-kit-components-rating.umd.min.js.map +1 -0
  108. package/bundles/taiga-ui-kit-components-select.umd.js +11 -16
  109. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  110. package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
  111. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  112. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  114. package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
  115. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  116. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  117. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  118. package/bundles/taiga-ui-kit-components-tree.umd.js +23 -13
  119. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  120. package/bundles/taiga-ui-kit-components-tree.umd.min.js +2 -2
  121. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -1
  122. package/bundles/taiga-ui-kit-components.umd.js +12 -4
  123. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  124. package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
  125. package/bundles/taiga-ui-kit-constants.umd.js +16 -0
  126. package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-constants.umd.min.js +1 -1
  128. package/bundles/taiga-ui-kit-constants.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  130. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-kit-tokens.umd.js +7 -0
  132. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  133. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  134. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  135. package/bundles/taiga-ui-kit-utils-mask.umd.js +65 -22
  136. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  137. package/bundles/taiga-ui-kit-utils-mask.umd.min.js +2 -2
  138. package/bundles/taiga-ui-kit-utils-mask.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js +241 -6
  140. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.min.js +15 -1
  142. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.min.js.map +1 -1
  143. package/components/arrow/arrow-options.d.ts +16 -0
  144. package/components/arrow/arrow.component.d.ts +5 -3
  145. package/components/arrow/index.d.ts +1 -0
  146. package/components/arrow/taiga-ui-kit-components-arrow.metadata.json +1 -1
  147. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  148. package/components/carousel/taiga-ui-kit-components-carousel.metadata.json +1 -1
  149. package/components/checkbox-block/checkbox-block.component.d.ts +1 -1
  150. package/components/checkbox-labeled/checkbox-labeled.component.d.ts +1 -1
  151. package/components/combo-box/combo-box.component.d.ts +3 -2
  152. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  153. package/components/index.d.ts +1 -0
  154. package/components/input-date/input-date.component.d.ts +5 -4
  155. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  156. package/components/input-date-range/input-date-range.component.d.ts +5 -4
  157. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  158. package/components/input-date-time/input-date-time.component.d.ts +5 -5
  159. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  160. package/components/input-file/input-file.component.d.ts +0 -1
  161. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  162. package/components/input-inline/input-inline.component.d.ts +0 -1
  163. package/components/input-inline/taiga-ui-kit-components-input-inline.metadata.json +1 -1
  164. package/components/input-month/input-month.component.d.ts +0 -1
  165. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  166. package/components/input-month-range/input-month-range.component.d.ts +0 -1
  167. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  168. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  169. package/components/input-password/input-password.component.d.ts +0 -1
  170. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  171. package/components/input-phone-international/const/countries.d.ts +15 -7
  172. package/components/input-phone-international/country-iso-code.d.ts +1 -1
  173. package/components/input-phone-international/index.d.ts +2 -0
  174. package/components/input-phone-international/input-phone-international.component.d.ts +2 -2
  175. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  176. package/components/input-phone-international/tokens/countries-masks.d.ts +3 -0
  177. package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -0
  178. package/components/input-range/input-range.component.d.ts +2 -1
  179. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  180. package/components/input-slider/input-slider.component.d.ts +2 -1
  181. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  182. package/components/input-tag/input-tag.component.d.ts +1 -1
  183. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  184. package/components/input-time/input-time-options.d.ts +3 -0
  185. package/components/input-time/input-time.component.d.ts +7 -8
  186. package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
  187. package/components/multi-select/multi-select.component.d.ts +4 -2
  188. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  189. package/components/rating/index.d.ts +3 -0
  190. package/components/rating/package.json +13 -0
  191. package/components/rating/rating-options.d.ts +9 -0
  192. package/components/rating/rating.component.d.ts +21 -0
  193. package/components/rating/rating.module.d.ts +2 -0
  194. package/components/rating/taiga-ui-kit-components-rating.d.ts +4 -0
  195. package/components/rating/taiga-ui-kit-components-rating.metadata.json +1 -0
  196. package/components/select/select.component.d.ts +3 -2
  197. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  198. package/components/taiga-ui-kit-components.metadata.json +1 -1
  199. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  200. package/components/tree/components/tree/tree.component.d.ts +3 -1
  201. package/components/tree/taiga-ui-kit-components-tree.metadata.json +1 -1
  202. package/constants/index.d.ts +1 -0
  203. package/constants/masks.d.ts +8 -0
  204. package/constants/max-time-values.d.ts +2 -0
  205. package/constants/taiga-ui-kit-constants.metadata.json +1 -1
  206. package/directives/lazy-loading/lazy-loading.service.d.ts +1 -1
  207. package/esm2015/abstract/input-slider.js +4 -2
  208. package/esm2015/abstract/slider/slider.js +1 -1
  209. package/esm2015/components/arrow/arrow-options.js +17 -0
  210. package/esm2015/components/arrow/arrow.component.js +12 -8
  211. package/esm2015/components/arrow/arrow.module.js +3 -2
  212. package/esm2015/components/arrow/index.js +2 -1
  213. package/esm2015/components/calendar-month/calendar-month.component.js +5 -2
  214. package/esm2015/components/carousel/carousel-scroll.directive.js +5 -4
  215. package/esm2015/components/carousel/carousel.component.js +1 -1
  216. package/esm2015/components/checkbox/checkbox.component.js +2 -2
  217. package/esm2015/components/checkbox-block/checkbox-block.component.js +1 -1
  218. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +1 -1
  219. package/esm2015/components/combo-box/combo-box.component.js +15 -17
  220. package/esm2015/components/index.js +2 -1
  221. package/esm2015/components/input/input.component.js +2 -2
  222. package/esm2015/components/input-count/input-count.component.js +3 -7
  223. package/esm2015/components/input-date/input-date.component.js +31 -18
  224. package/esm2015/components/input-date-range/input-date-range.component.js +32 -19
  225. package/esm2015/components/input-date-time/input-date-time.component.js +45 -24
  226. package/esm2015/components/input-file/input-file.component.js +2 -5
  227. package/esm2015/components/input-inline/input-inline.component.js +4 -13
  228. package/esm2015/components/input-month/input-month.component.js +2 -5
  229. package/esm2015/components/input-month-range/input-month-range.component.js +2 -5
  230. package/esm2015/components/input-number/input-number.component.js +15 -15
  231. package/esm2015/components/input-password/input-password.component.js +3 -6
  232. package/esm2015/components/input-phone/input-phone.component.js +4 -4
  233. package/esm2015/components/input-phone-international/const/countries.js +21 -10
  234. package/esm2015/components/input-phone-international/country-iso-code.js +2 -2
  235. package/esm2015/components/input-phone-international/index.js +3 -1
  236. package/esm2015/components/input-phone-international/input-phone-international.component.js +15 -18
  237. package/esm2015/components/input-phone-international/tokens/countries-masks.js +6 -0
  238. package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +9 -0
  239. package/esm2015/components/input-range/input-range.component.js +9 -6
  240. package/esm2015/components/input-slider/input-slider.component.js +9 -6
  241. package/esm2015/components/input-tag/input-tag.component.js +4 -4
  242. package/esm2015/components/input-time/input-time-options.js +4 -1
  243. package/esm2015/components/input-time/input-time.component.js +10 -8
  244. package/esm2015/components/multi-select/multi-select.component.js +17 -11
  245. package/esm2015/components/rating/index.js +4 -0
  246. package/esm2015/components/rating/rating-options.js +11 -0
  247. package/esm2015/components/rating/rating.component.js +91 -0
  248. package/esm2015/components/rating/rating.module.js +23 -0
  249. package/esm2015/components/rating/taiga-ui-kit-components-rating.js +5 -0
  250. package/esm2015/components/select/select.component.js +13 -14
  251. package/esm2015/components/tag/tag.component.js +2 -2
  252. package/esm2015/components/text-area/text-area.component.js +3 -3
  253. package/esm2015/components/tree/components/tree/tree.component.js +11 -6
  254. package/esm2015/components/tree/tree.module.js +9 -2
  255. package/esm2015/constants/index.js +2 -1
  256. package/esm2015/constants/masks.js +9 -1
  257. package/esm2015/constants/max-time-values.js +7 -0
  258. package/esm2015/directives/lazy-loading/lazy-loading.service.js +1 -1
  259. package/esm2015/tokens/date-inputs-value-transformers.js +5 -0
  260. package/esm2015/tokens/index.js +2 -1
  261. package/esm2015/types/index.js +1 -1
  262. package/esm2015/types/time-format-parts.js +1 -0
  263. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +6 -4
  264. package/esm2015/utils/mask/create-auto-corrected-date-range-pipe.js +9 -6
  265. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +6 -6
  266. package/esm2015/utils/mask/create-auto-corrected-time-pipe.js +10 -7
  267. package/esm2015/utils/mask/create-date-mask.js +16 -0
  268. package/esm2015/utils/mask/create-date-range-mask.js +14 -0
  269. package/esm2015/utils/mask/create-time-mask.js +19 -8
  270. package/esm2015/utils/mask/index.js +3 -1
  271. package/esm2015/utils/miscellaneous/get-precision.js +8 -0
  272. package/esm2015/utils/miscellaneous/index.js +2 -1
  273. package/esm2015/utils/miscellaneous/replay-control-value-changes-factory.js +10 -4
  274. package/esm5/abstract/input-slider.js +4 -2
  275. package/esm5/abstract/slider/slider.js +1 -1
  276. package/esm5/components/arrow/arrow-options.js +17 -0
  277. package/esm5/components/arrow/arrow.component.js +12 -8
  278. package/esm5/components/arrow/arrow.module.js +3 -2
  279. package/esm5/components/arrow/index.js +2 -1
  280. package/esm5/components/calendar-month/calendar-month.component.js +5 -2
  281. package/esm5/components/carousel/carousel-scroll.directive.js +5 -4
  282. package/esm5/components/carousel/carousel.component.js +1 -1
  283. package/esm5/components/checkbox/checkbox.component.js +2 -2
  284. package/esm5/components/checkbox-block/checkbox-block.component.js +1 -1
  285. package/esm5/components/checkbox-labeled/checkbox-labeled.component.js +1 -1
  286. package/esm5/components/combo-box/combo-box.component.js +15 -21
  287. package/esm5/components/index.js +2 -1
  288. package/esm5/components/input/input.component.js +2 -2
  289. package/esm5/components/input-count/input-count.component.js +3 -7
  290. package/esm5/components/input-date/input-date.component.js +33 -18
  291. package/esm5/components/input-date-range/input-date-range.component.js +34 -19
  292. package/esm5/components/input-date-time/input-date-time.component.js +45 -28
  293. package/esm5/components/input-file/input-file.component.js +2 -9
  294. package/esm5/components/input-inline/input-inline.component.js +4 -17
  295. package/esm5/components/input-month/input-month.component.js +2 -9
  296. package/esm5/components/input-month-range/input-month-range.component.js +2 -9
  297. package/esm5/components/input-number/input-number.component.js +14 -14
  298. package/esm5/components/input-password/input-password.component.js +3 -10
  299. package/esm5/components/input-phone/input-phone.component.js +4 -4
  300. package/esm5/components/input-phone-international/const/countries.js +21 -10
  301. package/esm5/components/input-phone-international/country-iso-code.js +2 -2
  302. package/esm5/components/input-phone-international/index.js +3 -1
  303. package/esm5/components/input-phone-international/input-phone-international.component.js +15 -18
  304. package/esm5/components/input-phone-international/tokens/countries-masks.js +6 -0
  305. package/esm5/components/input-phone-international/utils/extract-value-from-event.js +9 -0
  306. package/esm5/components/input-range/input-range.component.js +9 -6
  307. package/esm5/components/input-slider/input-slider.component.js +9 -6
  308. package/esm5/components/input-tag/input-tag.component.js +4 -4
  309. package/esm5/components/input-time/input-time-options.js +4 -1
  310. package/esm5/components/input-time/input-time.component.js +10 -12
  311. package/esm5/components/multi-select/multi-select.component.js +21 -15
  312. package/esm5/components/rating/index.js +4 -0
  313. package/esm5/components/rating/rating-options.js +11 -0
  314. package/esm5/components/rating/rating.component.js +111 -0
  315. package/esm5/components/rating/rating.module.js +26 -0
  316. package/esm5/components/rating/taiga-ui-kit-components-rating.js +5 -0
  317. package/esm5/components/select/select.component.js +13 -18
  318. package/esm5/components/tag/tag.component.js +1 -1
  319. package/esm5/components/text-area/text-area.component.js +3 -3
  320. package/esm5/components/tree/components/tree/tree.component.js +15 -9
  321. package/esm5/components/tree/tree.module.js +9 -2
  322. package/esm5/constants/index.js +2 -1
  323. package/esm5/constants/masks.js +9 -1
  324. package/esm5/constants/max-time-values.js +7 -0
  325. package/esm5/directives/lazy-loading/lazy-loading.service.js +1 -1
  326. package/esm5/tokens/date-inputs-value-transformers.js +5 -0
  327. package/esm5/tokens/index.js +2 -1
  328. package/esm5/types/index.js +1 -1
  329. package/esm5/types/time-format-parts.js +1 -0
  330. package/esm5/utils/mask/create-auto-corrected-date-pipe.js +6 -4
  331. package/esm5/utils/mask/create-auto-corrected-date-range-pipe.js +9 -6
  332. package/esm5/utils/mask/create-auto-corrected-date-time-pipe.js +6 -6
  333. package/esm5/utils/mask/create-auto-corrected-time-pipe.js +10 -7
  334. package/esm5/utils/mask/create-date-mask.js +17 -0
  335. package/esm5/utils/mask/create-date-range-mask.js +13 -0
  336. package/esm5/utils/mask/create-time-mask.js +18 -7
  337. package/esm5/utils/mask/index.js +3 -1
  338. package/esm5/utils/miscellaneous/get-precision.js +9 -0
  339. package/esm5/utils/miscellaneous/index.js +2 -1
  340. package/esm5/utils/miscellaneous/replay-control-value-changes-factory.js +12 -4
  341. package/fesm2015/taiga-ui-kit-abstract.js +3 -1
  342. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  343. package/fesm2015/taiga-ui-kit-components-arrow.js +29 -11
  344. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  345. package/fesm2015/taiga-ui-kit-components-calendar-month.js +4 -1
  346. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  347. package/fesm2015/taiga-ui-kit-components-carousel.js +5 -4
  348. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  349. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  350. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  351. package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
  352. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  353. package/fesm2015/taiga-ui-kit-components-combo-box.js +14 -16
  354. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  355. package/fesm2015/taiga-ui-kit-components-input-count.js +2 -6
  356. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  357. package/fesm2015/taiga-ui-kit-components-input-date-range.js +31 -18
  358. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  359. package/fesm2015/taiga-ui-kit-components-input-date-time.js +45 -24
  360. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  361. package/fesm2015/taiga-ui-kit-components-input-date.js +30 -17
  362. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  363. package/fesm2015/taiga-ui-kit-components-input-file.js +1 -4
  364. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  365. package/fesm2015/taiga-ui-kit-components-input-inline.js +3 -12
  366. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  367. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -4
  368. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  369. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -4
  370. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  371. package/fesm2015/taiga-ui-kit-components-input-number.js +14 -14
  372. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  373. package/fesm2015/taiga-ui-kit-components-input-password.js +2 -5
  374. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  375. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +46 -28
  376. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  377. package/fesm2015/taiga-ui-kit-components-input-phone.js +3 -3
  378. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  379. package/fesm2015/taiga-ui-kit-components-input-range.js +8 -5
  380. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  381. package/fesm2015/taiga-ui-kit-components-input-slider.js +8 -5
  382. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  383. package/fesm2015/taiga-ui-kit-components-input-tag.js +3 -3
  384. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  385. package/fesm2015/taiga-ui-kit-components-input-time.js +11 -6
  386. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  387. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  388. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  389. package/fesm2015/taiga-ui-kit-components-multi-select.js +16 -10
  390. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  391. package/fesm2015/taiga-ui-kit-components-rating.js +123 -0
  392. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -0
  393. package/fesm2015/taiga-ui-kit-components-select.js +12 -13
  394. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  395. package/fesm2015/taiga-ui-kit-components-tag.js +1 -1
  396. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  397. package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
  398. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  399. package/fesm2015/taiga-ui-kit-components-tree.js +17 -8
  400. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  401. package/fesm2015/taiga-ui-kit-components.js +1 -0
  402. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  403. package/fesm2015/taiga-ui-kit-constants.js +16 -1
  404. package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
  405. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  406. package/fesm2015/taiga-ui-kit-tokens.js +5 -1
  407. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  408. package/fesm2015/taiga-ui-kit-utils-mask.js +71 -27
  409. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js +17 -3
  411. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  412. package/fesm5/taiga-ui-kit-abstract.js +3 -1
  413. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  414. package/fesm5/taiga-ui-kit-components-arrow.js +29 -11
  415. package/fesm5/taiga-ui-kit-components-arrow.js.map +1 -1
  416. package/fesm5/taiga-ui-kit-components-calendar-month.js +4 -1
  417. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  418. package/fesm5/taiga-ui-kit-components-carousel.js +5 -4
  419. package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -1
  420. package/fesm5/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  421. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  422. package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
  423. package/fesm5/taiga-ui-kit-components-checkbox.js.map +1 -1
  424. package/fesm5/taiga-ui-kit-components-combo-box.js +14 -20
  425. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  426. package/fesm5/taiga-ui-kit-components-input-count.js +2 -6
  427. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  428. package/fesm5/taiga-ui-kit-components-input-date-range.js +33 -18
  429. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  430. package/fesm5/taiga-ui-kit-components-input-date-time.js +45 -28
  431. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  432. package/fesm5/taiga-ui-kit-components-input-date.js +32 -17
  433. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  434. package/fesm5/taiga-ui-kit-components-input-file.js +1 -8
  435. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  436. package/fesm5/taiga-ui-kit-components-input-inline.js +3 -16
  437. package/fesm5/taiga-ui-kit-components-input-inline.js.map +1 -1
  438. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -8
  439. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  440. package/fesm5/taiga-ui-kit-components-input-month.js +1 -8
  441. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  442. package/fesm5/taiga-ui-kit-components-input-number.js +13 -13
  443. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  444. package/fesm5/taiga-ui-kit-components-input-password.js +2 -9
  445. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  446. package/fesm5/taiga-ui-kit-components-input-phone-international.js +46 -28
  447. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  448. package/fesm5/taiga-ui-kit-components-input-phone.js +3 -3
  449. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  450. package/fesm5/taiga-ui-kit-components-input-range.js +8 -5
  451. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  452. package/fesm5/taiga-ui-kit-components-input-slider.js +8 -5
  453. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  454. package/fesm5/taiga-ui-kit-components-input-tag.js +3 -3
  455. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  456. package/fesm5/taiga-ui-kit-components-input-time.js +11 -10
  457. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  458. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  459. package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
  460. package/fesm5/taiga-ui-kit-components-multi-select.js +20 -14
  461. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  462. package/fesm5/taiga-ui-kit-components-rating.js +146 -0
  463. package/fesm5/taiga-ui-kit-components-rating.js.map +1 -0
  464. package/fesm5/taiga-ui-kit-components-select.js +12 -17
  465. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  466. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  467. package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
  468. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  469. package/fesm5/taiga-ui-kit-components-tree.js +21 -11
  470. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -1
  471. package/fesm5/taiga-ui-kit-components.js +1 -0
  472. package/fesm5/taiga-ui-kit-components.js.map +1 -1
  473. package/fesm5/taiga-ui-kit-constants.js +16 -1
  474. package/fesm5/taiga-ui-kit-constants.js.map +1 -1
  475. package/fesm5/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  476. package/fesm5/taiga-ui-kit-tokens.js +5 -1
  477. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  478. package/fesm5/taiga-ui-kit-utils-mask.js +67 -26
  479. package/fesm5/taiga-ui-kit-utils-mask.js.map +1 -1
  480. package/fesm5/taiga-ui-kit-utils-miscellaneous.js +20 -3
  481. package/fesm5/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  482. package/package.json +14 -14
  483. package/tokens/date-inputs-value-transformers.d.ts +5 -0
  484. package/tokens/index.d.ts +1 -0
  485. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  486. package/types/index.d.ts +1 -0
  487. package/types/taiga-ui-kit-types.metadata.json +1 -1
  488. package/types/time-format-parts.d.ts +1 -0
  489. package/utils/mask/create-auto-corrected-date-pipe.d.ts +7 -3
  490. package/utils/mask/create-auto-corrected-date-range-pipe.d.ts +7 -2
  491. package/utils/mask/create-auto-corrected-date-time-pipe.d.ts +8 -3
  492. package/utils/mask/create-auto-corrected-time-pipe.d.ts +3 -2
  493. package/utils/mask/create-date-mask.d.ts +3 -0
  494. package/utils/mask/create-date-range-mask.d.ts +3 -0
  495. package/utils/mask/create-time-mask.d.ts +2 -1
  496. package/utils/mask/index.d.ts +2 -0
  497. package/utils/mask/taiga-ui-kit-utils-mask.metadata.json +1 -1
  498. package/utils/miscellaneous/get-precision.d.ts +4 -0
  499. package/utils/miscellaneous/index.d.ts +1 -0
  500. package/utils/miscellaneous/replay-control-value-changes-factory.d.ts +3 -2
  501. package/utils/miscellaneous/taiga-ui-kit-utils-miscellaneous.metadata.json +1 -1
@@ -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.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","datalist","open","valueMapper","group","EMPTY_ARRAY","map","item","TuiStringifiableItem","disabledItemHandlerWrapper","handler","stringifiable","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","ContentChild","TUI_DATA_LIST_ACCESSOR","ViewChild","TuiHostedDropdownComponent","TuiInputTagComponent","Input","tuiDefaultProp","HostBinding","Output","TuiDataListDirective","read","TemplateRef","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","EMPTY_QUERY","label","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 @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 @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 @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent = '';\n\n open = false;\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 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 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 @tuiPure\n private getContext(\n $implicit: ReadonlyArray<T>,\n ): TuiContextWithImplicit<ReadonlyArray<T>> {\n return {$implicit};\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","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiIdentityMatcher, tuiPure} from '@taiga-ui/cdk';\nimport {isFlat} from '@taiga-ui/kit/utils';\n\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 @ContentChildren(TuiOptionComponent)\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n label = '';\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';\n\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';\n\nimport {TuiHideSelectedPipe} from './hide-selected.pipe';\nimport {TuiMultiSelectComponent} from './multi-select.component';\nimport {TuiMultiSelectGroupComponent} from './multi-select-group/multi-select-group.component';\nimport {TuiMultiSelectGroupDirective} from './multi-select-group/multi-select-group.directive';\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"]}
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","arrowMode","_this","_super","this","stringify","TUI_DEFAULT_STRINGIFY","identityMatcher","TUI_DEFAULT_IDENTITY_MATCHER","expandable","search","editable","disabledItemHandler","ALWAYS_FALSE_HANDLER","valueContent","searchChange","EventEmitter","datalist","open","valueMapper","group","EMPTY_ARRAY","map","item","TuiStringifiableItem","disabledItemHandlerWrapper","handler","stringifiable","define","iconBlank","constants","__","constructor","prototype","create","__extends","interactive","disabled","input","nativeFocusableElement","focused","hostedDropdown","computedGroup","searchString","getContext","getStringifier","_a","$implicit","onHoveredChange","hovered","updateHovered","onSpace","event","preventDefault","readOnly","handleOption","option","index","findIndex","updateValue","filter","_","updateSearch","onEnter","options","accessor","getOptions","indexOf","slice","onClick","isNativeFocused","_b","updateOpen","onArrowClick","focusInput","onInput","onSearch","onActiveZone","active","updateFocused","setDisabledState","emit","preventScroll","setNativeFocused","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","TuiSvgService","TUI_ARROW_MODE","ContentChild","TUI_DATA_LIST_ACCESSOR","ViewChild","TuiHostedDropdownComponent","TuiInputTagComponent","Input","tuiDefaultProp","HostBinding","Output","TuiDataListDirective","read","TemplateRef","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","isFlat","filter2d","matcher","subitems","every","selected","Pipe","name","pure","TuiMultiSelectGroupComponent","host","EMPTY_QUERY","label","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 {TUI_ARROW_MODE, TuiArrowMode} from '@taiga-ui/kit/components/arrow';\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 @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 @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 @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent = '';\n\n open = false;\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_ARROW_MODE)\n private readonly arrowMode: TuiArrowMode,\n ) {\n super(control, changeDetectorRef);\n\n svgService.define({iconBlank});\n }\n\n get arrow(): PolymorpheusContent {\n return !this.interactive ? this.arrowMode.disabled : this.arrowMode.interactive;\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 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 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 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.hostedDropdown?.updateOpen(!this.open);\n }\n }\n\n onArrowClick() {\n this.hostedDropdown?.updateOpen(!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 @tuiPure\n private getContext(\n $implicit: ReadonlyArray<T>,\n ): TuiContextWithImplicit<ReadonlyArray<T>> {\n return {$implicit};\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","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {TuiIdentityMatcher, tuiPure} from '@taiga-ui/cdk';\nimport {isFlat} from '@taiga-ui/kit/utils';\n\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 @ContentChildren(TuiOptionComponent)\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n label = '';\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';\n\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';\n\nimport {TuiHideSelectedPipe} from './hide-selected.pipe';\nimport {TuiMultiSelectComponent} from './multi-select.component';\nimport {TuiMultiSelectGroupComponent} from './multi-select-group/multi-select-group.component';\nimport {TuiMultiSelectGroupDirective} from './multi-select-group/multi-select-group.directive';\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"]}
@@ -0,0 +1,368 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/forms'), require('@taiga-ui/cdk'), require('@taiga-ui/core')) :
3
+ typeof define === 'function' && define.amd ? define('@taiga-ui/kit/components/rating', ['exports', '@angular/core', '@angular/forms', '@taiga-ui/cdk', '@taiga-ui/core'], 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.rating = {}), global.ng.core, global.ng.forms, global.cdk, global.core$1));
5
+ }(this, (function (exports, core, forms, cdk, core$1) { 'use strict';
6
+
7
+ /*! *****************************************************************************
8
+ Copyright (c) Microsoft Corporation.
9
+
10
+ Permission to use, copy, modify, and/or distribute this software for any
11
+ purpose with or without fee is hereby granted.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
+ PERFORMANCE OF THIS SOFTWARE.
20
+ ***************************************************************************** */
21
+ /* global Reflect, Promise */
22
+
23
+ var extendStatics = function(d, b) {
24
+ extendStatics = Object.setPrototypeOf ||
25
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
26
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
27
+ return extendStatics(d, b);
28
+ };
29
+
30
+ function __extends(d, b) {
31
+ extendStatics(d, b);
32
+ function __() { this.constructor = d; }
33
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
+ }
35
+
36
+ var __assign = function() {
37
+ __assign = Object.assign || function __assign(t) {
38
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
39
+ s = arguments[i];
40
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
41
+ }
42
+ return t;
43
+ };
44
+ return __assign.apply(this, arguments);
45
+ };
46
+
47
+ function __rest(s, e) {
48
+ var t = {};
49
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
50
+ t[p] = s[p];
51
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
52
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
53
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
54
+ t[p[i]] = s[p[i]];
55
+ }
56
+ return t;
57
+ }
58
+
59
+ function __decorate(decorators, target, key, desc) {
60
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
62
+ 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;
63
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
64
+ }
65
+
66
+ function __param(paramIndex, decorator) {
67
+ return function (target, key) { decorator(target, key, paramIndex); }
68
+ }
69
+
70
+ function __metadata(metadataKey, metadataValue) {
71
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
72
+ }
73
+
74
+ function __awaiter(thisArg, _arguments, P, generator) {
75
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
76
+ return new (P || (P = Promise))(function (resolve, reject) {
77
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
78
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
79
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
80
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
81
+ });
82
+ }
83
+
84
+ function __generator(thisArg, body) {
85
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
86
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
87
+ function verb(n) { return function (v) { return step([n, v]); }; }
88
+ function step(op) {
89
+ if (f) throw new TypeError("Generator is already executing.");
90
+ while (_) try {
91
+ 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;
92
+ if (y = 0, t) op = [op[0] & 2, t.value];
93
+ switch (op[0]) {
94
+ case 0: case 1: t = op; break;
95
+ case 4: _.label++; return { value: op[1], done: false };
96
+ case 5: _.label++; y = op[1]; op = [0]; continue;
97
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
98
+ default:
99
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
100
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
101
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
102
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
103
+ if (t[2]) _.ops.pop();
104
+ _.trys.pop(); continue;
105
+ }
106
+ op = body.call(thisArg, _);
107
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
108
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
109
+ }
110
+ }
111
+
112
+ function __createBinding(o, m, k, k2) {
113
+ if (k2 === undefined) k2 = k;
114
+ o[k2] = m[k];
115
+ }
116
+
117
+ function __exportStar(m, exports) {
118
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
119
+ }
120
+
121
+ function __values(o) {
122
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
123
+ if (m) return m.call(o);
124
+ if (o && typeof o.length === "number") return {
125
+ next: function () {
126
+ if (o && i >= o.length) o = void 0;
127
+ return { value: o && o[i++], done: !o };
128
+ }
129
+ };
130
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
131
+ }
132
+
133
+ function __read(o, n) {
134
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
135
+ if (!m) return o;
136
+ var i = m.call(o), r, ar = [], e;
137
+ try {
138
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
139
+ }
140
+ catch (error) { e = { error: error }; }
141
+ finally {
142
+ try {
143
+ if (r && !r.done && (m = i["return"])) m.call(i);
144
+ }
145
+ finally { if (e) throw e.error; }
146
+ }
147
+ return ar;
148
+ }
149
+
150
+ function __spread() {
151
+ for (var ar = [], i = 0; i < arguments.length; i++)
152
+ ar = ar.concat(__read(arguments[i]));
153
+ return ar;
154
+ }
155
+
156
+ function __spreadArrays() {
157
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
158
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
159
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
160
+ r[k] = a[j];
161
+ return r;
162
+ };
163
+
164
+ function __await(v) {
165
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
166
+ }
167
+
168
+ function __asyncGenerator(thisArg, _arguments, generator) {
169
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
170
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
171
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
172
+ 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); }); }; }
173
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
174
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
175
+ function fulfill(value) { resume("next", value); }
176
+ function reject(value) { resume("throw", value); }
177
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
178
+ }
179
+
180
+ function __asyncDelegator(o) {
181
+ var i, p;
182
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
183
+ 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; }
184
+ }
185
+
186
+ function __asyncValues(o) {
187
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
188
+ var m = o[Symbol.asyncIterator], i;
189
+ 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);
190
+ 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); }); }; }
191
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
192
+ }
193
+
194
+ function __makeTemplateObject(cooked, raw) {
195
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
196
+ return cooked;
197
+ };
198
+
199
+ function __importStar(mod) {
200
+ if (mod && mod.__esModule) return mod;
201
+ var result = {};
202
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
203
+ result.default = mod;
204
+ return result;
205
+ }
206
+
207
+ function __importDefault(mod) {
208
+ return (mod && mod.__esModule) ? mod : { default: mod };
209
+ }
210
+
211
+ function __classPrivateFieldGet(receiver, privateMap) {
212
+ if (!privateMap.has(receiver)) {
213
+ throw new TypeError("attempted to get private field on non-instance");
214
+ }
215
+ return privateMap.get(receiver);
216
+ }
217
+
218
+ function __classPrivateFieldSet(receiver, privateMap, value) {
219
+ if (!privateMap.has(receiver)) {
220
+ throw new TypeError("attempted to set private field on non-instance");
221
+ }
222
+ privateMap.set(receiver, value);
223
+ return value;
224
+ }
225
+
226
+ var TUI_RATING_DEFAULT_OPTIONS = {
227
+ min: 0,
228
+ max: 5,
229
+ iconNormal: 'tuiIconStarLarge',
230
+ iconFilled: 'tuiIconStarFilledLarge',
231
+ };
232
+ var TUI_RATING_OPTIONS = new core.InjectionToken('Default parameters for rating component', {
233
+ factory: function () { return TUI_RATING_DEFAULT_OPTIONS; },
234
+ });
235
+
236
+ var TuiRatingComponent = /** @class */ (function (_super) {
237
+ __extends(TuiRatingComponent, _super);
238
+ function TuiRatingComponent(ngControl, changeDetectorRef, options) {
239
+ var _this = _super.call(this, ngControl, changeDetectorRef) || this;
240
+ _this.options = options;
241
+ _this.min = _this.options.min;
242
+ _this.max = _this.options.max;
243
+ _this.iconNormal = _this.options.iconNormal;
244
+ _this.iconFilled = _this.options.iconFilled;
245
+ return _this;
246
+ }
247
+ TuiRatingComponent_1 = TuiRatingComponent;
248
+ Object.defineProperty(TuiRatingComponent.prototype, "nativeFocusableElement", {
249
+ get: function () {
250
+ return this.computedDisabled || !this.focusableElement
251
+ ? null
252
+ : this.focusableElement.nativeElement;
253
+ },
254
+ enumerable: true,
255
+ configurable: true
256
+ });
257
+ Object.defineProperty(TuiRatingComponent.prototype, "focused", {
258
+ get: function () {
259
+ return cdk.isNativeFocused(this.nativeFocusableElement);
260
+ },
261
+ enumerable: true,
262
+ configurable: true
263
+ });
264
+ Object.defineProperty(TuiRatingComponent.prototype, "isFocusable", {
265
+ get: function () {
266
+ return !(this.readOnly || this.disabled);
267
+ },
268
+ enumerable: true,
269
+ configurable: true
270
+ });
271
+ Object.defineProperty(TuiRatingComponent.prototype, "percent", {
272
+ get: function () {
273
+ return (100 * this.value) / this.max;
274
+ },
275
+ enumerable: true,
276
+ configurable: true
277
+ });
278
+ TuiRatingComponent.prototype.onFocused = function (focused) {
279
+ this.updateFocused(focused);
280
+ };
281
+ TuiRatingComponent.prototype.setRateByReverseIndex = function (index) {
282
+ this.updateValue(this.max - index);
283
+ };
284
+ TuiRatingComponent.prototype.setRate = function (value) {
285
+ this.updateValue(value);
286
+ };
287
+ TuiRatingComponent.prototype.getFallbackValue = function () {
288
+ return 0;
289
+ };
290
+ var TuiRatingComponent_1;
291
+ TuiRatingComponent.ctorParameters = function () { return [
292
+ { type: forms.NgControl, decorators: [{ type: core.Optional }, { type: core.Self }, { type: core.Inject, args: [forms.NgControl,] }] },
293
+ { type: core.ChangeDetectorRef, decorators: [{ type: core.Inject, args: [core.ChangeDetectorRef,] }] },
294
+ { type: undefined, decorators: [{ type: core.Inject, args: [TUI_RATING_OPTIONS,] }] }
295
+ ]; };
296
+ __decorate([
297
+ core.ViewChild('focusableElement')
298
+ ], TuiRatingComponent.prototype, "focusableElement", void 0);
299
+ __decorate([
300
+ core.Input(),
301
+ cdk.tuiDefaultProp()
302
+ ], TuiRatingComponent.prototype, "min", void 0);
303
+ __decorate([
304
+ core.Input(),
305
+ cdk.tuiDefaultProp()
306
+ ], TuiRatingComponent.prototype, "max", void 0);
307
+ __decorate([
308
+ core.Input(),
309
+ cdk.tuiDefaultProp()
310
+ ], TuiRatingComponent.prototype, "iconNormal", void 0);
311
+ __decorate([
312
+ core.Input(),
313
+ cdk.tuiDefaultProp()
314
+ ], TuiRatingComponent.prototype, "iconFilled", void 0);
315
+ __decorate([
316
+ core.HostListener('focusin', ['true']),
317
+ core.HostListener('focusout', ['false'])
318
+ ], TuiRatingComponent.prototype, "onFocused", null);
319
+ TuiRatingComponent = TuiRatingComponent_1 = __decorate([
320
+ core.Component({
321
+ selector: 'tui-rating',
322
+ template: "<label>\n <ng-content></ng-content>\n\n <div class=\"t-host\">\n <div class=\"t-interactive\">\n <tui-svg\n *tuiRepeatTimes=\"let index of max\"\n class=\"t-icon-filled\"\n [src]=\"iconFilled\"\n (click)=\"setRateByReverseIndex(index)\"\n ></tui-svg>\n </div>\n\n <div class=\"t-wrapper\" [style.width.%]=\"percent\">\n <tui-svg\n *tuiRepeatTimes=\"let index of max\"\n class=\"t-icon-filled\"\n [src]=\"iconFilled\"\n ></tui-svg>\n </div>\n\n <tui-svg *tuiRepeatTimes=\"let item of max\" [src]=\"iconNormal\"></tui-svg>\n\n <input\n #focusableElement\n type=\"range\"\n step=\"1\"\n class=\"t-input\"\n [min]=\"min\"\n [max]=\"max\"\n [ngModel]=\"value\"\n [tuiFocusable]=\"isFocusable\"\n (ngModelChange)=\"setRate($event)\"\n />\n </div>\n</label>\n",
323
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
324
+ providers: [
325
+ {
326
+ provide: cdk.TUI_FOCUSABLE_ITEM_ACCESSOR,
327
+ useExisting: core.forwardRef(function () { return TuiRatingComponent_1; }),
328
+ },
329
+ ],
330
+ styles: [":host._disabled,:host._readonly{pointer-events:none}:host._disabled{opacity:var(--tui-disabled-opacity)}.t-host{position:relative;display:inline-flex}.t-input{pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0}.t-input::-webkit-slider-thumb{display:none}.t-input::-moz-range-thumb{opacity:0}.t-input,.t-interactive,.t-wrapper{position:absolute;left:0;bottom:0;width:100%;height:100%}.t-interactive,.t-wrapper{display:inline-flex;overflow:hidden;flex-direction:row-reverse;justify-content:flex-end;white-space:nowrap}.t-wrapper{pointer-events:none}.t-interactive{opacity:0}@media (hover:hover) and (pointer:fine){.t-interactive:hover{opacity:1}.t-interactive:hover~.t-wrapper{visibility:hidden}.t-interactive:hover .t-icon-filled{opacity:0}.t-interactive:hover .t-icon-filled:hover,.t-interactive:hover .t-icon-filled:hover~.t-icon-filled{opacity:1}}.t-icon-filled{position:relative;cursor:pointer}"]
331
+ }),
332
+ __param(0, core.Optional()),
333
+ __param(0, core.Self()),
334
+ __param(0, core.Inject(forms.NgControl)),
335
+ __param(1, core.Inject(core.ChangeDetectorRef)),
336
+ __param(2, core.Inject(TUI_RATING_OPTIONS))
337
+ ], TuiRatingComponent);
338
+ return TuiRatingComponent;
339
+ }(cdk.AbstractTuiControl));
340
+
341
+ var TuiRatingModule = /** @class */ (function () {
342
+ function TuiRatingModule() {
343
+ }
344
+ TuiRatingModule = __decorate([
345
+ core.NgModule({
346
+ imports: [
347
+ core$1.TuiSvgModule,
348
+ cdk.TuiFocusableModule,
349
+ cdk.TuiRepeatTimesModule,
350
+ forms.FormsModule,
351
+ forms.ReactiveFormsModule,
352
+ ],
353
+ declarations: [TuiRatingComponent],
354
+ exports: [TuiRatingComponent],
355
+ })
356
+ ], TuiRatingModule);
357
+ return TuiRatingModule;
358
+ }());
359
+
360
+ exports.TUI_RATING_DEFAULT_OPTIONS = TUI_RATING_DEFAULT_OPTIONS;
361
+ exports.TUI_RATING_OPTIONS = TUI_RATING_OPTIONS;
362
+ exports.TuiRatingComponent = TuiRatingComponent;
363
+ exports.TuiRatingModule = TuiRatingModule;
364
+
365
+ Object.defineProperty(exports, '__esModule', { value: true });
366
+
367
+ })));
368
+ //# sourceMappingURL=taiga-ui-kit-components-rating.umd.js.map