@taiga-ui/kit 2.40.0 → 2.42.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 (556) hide show
  1. package/abstract/input-slider.d.ts +27 -9
  2. package/abstract/slider/slider.d.ts +3 -6
  3. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-kit-abstract.umd.js +43 -64
  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-accordion.umd.js +1 -1
  9. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
  11. package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-action.umd.js +1 -1
  13. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-action.umd.min.js +1 -1
  15. package/bundles/taiga-ui-kit-components-action.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-avatar.umd.js +27 -5
  17. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-avatar.umd.min.js +2 -2
  19. package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  21. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
  23. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  25. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
  27. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-carousel.umd.js +1 -1
  29. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-carousel.umd.min.js +1 -1
  31. package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +1 -1
  33. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js +1 -1
  35. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
  37. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
  38. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-combo-box.umd.js +1 -1
  40. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
  42. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  44. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  46. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-files.umd.js +3 -3
  48. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-files.umd.min.js +1 -1
  50. package/bundles/taiga-ui-kit-components-files.umd.min.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  52. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-filter.umd.min.js +1 -1
  54. package/bundles/taiga-ui-kit-components-filter.umd.min.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-copy.umd.js +1 -1
  56. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
  58. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-count.umd.js +1 -1
  60. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +1 -1
  62. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +1 -1
  64. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  66. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +1 -1
  68. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
  70. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input-date.umd.js +1 -1
  72. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
  74. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -1
  76. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +2 -2
  78. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-input-files.umd.js +1 -1
  80. package/bundles/taiga-ui-kit-components-input-files.umd.min.js +2 -2
  81. package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  83. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  85. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  87. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  89. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-input-number.umd.js +2 -2
  91. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  93. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-input-password.umd.js +1 -1
  95. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  97. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-input-phone.umd.js +1 -1
  99. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  101. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-input-range.umd.js +196 -164
  103. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  105. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  106. package/bundles/taiga-ui-kit-components-input-slider.umd.js +6 -18
  107. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  108. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  109. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  110. package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -5
  111. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  112. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  113. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  114. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  115. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  116. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  117. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  118. package/bundles/taiga-ui-kit-components-marker-icon.umd.js +1 -1
  119. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  120. package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js +1 -1
  121. package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js.map +1 -1
  122. package/bundles/taiga-ui-kit-components-multi-select.umd.js +1 -1
  123. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  124. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +1 -1
  125. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  126. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  127. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  128. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  129. package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
  130. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +1 -1
  131. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  132. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js +1 -1
  133. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js.map +1 -1
  134. package/bundles/taiga-ui-kit-components-progress.umd.js +2 -2
  135. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  136. package/bundles/taiga-ui-kit-components-progress.umd.min.js +1 -1
  137. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  138. package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
  139. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  140. package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
  141. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  142. package/bundles/taiga-ui-kit-components-range.umd.js +221 -31
  143. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  144. package/bundles/taiga-ui-kit-components-range.umd.min.js +2 -2
  145. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  146. package/bundles/taiga-ui-kit-components-rating.umd.js +1 -1
  147. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  148. package/bundles/taiga-ui-kit-components-rating.umd.min.js +1 -1
  149. package/bundles/taiga-ui-kit-components-rating.umd.min.js.map +1 -1
  150. package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
  151. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  152. package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
  153. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  154. package/bundles/taiga-ui-kit-components-slider.umd.js +62 -6
  155. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  156. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  157. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  158. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
  159. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  160. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +2 -2
  161. package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
  162. package/bundles/taiga-ui-kit-components-tabs.umd.js +38 -36
  163. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  164. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  165. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
  167. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  168. package/bundles/taiga-ui-kit-components-tag.umd.min.js +1 -1
  169. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  170. package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
  171. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  172. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  173. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  174. package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
  175. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  176. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  177. package/bundles/taiga-ui-kit-tokens.umd.js +7 -1
  178. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  179. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  180. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  181. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  182. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  183. package/components/avatar/avatar-options.d.ts +11 -0
  184. package/components/avatar/avatar.component.d.ts +4 -2
  185. package/components/avatar/index.d.ts +1 -0
  186. package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
  187. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  188. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  189. package/components/carousel/taiga-ui-kit-components-carousel.metadata.json +1 -1
  190. package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
  191. package/components/checkbox-labeled/taiga-ui-kit-components-checkbox-labeled.metadata.json +1 -1
  192. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  193. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  194. package/components/files/taiga-ui-kit-components-files.metadata.json +1 -1
  195. package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
  196. package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
  197. package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
  198. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  199. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  200. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  201. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  202. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  203. package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -1
  204. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  205. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  206. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  207. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  208. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  209. package/components/input-range/input-range.component.d.ts +44 -31
  210. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  211. package/components/input-slider/input-slider.component.d.ts +2 -8
  212. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  213. package/components/input-tag/input-tag.component.d.ts +1 -1
  214. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  215. package/components/marker-icon/taiga-ui-kit-components-marker-icon.metadata.json +1 -1
  216. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  217. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  218. package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.metadata.json +1 -1
  219. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  220. package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
  221. package/components/range/index.d.ts +1 -0
  222. package/components/range/range-change.directive.d.ts +20 -0
  223. package/components/range/range.component.d.ts +33 -5
  224. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  225. package/components/rating/taiga-ui-kit-components-rating.metadata.json +1 -1
  226. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  227. package/components/slider/index.d.ts +1 -0
  228. package/components/slider/slider-old.component.d.ts +3 -1
  229. package/components/slider/slider-readonly.directive.d.ts +9 -0
  230. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  231. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  232. package/components/tabs/index.d.ts +0 -1
  233. package/components/tabs/tab/tab.component.d.ts +2 -1
  234. package/components/tabs/tabs/tabs.component.d.ts +2 -3
  235. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +4 -1
  236. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  237. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  238. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  239. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  240. package/esm2015/abstract/input-slider.js +30 -37
  241. package/esm2015/abstract/slider/slider.js +13 -19
  242. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +2 -2
  243. package/esm2015/components/action/action.component.js +2 -2
  244. package/esm2015/components/avatar/avatar-options.js +15 -0
  245. package/esm2015/components/avatar/avatar.component.js +14 -8
  246. package/esm2015/components/avatar/index.js +2 -1
  247. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  248. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  249. package/esm2015/components/carousel/carousel.component.js +2 -2
  250. package/esm2015/components/checkbox/checkbox.component.js +1 -1
  251. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
  252. package/esm2015/components/combo-box/combo-box.component.js +2 -2
  253. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  254. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  255. package/esm2015/components/files/file/file.component.js +2 -2
  256. package/esm2015/components/files/files.component.js +3 -3
  257. package/esm2015/components/filter/filter.component.js +2 -2
  258. package/esm2015/components/input/input.component.js +2 -2
  259. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  260. package/esm2015/components/input-count/input-count.component.js +2 -2
  261. package/esm2015/components/input-date/input-date.component.js +2 -2
  262. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  263. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  264. package/esm2015/components/input-file/file/file.component.js +2 -2
  265. package/esm2015/components/input-files/input-files.component.js +1 -1
  266. package/esm2015/components/input-month/input-month.component.js +2 -2
  267. package/esm2015/components/input-month-range/input-month-range.component.js +2 -2
  268. package/esm2015/components/input-number/input-number.component.js +3 -3
  269. package/esm2015/components/input-password/input-password.component.js +2 -2
  270. package/esm2015/components/input-phone/input-phone.component.js +2 -2
  271. package/esm2015/components/input-range/input-range.component.js +192 -156
  272. package/esm2015/components/input-range/input-range.module.js +13 -15
  273. package/esm2015/components/input-slider/input-slider.component.js +8 -20
  274. package/esm2015/components/input-tag/input-tag.component.js +6 -6
  275. package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
  276. package/esm2015/components/multi-select/multi-select.component.js +2 -2
  277. package/esm2015/components/pagination/pagination.component.js +2 -2
  278. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +2 -2
  279. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  280. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  281. package/esm2015/components/radio/radio.component.js +3 -3
  282. package/esm2015/components/range/index.js +2 -1
  283. package/esm2015/components/range/range-change.directive.js +83 -0
  284. package/esm2015/components/range/range.component.js +118 -28
  285. package/esm2015/components/range/range.module.js +10 -7
  286. package/esm2015/components/rating/rating.component.js +2 -2
  287. package/esm2015/components/select/select.component.js +2 -2
  288. package/esm2015/components/slider/index.js +2 -1
  289. package/esm2015/components/slider/slider-key-steps.directive.js +2 -2
  290. package/esm2015/components/slider/slider-old.component.js +11 -5
  291. package/esm2015/components/slider/slider-readonly.directive.js +50 -0
  292. package/esm2015/components/slider/slider.component.js +1 -1
  293. package/esm2015/components/slider/slider.module.js +4 -1
  294. package/esm2015/components/stepper/step/step.component.js +2 -2
  295. package/esm2015/components/tabs/index.js +1 -2
  296. package/esm2015/components/tabs/tab/tab.component.js +13 -9
  297. package/esm2015/components/tabs/tabs/tabs.component.js +5 -11
  298. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +24 -16
  299. package/esm2015/components/tabs/underline/underline.component.js +2 -2
  300. package/esm2015/components/tag/tag.component.js +3 -3
  301. package/esm2015/components/text-area/text-area.component.js +3 -3
  302. package/esm2015/components/toggle/toggle.component.js +1 -1
  303. package/esm2015/tokens/i18n.js +2 -2
  304. package/esm2015/tokens/index.js +2 -1
  305. package/esm2015/tokens/mobile-aware.js +2 -1
  306. package/esm2015/tokens/tab-margin.js +5 -0
  307. package/esm5/abstract/input-slider.js +30 -48
  308. package/esm5/abstract/slider/slider.js +13 -19
  309. package/esm5/components/accordion/accordion-item/accordion-item.component.js +2 -2
  310. package/esm5/components/action/action.component.js +2 -2
  311. package/esm5/components/avatar/avatar-options.js +16 -0
  312. package/esm5/components/avatar/avatar.component.js +14 -8
  313. package/esm5/components/avatar/index.js +2 -1
  314. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  315. package/esm5/components/calendar-month/calendar-month.component.js +2 -2
  316. package/esm5/components/carousel/carousel.component.js +2 -2
  317. package/esm5/components/checkbox/checkbox.component.js +1 -1
  318. package/esm5/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
  319. package/esm5/components/combo-box/combo-box.component.js +2 -2
  320. package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  321. package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  322. package/esm5/components/files/file/file.component.js +2 -2
  323. package/esm5/components/files/files.component.js +3 -3
  324. package/esm5/components/filter/filter.component.js +2 -2
  325. package/esm5/components/input/input.component.js +2 -2
  326. package/esm5/components/input-copy/input-copy.component.js +2 -2
  327. package/esm5/components/input-count/input-count.component.js +2 -2
  328. package/esm5/components/input-date/input-date.component.js +2 -2
  329. package/esm5/components/input-date-range/input-date-range.component.js +2 -2
  330. package/esm5/components/input-date-time/input-date-time.component.js +2 -2
  331. package/esm5/components/input-file/file/file.component.js +2 -2
  332. package/esm5/components/input-files/input-files.component.js +1 -1
  333. package/esm5/components/input-month/input-month.component.js +2 -2
  334. package/esm5/components/input-month-range/input-month-range.component.js +2 -2
  335. package/esm5/components/input-number/input-number.component.js +3 -3
  336. package/esm5/components/input-password/input-password.component.js +2 -2
  337. package/esm5/components/input-phone/input-phone.component.js +2 -2
  338. package/esm5/components/input-range/input-range.component.js +194 -157
  339. package/esm5/components/input-range/input-range.module.js +13 -15
  340. package/esm5/components/input-slider/input-slider.component.js +8 -20
  341. package/esm5/components/input-tag/input-tag.component.js +6 -6
  342. package/esm5/components/marker-icon/marker-icon.component.js +2 -2
  343. package/esm5/components/multi-select/multi-select.component.js +2 -2
  344. package/esm5/components/pagination/pagination.component.js +2 -2
  345. package/esm5/components/pdf-viewer/pdf-viewer.component.js +2 -2
  346. package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
  347. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  348. package/esm5/components/radio/radio.component.js +3 -3
  349. package/esm5/components/range/index.js +2 -1
  350. package/esm5/components/range/range-change.directive.js +101 -0
  351. package/esm5/components/range/range.component.js +126 -29
  352. package/esm5/components/range/range.module.js +10 -7
  353. package/esm5/components/rating/rating.component.js +2 -2
  354. package/esm5/components/select/select.component.js +2 -2
  355. package/esm5/components/slider/index.js +2 -1
  356. package/esm5/components/slider/slider-key-steps.directive.js +2 -2
  357. package/esm5/components/slider/slider-old.component.js +11 -5
  358. package/esm5/components/slider/slider-readonly.directive.js +51 -0
  359. package/esm5/components/slider/slider.component.js +1 -1
  360. package/esm5/components/slider/slider.module.js +4 -1
  361. package/esm5/components/stepper/step/step.component.js +2 -2
  362. package/esm5/components/tabs/index.js +1 -2
  363. package/esm5/components/tabs/tab/tab.component.js +13 -9
  364. package/esm5/components/tabs/tabs/tabs.component.js +5 -15
  365. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +27 -16
  366. package/esm5/components/tabs/underline/underline.component.js +2 -2
  367. package/esm5/components/tag/tag.component.js +3 -3
  368. package/esm5/components/text-area/text-area.component.js +3 -3
  369. package/esm5/components/toggle/toggle.component.js +1 -1
  370. package/esm5/tokens/i18n.js +2 -2
  371. package/esm5/tokens/index.js +2 -1
  372. package/esm5/tokens/mobile-aware.js +2 -1
  373. package/esm5/tokens/tab-margin.js +5 -0
  374. package/fesm2015/taiga-ui-kit-abstract.js +43 -55
  375. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  376. package/fesm2015/taiga-ui-kit-components-accordion.js +1 -1
  377. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  378. package/fesm2015/taiga-ui-kit-components-action.js +1 -1
  379. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  380. package/fesm2015/taiga-ui-kit-components-avatar.js +27 -8
  381. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  382. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  383. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  384. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  385. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  386. package/fesm2015/taiga-ui-kit-components-carousel.js +1 -1
  387. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  388. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +1 -1
  389. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  390. package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
  391. package/fesm2015/taiga-ui-kit-components-combo-box.js +1 -1
  392. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  393. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  394. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  395. package/fesm2015/taiga-ui-kit-components-files.js +3 -3
  396. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  397. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  398. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  399. package/fesm2015/taiga-ui-kit-components-input-copy.js +1 -1
  400. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  401. package/fesm2015/taiga-ui-kit-components-input-count.js +1 -1
  402. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  403. package/fesm2015/taiga-ui-kit-components-input-date-range.js +1 -1
  404. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  405. package/fesm2015/taiga-ui-kit-components-input-date-time.js +1 -1
  406. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  407. package/fesm2015/taiga-ui-kit-components-input-date.js +1 -1
  408. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  409. package/fesm2015/taiga-ui-kit-components-input-file.js +1 -1
  410. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  411. package/fesm2015/taiga-ui-kit-components-input-files.js +1 -1
  412. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  413. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  414. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  415. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  416. package/fesm2015/taiga-ui-kit-components-input-number.js +2 -2
  417. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  418. package/fesm2015/taiga-ui-kit-components-input-password.js +1 -1
  419. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  420. package/fesm2015/taiga-ui-kit-components-input-phone.js +1 -1
  421. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  422. package/fesm2015/taiga-ui-kit-components-input-range.js +198 -167
  423. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  424. package/fesm2015/taiga-ui-kit-components-input-slider.js +7 -19
  425. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  426. package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -5
  427. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  428. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  429. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  430. package/fesm2015/taiga-ui-kit-components-marker-icon.js +1 -1
  431. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  432. package/fesm2015/taiga-ui-kit-components-multi-select.js +1 -1
  433. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  434. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  435. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  436. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +1 -1
  437. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  438. package/fesm2015/taiga-ui-kit-components-progress.js +2 -2
  439. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  440. package/fesm2015/taiga-ui-kit-components-radio.js +2 -2
  441. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  442. package/fesm2015/taiga-ui-kit-components-range.js +199 -34
  443. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  444. package/fesm2015/taiga-ui-kit-components-rating.js +1 -1
  445. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  446. package/fesm2015/taiga-ui-kit-components-select.js +1 -1
  447. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  448. package/fesm2015/taiga-ui-kit-components-slider.js +61 -7
  449. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  450. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
  451. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  452. package/fesm2015/taiga-ui-kit-components-tabs.js +39 -34
  453. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  454. package/fesm2015/taiga-ui-kit-components-tag.js +2 -2
  455. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  456. package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
  457. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  458. package/fesm2015/taiga-ui-kit-components-toggle.js +1 -1
  459. package/fesm2015/taiga-ui-kit-tokens.js +7 -2
  460. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  461. package/fesm5/taiga-ui-kit-abstract.js +43 -66
  462. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  463. package/fesm5/taiga-ui-kit-components-accordion.js +1 -1
  464. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  465. package/fesm5/taiga-ui-kit-components-action.js +1 -1
  466. package/fesm5/taiga-ui-kit-components-action.js.map +1 -1
  467. package/fesm5/taiga-ui-kit-components-avatar.js +27 -8
  468. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  469. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
  470. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  471. package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
  472. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  473. package/fesm5/taiga-ui-kit-components-carousel.js +1 -1
  474. package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -1
  475. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js +1 -1
  476. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  477. package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
  478. package/fesm5/taiga-ui-kit-components-combo-box.js +1 -1
  479. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  480. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  481. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  482. package/fesm5/taiga-ui-kit-components-files.js +3 -3
  483. package/fesm5/taiga-ui-kit-components-files.js.map +1 -1
  484. package/fesm5/taiga-ui-kit-components-filter.js +1 -1
  485. package/fesm5/taiga-ui-kit-components-filter.js.map +1 -1
  486. package/fesm5/taiga-ui-kit-components-input-copy.js +1 -1
  487. package/fesm5/taiga-ui-kit-components-input-copy.js.map +1 -1
  488. package/fesm5/taiga-ui-kit-components-input-count.js +1 -1
  489. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  490. package/fesm5/taiga-ui-kit-components-input-date-range.js +1 -1
  491. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  492. package/fesm5/taiga-ui-kit-components-input-date-time.js +1 -1
  493. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  494. package/fesm5/taiga-ui-kit-components-input-date.js +1 -1
  495. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  496. package/fesm5/taiga-ui-kit-components-input-file.js +1 -1
  497. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  498. package/fesm5/taiga-ui-kit-components-input-files.js +1 -1
  499. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  500. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  501. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  502. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  503. package/fesm5/taiga-ui-kit-components-input-number.js +2 -2
  504. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  505. package/fesm5/taiga-ui-kit-components-input-password.js +1 -1
  506. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  507. package/fesm5/taiga-ui-kit-components-input-phone.js +1 -1
  508. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  509. package/fesm5/taiga-ui-kit-components-input-range.js +200 -168
  510. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  511. package/fesm5/taiga-ui-kit-components-input-slider.js +7 -19
  512. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  513. package/fesm5/taiga-ui-kit-components-input-tag.js +5 -5
  514. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  515. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  516. package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
  517. package/fesm5/taiga-ui-kit-components-marker-icon.js +1 -1
  518. package/fesm5/taiga-ui-kit-components-marker-icon.js.map +1 -1
  519. package/fesm5/taiga-ui-kit-components-multi-select.js +1 -1
  520. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  521. package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
  522. package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
  523. package/fesm5/taiga-ui-kit-components-pdf-viewer.js +1 -1
  524. package/fesm5/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  525. package/fesm5/taiga-ui-kit-components-progress.js +2 -2
  526. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  527. package/fesm5/taiga-ui-kit-components-radio.js +2 -2
  528. package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
  529. package/fesm5/taiga-ui-kit-components-range.js +225 -35
  530. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  531. package/fesm5/taiga-ui-kit-components-rating.js +1 -1
  532. package/fesm5/taiga-ui-kit-components-rating.js.map +1 -1
  533. package/fesm5/taiga-ui-kit-components-select.js +1 -1
  534. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  535. package/fesm5/taiga-ui-kit-components-slider.js +62 -7
  536. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  537. package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
  538. package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
  539. package/fesm5/taiga-ui-kit-components-tabs.js +42 -38
  540. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  541. package/fesm5/taiga-ui-kit-components-tag.js +2 -2
  542. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  543. package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
  544. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  545. package/fesm5/taiga-ui-kit-components-toggle.js +1 -1
  546. package/fesm5/taiga-ui-kit-tokens.js +7 -2
  547. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  548. package/package.json +7 -7
  549. package/tokens/i18n.d.ts +1 -5
  550. package/tokens/index.d.ts +1 -0
  551. package/tokens/mobile-aware.d.ts +1 -0
  552. package/tokens/tab-margin.d.ts +2 -0
  553. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  554. package/components/tabs/tabs.const.d.ts +0 -2
  555. package/esm2015/components/tabs/tabs.const.js +0 -3
  556. package/esm5/components/tabs/tabs.const.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-file/file/file.component.ts","ng://@taiga-ui/kit/components/input-file/input-file.component.ts","ng://@taiga-ui/kit/components/input-file/input-file.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","TuiFileOldComponent","isMobile","sanitizer","fileTexts$","units$","this","file","name","state","size","allowDelete","showSize","fileRemoved","EventEmitter","focused","prototype","isBig","createPreview","src","split","slice","join","pop","calculateContent$","calculateFileSize$","onRemoveClick","emit","onFocusVisible","focusVisible","content","of","pipe","map","texts","loadingError","units","formatSize","File","type","startsWith","bypassSecurityTrustUrl","URL","createObjectURL","Inject","args","TUI_IS_MOBILE","DomSanitizer","Observable","TUI_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","Input","tuiDefaultProp","Output","HostBinding","tuiPure","Component","selector","changeDetection","ChangeDetectionStrategy","OnPush","template","TuiInputFileComponent","control","changeDetectorRef","inputFileTexts$","mode$","_this","_super","dataTransfer","link","label","accept","multiple","maxFileSize","loadingFiles","rejectedFiles","rejectedFilesChange","__","constructor","create","__extends","input","nativeElement","isNativeFocused","nativeFocusableElement","computeLink$","fileDragged","computeLabel$","indexOf","types","getAcceptArray","getValueArray","getReadyFiles","arrayValue","getLoadingFiles","onHovered","hovered","updateHovered","onFocused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","filter","removeRejectedFile","updateRejectedFiles","getAppearance","mode","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","EMPTY_ARRAY","loading","includes","toLowerCase","format","trim","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","maxSizeRejectionReason","formatRejectionReason","extension","acceptArray","some","NgControl","Optional","Self","ChangeDetectorRef","TUI_INPUT_FILE_TEXTS","TUI_MODE","ViewChild","TuiInputFileComponent_1","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFileModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiPreventDefaultModule","TuiGroupModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_IS_MOBILE, tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileState} from '@taiga-ui/kit/enums';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-file',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './file.template.html',\n styleUrls: ['./file.style.less'],\n})\nexport class TuiFileOldComponent {\n @Input()\n @tuiDefaultProp()\n file: TuiFileLike = {name: ''};\n\n @Input()\n @tuiDefaultProp()\n state: TuiFileState = TuiFileState.Normal;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n allowDelete = true;\n\n @Input()\n @tuiDefaultProp()\n showSize = true;\n\n @Output()\n readonly fileRemoved = new EventEmitter<void>();\n\n @HostBinding('class._focused')\n focused = false;\n\n constructor(\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_FILE_TEXTS)\n readonly fileTexts$: Observable<\n Record<'loadingError' | 'preview' | 'remove', string>\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n private readonly units$: Observable<[string, string, string]>,\n ) {}\n\n get preview(): SafeValue {\n return this.isBig ? this.createPreview(this.file, this.sanitizer) : '';\n }\n\n get isBig(): boolean {\n return this.size === 'l';\n }\n\n get isLoading(): boolean {\n return this.state === TuiFileState.Loading;\n }\n\n get isError(): boolean {\n return this.state === TuiFileState.Error;\n }\n\n get isDeleted(): boolean {\n return this.state === TuiFileState.Deleted;\n }\n\n get icon(): string {\n if (this.state === TuiFileState.Normal && this.isBig) {\n return 'tuiIconDefaultDocLarge';\n }\n\n switch (this.state) {\n case TuiFileState.Deleted:\n return 'tuiIconTrashLarge';\n case TuiFileState.Error:\n return 'tuiIconAlertCircleLarge';\n default:\n return 'tuiIconCheckCircleLarge';\n }\n }\n\n @HostBinding('class._link')\n get src(): string {\n return this.file.src || '';\n }\n\n get name(): string {\n return this.file.name.split('.').slice(0, -1).join('.');\n }\n\n get type(): string {\n return `.${this.file.name.split('.').pop()}` || '';\n }\n\n get content$(): Observable<PolymorpheusContent> {\n return this.calculateContent$(this.state, this.file, this.fileTexts$);\n }\n\n get fileSize$(): Observable<string | null> {\n return this.calculateFileSize$(this.file, this.units$);\n }\n\n onRemoveClick() {\n this.fileRemoved.emit();\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.focused = focusVisible;\n }\n\n @tuiPure\n private calculateContent$(\n state: TuiFileState,\n file: TuiFileLike,\n fileTexts$: Observable<Record<'loadingError' | 'preview' | 'remove', string>>,\n ): Observable<PolymorpheusContent> {\n return state === TuiFileState.Error && !file.content\n ? fileTexts$.pipe(map(texts => texts.loadingError))\n : of(this.file.content || '');\n }\n\n @tuiPure\n private calculateFileSize$(\n file: TuiFileLike,\n units$: Observable<[string, string, string]>,\n ): Observable<string | null> {\n return units$.pipe(map(units => formatSize(units, file.size)));\n }\n\n @tuiPure\n private createPreview(file: TuiFileLike, sanitizer: DomSanitizer): SafeValue {\n if (file.src) {\n return file.src;\n }\n\n // TODO: iframe warning\n if (file instanceof File && file.type && file.type.startsWith('image/')) {\n return sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(file));\n }\n\n return '';\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TUI_MODE,\n TuiAppearance,\n TuiBrightness,\n TuiSizeL,\n} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-file',\n templateUrl: './input-file.template.html',\n styleUrls: ['./input-file.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFileComponent),\n },\n ],\n})\nexport class TuiInputFileComponent\n extends AbstractTuiNullableControl<TuiFileLike | readonly TuiFileLike[]>\n implements TuiFocusableElementAccessor\n{\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n showSize = true;\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Input()\n @tuiDefaultProp()\n loadingFiles: readonly TuiFileLike[] = [];\n\n @Input()\n @tuiDefaultProp()\n rejectedFiles: readonly TuiFileLike[] = [];\n\n @Output()\n rejectedFilesChange = new EventEmitter<readonly TuiFileLike[]>();\n\n @ViewChild('input')\n readonly input?: ElementRef<HTMLInputElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input ? this.input.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n // @bad TODO: refactor after IE is dropped\n get fileDragged(): boolean {\n return (\n !!this.dataTransfer &&\n Array.prototype.indexOf.call(this.dataTransfer.types, 'Files') !== -1\n );\n }\n\n get acceptArray(): readonly string[] {\n return this.getAcceptArray(this.accept);\n }\n\n get arrayValue(): readonly TuiFileLike[] {\n return this.getValueArray(this.value);\n }\n\n get readyFiles(): readonly TuiFileLike[] {\n return this.getReadyFiles(this.arrayValue, this.loadingFiles);\n }\n\n get computedLoading(): readonly TuiFileLike[] {\n return this.getLoadingFiles(this.arrayValue, this.loadingFiles);\n }\n\n get hasFiles(): boolean {\n return !!this.rejectedFiles.length || !!this.arrayValue.length;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n // TODO: refactor i18n messages\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n removeRejectedFile(removedFile: TuiFileLike) {\n this.updateRejectedFiles(this.rejectedFiles.filter(file => file !== removedFile));\n }\n\n getAppearance(mode: null | unknown): string {\n return mode === null ? '' : TuiAppearance.Outline;\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (fileDragged) {\n return of('');\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | readonly TuiFileLike[] | null,\n ): readonly TuiFileLike[] {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return value instanceof Array ? value : [value];\n }\n\n @tuiPure\n private getReadyFiles(\n value: readonly TuiFileLike[],\n loading: readonly TuiFileLike[],\n ): readonly TuiFileLike[] {\n return value.filter(file => !loading.includes(file));\n }\n\n @tuiPure\n private getLoadingFiles(\n value: readonly TuiFileLike[],\n loading: readonly TuiFileLike[],\n ): readonly TuiFileLike[] {\n return loading.filter(file => value.includes(file));\n }\n\n @tuiPure\n private getAcceptArray(accept: string): readonly string[] {\n return accept\n .toLowerCase()\n .split(',')\n .map(format => format.trim());\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (files === null || files.length === 0) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n this.updateRejectedFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason + formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return this.acceptArray.some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private updateRejectedFiles(rejectedFiles: readonly TuiFileLike[]) {\n this.rejectedFiles = rejectedFiles;\n this.rejectedFilesChange.emit(rejectedFiles);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFileOldComponent} from './file/file.component';\nimport {TuiInputFileComponent} from './input-file.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiPreventDefaultModule,\n TuiGroupModule,\n ],\n declarations: [TuiFileOldComponent, TuiInputFileComponent],\n exports: [TuiInputFileComponent],\n})\nexport class TuiInputFileModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-file/file/file.component.ts","ng://@taiga-ui/kit/components/input-file/input-file.component.ts","ng://@taiga-ui/kit/components/input-file/input-file.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","TuiFileOldComponent","isMobile","sanitizer","fileTexts$","units$","this","file","name","state","size","allowDelete","showSize","fileRemoved","EventEmitter","focused","prototype","isBig","createPreview","src","split","slice","join","pop","calculateContent$","calculateFileSize$","onRemoveClick","emit","onFocusVisible","focusVisible","content","of","pipe","map","texts","loadingError","units","formatSize","File","type","startsWith","bypassSecurityTrustUrl","URL","createObjectURL","Inject","args","TUI_IS_MOBILE","DomSanitizer","Observable","TUI_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","Input","tuiDefaultProp","Output","HostBinding","tuiPure","Component","selector","changeDetection","ChangeDetectionStrategy","OnPush","template","TuiInputFileComponent","control","changeDetectorRef","inputFileTexts$","mode$","_this","_super","dataTransfer","link","label","accept","multiple","maxFileSize","loadingFiles","rejectedFiles","rejectedFilesChange","__","constructor","create","__extends","input","nativeElement","isNativeFocused","nativeFocusableElement","computeLink$","fileDragged","computeLabel$","indexOf","types","getAcceptArray","getValueArray","getReadyFiles","arrayValue","getLoadingFiles","onHovered","hovered","updateHovered","onFocused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","filter","removeRejectedFile","updateRejectedFiles","getAppearance","mode","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","EMPTY_ARRAY","loading","includes","toLowerCase","format","trim","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","maxSizeRejectionReason","formatRejectionReason","extension","acceptArray","some","NgControl","Optional","Self","ChangeDetectorRef","TUI_INPUT_FILE_TEXTS","TUI_MODE","ViewChild","TuiInputFileComponent_1","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFileModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiPreventDefaultModule","TuiGroupModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {DomSanitizer, SafeValue} from '@angular/platform-browser';\nimport {TUI_IS_MOBILE, tuiDefaultProp, tuiPure} from '@taiga-ui/cdk';\nimport {TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileState} from '@taiga-ui/kit/enums';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n// @dynamic\n@Component({\n selector: 'tui-file',\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './file.template.html',\n styleUrls: ['./file.style.less'],\n})\nexport class TuiFileOldComponent {\n @Input()\n @tuiDefaultProp()\n file: TuiFileLike = {name: ''};\n\n @Input()\n @tuiDefaultProp()\n state: TuiFileState = TuiFileState.Normal;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n allowDelete = true;\n\n @Input()\n @tuiDefaultProp()\n showSize = true;\n\n @Output()\n readonly fileRemoved = new EventEmitter<void>();\n\n @HostBinding('class._focused')\n focused = false;\n\n constructor(\n @Inject(TUI_IS_MOBILE) readonly isMobile: boolean,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_FILE_TEXTS)\n readonly fileTexts$: Observable<\n Record<'loadingError' | 'preview' | 'remove', string>\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n private readonly units$: Observable<[string, string, string]>,\n ) {}\n\n get preview(): SafeValue {\n return this.isBig ? this.createPreview(this.file, this.sanitizer) : '';\n }\n\n get isBig(): boolean {\n return this.size === 'l';\n }\n\n get isLoading(): boolean {\n return this.state === TuiFileState.Loading;\n }\n\n get isError(): boolean {\n return this.state === TuiFileState.Error;\n }\n\n get isDeleted(): boolean {\n return this.state === TuiFileState.Deleted;\n }\n\n get icon(): string {\n if (this.state === TuiFileState.Normal && this.isBig) {\n return 'tuiIconDefaultDocLarge';\n }\n\n switch (this.state) {\n case TuiFileState.Deleted:\n return 'tuiIconTrashLarge';\n case TuiFileState.Error:\n return 'tuiIconAlertCircleLarge';\n default:\n return 'tuiIconCheckCircleLarge';\n }\n }\n\n @HostBinding('class._link')\n get src(): string {\n return this.file.src || '';\n }\n\n get name(): string {\n return this.file.name.split('.').slice(0, -1).join('.');\n }\n\n get type(): string {\n return `.${this.file.name.split('.').pop()}` || '';\n }\n\n get content$(): Observable<PolymorpheusContent> {\n return this.calculateContent$(this.state, this.file, this.fileTexts$);\n }\n\n get fileSize$(): Observable<string | null> {\n return this.calculateFileSize$(this.file, this.units$);\n }\n\n onRemoveClick() {\n this.fileRemoved.emit();\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.focused = focusVisible;\n }\n\n @tuiPure\n private calculateContent$(\n state: TuiFileState,\n file: TuiFileLike,\n fileTexts$: Observable<Record<'loadingError' | 'preview' | 'remove', string>>,\n ): Observable<PolymorpheusContent> {\n return state === TuiFileState.Error && !file.content\n ? fileTexts$.pipe(map(texts => texts.loadingError))\n : of(this.file.content || '');\n }\n\n @tuiPure\n private calculateFileSize$(\n file: TuiFileLike,\n units$: Observable<[string, string, string]>,\n ): Observable<string | null> {\n return units$.pipe(map(units => formatSize(units, file.size)));\n }\n\n @tuiPure\n private createPreview(file: TuiFileLike, sanitizer: DomSanitizer): SafeValue {\n if (file.src) {\n return file.src;\n }\n\n // TODO: iframe warning\n if (file instanceof File && file.type && file.type.startsWith('image/')) {\n return sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(file));\n }\n\n return '';\n }\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n MODE_PROVIDER,\n TUI_MODE,\n TuiAppearance,\n TuiBrightness,\n TuiSizeL,\n} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-file',\n templateUrl: './input-file.template.html',\n styleUrls: ['./input-file.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFileComponent),\n },\n ],\n})\nexport class TuiInputFileComponent\n extends AbstractTuiNullableControl<TuiFileLike | readonly TuiFileLike[]>\n implements TuiFocusableElementAccessor\n{\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n showSize = true;\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Input()\n @tuiDefaultProp()\n loadingFiles: readonly TuiFileLike[] = [];\n\n @Input()\n @tuiDefaultProp()\n rejectedFiles: readonly TuiFileLike[] = [];\n\n @Output()\n rejectedFilesChange = new EventEmitter<readonly TuiFileLike[]>();\n\n @ViewChild('input')\n readonly input?: ElementRef<HTMLInputElement>;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input ? this.input.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n // @bad TODO: refactor after IE is dropped\n get fileDragged(): boolean {\n return (\n !!this.dataTransfer &&\n Array.prototype.indexOf.call(this.dataTransfer.types, 'Files') !== -1\n );\n }\n\n get acceptArray(): readonly string[] {\n return this.getAcceptArray(this.accept);\n }\n\n get arrayValue(): readonly TuiFileLike[] {\n return this.getValueArray(this.value);\n }\n\n get readyFiles(): readonly TuiFileLike[] {\n return this.getReadyFiles(this.arrayValue, this.loadingFiles);\n }\n\n get computedLoading(): readonly TuiFileLike[] {\n return this.getLoadingFiles(this.arrayValue, this.loadingFiles);\n }\n\n get hasFiles(): boolean {\n return !!this.rejectedFiles.length || !!this.arrayValue.length;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n // TODO: refactor i18n messages\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n removeRejectedFile(removedFile: TuiFileLike) {\n this.updateRejectedFiles(this.rejectedFiles.filter(file => file !== removedFile));\n }\n\n getAppearance(mode: null | unknown): string {\n return mode === null ? '' : TuiAppearance.Outline;\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (fileDragged) {\n return of('');\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | readonly TuiFileLike[] | null,\n ): readonly TuiFileLike[] {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return value instanceof Array ? value : [value];\n }\n\n @tuiPure\n private getReadyFiles(\n value: readonly TuiFileLike[],\n loading: readonly TuiFileLike[],\n ): readonly TuiFileLike[] {\n return value.filter(file => !loading.includes(file));\n }\n\n @tuiPure\n private getLoadingFiles(\n value: readonly TuiFileLike[],\n loading: readonly TuiFileLike[],\n ): readonly TuiFileLike[] {\n return loading.filter(file => value.includes(file));\n }\n\n @tuiPure\n private getAcceptArray(accept: string): readonly string[] {\n return accept\n .toLowerCase()\n .split(',')\n .map(format => format.trim());\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (files === null || files.length === 0) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n this.updateRejectedFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason + formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return this.acceptArray.some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private updateRejectedFiles(rejectedFiles: readonly TuiFileLike[]) {\n this.rejectedFiles = rejectedFiles;\n this.rejectedFilesChange.emit(rejectedFiles);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n TuiPreventDefaultModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFileOldComponent} from './file/file.component';\nimport {TuiInputFileComponent} from './input-file.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiPreventDefaultModule,\n TuiGroupModule,\n ],\n declarations: [TuiFileOldComponent, TuiInputFileComponent],\n exports: [TuiInputFileComponent],\n})\nexport class TuiInputFileModule {}\n"]}
@@ -447,7 +447,7 @@
447
447
  useExisting: core.forwardRef(function () { return TuiInputFilesComponent_1; }),
448
448
  },
449
449
  ],
450
- styles: ["tui-input-files{display:block}tui-wrapper[data-appearance=input-file]{display:flex;background:0 0;font:var(--tui-font-text-m);word-wrap:break-word;color:var(--tui-text-02);flex:1;justify-content:center;align-items:center;min-height:var(--tui-height-l);border-radius:var(--tui-radius-m);padding:1rem .5rem;box-sizing:border-box}tui-wrapper[data-appearance=input-file]:after{border:1px dashed;color:var(--tui-link)}tui-wrapper[data-appearance=input-file]._mobile:after{border:1px solid}tui-wrapper[data-appearance=input-file][data-state=hovered]{background:var(--tui-secondary)}tui-wrapper[data-appearance=input-file][data-state=hovered]:after{color:var(--tui-link-hover)}tui-wrapper[data-appearance=input-file][data-state=pressed]{background:var(--tui-secondary-hover)}tui-wrapper[data-appearance=input-file][data-state=disabled]{opacity:var(--tui-disabled-opacity);pointer-events:none}tui-wrapper[data-appearance=input-file][data-state=disabled]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file]._focused:after{border-style:solid;border-width:2px;color:var(--tui-focus)}tui-wrapper[data-appearance=input-file][data-mode=onDark],tui-wrapper[data-appearance=input-file][data-mode=onDark]._focused:after,tui-wrapper[data-appearance=input-file][data-mode=onDark]:after{color:var(--tui-text-01-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]{background:var(--tui-clear-inverse-hover)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]:after{color:var(--tui-text-03-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]{background:var(--tui-clear-inverse-active)}tui-wrapper[data-appearance=input-file][data-mode=onLight],tui-wrapper[data-appearance=input-file][data-mode=onLight]:after{color:var(--tui-text-01)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]{background:var(--tui-clear-hover)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]{background:var(--tui-clear-active)}.t-native{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.t-native::-webkit-file-upload-button{display:none}.t-inline{display:inline}"]
450
+ styles: ["tui-input-files{display:block}tui-input-files .t-native{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}tui-input-files .t-native::-webkit-file-upload-button{display:none}tui-input-files .t-inline{display:inline}tui-wrapper[data-appearance=input-file]{display:flex;background:0 0;font:var(--tui-font-text-m);word-wrap:break-word;color:var(--tui-text-02);flex:1;justify-content:center;align-items:center;min-height:var(--tui-height-l);border-radius:var(--tui-radius-m);padding:1rem .5rem;box-sizing:border-box}tui-wrapper[data-appearance=input-file]:after{border:1px dashed;color:var(--tui-link)}tui-wrapper[data-appearance=input-file]._mobile:after{border:1px solid}tui-wrapper[data-appearance=input-file][data-state=hovered]{background:var(--tui-secondary)}tui-wrapper[data-appearance=input-file][data-state=hovered]:after{color:var(--tui-link-hover)}tui-wrapper[data-appearance=input-file][data-state=pressed]{background:var(--tui-secondary-hover)}tui-wrapper[data-appearance=input-file][data-state=disabled]{opacity:var(--tui-disabled-opacity);pointer-events:none}tui-wrapper[data-appearance=input-file][data-state=disabled]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file]._focused:after{border-style:solid;border-width:2px;color:var(--tui-focus)}tui-wrapper[data-appearance=input-file][data-mode=onDark],tui-wrapper[data-appearance=input-file][data-mode=onDark]._focused:after,tui-wrapper[data-appearance=input-file][data-mode=onDark]:after{color:var(--tui-text-01-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]{background:var(--tui-clear-inverse-hover)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]:after{color:var(--tui-text-03-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]{background:var(--tui-clear-inverse-active)}tui-wrapper[data-appearance=input-file][data-mode=onLight],tui-wrapper[data-appearance=input-file][data-mode=onLight]:after{color:var(--tui-text-01)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]{background:var(--tui-clear-hover)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]{background:var(--tui-clear-active)}"]
451
451
  }),
452
452
  __param(0, core.Optional()),
453
453
  __param(0, core.Self()),
@@ -1,4 +1,4 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/forms"),require("@taiga-ui/cdk"),require("@taiga-ui/core"),require("@taiga-ui/kit/tokens"),require("@taiga-ui/kit/utils/files"),require("rxjs"),require("rxjs/operators"),require("@angular/common"),require("@tinkoff/ng-polymorpheus")):"function"==typeof define&&define.amd?define("@taiga-ui/kit/components/input-files",["exports","@angular/core","@angular/forms","@taiga-ui/cdk","@taiga-ui/core","@taiga-ui/kit/tokens","@taiga-ui/kit/utils/files","rxjs","rxjs/operators","@angular/common","@tinkoff/ng-polymorpheus"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].kit=e["taiga-ui"].kit||{},e["taiga-ui"].kit.components=e["taiga-ui"].kit.components||{},e["taiga-ui"].kit.components["input-files"]={}),e.ng.core,e.ng.forms,e.cdk,e.core$1,e["taiga-ui"].kit.tokens,e["taiga-ui"].kit.utils.files,e.rxjs,e.rxjs.operators,e.ng.common,e.ngPolymorpheus)}(this,(function(e,t,a,r,i,n,o,u,p,l,s){"use strict";
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/forms"),require("@taiga-ui/cdk"),require("@taiga-ui/core"),require("@taiga-ui/kit/tokens"),require("@taiga-ui/kit/utils/files"),require("rxjs"),require("rxjs/operators"),require("@angular/common"),require("@tinkoff/ng-polymorpheus")):"function"==typeof define&&define.amd?define("@taiga-ui/kit/components/input-files",["exports","@angular/core","@angular/forms","@taiga-ui/cdk","@taiga-ui/core","@taiga-ui/kit/tokens","@taiga-ui/kit/utils/files","rxjs","rxjs/operators","@angular/common","@tinkoff/ng-polymorpheus"],t):t(((e=e||self)["taiga-ui"]=e["taiga-ui"]||{},e["taiga-ui"].kit=e["taiga-ui"].kit||{},e["taiga-ui"].kit.components=e["taiga-ui"].kit.components||{},e["taiga-ui"].kit.components["input-files"]={}),e.ng.core,e.ng.forms,e.cdk,e.core$1,e["taiga-ui"].kit.tokens,e["taiga-ui"].kit.utils.files,e.rxjs,e.rxjs.operators,e.ng.common,e.ngPolymorpheus)}(this,(function(e,t,a,i,r,n,o,u,p,l,s){"use strict";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var c=function(e,t){return(c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a])})(e,t)};function d(e,t,a,r){var i,n=arguments.length,o=n<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,a):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,a,r);else for(var u=e.length-1;u>=0;u--)(i=e[u])&&(o=(n<3?i(o):n>3?i(t,a,o):i(t,a))||o);return n>3&&o&&Object.defineProperty(t,a,o),o}function f(e,t){return function(a,r){t(a,r,e)}}function g(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var r,i,n=a.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(r=n.next()).done;)o.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(a=n.return)&&a.call(n)}finally{if(i)throw i.error}}return o}function m(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var y=function(e){function l(a,r,i,n,o){var u=e.call(this,a,r)||this;return u.isMobile=i,u.inputFileTexts$=n,u.units$=o,u.dataTransfer=null,u.link="",u.label="",u.accept="",u.multiple=!1,u.size="m",u.maxFileSize=3e7,u.reject=new t.EventEmitter,u}var s;return function(e,t){function a(){this.constructor=e}c(e,t),e.prototype=null===t?Object.create(t):(a.prototype=t.prototype,new a)}(l,e),s=l,Object.defineProperty(l.prototype,"nativeFocusableElement",{get:function(){var e;return(null===(e=this.input)||void 0===e?void 0:e.nativeElement)||null},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"focused",{get:function(){return r.isNativeFocused(this.nativeFocusableElement)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedPseudoHovered",{get:function(){var e;return null!==(e=this.pseudoHovered)&&void 0!==e?e:this.fileDragged||null},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedLink$",{get:function(){return this.computeLink$(this.fileDragged,this.multiple,this.link)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedLabel$",{get:function(){return this.computeLabel$(this.isMobile,this.fileDragged,this.multiple,this.label)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"fileDragged",{get:function(){var e;return!!(null===(e=this.dataTransfer)||void 0===e?void 0:e.types.includes("Files"))},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"arrayValue",{get:function(){return this.getValueArray(this.value)},enumerable:!0,configurable:!0}),l.prototype.onHovered=function(e){this.updateHovered(e)},l.prototype.onFocused=function(e){this.updateFocused(e)},l.prototype.onPressed=function(e){this.updatePressed(e)},l.prototype.onFilesSelected=function(e,t,a){this.processSelectedFiles(e.files,t,a),e.value=""},l.prototype.onDropped=function(e,t,a){this.processSelectedFiles(e.files,t,a)},l.prototype.onDragOver=function(e){this.dataTransfer=e},l.prototype.removeFile=function(e){this.updateValue(this.multiple?this.arrayValue.filter((function(t){return t!==e})):null)},l.prototype.computeLink$=function(e,t,a){return e?u.of(""):this.inputFileTexts$.pipe(p.map((function(e){return t&&""===a?e.defaultLinkMultiple:a||e.defaultLinkSingle})))},l.prototype.computeLabel$=function(e,t,a,r){return e?u.of(""):t?this.inputFileTexts$.pipe(p.map((function(e){return a?e.dropMultiple:e.drop}))):this.inputFileTexts$.pipe(p.map((function(e){return a&&""===r?e.defaultLabelMultiple:r||e.defaultLabelSingle})))},l.prototype.getValueArray=function(e){return e?Array.isArray(e)?e:[e]:r.EMPTY_ARRAY},l.prototype.processSelectedFiles=function(e,t,a){var r=this;if(null==e?void 0:e.length){var i=this.multiple?Array.from(e):[e[0]],n=i.filter((function(e){return e.size>r.maxFileSize})),u=i.filter((function(e){return!r.isFormatAcceptable(e)&&!n.includes(e)})),p=i.filter((function(e){return!n.includes(e)&&!u.includes(e)}));(n.length||u.length)&&this.rejectFiles(m(n.map((function(e){return{name:e.name,type:e.type,size:e.size,content:t.maxSizeRejectionReason+o.formatSize(a,r.maxFileSize)}})),u.map((function(e){return{name:e.name,type:e.type,size:e.size,content:t.formatRejectionReason}})))),this.updateValue(this.multiple?m(this.arrayValue,p):p[0]||null)}},l.prototype.isFormatAcceptable=function(e){if(!this.accept)return!0;var t="."+(e.name.split(".").pop()||"").toLowerCase();return o.getAcceptArray(this.accept).some((function(a){return a===t||a===e.type||"*"===a.split("/")[1]&&e.type.split("/")[0]===a.split("/")[0]}))},l.prototype.rejectFiles=function(e){this.reject.emit(this.multiple?e:e[0])},l.ctorParameters=function(){return[{type:a.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[a.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:Boolean,decorators:[{type:t.Inject,args:[r.TUI_IS_MOBILE]}]},{type:u.Observable,decorators:[{type:t.Inject,args:[n.TUI_INPUT_FILE_TEXTS]}]},{type:u.Observable,decorators:[{type:t.Inject,args:[n.TUI_DIGITAL_INFORMATION_UNITS]}]}]},d([t.ViewChild("input")],l.prototype,"input",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"link",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"label",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"accept",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"multiple",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"size",void 0),d([t.Input(),r.tuiDefaultProp()],l.prototype,"maxFileSize",void 0),d([t.Output()],l.prototype,"reject",void 0),d([r.tuiPure],l.prototype,"computeLink$",null),d([r.tuiPure],l.prototype,"computeLabel$",null),d([r.tuiPure],l.prototype,"getValueArray",null),l=s=d([t.Component({selector:"tui-input-files",template:'<tui-wrapper\n appearance="input-file"\n class="t-wrapper"\n [class._mobile]="isMobile"\n [focused]="computedFocused"\n [hovered]="computedHovered || fileDragged"\n [pressed]="computedPressed"\n [disabled]="computedDisabled"\n>\n <label\n *ngIf="units$ | async as units"\n automation-id="tui-input-file__label"\n >\n <a tuiLink>\n <span\n polymorpheus-outlet\n class="t-inline"\n [content]="computedLink$ | async"\n ></span>\n </a>\n <ng-container *ngIf="computedLabel$ | async as computedLabel">\n <span>&nbsp;</span>\n <span\n polymorpheus-outlet\n class="t-inline"\n [content]="computedLabel"\n ></span>\n </ng-container>\n <ng-container *ngIf="!readOnly && !computedDisabled">\n <input\n *ngIf="inputFileTexts$ | async as texts"\n #input\n type="file"\n class="t-native"\n [id]="id"\n [accept]="accept"\n [multiple]="multiple"\n [tuiFocusable]="focusable"\n (change)="onFilesSelected(input, texts, units)"\n (tuiHoveredChange)="onHovered($event)"\n (tuiFocusedChange)="onFocused($event)"\n (tuiPressedChange)="onPressed($event)"\n (tuiDroppableDropped)="onDropped($event, texts, units)"\n (tuiDroppableDragOverChange)="onDragOver($event)"\n (mousedown.prevent.silent)="0"\n />\n </ng-container>\n </label>\n</tui-wrapper>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,providers:[i.MODE_PROVIDER,{provide:r.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return s}))}],styles:["tui-input-files{display:block}tui-wrapper[data-appearance=input-file]{display:flex;background:0 0;font:var(--tui-font-text-m);word-wrap:break-word;color:var(--tui-text-02);flex:1;justify-content:center;align-items:center;min-height:var(--tui-height-l);border-radius:var(--tui-radius-m);padding:1rem .5rem;box-sizing:border-box}tui-wrapper[data-appearance=input-file]:after{border:1px dashed;color:var(--tui-link)}tui-wrapper[data-appearance=input-file]._mobile:after{border:1px solid}tui-wrapper[data-appearance=input-file][data-state=hovered]{background:var(--tui-secondary)}tui-wrapper[data-appearance=input-file][data-state=hovered]:after{color:var(--tui-link-hover)}tui-wrapper[data-appearance=input-file][data-state=pressed]{background:var(--tui-secondary-hover)}tui-wrapper[data-appearance=input-file][data-state=disabled]{opacity:var(--tui-disabled-opacity);pointer-events:none}tui-wrapper[data-appearance=input-file][data-state=disabled]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file]._focused:after{border-style:solid;border-width:2px;color:var(--tui-focus)}tui-wrapper[data-appearance=input-file][data-mode=onDark],tui-wrapper[data-appearance=input-file][data-mode=onDark]._focused:after,tui-wrapper[data-appearance=input-file][data-mode=onDark]:after{color:var(--tui-text-01-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]{background:var(--tui-clear-inverse-hover)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]:after{color:var(--tui-text-03-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]{background:var(--tui-clear-inverse-active)}tui-wrapper[data-appearance=input-file][data-mode=onLight],tui-wrapper[data-appearance=input-file][data-mode=onLight]:after{color:var(--tui-text-01)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]{background:var(--tui-clear-hover)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]{background:var(--tui-clear-active)}.t-native{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.t-native::-webkit-file-upload-button{display:none}.t-inline{display:inline}"]}),f(0,t.Optional()),f(0,t.Self()),f(0,t.Inject(a.NgControl)),f(1,t.Inject(t.ChangeDetectorRef)),f(2,t.Inject(r.TUI_IS_MOBILE)),f(3,t.Inject(n.TUI_INPUT_FILE_TEXTS)),f(4,t.Inject(n.TUI_DIGITAL_INFORMATION_UNITS))],l)}(r.AbstractTuiNullableControl),v=function(){function e(){}return e=d([t.NgModule({imports:[l.CommonModule,s.PolymorpheusModule,r.TuiLetModule,r.TuiFocusedModule,r.TuiFocusVisibleModule,r.TuiPressedModule,r.TuiHoveredModule,r.TuiFocusableModule,r.TuiDroppableModule,i.TuiWrapperModule,i.TuiSvgModule,i.TuiLinkModule,i.TuiLoaderModule,i.TuiButtonModule,i.TuiGroupModule],declarations:[y],exports:[y]})],e)}();e.TuiInputFilesComponent=y,e.TuiInputFilesModule=v,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var c=function(e,t){return(c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a])})(e,t)};function d(e,t,a,i){var r,n=arguments.length,o=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,a,i);else for(var u=e.length-1;u>=0;u--)(r=e[u])&&(o=(n<3?r(o):n>3?r(t,a,o):r(t,a))||o);return n>3&&o&&Object.defineProperty(t,a,o),o}function f(e,t){return function(a,i){t(a,i,e)}}function g(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var i,r,n=a.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(a=n.return)&&a.call(n)}finally{if(r)throw r.error}}return o}function m(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var y=function(e){function l(a,i,r,n,o){var u=e.call(this,a,i)||this;return u.isMobile=r,u.inputFileTexts$=n,u.units$=o,u.dataTransfer=null,u.link="",u.label="",u.accept="",u.multiple=!1,u.size="m",u.maxFileSize=3e7,u.reject=new t.EventEmitter,u}var s;return function(e,t){function a(){this.constructor=e}c(e,t),e.prototype=null===t?Object.create(t):(a.prototype=t.prototype,new a)}(l,e),s=l,Object.defineProperty(l.prototype,"nativeFocusableElement",{get:function(){var e;return(null===(e=this.input)||void 0===e?void 0:e.nativeElement)||null},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"focused",{get:function(){return i.isNativeFocused(this.nativeFocusableElement)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedPseudoHovered",{get:function(){var e;return null!==(e=this.pseudoHovered)&&void 0!==e?e:this.fileDragged||null},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedLink$",{get:function(){return this.computeLink$(this.fileDragged,this.multiple,this.link)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"computedLabel$",{get:function(){return this.computeLabel$(this.isMobile,this.fileDragged,this.multiple,this.label)},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"fileDragged",{get:function(){var e;return!!(null===(e=this.dataTransfer)||void 0===e?void 0:e.types.includes("Files"))},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"arrayValue",{get:function(){return this.getValueArray(this.value)},enumerable:!0,configurable:!0}),l.prototype.onHovered=function(e){this.updateHovered(e)},l.prototype.onFocused=function(e){this.updateFocused(e)},l.prototype.onPressed=function(e){this.updatePressed(e)},l.prototype.onFilesSelected=function(e,t,a){this.processSelectedFiles(e.files,t,a),e.value=""},l.prototype.onDropped=function(e,t,a){this.processSelectedFiles(e.files,t,a)},l.prototype.onDragOver=function(e){this.dataTransfer=e},l.prototype.removeFile=function(e){this.updateValue(this.multiple?this.arrayValue.filter((function(t){return t!==e})):null)},l.prototype.computeLink$=function(e,t,a){return e?u.of(""):this.inputFileTexts$.pipe(p.map((function(e){return t&&""===a?e.defaultLinkMultiple:a||e.defaultLinkSingle})))},l.prototype.computeLabel$=function(e,t,a,i){return e?u.of(""):t?this.inputFileTexts$.pipe(p.map((function(e){return a?e.dropMultiple:e.drop}))):this.inputFileTexts$.pipe(p.map((function(e){return a&&""===i?e.defaultLabelMultiple:i||e.defaultLabelSingle})))},l.prototype.getValueArray=function(e){return e?Array.isArray(e)?e:[e]:i.EMPTY_ARRAY},l.prototype.processSelectedFiles=function(e,t,a){var i=this;if(null==e?void 0:e.length){var r=this.multiple?Array.from(e):[e[0]],n=r.filter((function(e){return e.size>i.maxFileSize})),u=r.filter((function(e){return!i.isFormatAcceptable(e)&&!n.includes(e)})),p=r.filter((function(e){return!n.includes(e)&&!u.includes(e)}));(n.length||u.length)&&this.rejectFiles(m(n.map((function(e){return{name:e.name,type:e.type,size:e.size,content:t.maxSizeRejectionReason+o.formatSize(a,i.maxFileSize)}})),u.map((function(e){return{name:e.name,type:e.type,size:e.size,content:t.formatRejectionReason}})))),this.updateValue(this.multiple?m(this.arrayValue,p):p[0]||null)}},l.prototype.isFormatAcceptable=function(e){if(!this.accept)return!0;var t="."+(e.name.split(".").pop()||"").toLowerCase();return o.getAcceptArray(this.accept).some((function(a){return a===t||a===e.type||"*"===a.split("/")[1]&&e.type.split("/")[0]===a.split("/")[0]}))},l.prototype.rejectFiles=function(e){this.reject.emit(this.multiple?e:e[0])},l.ctorParameters=function(){return[{type:a.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[a.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:Boolean,decorators:[{type:t.Inject,args:[i.TUI_IS_MOBILE]}]},{type:u.Observable,decorators:[{type:t.Inject,args:[n.TUI_INPUT_FILE_TEXTS]}]},{type:u.Observable,decorators:[{type:t.Inject,args:[n.TUI_DIGITAL_INFORMATION_UNITS]}]}]},d([t.ViewChild("input")],l.prototype,"input",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"link",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"label",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"accept",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"multiple",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"size",void 0),d([t.Input(),i.tuiDefaultProp()],l.prototype,"maxFileSize",void 0),d([t.Output()],l.prototype,"reject",void 0),d([i.tuiPure],l.prototype,"computeLink$",null),d([i.tuiPure],l.prototype,"computeLabel$",null),d([i.tuiPure],l.prototype,"getValueArray",null),l=s=d([t.Component({selector:"tui-input-files",template:'<tui-wrapper\n appearance="input-file"\n class="t-wrapper"\n [class._mobile]="isMobile"\n [focused]="computedFocused"\n [hovered]="computedHovered || fileDragged"\n [pressed]="computedPressed"\n [disabled]="computedDisabled"\n>\n <label\n *ngIf="units$ | async as units"\n automation-id="tui-input-file__label"\n >\n <a tuiLink>\n <span\n polymorpheus-outlet\n class="t-inline"\n [content]="computedLink$ | async"\n ></span>\n </a>\n <ng-container *ngIf="computedLabel$ | async as computedLabel">\n <span>&nbsp;</span>\n <span\n polymorpheus-outlet\n class="t-inline"\n [content]="computedLabel"\n ></span>\n </ng-container>\n <ng-container *ngIf="!readOnly && !computedDisabled">\n <input\n *ngIf="inputFileTexts$ | async as texts"\n #input\n type="file"\n class="t-native"\n [id]="id"\n [accept]="accept"\n [multiple]="multiple"\n [tuiFocusable]="focusable"\n (change)="onFilesSelected(input, texts, units)"\n (tuiHoveredChange)="onHovered($event)"\n (tuiFocusedChange)="onFocused($event)"\n (tuiPressedChange)="onPressed($event)"\n (tuiDroppableDropped)="onDropped($event, texts, units)"\n (tuiDroppableDragOverChange)="onDragOver($event)"\n (mousedown.prevent.silent)="0"\n />\n </ng-container>\n </label>\n</tui-wrapper>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,providers:[r.MODE_PROVIDER,{provide:i.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return s}))}],styles:["tui-input-files{display:block}tui-input-files .t-native{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}tui-input-files .t-native::-webkit-file-upload-button{display:none}tui-input-files .t-inline{display:inline}tui-wrapper[data-appearance=input-file]{display:flex;background:0 0;font:var(--tui-font-text-m);word-wrap:break-word;color:var(--tui-text-02);flex:1;justify-content:center;align-items:center;min-height:var(--tui-height-l);border-radius:var(--tui-radius-m);padding:1rem .5rem;box-sizing:border-box}tui-wrapper[data-appearance=input-file]:after{border:1px dashed;color:var(--tui-link)}tui-wrapper[data-appearance=input-file]._mobile:after{border:1px solid}tui-wrapper[data-appearance=input-file][data-state=hovered]{background:var(--tui-secondary)}tui-wrapper[data-appearance=input-file][data-state=hovered]:after{color:var(--tui-link-hover)}tui-wrapper[data-appearance=input-file][data-state=pressed]{background:var(--tui-secondary-hover)}tui-wrapper[data-appearance=input-file][data-state=disabled]{opacity:var(--tui-disabled-opacity);pointer-events:none}tui-wrapper[data-appearance=input-file][data-state=disabled]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file]._focused:after{border-style:solid;border-width:2px;color:var(--tui-focus)}tui-wrapper[data-appearance=input-file][data-mode=onDark],tui-wrapper[data-appearance=input-file][data-mode=onDark]._focused:after,tui-wrapper[data-appearance=input-file][data-mode=onDark]:after{color:var(--tui-text-01-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]{background:var(--tui-clear-inverse-hover)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]:after{color:var(--tui-text-03-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]{background:var(--tui-clear-inverse-active)}tui-wrapper[data-appearance=input-file][data-mode=onLight],tui-wrapper[data-appearance=input-file][data-mode=onLight]:after{color:var(--tui-text-01)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]{background:var(--tui-clear-hover)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]{background:var(--tui-clear-active)}"]}),f(0,t.Optional()),f(0,t.Self()),f(0,t.Inject(a.NgControl)),f(1,t.Inject(t.ChangeDetectorRef)),f(2,t.Inject(i.TUI_IS_MOBILE)),f(3,t.Inject(n.TUI_INPUT_FILE_TEXTS)),f(4,t.Inject(n.TUI_DIGITAL_INFORMATION_UNITS))],l)}(i.AbstractTuiNullableControl),v=function(){function e(){}return e=d([t.NgModule({imports:[l.CommonModule,s.PolymorpheusModule,i.TuiLetModule,i.TuiFocusedModule,i.TuiFocusVisibleModule,i.TuiPressedModule,i.TuiHoveredModule,i.TuiFocusableModule,i.TuiDroppableModule,r.TuiWrapperModule,r.TuiSvgModule,r.TuiLinkModule,r.TuiLoaderModule,r.TuiButtonModule,r.TuiGroupModule],declarations:[y],exports:[y]})],e)}();e.TuiInputFilesComponent=y,e.TuiInputFilesModule=v,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-input-files.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-files/input-files.component.ts","ng://@taiga-ui/kit/components/input-files/input-files.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","TuiInputFilesComponent","control","changeDetectorRef","isMobile","inputFileTexts$","units$","_this","_super","this","dataTransfer","link","label","accept","multiple","size","maxFileSize","reject","EventEmitter","__","constructor","prototype","create","__extends","_a","input","nativeElement","isNativeFocused","nativeFocusableElement","pseudoHovered","fileDragged","computeLink$","computeLabel$","types","includes","getValueArray","onHovered","hovered","updateHovered","onFocused","focused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","texts","units","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","arrayValue","filter","file","of","pipe","map","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","isArray","EMPTY_ARRAY","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","rejectFiles","name","type","content","maxSizeRejectionReason","formatSize","formatRejectionReason","extension","split","pop","toLowerCase","getAcceptArray","some","format","rejectedFiles","emit","NgControl","Optional","Self","Inject","args","ChangeDetectorRef","TUI_IS_MOBILE","Observable","TUI_INPUT_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","ViewChild","Input","tuiDefaultProp","Output","tuiPure","TuiInputFilesComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFilesModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiGroupModule","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 ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize, getAcceptArray} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-files',\n templateUrl: './input-files.template.html',\n styleUrls: ['./input-files.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFilesComponent),\n },\n ],\n})\nexport class TuiInputFilesComponent\n extends AbstractTuiNullableControl<TuiFileLike | readonly TuiFileLike[]>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('input')\n private readonly input?: ElementRef<HTMLInputElement>;\n\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Output()\n reject = new EventEmitter<readonly TuiFileLike[] | TuiFileLike>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input?.nativeElement || null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedPseudoHovered(): boolean | null {\n return this.pseudoHovered ?? (this.fileDragged || null);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n get fileDragged(): boolean {\n return !!this.dataTransfer?.types.includes('Files');\n }\n\n get arrayValue(): readonly TuiFileLike[] {\n return this.getValueArray(this.value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n return fileDragged\n ? of('')\n : this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | readonly TuiFileLike[] | null,\n ): readonly TuiFileLike[] {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return Array.isArray(value) ? value : [value];\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (!files?.length) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n if (tooBigFiles.length || wrongFormatFiles.length) {\n this.rejectFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason +\n formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n }\n\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return getAcceptArray(this.accept).some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private rejectFiles(rejectedFiles: readonly TuiFileLike[]) {\n this.reject.emit(this.multiple ? rejectedFiles : rejectedFiles[0]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputFilesComponent} from './input-files.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiGroupModule,\n ],\n declarations: [TuiInputFilesComponent],\n exports: [TuiInputFilesComponent],\n})\nexport class TuiInputFilesModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-files/input-files.component.ts","ng://@taiga-ui/kit/components/input-files/input-files.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","TuiInputFilesComponent","control","changeDetectorRef","isMobile","inputFileTexts$","units$","_this","_super","this","dataTransfer","link","label","accept","multiple","size","maxFileSize","reject","EventEmitter","__","constructor","prototype","create","__extends","_a","input","nativeElement","isNativeFocused","nativeFocusableElement","pseudoHovered","fileDragged","computeLink$","computeLabel$","types","includes","getValueArray","onHovered","hovered","updateHovered","onFocused","focused","updateFocused","onPressed","pressed","updatePressed","onFilesSelected","texts","units","processSelectedFiles","files","onDropped","event","onDragOver","removeFile","removedFile","updateValue","arrayValue","filter","file","of","pipe","map","defaultLinkMultiple","defaultLinkSingle","dropMultiple","drop","defaultLabelMultiple","defaultLabelSingle","isArray","EMPTY_ARRAY","newFiles","from","tooBigFiles","wrongFormatFiles","isFormatAcceptable","acceptedFiles","rejectFiles","name","type","content","maxSizeRejectionReason","formatSize","formatRejectionReason","extension","split","pop","toLowerCase","getAcceptArray","some","format","rejectedFiles","emit","NgControl","Optional","Self","Inject","args","ChangeDetectorRef","TUI_IS_MOBILE","Observable","TUI_INPUT_FILE_TEXTS","TUI_DIGITAL_INFORMATION_UNITS","ViewChild","Input","tuiDefaultProp","Output","tuiPure","TuiInputFilesComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","providers","MODE_PROVIDER","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","AbstractTuiNullableControl","TuiInputFilesModule","NgModule","imports","CommonModule","PolymorpheusModule","TuiLetModule","TuiFocusedModule","TuiFocusVisibleModule","TuiPressedModule","TuiHoveredModule","TuiFocusableModule","TuiDroppableModule","TuiWrapperModule","TuiSvgModule","TuiLinkModule","TuiLoaderModule","TuiButtonModule","TuiGroupModule","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 ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n EMPTY_ARRAY,\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiSizeL} from '@taiga-ui/core';\nimport {TuiFileLike} from '@taiga-ui/kit/interfaces';\nimport {TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS} from '@taiga-ui/kit/tokens';\nimport {formatSize, getAcceptArray} from '@taiga-ui/kit/utils/files';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB\n\n// @dynamic\n@Component({\n selector: 'tui-input-files',\n templateUrl: './input-files.template.html',\n styleUrls: ['./input-files.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n MODE_PROVIDER,\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputFilesComponent),\n },\n ],\n})\nexport class TuiInputFilesComponent\n extends AbstractTuiNullableControl<TuiFileLike | readonly TuiFileLike[]>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('input')\n private readonly input?: ElementRef<HTMLInputElement>;\n\n private dataTransfer: DataTransfer | null = null;\n\n @Input()\n @tuiDefaultProp()\n link: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n label: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n accept = '';\n\n @Input()\n @tuiDefaultProp()\n multiple = false;\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n maxFileSize = DEFAULT_MAX_SIZE;\n\n @Output()\n reject = new EventEmitter<readonly TuiFileLike[] | TuiFileLike>();\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef)\n changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_IS_MOBILE)\n readonly isMobile: boolean,\n @Inject(TUI_INPUT_FILE_TEXTS)\n readonly inputFileTexts$: Observable<\n Record<\n | 'defaultLabelSingle'\n | 'defaultLabelMultiple'\n | 'defaultLinkSingle'\n | 'defaultLinkMultiple'\n | 'maxSizeRejectionReason'\n | 'formatRejectionReason'\n | 'drop'\n | 'dropMultiple',\n string\n >\n >,\n @Inject(TUI_DIGITAL_INFORMATION_UNITS)\n readonly units$: Observable<[string, string, string]>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.input?.nativeElement || null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get computedPseudoHovered(): boolean | null {\n return this.pseudoHovered ?? (this.fileDragged || null);\n }\n\n get computedLink$(): Observable<PolymorpheusContent> {\n return this.computeLink$(this.fileDragged, this.multiple, this.link);\n }\n\n get computedLabel$(): Observable<PolymorpheusContent> {\n return this.computeLabel$(\n this.isMobile,\n this.fileDragged,\n this.multiple,\n this.label,\n );\n }\n\n get fileDragged(): boolean {\n return !!this.dataTransfer?.types.includes('Files');\n }\n\n get arrayValue(): readonly TuiFileLike[] {\n return this.getValueArray(this.value);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFilesSelected(\n input: HTMLInputElement,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(input.files, texts, units);\n input.value = '';\n }\n\n onDropped(\n event: DataTransfer,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n this.processSelectedFiles(event.files, texts, units);\n }\n\n onDragOver(dataTransfer: DataTransfer | null) {\n this.dataTransfer = dataTransfer;\n }\n\n removeFile(removedFile: TuiFileLike) {\n this.updateValue(\n this.multiple ? this.arrayValue.filter(file => file !== removedFile) : null,\n );\n }\n\n @tuiPure\n private computeLink$(\n fileDragged: boolean,\n multiple: boolean,\n link: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n return fileDragged\n ? of('')\n : this.inputFileTexts$.pipe(\n map(texts =>\n multiple && link === ''\n ? texts.defaultLinkMultiple\n : link || texts.defaultLinkSingle,\n ),\n );\n }\n\n @tuiPure\n private computeLabel$(\n isMobile: boolean,\n fileDragged: boolean,\n multiple: boolean,\n label: PolymorpheusContent,\n ): Observable<PolymorpheusContent> {\n if (isMobile) {\n return of('');\n }\n\n if (fileDragged) {\n return this.inputFileTexts$.pipe(\n map(texts => (multiple ? texts.dropMultiple : texts.drop)),\n );\n }\n\n return this.inputFileTexts$.pipe(\n map(texts =>\n multiple && label === ''\n ? texts.defaultLabelMultiple\n : label || texts.defaultLabelSingle,\n ),\n );\n }\n\n @tuiPure\n private getValueArray(\n value: TuiFileLike | readonly TuiFileLike[] | null,\n ): readonly TuiFileLike[] {\n if (!value) {\n return EMPTY_ARRAY;\n }\n\n return Array.isArray(value) ? value : [value];\n }\n\n private processSelectedFiles(\n files: FileList | null,\n texts: Record<'maxSizeRejectionReason' | 'formatRejectionReason', string>,\n units: [string, string, string],\n ) {\n // IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.\n if (!files?.length) {\n return;\n }\n\n const newFiles = this.multiple ? Array.from(files) : [files[0]];\n const tooBigFiles = newFiles.filter(file => file.size > this.maxFileSize);\n const wrongFormatFiles = newFiles.filter(\n file => !this.isFormatAcceptable(file) && !tooBigFiles.includes(file),\n );\n const acceptedFiles = newFiles.filter(\n file => !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file),\n );\n\n if (tooBigFiles.length || wrongFormatFiles.length) {\n this.rejectFiles([\n ...tooBigFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content:\n texts.maxSizeRejectionReason +\n formatSize(units, this.maxFileSize),\n })),\n ...wrongFormatFiles.map(file => ({\n name: file.name,\n type: file.type,\n size: file.size,\n content: texts.formatRejectionReason,\n })),\n ]);\n }\n\n this.updateValue(\n this.multiple\n ? [...this.arrayValue, ...acceptedFiles]\n : acceptedFiles[0] || null,\n );\n }\n\n private isFormatAcceptable(file: File): boolean {\n if (!this.accept) {\n return true;\n }\n\n const extension = `.${(file.name.split('.').pop() || '').toLowerCase()}`;\n\n return getAcceptArray(this.accept).some(\n format =>\n format === extension ||\n format === file.type ||\n (format.split('/')[1] === '*' &&\n file.type.split('/')[0] === format.split('/')[0]),\n );\n }\n\n private rejectFiles(rejectedFiles: readonly TuiFileLike[]) {\n this.reject.emit(this.multiple ? rejectedFiles : rejectedFiles[0]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDroppableModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiButtonModule,\n TuiGroupModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiSvgModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputFilesComponent} from './input-files.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiLetModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiPressedModule,\n TuiHoveredModule,\n TuiFocusableModule,\n TuiDroppableModule,\n TuiWrapperModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiLoaderModule,\n TuiButtonModule,\n TuiGroupModule,\n ],\n declarations: [TuiInputFilesComponent],\n exports: [TuiInputFilesComponent],\n})\nexport class TuiInputFilesModule {}\n"]}
@@ -338,7 +338,7 @@
338
338
  TuiInputMonthRangeComponent = __decorate([
339
339
  core.Component({
340
340
  selector: 'tui-input-month-range',
341
- template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n class=\"textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"calendarIcon\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [value]=\"value ? computeValue(value.from | tuiMapper : formatter | async, value.to | tuiMapper : formatter | async) : ''\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n >\n <ng-content></ng-content>\n <ng-content select=\"input\" ngProjectAs=\"input\"></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n",
341
+ template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n class=\"textfield\"\n [editable]=\"false\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"calendarIcon\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [value]=\"value ? computeValue(value.from | tuiMapper : formatter | async, value.to | tuiMapper : formatter | async) : ''\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-calendar-month\n tuiPreventDefault=\"mousedown\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [min]=\"min\"\n [max]=\"max\"\n [value]=\"value\"\n (monthClick)=\"onMonthClick($event)\"\n ></tui-calendar-month>\n </ng-template>\n</tui-hosted-dropdown>\n",
342
342
  providers: TUI_INPUT_MONTH_RANGE_PROVIDERS,
343
343
  changeDetection: core.ChangeDetectionStrategy.OnPush,
344
344
  styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{position:relative;cursor:pointer}"]