@taiga-ui/kit 2.39.0 → 2.41.1

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 (656) 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-calendar-range.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-carousel.umd.js +1 -1
  31. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-carousel.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +1 -1
  35. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js +1 -1
  37. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
  39. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
  40. package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-combo-box.umd.js +1 -1
  42. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
  44. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  46. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  48. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-files.umd.js +3 -3
  50. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-files.umd.min.js +1 -1
  52. package/bundles/taiga-ui-kit-components-files.umd.min.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  54. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-filter.umd.min.js +1 -1
  56. package/bundles/taiga-ui-kit-components-filter.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-copy.umd.js +1 -1
  58. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
  60. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-count.umd.js +1 -1
  62. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +1 -1
  64. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +1 -1
  66. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  68. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +1 -1
  70. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
  72. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-input-date.umd.js +1 -1
  74. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
  76. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -1
  78. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +2 -2
  80. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-input-files.umd.js +1 -1
  82. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-input-files.umd.min.js +2 -2
  84. package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  86. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  88. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  90. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  92. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  93. package/bundles/taiga-ui-kit-components-input-number.umd.js +9 -6
  94. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  95. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  96. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  97. package/bundles/taiga-ui-kit-components-input-password.umd.js +1 -1
  98. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  99. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  100. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  101. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +5 -1
  102. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +2 -2
  104. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  105. package/bundles/taiga-ui-kit-components-input-phone.umd.js +6 -9
  106. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  108. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-input-range.umd.js +196 -164
  110. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  112. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-input-slider.umd.js +10 -30
  114. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  115. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +2 -2
  116. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  117. package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -5
  118. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  119. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  120. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  121. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  122. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  123. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  124. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  126. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  127. package/bundles/taiga-ui-kit-components-marker-icon.umd.js +1 -1
  128. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  129. package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js +1 -1
  130. package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js.map +1 -1
  131. package/bundles/taiga-ui-kit-components-multi-select.umd.js +1 -1
  132. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  133. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +1 -1
  134. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  135. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  136. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  137. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  138. package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
  139. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +1 -1
  140. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js +1 -1
  142. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-kit-components-progress.umd.js +2 -2
  144. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-components-progress.umd.min.js +1 -1
  146. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  147. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  148. package/bundles/taiga-ui-kit-components-radio-list.umd.min.js.map +1 -1
  149. package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
  150. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  151. package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
  152. package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
  153. package/bundles/taiga-ui-kit-components-range.umd.js +221 -31
  154. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  155. package/bundles/taiga-ui-kit-components-range.umd.min.js +2 -2
  156. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  157. package/bundles/taiga-ui-kit-components-rating.umd.js +1 -1
  158. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  159. package/bundles/taiga-ui-kit-components-rating.umd.min.js +1 -1
  160. package/bundles/taiga-ui-kit-components-rating.umd.min.js.map +1 -1
  161. package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
  162. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  163. package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
  164. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  165. package/bundles/taiga-ui-kit-components-slider.umd.js +64 -8
  166. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  167. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  168. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  169. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
  170. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  171. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +2 -2
  172. package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
  173. package/bundles/taiga-ui-kit-components-tabs.umd.js +38 -36
  174. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  175. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  176. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  177. package/bundles/taiga-ui-kit-components-tag.umd.js +28 -8
  178. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  179. package/bundles/taiga-ui-kit-components-tag.umd.min.js +1 -1
  180. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  181. package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
  182. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  183. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
  184. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  185. package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
  186. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  187. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  188. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  189. package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js.map +1 -1
  190. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  191. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.min.js.map +1 -1
  192. package/bundles/taiga-ui-kit-tokens.umd.js +7 -0
  193. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  194. package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
  195. package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
  196. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  197. package/bundles/taiga-ui-kit-utils-mask.umd.min.js.map +1 -1
  198. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  199. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.min.js.map +1 -1
  200. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  201. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  202. package/components/avatar/avatar-options.d.ts +11 -0
  203. package/components/avatar/avatar.component.d.ts +4 -2
  204. package/components/avatar/index.d.ts +1 -0
  205. package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
  206. package/components/breadcrumbs/breadcrumbs.component.d.ts +1 -1
  207. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  208. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  209. package/components/calendar-range/calendar-range.component.d.ts +2 -2
  210. package/components/carousel/taiga-ui-kit-components-carousel.metadata.json +1 -1
  211. package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
  212. package/components/checkbox-labeled/taiga-ui-kit-components-checkbox-labeled.metadata.json +1 -1
  213. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  214. package/components/data-list-wrapper/data-list-group-wrapper.component.d.ts +1 -1
  215. package/components/data-list-wrapper/data-list-wrapper.component.d.ts +2 -2
  216. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  217. package/components/files/taiga-ui-kit-components-files.metadata.json +1 -1
  218. package/components/filter/filter.component.d.ts +1 -1
  219. package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
  220. package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
  221. package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
  222. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  223. package/components/input-date/input-date.component.d.ts +1 -1
  224. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  225. package/components/input-date-range/input-date-range.component.d.ts +1 -1
  226. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  227. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  228. package/components/input-file/input-file.component.d.ts +6 -6
  229. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  230. package/components/input-files/input-files.component.d.ts +2 -2
  231. package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -1
  232. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  233. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  234. package/components/input-number/input-number.component.d.ts +2 -1
  235. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  236. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  237. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  238. package/components/input-phone-international/input-phone-international.component.d.ts +1 -1
  239. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  240. package/components/input-range/input-range.component.d.ts +44 -31
  241. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  242. package/components/input-slider/input-slider.component.d.ts +2 -8
  243. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  244. package/components/input-tag/input-tag.component.d.ts +2 -2
  245. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  246. package/components/input-time/input-time.component.d.ts +2 -2
  247. package/components/marker-icon/taiga-ui-kit-components-marker-icon.metadata.json +1 -1
  248. package/components/multi-select/multi-select-options.d.ts +1 -1
  249. package/components/multi-select/multi-select.component.d.ts +3 -3
  250. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  251. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  252. package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.metadata.json +1 -1
  253. package/components/progress/progress-segmented/progress-segmented.component.d.ts +1 -1
  254. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  255. package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
  256. package/components/radio-list/radio-list.component.d.ts +1 -1
  257. package/components/range/index.d.ts +1 -0
  258. package/components/range/range-change.directive.d.ts +20 -0
  259. package/components/range/range.component.d.ts +33 -5
  260. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  261. package/components/rating/taiga-ui-kit-components-rating.metadata.json +1 -1
  262. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  263. package/components/slider/index.d.ts +1 -0
  264. package/components/slider/slider-old.component.d.ts +3 -1
  265. package/components/slider/slider-readonly.directive.d.ts +9 -0
  266. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  267. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  268. package/components/tabs/index.d.ts +0 -1
  269. package/components/tabs/tab/tab.component.d.ts +2 -1
  270. package/components/tabs/tabs/tabs.component.d.ts +3 -4
  271. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +5 -2
  272. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  273. package/components/tag/index.d.ts +1 -0
  274. package/components/tag/tag-options.d.ts +12 -0
  275. package/components/tag/tag.component.d.ts +3 -1
  276. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  277. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  278. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  279. package/esm2015/abstract/input-slider.js +30 -37
  280. package/esm2015/abstract/slider/slider.js +13 -19
  281. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +2 -2
  282. package/esm2015/components/action/action.component.js +2 -2
  283. package/esm2015/components/avatar/avatar-options.js +15 -0
  284. package/esm2015/components/avatar/avatar.component.js +14 -8
  285. package/esm2015/components/avatar/index.js +2 -1
  286. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  287. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +1 -1
  288. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  289. package/esm2015/components/calendar-range/calendar-range.component.js +1 -1
  290. package/esm2015/components/carousel/carousel.component.js +2 -2
  291. package/esm2015/components/checkbox/checkbox.component.js +1 -1
  292. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
  293. package/esm2015/components/combo-box/combo-box.component.js +2 -2
  294. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  295. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  296. package/esm2015/components/files/file/file.component.js +2 -2
  297. package/esm2015/components/files/files.component.js +3 -3
  298. package/esm2015/components/filter/filter.component.js +2 -2
  299. package/esm2015/components/input/input.component.js +2 -2
  300. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  301. package/esm2015/components/input-count/input-count.component.js +2 -2
  302. package/esm2015/components/input-date/input-date.component.js +2 -2
  303. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  304. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  305. package/esm2015/components/input-file/file/file.component.js +2 -2
  306. package/esm2015/components/input-file/input-file.component.js +1 -1
  307. package/esm2015/components/input-files/input-files.component.js +2 -2
  308. package/esm2015/components/input-month/input-month.component.js +2 -2
  309. package/esm2015/components/input-month-range/input-month-range.component.js +2 -2
  310. package/esm2015/components/input-number/input-number.component.js +11 -8
  311. package/esm2015/components/input-password/input-password.component.js +2 -2
  312. package/esm2015/components/input-phone/input-phone.component.js +8 -11
  313. package/esm2015/components/input-phone-international/input-phone-international.component.js +7 -3
  314. package/esm2015/components/input-range/input-range.component.js +192 -156
  315. package/esm2015/components/input-range/input-range.module.js +13 -15
  316. package/esm2015/components/input-slider/input-slider.component.js +8 -20
  317. package/esm2015/components/input-slider/input-slider.module.js +3 -12
  318. package/esm2015/components/input-tag/input-tag.component.js +6 -6
  319. package/esm2015/components/input-time/input-time.component.js +1 -1
  320. package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
  321. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  322. package/esm2015/components/multi-select/multi-select-options.js +1 -1
  323. package/esm2015/components/multi-select/multi-select.component.js +2 -2
  324. package/esm2015/components/pagination/pagination.component.js +2 -2
  325. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +2 -2
  326. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  327. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  328. package/esm2015/components/radio/radio.component.js +3 -3
  329. package/esm2015/components/radio-list/radio-list.component.js +1 -1
  330. package/esm2015/components/range/index.js +2 -1
  331. package/esm2015/components/range/range-change.directive.js +83 -0
  332. package/esm2015/components/range/range.component.js +118 -28
  333. package/esm2015/components/range/range.module.js +10 -7
  334. package/esm2015/components/rating/rating.component.js +2 -2
  335. package/esm2015/components/select/select.component.js +2 -2
  336. package/esm2015/components/slider/index.js +2 -1
  337. package/esm2015/components/slider/slider-key-steps.directive.js +2 -2
  338. package/esm2015/components/slider/slider-old.component.js +11 -5
  339. package/esm2015/components/slider/slider-readonly.directive.js +50 -0
  340. package/esm2015/components/slider/slider.component.js +4 -4
  341. package/esm2015/components/slider/slider.module.js +4 -1
  342. package/esm2015/components/stepper/step/step.component.js +2 -2
  343. package/esm2015/components/tabs/index.js +1 -2
  344. package/esm2015/components/tabs/tab/tab.component.js +13 -9
  345. package/esm2015/components/tabs/tabs/tabs.component.js +5 -11
  346. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +24 -16
  347. package/esm2015/components/tabs/underline/underline.component.js +2 -2
  348. package/esm2015/components/tag/index.js +2 -1
  349. package/esm2015/components/tag/tag-options.js +15 -0
  350. package/esm2015/components/tag/tag.component.js +13 -9
  351. package/esm2015/components/text-area/text-area.component.js +3 -3
  352. package/esm2015/components/toggle/toggle.component.js +1 -1
  353. package/esm2015/pipes/field-error/field-error-content-pipe.js +1 -1
  354. package/esm2015/pipes/field-error/field-error-pipe.js +1 -1
  355. package/esm2015/pipes/filter-by-input/filter-by-input.base.js +1 -1
  356. package/esm2015/tokens/index.js +2 -1
  357. package/esm2015/tokens/mobile-aware.js +2 -1
  358. package/esm2015/tokens/tab-margin.js +5 -0
  359. package/esm2015/tokens/tag-status.js +2 -1
  360. package/esm2015/types/key-steps.js +1 -1
  361. package/esm2015/utils/mask/create-time-mask.js +1 -1
  362. package/esm2015/utils/miscellaneous/create-default-day-range-periods.js +1 -1
  363. package/esm2015/utils/miscellaneous/create-time-periods.js +1 -1
  364. package/esm5/abstract/input-slider.js +30 -48
  365. package/esm5/abstract/slider/slider.js +13 -19
  366. package/esm5/components/accordion/accordion-item/accordion-item.component.js +2 -2
  367. package/esm5/components/action/action.component.js +2 -2
  368. package/esm5/components/avatar/avatar-options.js +16 -0
  369. package/esm5/components/avatar/avatar.component.js +14 -8
  370. package/esm5/components/avatar/index.js +2 -1
  371. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
  372. package/esm5/components/breadcrumbs/breadcrumbs.component.js +1 -1
  373. package/esm5/components/calendar-month/calendar-month.component.js +2 -2
  374. package/esm5/components/calendar-range/calendar-range.component.js +1 -1
  375. package/esm5/components/carousel/carousel.component.js +2 -2
  376. package/esm5/components/checkbox/checkbox.component.js +1 -1
  377. package/esm5/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
  378. package/esm5/components/combo-box/combo-box.component.js +2 -2
  379. package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  380. package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  381. package/esm5/components/files/file/file.component.js +2 -2
  382. package/esm5/components/files/files.component.js +3 -3
  383. package/esm5/components/filter/filter.component.js +2 -2
  384. package/esm5/components/input/input.component.js +2 -2
  385. package/esm5/components/input-copy/input-copy.component.js +2 -2
  386. package/esm5/components/input-count/input-count.component.js +2 -2
  387. package/esm5/components/input-date/input-date.component.js +2 -2
  388. package/esm5/components/input-date-range/input-date-range.component.js +2 -2
  389. package/esm5/components/input-date-time/input-date-time.component.js +2 -2
  390. package/esm5/components/input-file/file/file.component.js +2 -2
  391. package/esm5/components/input-file/input-file.component.js +1 -1
  392. package/esm5/components/input-files/input-files.component.js +2 -2
  393. package/esm5/components/input-month/input-month.component.js +2 -2
  394. package/esm5/components/input-month-range/input-month-range.component.js +2 -2
  395. package/esm5/components/input-number/input-number.component.js +11 -8
  396. package/esm5/components/input-password/input-password.component.js +2 -2
  397. package/esm5/components/input-phone/input-phone.component.js +8 -11
  398. package/esm5/components/input-phone-international/input-phone-international.component.js +7 -3
  399. package/esm5/components/input-range/input-range.component.js +194 -157
  400. package/esm5/components/input-range/input-range.module.js +13 -15
  401. package/esm5/components/input-slider/input-slider.component.js +8 -20
  402. package/esm5/components/input-slider/input-slider.module.js +3 -12
  403. package/esm5/components/input-tag/input-tag.component.js +6 -6
  404. package/esm5/components/input-time/input-time.component.js +1 -1
  405. package/esm5/components/marker-icon/marker-icon.component.js +2 -2
  406. package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  407. package/esm5/components/multi-select/multi-select-options.js +1 -1
  408. package/esm5/components/multi-select/multi-select.component.js +2 -2
  409. package/esm5/components/pagination/pagination.component.js +2 -2
  410. package/esm5/components/pdf-viewer/pdf-viewer.component.js +2 -2
  411. package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
  412. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  413. package/esm5/components/radio/radio.component.js +3 -3
  414. package/esm5/components/radio-list/radio-list.component.js +1 -1
  415. package/esm5/components/range/index.js +2 -1
  416. package/esm5/components/range/range-change.directive.js +101 -0
  417. package/esm5/components/range/range.component.js +126 -29
  418. package/esm5/components/range/range.module.js +10 -7
  419. package/esm5/components/rating/rating.component.js +2 -2
  420. package/esm5/components/select/select.component.js +2 -2
  421. package/esm5/components/slider/index.js +2 -1
  422. package/esm5/components/slider/slider-key-steps.directive.js +2 -2
  423. package/esm5/components/slider/slider-old.component.js +11 -5
  424. package/esm5/components/slider/slider-readonly.directive.js +51 -0
  425. package/esm5/components/slider/slider.component.js +4 -4
  426. package/esm5/components/slider/slider.module.js +4 -1
  427. package/esm5/components/stepper/step/step.component.js +2 -2
  428. package/esm5/components/tabs/index.js +1 -2
  429. package/esm5/components/tabs/tab/tab.component.js +13 -9
  430. package/esm5/components/tabs/tabs/tabs.component.js +5 -15
  431. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +27 -16
  432. package/esm5/components/tabs/underline/underline.component.js +2 -2
  433. package/esm5/components/tag/index.js +2 -1
  434. package/esm5/components/tag/tag-options.js +16 -0
  435. package/esm5/components/tag/tag.component.js +13 -9
  436. package/esm5/components/text-area/text-area.component.js +3 -3
  437. package/esm5/components/toggle/toggle.component.js +1 -1
  438. package/esm5/pipes/field-error/field-error-content-pipe.js +1 -1
  439. package/esm5/pipes/field-error/field-error-pipe.js +1 -1
  440. package/esm5/pipes/filter-by-input/filter-by-input.base.js +1 -1
  441. package/esm5/tokens/index.js +2 -1
  442. package/esm5/tokens/mobile-aware.js +2 -1
  443. package/esm5/tokens/tab-margin.js +5 -0
  444. package/esm5/tokens/tag-status.js +2 -1
  445. package/esm5/types/key-steps.js +1 -1
  446. package/esm5/utils/mask/create-time-mask.js +1 -1
  447. package/esm5/utils/miscellaneous/create-default-day-range-periods.js +1 -1
  448. package/esm5/utils/miscellaneous/create-time-periods.js +1 -1
  449. package/fesm2015/taiga-ui-kit-abstract.js +43 -55
  450. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-components-accordion.js +1 -1
  452. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  453. package/fesm2015/taiga-ui-kit-components-action.js +1 -1
  454. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-components-avatar.js +27 -8
  456. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  458. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  459. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  460. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  461. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  462. package/fesm2015/taiga-ui-kit-components-carousel.js +1 -1
  463. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  464. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +1 -1
  465. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  466. package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
  467. package/fesm2015/taiga-ui-kit-components-combo-box.js +1 -1
  468. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  470. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  471. package/fesm2015/taiga-ui-kit-components-files.js +3 -3
  472. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  473. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  474. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  475. package/fesm2015/taiga-ui-kit-components-input-copy.js +1 -1
  476. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  477. package/fesm2015/taiga-ui-kit-components-input-count.js +1 -1
  478. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  479. package/fesm2015/taiga-ui-kit-components-input-date-range.js +1 -1
  480. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  481. package/fesm2015/taiga-ui-kit-components-input-date-time.js +1 -1
  482. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  483. package/fesm2015/taiga-ui-kit-components-input-date.js +1 -1
  484. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  485. package/fesm2015/taiga-ui-kit-components-input-file.js +1 -1
  486. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  487. package/fesm2015/taiga-ui-kit-components-input-files.js +1 -1
  488. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  489. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  490. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  491. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  492. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  493. package/fesm2015/taiga-ui-kit-components-input-number.js +10 -7
  494. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  495. package/fesm2015/taiga-ui-kit-components-input-password.js +1 -1
  496. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  497. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +6 -2
  498. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  499. package/fesm2015/taiga-ui-kit-components-input-phone.js +7 -10
  500. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  501. package/fesm2015/taiga-ui-kit-components-input-range.js +198 -167
  502. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  503. package/fesm2015/taiga-ui-kit-components-input-slider.js +8 -29
  504. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  505. package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -5
  506. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  507. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  508. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  509. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  510. package/fesm2015/taiga-ui-kit-components-marker-icon.js +1 -1
  511. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  512. package/fesm2015/taiga-ui-kit-components-multi-select.js +1 -1
  513. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  514. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  515. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  516. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +1 -1
  517. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  518. package/fesm2015/taiga-ui-kit-components-progress.js +2 -2
  519. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  520. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  521. package/fesm2015/taiga-ui-kit-components-radio.js +2 -2
  522. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  523. package/fesm2015/taiga-ui-kit-components-range.js +199 -34
  524. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  525. package/fesm2015/taiga-ui-kit-components-rating.js +1 -1
  526. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  527. package/fesm2015/taiga-ui-kit-components-select.js +1 -1
  528. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  529. package/fesm2015/taiga-ui-kit-components-slider.js +63 -9
  530. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  531. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
  532. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  533. package/fesm2015/taiga-ui-kit-components-tabs.js +39 -34
  534. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  535. package/fesm2015/taiga-ui-kit-components-tag.js +27 -10
  536. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  537. package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
  538. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  539. package/fesm2015/taiga-ui-kit-components-toggle.js +1 -1
  540. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  541. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  542. package/fesm2015/taiga-ui-kit-tokens.js +7 -1
  543. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  544. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  545. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  546. package/fesm5/taiga-ui-kit-abstract.js +43 -66
  547. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  548. package/fesm5/taiga-ui-kit-components-accordion.js +1 -1
  549. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  550. package/fesm5/taiga-ui-kit-components-action.js +1 -1
  551. package/fesm5/taiga-ui-kit-components-action.js.map +1 -1
  552. package/fesm5/taiga-ui-kit-components-avatar.js +27 -8
  553. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  554. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
  555. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  556. package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
  557. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  558. package/fesm5/taiga-ui-kit-components-calendar-range.js.map +1 -1
  559. package/fesm5/taiga-ui-kit-components-carousel.js +1 -1
  560. package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -1
  561. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js +1 -1
  562. package/fesm5/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  563. package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
  564. package/fesm5/taiga-ui-kit-components-combo-box.js +1 -1
  565. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  566. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  567. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  568. package/fesm5/taiga-ui-kit-components-files.js +3 -3
  569. package/fesm5/taiga-ui-kit-components-files.js.map +1 -1
  570. package/fesm5/taiga-ui-kit-components-filter.js +1 -1
  571. package/fesm5/taiga-ui-kit-components-filter.js.map +1 -1
  572. package/fesm5/taiga-ui-kit-components-input-copy.js +1 -1
  573. package/fesm5/taiga-ui-kit-components-input-copy.js.map +1 -1
  574. package/fesm5/taiga-ui-kit-components-input-count.js +1 -1
  575. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  576. package/fesm5/taiga-ui-kit-components-input-date-range.js +1 -1
  577. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  578. package/fesm5/taiga-ui-kit-components-input-date-time.js +1 -1
  579. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  580. package/fesm5/taiga-ui-kit-components-input-date.js +1 -1
  581. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  582. package/fesm5/taiga-ui-kit-components-input-file.js +1 -1
  583. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  584. package/fesm5/taiga-ui-kit-components-input-files.js +1 -1
  585. package/fesm5/taiga-ui-kit-components-input-files.js.map +1 -1
  586. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  587. package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
  588. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  589. package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
  590. package/fesm5/taiga-ui-kit-components-input-number.js +10 -7
  591. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  592. package/fesm5/taiga-ui-kit-components-input-password.js +1 -1
  593. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  594. package/fesm5/taiga-ui-kit-components-input-phone-international.js +6 -2
  595. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  596. package/fesm5/taiga-ui-kit-components-input-phone.js +7 -10
  597. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  598. package/fesm5/taiga-ui-kit-components-input-range.js +200 -168
  599. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  600. package/fesm5/taiga-ui-kit-components-input-slider.js +8 -29
  601. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  602. package/fesm5/taiga-ui-kit-components-input-tag.js +5 -5
  603. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  604. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  605. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  606. package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
  607. package/fesm5/taiga-ui-kit-components-marker-icon.js +1 -1
  608. package/fesm5/taiga-ui-kit-components-marker-icon.js.map +1 -1
  609. package/fesm5/taiga-ui-kit-components-multi-select.js +1 -1
  610. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  611. package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
  612. package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
  613. package/fesm5/taiga-ui-kit-components-pdf-viewer.js +1 -1
  614. package/fesm5/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  615. package/fesm5/taiga-ui-kit-components-progress.js +2 -2
  616. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  617. package/fesm5/taiga-ui-kit-components-radio-list.js.map +1 -1
  618. package/fesm5/taiga-ui-kit-components-radio.js +2 -2
  619. package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
  620. package/fesm5/taiga-ui-kit-components-range.js +225 -35
  621. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  622. package/fesm5/taiga-ui-kit-components-rating.js +1 -1
  623. package/fesm5/taiga-ui-kit-components-rating.js.map +1 -1
  624. package/fesm5/taiga-ui-kit-components-select.js +1 -1
  625. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  626. package/fesm5/taiga-ui-kit-components-slider.js +64 -9
  627. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  628. package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
  629. package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
  630. package/fesm5/taiga-ui-kit-components-tabs.js +42 -38
  631. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  632. package/fesm5/taiga-ui-kit-components-tag.js +28 -11
  633. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  634. package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
  635. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  636. package/fesm5/taiga-ui-kit-components-toggle.js +1 -1
  637. package/fesm5/taiga-ui-kit-pipes-field-error.js.map +1 -1
  638. package/fesm5/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  639. package/fesm5/taiga-ui-kit-tokens.js +7 -1
  640. package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
  641. package/fesm5/taiga-ui-kit-utils-mask.js.map +1 -1
  642. package/fesm5/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  643. package/package.json +4 -4
  644. package/pipes/field-error/field-error-content-pipe.d.ts +1 -1
  645. package/pipes/field-error/field-error-pipe.d.ts +1 -1
  646. package/pipes/filter-by-input/filter-by-input.base.d.ts +1 -1
  647. package/tokens/index.d.ts +1 -0
  648. package/tokens/mobile-aware.d.ts +1 -0
  649. package/tokens/tab-margin.d.ts +2 -0
  650. package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
  651. package/types/key-steps.d.ts +1 -1
  652. package/utils/miscellaneous/create-default-day-range-periods.d.ts +1 -1
  653. package/utils/miscellaneous/create-time-periods.d.ts +1 -1
  654. package/components/tabs/tabs.const.d.ts +0 -2
  655. package/esm2015/components/tabs/tabs.const.js +0 -3
  656. package/esm5/components/tabs/tabs.const.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-progress.js","sources":["ng://@taiga-ui/kit/components/progress/progress-bar/progress-bar.component.ts","ng://@taiga-ui/kit/components/progress/utils/calculate-color-segments.ts","ng://@taiga-ui/kit/components/progress/progress-bar/progress-color-segments.directive.ts","ng://@taiga-ui/kit/components/progress/progress-circle/progress-circle.component.ts","ng://@taiga-ui/kit/components/progress/progress-label/progress-label.component.ts","ng://@taiga-ui/kit/components/progress/progress-segmented/progress-segmented.component.ts","ng://@taiga-ui/kit/components/progress/utils/abstract-color-segments.ts","ng://@taiga-ui/kit/components/progress/utils/progress-color-segments.pipe.ts","ng://@taiga-ui/kit/components/progress/utils/progress-color-segments-async.pipe.ts","ng://@taiga-ui/kit/components/progress/progress.module.ts","ng://@taiga-ui/kit/components/progress/taiga-ui-kit-components-progress.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiSizeS} from '@taiga-ui/core';\n\n@Component({\n selector: 'progress[tuiProgressBar]',\n template: '',\n styleUrls: ['./progress-bar.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressBarComponent {\n @Input()\n @HostBinding('style.--tui-progress-color')\n color?: string;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeS = 'm';\n}\n","/**\n * TODO in v3.0 move inside {@link TuiProgressColorSegmentsDirective} (as a private method)\n * (after deletion of {@link TuiProgressColorSegmentsPipe} and {@link TuiProgressColorSegmentsAsyncPipe})\n */\nimport {px} from '@taiga-ui/cdk';\n\nexport const calculateColorSegments = (\n colors: string[],\n progressWidth: number,\n): string => {\n const segmentWidth = Math.ceil(progressWidth / colors.length);\n const colorsString = colors.reduce(\n (acc, color, i) =>\n `${acc}, ${color} ${px(i * segmentWidth)} ${px((i + 1) * segmentWidth)}`,\n '',\n );\n\n return `linear-gradient(to right ${colorsString})`;\n};\n","import {Directive, ElementRef, Inject, Input} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {\n CHROMIUM_EDGE_START_VERSION,\n isEdgeOlderThan,\n isIE,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {calculateColorSegments} from '../utils/calculate-color-segments';\n\n@Directive({\n selector: 'progress[tuiProgressBar][tuiProgressColorSegments]',\n host: {\n '[$.style.--tui-progress-color]': 'calcSegments$',\n '($.style.--tui-progress-color)': '0',\n },\n providers: [TuiDestroyService, TuiResizeService],\n})\nexport class TuiProgressColorSegmentsDirective {\n private readonly isOldBrowsers =\n isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||\n isIE(this.userAgent);\n\n @Input('tuiProgressColorSegments')\n colors: string[] = [];\n\n @tuiPure\n get calcSegments$(): Observable<string> {\n return this.resize$.pipe(\n map(() =>\n this.isOldBrowsers\n ? this.colors[0]\n : calculateColorSegments(\n this.colors,\n this.elementRef.nativeElement.offsetWidth,\n ),\n ),\n );\n }\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLProgressElement>,\n @Inject(TuiResizeService) private readonly resize$: Observable<unknown>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n CHROMIUM_EDGE_START_VERSION,\n isEdgeOlderThan,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TuiSizeS, TuiSizeXL} from '@taiga-ui/core';\n\n// @dynamic\n@Component({\n selector: 'tui-progress-circle',\n templateUrl: './progress-circle.template.html',\n styleUrls: ['./progress-circle.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressCircleComponent {\n @ViewChild('progressCircle', {static: true})\n private readonly progressCircle!: ElementRef<SVGCircleElement>;\n\n @Input()\n @tuiDefaultProp()\n value = 0;\n\n @Input()\n @tuiDefaultProp()\n max = 1;\n\n @Input()\n @HostBinding('style.--tui-progress-color')\n @tuiDefaultProp()\n color: string | null = null;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeXL = 'm';\n\n @HostBinding('style.--progress-percentage')\n get progressPercentage(): number {\n return this.value / this.max;\n }\n\n get oldEdgeRadiusFallback(): number | null {\n if (!isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent)) {\n return null;\n }\n\n const strokeWidth = parseInt(\n this.windowRef.getComputedStyle(this.progressCircle.nativeElement)\n .strokeWidth,\n 10,\n );\n\n return (this.elementRef.nativeElement.offsetWidth - strokeWidth) / 2;\n }\n\n constructor(\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\n\n@Component({\n selector: 'label[tuiProgressLabel]',\n templateUrl: './progress-label.template.html',\n styleUrls: ['./progress-label.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressLabelComponent {}\n","import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiSizeS} from '@taiga-ui/core';\n\nexport function nonNegativeInt(value: number): boolean {\n return Number.isInteger(value) && value >= 0;\n}\n\nexport function positiveInt(value: number): boolean {\n return Number.isInteger(value) && value > 0;\n}\n\n@Component({\n selector: 'tui-progress-segmented',\n templateUrl: './progress-segmented.template.html',\n styleUrls: ['./progress-segmented.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressSegmentedComponent {\n @Input()\n @tuiDefaultProp(nonNegativeInt, 'Must be non-negative integer between 0 and max')\n value = 0;\n\n @Input()\n @tuiDefaultProp(positiveInt, 'Must be positive integer')\n max = 1;\n\n @Input()\n @HostBinding('attr.data-size')\n size: TuiSizeS = 'm';\n\n @Input()\n @tuiDefaultProp()\n colors: string | ReadonlyArray<string> = 'var(--tui-primary)';\n\n getActiveColor(index: number = 0): string | null {\n return typeof this.colors === 'string'\n ? this.colors\n : this.colors[index] || this.colors[this.colors.length - 1];\n }\n}\n","import {ElementRef, Inject, Injectable, PipeTransform} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, isIE} from '@taiga-ui/cdk';\n\nimport {calculateColorSegments} from './calculate-color-segments';\n\n// TODO delete in v3.0\n@Injectable()\nexport abstract class AbstractTuiColorSegments<T> implements PipeTransform {\n private readonly isOldBrowsers =\n isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||\n isIE(this.userAgent);\n\n constructor(\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n abstract transform(colors: string[]): T;\n\n protected calculate(colors: string[]): string {\n if (this.isOldBrowsers) {\n return colors[0];\n }\n\n const elementWidth = this.elementRef.nativeElement.offsetWidth;\n\n return calculateColorSegments(colors, elementWidth);\n }\n}\n","import {Pipe} from '@angular/core';\n\nimport {AbstractTuiColorSegments} from './abstract-color-segments';\n\n// TODO delete in v3.0\n@Pipe({name: 'tuiProgressColorSegments'})\nexport class TuiProgressColorSegmentsPipe extends AbstractTuiColorSegments<string> {\n /**\n * @deprecated use tuiProgressColorSegments directive instead\n * {@link TuiProgressColorSegmentsDirective}\n * @example: `<progress tuiProgressBar [tuiProgressColorSegments]=\"colors\">`\n */\n transform(colors: string[]): string {\n return this.calculate(colors);\n }\n}\n","import {Pipe} from '@angular/core';\nimport {Observable, timer} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {AbstractTuiColorSegments} from './abstract-color-segments';\n\n// TODO delete in v3.0\n@Pipe({name: 'tuiProgressColorSegmentsAsync'})\nexport class TuiProgressColorSegmentsAsyncPipe extends AbstractTuiColorSegments<\n Observable<string>\n> {\n /**\n * @deprecated use tuiProgressColorSegments directive instead\n * {@link TuiProgressColorSegmentsDirective}\n * @example: `<progress tuiProgressBar [tuiProgressColorSegments]=\"colors\">`\n */\n transform(colors: string[]): Observable<string> {\n return timer(0).pipe(map(() => this.calculate(colors)));\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiRepeatTimesModule} from '@taiga-ui/cdk';\n\nimport {TuiProgressBarComponent} from './progress-bar/progress-bar.component';\nimport {TuiProgressColorSegmentsDirective} from './progress-bar/progress-color-segments.directive';\nimport {TuiProgressCircleComponent} from './progress-circle/progress-circle.component';\nimport {TuiProgressLabelComponent} from './progress-label/progress-label.component';\nimport {TuiProgressSegmentedComponent} from './progress-segmented/progress-segmented.component';\nimport {TuiProgressColorSegmentsPipe} from './utils/progress-color-segments.pipe';\nimport {TuiProgressColorSegmentsAsyncPipe} from './utils/progress-color-segments-async.pipe';\n\n@NgModule({\n imports: [CommonModule, TuiRepeatTimesModule],\n declarations: [\n TuiProgressBarComponent,\n TuiProgressColorSegmentsDirective,\n TuiProgressColorSegmentsPipe,\n TuiProgressColorSegmentsAsyncPipe,\n TuiProgressCircleComponent,\n TuiProgressLabelComponent,\n TuiProgressSegmentedComponent,\n ],\n exports: [\n TuiProgressBarComponent,\n TuiProgressCircleComponent,\n TuiProgressColorSegmentsDirective,\n TuiProgressColorSegmentsPipe,\n TuiProgressColorSegmentsAsyncPipe,\n TuiProgressLabelComponent,\n TuiProgressSegmentedComponent,\n ],\n})\nexport class TuiProgressModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-progress.js","sources":["ng://@taiga-ui/kit/components/progress/progress-bar/progress-bar.component.ts","ng://@taiga-ui/kit/components/progress/utils/calculate-color-segments.ts","ng://@taiga-ui/kit/components/progress/progress-bar/progress-color-segments.directive.ts","ng://@taiga-ui/kit/components/progress/progress-circle/progress-circle.component.ts","ng://@taiga-ui/kit/components/progress/progress-label/progress-label.component.ts","ng://@taiga-ui/kit/components/progress/progress-segmented/progress-segmented.component.ts","ng://@taiga-ui/kit/components/progress/utils/abstract-color-segments.ts","ng://@taiga-ui/kit/components/progress/utils/progress-color-segments.pipe.ts","ng://@taiga-ui/kit/components/progress/utils/progress-color-segments-async.pipe.ts","ng://@taiga-ui/kit/components/progress/progress.module.ts","ng://@taiga-ui/kit/components/progress/taiga-ui-kit-components-progress.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiSizeS} from '@taiga-ui/core';\n\n@Component({\n selector: 'progress[tuiProgressBar]',\n template: '',\n styleUrls: ['./progress-bar.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressBarComponent {\n @Input()\n @HostBinding('style.--tui-progress-color')\n color?: string;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeS = 'm';\n}\n","/**\n * TODO in v3.0 move inside {@link TuiProgressColorSegmentsDirective} (as a private method)\n * (after deletion of {@link TuiProgressColorSegmentsPipe} and {@link TuiProgressColorSegmentsAsyncPipe})\n */\nimport {px} from '@taiga-ui/cdk';\n\nexport const calculateColorSegments = (\n colors: string[],\n progressWidth: number,\n): string => {\n const segmentWidth = Math.ceil(progressWidth / colors.length);\n const colorsString = colors.reduce(\n (acc, color, i) =>\n `${acc}, ${color} ${px(i * segmentWidth)} ${px((i + 1) * segmentWidth)}`,\n '',\n );\n\n return `linear-gradient(to right ${colorsString})`;\n};\n","import {Directive, ElementRef, Inject, Input} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {\n CHROMIUM_EDGE_START_VERSION,\n isEdgeOlderThan,\n isIE,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {calculateColorSegments} from '../utils/calculate-color-segments';\n\n@Directive({\n selector: 'progress[tuiProgressBar][tuiProgressColorSegments]',\n host: {\n '[$.style.--tui-progress-color]': 'calcSegments$',\n '($.style.--tui-progress-color)': '0',\n },\n providers: [TuiDestroyService, TuiResizeService],\n})\nexport class TuiProgressColorSegmentsDirective {\n private readonly isOldBrowsers =\n isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||\n isIE(this.userAgent);\n\n @Input('tuiProgressColorSegments')\n colors: string[] = [];\n\n @tuiPure\n get calcSegments$(): Observable<string> {\n return this.resize$.pipe(\n map(() =>\n this.isOldBrowsers\n ? this.colors[0]\n : calculateColorSegments(\n this.colors,\n this.elementRef.nativeElement.offsetWidth,\n ),\n ),\n );\n }\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLProgressElement>,\n @Inject(TuiResizeService) private readonly resize$: Observable<unknown>,\n @Inject(USER_AGENT) private readonly userAgent: string,\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {USER_AGENT, WINDOW} from '@ng-web-apis/common';\nimport {\n CHROMIUM_EDGE_START_VERSION,\n isEdgeOlderThan,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TuiSizeS, TuiSizeXL} from '@taiga-ui/core';\n\n// @dynamic\n@Component({\n selector: 'tui-progress-circle',\n templateUrl: './progress-circle.template.html',\n styleUrls: ['./progress-circle.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressCircleComponent {\n @ViewChild('progressCircle', {static: true})\n private readonly progressCircle!: ElementRef<SVGCircleElement>;\n\n @Input()\n @tuiDefaultProp()\n value = 0;\n\n @Input()\n @tuiDefaultProp()\n max = 1;\n\n @Input()\n @HostBinding('style.--tui-progress-color')\n @tuiDefaultProp()\n color: string | null = null;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeS | TuiSizeXL = 'm';\n\n @HostBinding('style.--progress-percentage')\n get progressPercentage(): number {\n return this.value / this.max;\n }\n\n get oldEdgeRadiusFallback(): number | null {\n if (!isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent)) {\n return null;\n }\n\n const strokeWidth = parseInt(\n this.windowRef.getComputedStyle(this.progressCircle.nativeElement)\n .strokeWidth,\n 10,\n );\n\n return (this.elementRef.nativeElement.offsetWidth - strokeWidth) / 2;\n }\n\n constructor(\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\n\n@Component({\n selector: 'label[tuiProgressLabel]',\n templateUrl: './progress-label.template.html',\n styleUrls: ['./progress-label.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressLabelComponent {}\n","import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiSizeS} from '@taiga-ui/core';\n\nexport function nonNegativeInt(value: number): boolean {\n return Number.isInteger(value) && value >= 0;\n}\n\nexport function positiveInt(value: number): boolean {\n return Number.isInteger(value) && value > 0;\n}\n\n@Component({\n selector: 'tui-progress-segmented',\n templateUrl: './progress-segmented.template.html',\n styleUrls: ['./progress-segmented.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressSegmentedComponent {\n @Input()\n @tuiDefaultProp(nonNegativeInt, 'Must be non-negative integer between 0 and max')\n value = 0;\n\n @Input()\n @tuiDefaultProp(positiveInt, 'Must be positive integer')\n max = 1;\n\n @Input()\n @HostBinding('attr.data-size')\n size: TuiSizeS = 'm';\n\n @Input()\n @tuiDefaultProp()\n colors: string | readonly string[] = 'var(--tui-primary)';\n\n getActiveColor(index: number = 0): string | null {\n return typeof this.colors === 'string'\n ? this.colors\n : this.colors[index] || this.colors[this.colors.length - 1];\n }\n}\n","import {ElementRef, Inject, Injectable, PipeTransform} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, isIE} from '@taiga-ui/cdk';\n\nimport {calculateColorSegments} from './calculate-color-segments';\n\n// TODO delete in v3.0\n@Injectable()\nexport abstract class AbstractTuiColorSegments<T> implements PipeTransform {\n private readonly isOldBrowsers =\n isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||\n isIE(this.userAgent);\n\n constructor(\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n abstract transform(colors: string[]): T;\n\n protected calculate(colors: string[]): string {\n if (this.isOldBrowsers) {\n return colors[0];\n }\n\n const elementWidth = this.elementRef.nativeElement.offsetWidth;\n\n return calculateColorSegments(colors, elementWidth);\n }\n}\n","import {Pipe} from '@angular/core';\n\nimport {AbstractTuiColorSegments} from './abstract-color-segments';\n\n// TODO delete in v3.0\n@Pipe({name: 'tuiProgressColorSegments'})\nexport class TuiProgressColorSegmentsPipe extends AbstractTuiColorSegments<string> {\n /**\n * @deprecated use tuiProgressColorSegments directive instead\n * {@link TuiProgressColorSegmentsDirective}\n * @example: `<progress tuiProgressBar [tuiProgressColorSegments]=\"colors\">`\n */\n transform(colors: string[]): string {\n return this.calculate(colors);\n }\n}\n","import {Pipe} from '@angular/core';\nimport {Observable, timer} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {AbstractTuiColorSegments} from './abstract-color-segments';\n\n// TODO delete in v3.0\n@Pipe({name: 'tuiProgressColorSegmentsAsync'})\nexport class TuiProgressColorSegmentsAsyncPipe extends AbstractTuiColorSegments<\n Observable<string>\n> {\n /**\n * @deprecated use tuiProgressColorSegments directive instead\n * {@link TuiProgressColorSegmentsDirective}\n * @example: `<progress tuiProgressBar [tuiProgressColorSegments]=\"colors\">`\n */\n transform(colors: string[]): Observable<string> {\n return timer(0).pipe(map(() => this.calculate(colors)));\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiRepeatTimesModule} from '@taiga-ui/cdk';\n\nimport {TuiProgressBarComponent} from './progress-bar/progress-bar.component';\nimport {TuiProgressColorSegmentsDirective} from './progress-bar/progress-color-segments.directive';\nimport {TuiProgressCircleComponent} from './progress-circle/progress-circle.component';\nimport {TuiProgressLabelComponent} from './progress-label/progress-label.component';\nimport {TuiProgressSegmentedComponent} from './progress-segmented/progress-segmented.component';\nimport {TuiProgressColorSegmentsPipe} from './utils/progress-color-segments.pipe';\nimport {TuiProgressColorSegmentsAsyncPipe} from './utils/progress-color-segments-async.pipe';\n\n@NgModule({\n imports: [CommonModule, TuiRepeatTimesModule],\n declarations: [\n TuiProgressBarComponent,\n TuiProgressColorSegmentsDirective,\n TuiProgressColorSegmentsPipe,\n TuiProgressColorSegmentsAsyncPipe,\n TuiProgressCircleComponent,\n TuiProgressLabelComponent,\n TuiProgressSegmentedComponent,\n ],\n exports: [\n TuiProgressBarComponent,\n TuiProgressCircleComponent,\n TuiProgressColorSegmentsDirective,\n TuiProgressColorSegmentsPipe,\n TuiProgressColorSegmentsAsyncPipe,\n TuiProgressLabelComponent,\n TuiProgressSegmentedComponent,\n ],\n})\nexport class TuiProgressModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-radio-list.js","sources":["ng://@taiga-ui/kit/components/radio-list/radio-list.component.ts","ng://@taiga-ui/kit/components/radio-list/radio-list.module.ts","ng://@taiga-ui/kit/components/radio-list/taiga-ui-kit-components-radio-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n QueryList,\n Self,\n ViewChildren,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n EMPTY_QUERY,\n isNativeFocusedIn,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiIdentityMatcher,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TuiOrientationT, TuiSizeL, TuiValueContentContext} from '@taiga-ui/core';\nimport {TuiRadioLabeledComponent} from '@taiga-ui/kit/components/radio-labeled';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-radio-list',\n templateUrl: './radio-list.template.html',\n styleUrls: ['./radio-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRadioListComponent),\n },\n ],\n})\nexport class TuiRadioListComponent<T> extends AbstractTuiNullableControl<T> {\n @ViewChildren(TuiRadioLabeledComponent)\n private readonly radioButtons: QueryList<TuiRadioLabeledComponent<{}>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<T> = [];\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @HostBinding('attr.data-tui-host-orientation')\n @tuiDefaultProp()\n orientation: TuiOrientationT = 'vertical';\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {\n super(control, changeDetectorRef);\n }\n\n // @bad TODO: Remove & { index: number }\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T> & {index: number}> = ({\n $implicit,\n }) => String($implicit);\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n const focusableRadioButton = this.radioButtons.find(\n radioButton => radioButton.nativeFocusableElement !== null,\n );\n\n return focusableRadioButton ? focusableRadioButton.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n computeId(index: number): string {\n return `${this.id}-${index}`;\n }\n\n itemIsDisabled(item: T): boolean {\n return this.disabledItemHandler(item);\n }\n\n getContentContext(\n item: T,\n index: number,\n active: boolean,\n ): TuiValueContentContext<T> & {index: number} {\n return {$implicit: item, index, active};\n }\n\n onModelChange(value: T) {\n this.updateValue(value);\n }\n\n itemIsActive(item: T): boolean {\n return this.value === null\n ? item === null\n : this.identityMatcher(this.value, item);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiRadioGroupModule} from '@taiga-ui/kit/components/radio-group';\nimport {TuiRadioLabeledModule} from '@taiga-ui/kit/components/radio-labeled';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiRadioListComponent} from './radio-list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiRadioGroupModule,\n TuiRadioLabeledModule,\n ],\n declarations: [TuiRadioListComponent],\n exports: [TuiRadioListComponent],\n})\nexport class TuiRadioListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-radio-list.js","sources":["ng://@taiga-ui/kit/components/radio-list/radio-list.component.ts","ng://@taiga-ui/kit/components/radio-list/radio-list.module.ts","ng://@taiga-ui/kit/components/radio-list/taiga-ui-kit-components-radio-list.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n QueryList,\n Self,\n ViewChildren,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n EMPTY_QUERY,\n isNativeFocusedIn,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiIdentityMatcher,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TuiOrientationT, TuiSizeL, TuiValueContentContext} from '@taiga-ui/core';\nimport {TuiRadioLabeledComponent} from '@taiga-ui/kit/components/radio-labeled';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-radio-list',\n templateUrl: './radio-list.template.html',\n styleUrls: ['./radio-list.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRadioListComponent),\n },\n ],\n})\nexport class TuiRadioListComponent<T> extends AbstractTuiNullableControl<T> {\n @ViewChildren(TuiRadioLabeledComponent)\n private readonly radioButtons: QueryList<TuiRadioLabeledComponent<{}>> = EMPTY_QUERY;\n\n @Input()\n @tuiDefaultProp()\n items: readonly T[] = [];\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL = 'm';\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @HostBinding('attr.data-tui-host-orientation')\n @tuiDefaultProp()\n orientation: TuiOrientationT = 'vertical';\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {\n super(control, changeDetectorRef);\n }\n\n // @bad TODO: Remove & { index: number }\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T> & {index: number}> = ({\n $implicit,\n }) => String($implicit);\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n const focusableRadioButton = this.radioButtons.find(\n radioButton => radioButton.nativeFocusableElement !== null,\n );\n\n return focusableRadioButton ? focusableRadioButton.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n computeId(index: number): string {\n return `${this.id}-${index}`;\n }\n\n itemIsDisabled(item: T): boolean {\n return this.disabledItemHandler(item);\n }\n\n getContentContext(\n item: T,\n index: number,\n active: boolean,\n ): TuiValueContentContext<T> & {index: number} {\n return {$implicit: item, index, active};\n }\n\n onModelChange(value: T) {\n this.updateValue(value);\n }\n\n itemIsActive(item: T): boolean {\n return this.value === null\n ? item === null\n : this.identityMatcher(this.value, item);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiRadioGroupModule} from '@taiga-ui/kit/components/radio-group';\nimport {TuiRadioLabeledModule} from '@taiga-ui/kit/components/radio-labeled';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiRadioListComponent} from './radio-list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiRadioGroupModule,\n TuiRadioLabeledModule,\n ],\n declarations: [TuiRadioListComponent],\n exports: [TuiRadioListComponent],\n})\nexport class TuiRadioListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;IA2C8C,yCAA6B;IA0BvE,+BAII,OAAyB,EACE,iBAAoC,EAC1B,UAAmC;QAN5E,YAQI,kBAAM,OAAO,EAAE,iBAAiB,CAAC,SACpC;QAHwC,gBAAU,GAAV,UAAU,CAAyB;QA9B3D,kBAAY,GAA4C,WAAW,CAAC;QAIrF,WAAK,GAAiB,EAAE,CAAC;QAKzB,UAAI,GAAa,GAAG,CAAC;QAIrB,qBAAe,GAA0B,4BAA4B,CAAC;QAKtE,iBAAW,GAAoB,UAAU,CAAC;QAI1C,yBAAmB,GAAyB,oBAAoB,CAAC;;QAgBjE,iBAAW,GAAqE,UAAC,EAEhF;gBADG,wBAAS;YACP,OAAA,MAAM,CAAC,SAAS,CAAC;SAAA,CAAC;;KAPvB;8BAnCQ,qBAAqB;IA4C9B,sBAAI,yDAAsB;aAA1B;YACI,IAAM,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAC/C,UAAA,WAAW,IAAI,OAAA,WAAW,CAAC,sBAAsB,KAAK,IAAI,GAAA,CAC7D,CAAC;YAEF,OAAO,oBAAoB,GAAG,oBAAoB,CAAC,sBAAsB,GAAG,IAAI,CAAC;SACpF;;;OAAA;IAED,sBAAI,0CAAO;aAAX;YACI,OAAO,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;SAC3D;;;OAAA;IAED,yCAAS,GAAT,UAAU,KAAa;QACnB,OAAU,IAAI,CAAC,EAAE,SAAI,KAAO,CAAC;KAChC;IAED,8CAAc,GAAd,UAAe,IAAO;QAClB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;KACzC;IAED,iDAAiB,GAAjB,UACI,IAAO,EACP,KAAa,EACb,MAAe;QAEf,OAAO,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,EAAC,CAAC;KAC3C;IAED,6CAAa,GAAb,UAAc,KAAQ;QAClB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC3B;IAED,4CAAY,GAAZ,UAAa,IAAO;QAChB,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI;cACpB,IAAI,KAAK,IAAI;cACb,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KAChD;;;gBAlDY,SAAS,uBAHjB,QAAQ,YACR,IAAI,YACJ,MAAM,SAAC,SAAS;gBAE6B,iBAAiB,uBAA9D,MAAM,SAAC,iBAAiB;gBACwB,UAAU,uBAA1D,MAAM,SAAC,UAAU;;IA9BtB;QADC,YAAY,CAAC,wBAAwB,CAAC;+DAC8C;IAIrF;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;wDACQ;IAKzB;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,gBAAgB,CAAC;QAC7B,cAAc,EAAE;uDACI;IAIrB;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;kEACqD;IAKtE;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,gCAAgC,CAAC;QAC7C,cAAc,EAAE;8DACyB;IAI1C;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;sEACgD;IAgBjE;QAFC,KAAK,EAAE;QACP,cAAc,EAAE;8DAGO;IA1Cf,qBAAqB;QAZjC,SAAS,CAAC;YACP,QAAQ,EAAE,gBAAgB;YAC1B,4sBAAyC;YAEzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,2BAA2B;oBACpC,WAAW,EAAE,UAAU,CAAC,cAAM,OAAA,uBAAqB,GAAA,CAAC;iBACvD;aACJ;;SACJ,CAAC;QA4BO,WAAA,QAAQ,EAAE,CAAA;QACV,WAAA,IAAI,EAAE,CAAA;QACN,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;QAEjB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzB,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;OAhCd,qBAAqB,CAiFjC;IAAD,4BAAC;CAAA,CAjF6C,0BAA0B;;;ICvBxE;KAAkC;IAArB,kBAAkB;QAX9B,QAAQ,CAAC;YACN,OAAO,EAAE;gBACL,YAAY;gBACZ,WAAW;gBACX,kBAAkB;gBAClB,mBAAmB;gBACnB,qBAAqB;aACxB;YACD,YAAY,EAAE,CAAC,qBAAqB,CAAC;YACrC,OAAO,EAAE,CAAC,qBAAqB,CAAC;SACnC,CAAC;OACW,kBAAkB,CAAG;IAAD,yBAAC;CAAlC;;ACpBA;;;;;;"}
@@ -154,7 +154,7 @@ var TuiRadioComponent = /** @class */ (function (_super) {
154
154
  TuiRadioComponent = TuiRadioComponent_1 = __decorate([
155
155
  Component({
156
156
  selector: 'tui-radio',
157
- template: "<tui-wrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"computedHovered\"\n [pressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n>\n <div *ngIf=\"checked\" class=\"mark\" [@tuiScaleIn]=\"animation\"></div>\n <input\n #focusableElement\n type=\"radio\"\n class=\"native\"\n [id]=\"id\"\n [attr.name]=\"computedName\"\n [disabled]=\"computedDisabled\"\n [tuiChecked]=\"checked\"\n [tuiFocusable]=\"isFocusable\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (tuiPressedChange)=\"onPressed($event)\"\n (tuiCheckedChange)=\"onChecked($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n />\n</tui-wrapper>\n",
157
+ template: "<tui-wrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focused]=\"computedFocusVisible\"\n [hovered]=\"computedHovered\"\n [pressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"checked\"\n class=\"mark\"\n [@tuiScaleIn]=\"animation\"\n ></div>\n <input\n #focusableElement\n type=\"radio\"\n class=\"native\"\n [id]=\"id\"\n [attr.name]=\"computedName\"\n [disabled]=\"computedDisabled\"\n [tuiChecked]=\"checked\"\n [tuiFocusable]=\"isFocusable\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (tuiPressedChange)=\"onPressed($event)\"\n (tuiCheckedChange)=\"onChecked($event)\"\n (tuiFocusVisibleChange)=\"onFocusVisible($event)\"\n />\n</tui-wrapper>\n",
158
158
  changeDetection: ChangeDetectionStrategy.OnPush,
159
159
  providers: [
160
160
  {
@@ -163,7 +163,7 @@ var TuiRadioComponent = /** @class */ (function (_super) {
163
163
  },
164
164
  ],
165
165
  animations: [tuiScaleIn],
166
- styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0;border-radius:100%}:host[data-size='m']{width:1rem;height:1rem}:host[data-size='l']{width:1.5rem;height:1.5rem}:host._readonly{pointer-events:none}.mark{position:absolute;background-color:currentColor;border-radius:100%}:host[data-size='m'] .mark{margin:.25rem;width:.5rem;height:.5rem}:host[data-size='l'] .mark{margin:.4375rem;width:.625rem;height:.625rem}.native{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.native:-webkit-autofill,.native:-webkit-autofill:focus,.native:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host._disabled .native{cursor:default}"]
166
+ styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0;border-radius:100%}:host[data-size='m']{width:1rem;height:1rem}:host[data-size='l']{width:1.5rem;height:1.5rem}:host._readonly{pointer-events:none}.mark{position:absolute;background-color:currentColor;border-radius:100%}:host[data-size='m'] .mark{margin:.25rem;width:.5rem;height:.5rem}:host[data-size='l'] .mark{margin:.4375rem;width:.625rem;height:.625rem}.native{padding:0;margin:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.native:-webkit-autofill,.native:-webkit-autofill:focus,.native:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host._disabled .native{cursor:default}"]
167
167
  }),
168
168
  __param(0, Optional()),
169
169
  __param(0, Self()),
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-radio.js","sources":["ng://@taiga-ui/kit/components/radio/radio-options.ts","ng://@taiga-ui/kit/components/radio/radio.component.ts","ng://@taiga-ui/kit/components/radio/radio.module.ts","ng://@taiga-ui/kit/components/radio/taiga-ui-kit-components-radio.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\n\nexport interface TuiRadioOptions {\n readonly size: TuiSizeL;\n readonly appearances: Readonly<{\n unchecked: string;\n checked: string;\n }>;\n}\n\n/**\n * @deprecated: use TuiRadioOptions instead\n * todo: remove in 3.0\n */\nexport type RadioOptions = TuiRadioOptions;\n\n/** Default values for the checkbox options. */\nexport const TUI_RADIO_DEFAULT_OPTIONS: TuiRadioOptions = {\n size: 'm',\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n },\n};\n\nexport const TUI_RADIO_OPTIONS = new InjectionToken<TuiRadioOptions>(\n 'Default parameters for radio component',\n {\n factory: () => TUI_RADIO_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiRadioOptionsProvider: (\n options: Partial<TuiRadioOptions>,\n) => ValueProvider = (options: Partial<TuiRadioOptions>) => ({\n provide: TUI_RADIO_OPTIONS,\n useValue: {...TUI_RADIO_DEFAULT_OPTIONS, ...options},\n});\n","import {AnimationOptions} from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n isNativeFocused,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiIdentityMatcher,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TUI_ANIMATION_OPTIONS, tuiScaleIn, TuiSizeL} from '@taiga-ui/core';\nimport {TuiRadioGroupComponent} from '@taiga-ui/kit/components/radio-group';\n\nimport {TUI_RADIO_OPTIONS, TuiRadioOptions} from './radio-options';\n\n// @dynamic\n@Component({\n selector: 'tui-radio',\n templateUrl: './radio.template.html',\n styleUrls: ['./radio.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRadioComponent),\n },\n ],\n animations: [tuiScaleIn],\n})\nexport class TuiRadioComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<TuiNativeFocusableElement>;\n\n @Input()\n item?: T;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n name: string | null = null;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @Input()\n @tuiDefaultProp()\n pseudoDisabled = false;\n\n readonly animation = {value: '', ...this.animationOptions} as const;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_ANIMATION_OPTIONS)\n private readonly animationOptions: AnimationOptions,\n @Inject(TUI_RADIO_OPTIONS)\n private readonly options: TuiRadioOptions,\n @Optional()\n @Inject(TuiRadioGroupComponent)\n private readonly radioGroup: TuiRadioGroupComponent | null,\n ) {\n super(control, changeDetectorRef);\n }\n\n get appearance(): string {\n return this.checked\n ? this.options.appearances.checked\n : this.options.appearances.unchecked;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled || this.pseudoDisabled;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.focusableElement || this.computedDisabled\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get checked(): boolean {\n return this.value === null\n ? this.item === null\n : this.item !== undefined && this.identityMatcher(this.value, this.item);\n }\n\n get computedName(): string | null {\n return this.name || this.radioGroupName || this.controlName || null;\n }\n\n get isFocusable(): boolean {\n return !this.readOnly && this.computedFocusable;\n }\n\n onChecked(checked: boolean) {\n if (checked) {\n this.updateValue(this.item !== undefined ? this.item : this.fallbackValue);\n }\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.updateFocusVisible(focusVisible);\n }\n\n private get radioGroupName(): string | null {\n return this.radioGroup === null ? null : this.radioGroup.name;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\n\nimport {TuiRadioComponent} from './radio.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusVisibleModule,\n TuiWrapperModule,\n ],\n declarations: [TuiRadioComponent],\n exports: [TuiRadioComponent],\n})\nexport class TuiRadioModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-radio.js","sources":["ng://@taiga-ui/kit/components/radio/radio-options.ts","ng://@taiga-ui/kit/components/radio/radio.component.ts","ng://@taiga-ui/kit/components/radio/radio.module.ts","ng://@taiga-ui/kit/components/radio/taiga-ui-kit-components-radio.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\nimport {TuiSizeL} from '@taiga-ui/core/types';\n\nexport interface TuiRadioOptions {\n readonly size: TuiSizeL;\n readonly appearances: Readonly<{\n unchecked: string;\n checked: string;\n }>;\n}\n\n/**\n * @deprecated: use TuiRadioOptions instead\n * todo: remove in 3.0\n */\nexport type RadioOptions = TuiRadioOptions;\n\n/** Default values for the checkbox options. */\nexport const TUI_RADIO_DEFAULT_OPTIONS: TuiRadioOptions = {\n size: 'm',\n appearances: {\n unchecked: TuiAppearance.Outline,\n checked: TuiAppearance.Primary,\n },\n};\n\nexport const TUI_RADIO_OPTIONS = new InjectionToken<TuiRadioOptions>(\n 'Default parameters for radio component',\n {\n factory: () => TUI_RADIO_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiRadioOptionsProvider: (\n options: Partial<TuiRadioOptions>,\n) => ValueProvider = (options: Partial<TuiRadioOptions>) => ({\n provide: TUI_RADIO_OPTIONS,\n useValue: {...TUI_RADIO_DEFAULT_OPTIONS, ...options},\n});\n","import {AnimationOptions} from '@angular/animations';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n isNativeFocused,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiIdentityMatcher,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {TUI_ANIMATION_OPTIONS, tuiScaleIn, TuiSizeL} from '@taiga-ui/core';\nimport {TuiRadioGroupComponent} from '@taiga-ui/kit/components/radio-group';\n\nimport {TUI_RADIO_OPTIONS, TuiRadioOptions} from './radio-options';\n\n// @dynamic\n@Component({\n selector: 'tui-radio',\n templateUrl: './radio.template.html',\n styleUrls: ['./radio.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRadioComponent),\n },\n ],\n animations: [tuiScaleIn],\n})\nexport class TuiRadioComponent<T>\n extends AbstractTuiNullableControl<T>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<TuiNativeFocusableElement>;\n\n @Input()\n item?: T;\n\n @Input()\n @tuiDefaultProp()\n identityMatcher: TuiIdentityMatcher<T> = TUI_DEFAULT_IDENTITY_MATCHER;\n\n @Input()\n @tuiDefaultProp()\n name: string | null = null;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeL = this.options.size;\n\n @Input()\n @tuiDefaultProp()\n pseudoDisabled = false;\n\n readonly animation = {value: '', ...this.animationOptions} as const;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_ANIMATION_OPTIONS)\n private readonly animationOptions: AnimationOptions,\n @Inject(TUI_RADIO_OPTIONS)\n private readonly options: TuiRadioOptions,\n @Optional()\n @Inject(TuiRadioGroupComponent)\n private readonly radioGroup: TuiRadioGroupComponent | null,\n ) {\n super(control, changeDetectorRef);\n }\n\n get appearance(): string {\n return this.checked\n ? this.options.appearances.checked\n : this.options.appearances.unchecked;\n }\n\n @HostBinding('class._disabled')\n get computedDisabled(): boolean {\n return this.disabled || this.pseudoDisabled;\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.focusableElement || this.computedDisabled\n ? null\n : this.focusableElement.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get checked(): boolean {\n return this.value === null\n ? this.item === null\n : this.item !== undefined && this.identityMatcher(this.value, this.item);\n }\n\n get computedName(): string | null {\n return this.name || this.radioGroupName || this.controlName || null;\n }\n\n get isFocusable(): boolean {\n return !this.readOnly && this.computedFocusable;\n }\n\n onChecked(checked: boolean) {\n if (checked) {\n this.updateValue(this.item !== undefined ? this.item : this.fallbackValue);\n }\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onFocusVisible(focusVisible: boolean) {\n this.updateFocusVisible(focusVisible);\n }\n\n private get radioGroupName(): string | null {\n return this.radioGroup === null ? null : this.radioGroup.name;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiFocusVisibleModule,\n TuiHoveredModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {TuiWrapperModule} from '@taiga-ui/core';\n\nimport {TuiRadioComponent} from './radio.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiCheckedModule,\n TuiFocusableModule,\n TuiFocusedModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusVisibleModule,\n TuiWrapperModule,\n ],\n declarations: [TuiRadioComponent],\n exports: [TuiRadioComponent],\n})\nexport class TuiRadioModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,31 +1,67 @@
1
- import { __extends, __decorate, __param } from 'tslib';
1
+ import { __decorate, __extends, __read, __spread, __param } from 'tslib';
2
2
  import { DOCUMENT, CommonModule } from '@angular/common';
3
- import { Optional, Self, Inject, ChangeDetectorRef, ElementRef, Component, ChangeDetectionStrategy, forwardRef, NgModule } from '@angular/core';
4
- import { NgControl } from '@angular/forms';
5
- import { isNativeFocusedIn, round, TUI_FOCUSABLE_ITEM_ACCESSOR, TuiRepeatTimesModule, TuiFocusableModule, TuiActiveZoneModule, TuiFocusVisibleModule } from '@taiga-ui/cdk';
6
- import { DOT_WIDTH, AbstractTuiSlider } from '@taiga-ui/kit/abstract';
7
- import { TUI_FLOATING_PRECISION } from '@taiga-ui/kit/constants';
3
+ import { Directive, Optional, Self, Inject, ChangeDetectorRef, ElementRef, Input, ViewChildren, HostBinding, HostListener, Component, ChangeDetectionStrategy, forwardRef, EventEmitter, Output, NgModule } from '@angular/core';
4
+ import { NgControl, FormsModule } from '@angular/forms';
5
+ import { EMPTY_QUERY, isNativeFocusedIn, tuiDefaultProp, nonNegativeFiniteAssertion, tuiPure, TUI_FOCUSABLE_ITEM_ACCESSOR, typedFromEvent, clamp, round, TuiDestroyService, TuiRepeatTimesModule, TuiFocusableModule } from '@taiga-ui/cdk';
6
+ import { AbstractTuiSlider } from '@taiga-ui/kit/abstract';
7
+ import { TuiSliderComponent, TuiSliderModule } from '@taiga-ui/kit/components/slider';
8
8
  import { TUI_FROM_TO_TEXTS } from '@taiga-ui/kit/tokens';
9
- import { Observable } from 'rxjs';
9
+ import { Observable, merge } from 'rxjs';
10
10
  import { TuiFormatNumberPipeModule } from '@taiga-ui/core';
11
+ import { TUI_FLOATING_PRECISION } from '@taiga-ui/kit/constants';
12
+ import { filter, map, tap, switchMap, startWith, takeUntil, repeat } from 'rxjs/operators';
11
13
 
14
+ /**
15
+ * Turn on new mode for `Range` and `InputRange`.
16
+ * The new version of component will behave almost the same as the same component from the next major release.
17
+ * @deprecated TODO remove me in v3.0 and make `Range` and `InputRange` always "new".
18
+ */
19
+ var TuiNewRangeDirective = /** @class */ (function () {
20
+ function TuiNewRangeDirective() {
21
+ }
22
+ TuiNewRangeDirective = __decorate([
23
+ Directive({
24
+ selector: 'tui-range[new], tui-input-range[new]',
25
+ })
26
+ ], TuiNewRangeDirective);
27
+ return TuiNewRangeDirective;
28
+ }());
12
29
  // @dynamic
13
30
  var TuiRangeComponent = /** @class */ (function (_super) {
14
31
  __extends(TuiRangeComponent, _super);
15
- function TuiRangeComponent(control, changeDetectorRef, documentRef, elementRef, fromToTexts$) {
32
+ function TuiRangeComponent(control, changeDetectorRef, documentRef, elementRef, fromToTexts$, isNew) {
16
33
  var _this = _super.call(this, control, changeDetectorRef, documentRef, fromToTexts$) || this;
17
34
  _this.elementRef = elementRef;
35
+ _this.isNew = isNew;
36
+ _this.min = 0;
37
+ /**
38
+ * TODO: make `100` as default value (to be like native sliders) in v3.0
39
+ */
40
+ _this.max = Infinity;
41
+ /**
42
+ * TODO: think about replacing this props by `step` (to be like native slider).
43
+ * It can be easy after refactor of keySteps.
44
+ */
45
+ _this.steps = 0;
46
+ /**
47
+ * TODO: think about replacing this props by `step` (to be like native slider).
48
+ * It can be easy after refactor of keySteps.
49
+ * */
50
+ _this.quantum = 0;
51
+ _this.slidersRefs = EMPTY_QUERY;
52
+ _this.lastActiveThumb = 'right';
18
53
  return _this;
19
54
  }
20
55
  TuiRangeComponent_1 = TuiRangeComponent;
21
56
  Object.defineProperty(TuiRangeComponent.prototype, "nativeFocusableElement", {
22
57
  get: function () {
23
- if (this.computedDisabled || !this.dotLeft || !this.dotRight) {
58
+ var _a = __read(this.slidersRefs, 2), sliderLeftRef = _a[0], sliderRightRef = _a[1];
59
+ if (this.computedDisabled || !sliderLeftRef || !sliderRightRef) {
24
60
  return null;
25
61
  }
26
62
  return this.isLeftFocusable
27
- ? this.dotLeft.nativeElement
28
- : this.dotRight.nativeElement;
63
+ ? sliderLeftRef.nativeElement
64
+ : sliderRightRef.nativeElement;
29
65
  },
30
66
  enumerable: true,
31
67
  configurable: true
@@ -37,6 +73,13 @@ var TuiRangeComponent = /** @class */ (function (_super) {
37
73
  enumerable: true,
38
74
  configurable: true
39
75
  });
76
+ Object.defineProperty(TuiRangeComponent.prototype, "computedKeySteps", {
77
+ get: function () {
78
+ return this.computePureKeySteps(this.keySteps, this.min, this.max);
79
+ },
80
+ enumerable: true,
81
+ configurable: true
82
+ });
40
83
  Object.defineProperty(TuiRangeComponent.prototype, "left", {
41
84
  get: function () {
42
85
  return 100 * this.getFractionFromValue(this.value[0]);
@@ -51,31 +94,41 @@ var TuiRangeComponent = /** @class */ (function (_super) {
51
94
  enumerable: true,
52
95
  configurable: true
53
96
  });
54
- TuiRangeComponent.prototype.getFallbackValue = function () {
55
- return [0, 0];
97
+ TuiRangeComponent.prototype.onFocused = function (focused) {
98
+ this.updateFocused(focused);
56
99
  };
57
- TuiRangeComponent.prototype.processStep = function (increment, right) {
58
- var fraction = this.getFractionFromValue(right ? this.value[1] : this.value[0]);
59
- var step = this.computedStep;
60
- var value = this.getValueFromFraction(increment ? fraction + step : fraction - step);
61
- this.processValue(value, right);
100
+ TuiRangeComponent.prototype.changeByStep = function (coefficient, target) {
101
+ var _a = __read(this.slidersRefs, 2), sliderLeftRef = _a[0], sliderRightRef = _a[1];
102
+ var leftThumbElement = sliderLeftRef.nativeElement;
103
+ var rightThumbElement = sliderRightRef.nativeElement;
104
+ var isRightThumb = target === this.elementRef.nativeElement
105
+ ? this.lastActiveThumb === 'right'
106
+ : target === rightThumbElement;
107
+ var activeThumbElement = isRightThumb ? rightThumbElement : leftThumbElement;
108
+ var previousValue = isRightThumb ? this.value[1] : this.value[0];
109
+ /** @bad TODO think about a solution without twice conversion */
110
+ var previousFraction = this.getFractionFromValue(previousValue);
111
+ var newFractionValue = previousFraction + coefficient * this.computedStep;
112
+ this.processValue(this.getValueFromFraction(newFractionValue), isRightThumb);
113
+ if (activeThumbElement) {
114
+ activeThumbElement.focus();
115
+ }
62
116
  };
63
117
  TuiRangeComponent.prototype.processValue = function (value, right) {
64
118
  var guardedValue = this.valueGuard(value);
65
- if (right === true) {
119
+ if (right) {
66
120
  this.updateEnd(guardedValue);
67
121
  }
68
122
  else {
69
123
  this.updateStart(guardedValue);
70
124
  }
125
+ this.lastActiveThumb = right ? 'right' : 'left';
71
126
  };
72
- TuiRangeComponent.prototype.getCalibratedFractionFromEvents = function (rect, clientX, isMouseDownRight) {
73
- var value = clientX -
74
- rect.left -
75
- DOT_WIDTH[this.size] / 2 -
76
- (isMouseDownRight ? DOT_WIDTH[this.size] : 0);
77
- var total = rect.width - 2 * DOT_WIDTH[this.size];
78
- return round(value / total, TUI_FLOATING_PRECISION);
127
+ TuiRangeComponent.prototype.getFallbackValue = function () {
128
+ return [0, 0];
129
+ };
130
+ TuiRangeComponent.prototype.computePureKeySteps = function (keySteps, min, max) {
131
+ return __spread([[0, min]], (keySteps || []), [[100, max]]);
79
132
  };
80
133
  TuiRangeComponent.prototype.updateStart = function (value) {
81
134
  this.updateValue([Math.min(value, this.value[1]), this.value[1]]);
@@ -89,20 +142,63 @@ var TuiRangeComponent = /** @class */ (function (_super) {
89
142
  { type: ChangeDetectorRef, decorators: [{ type: Inject, args: [ChangeDetectorRef,] }] },
90
143
  { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
91
144
  { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
92
- { type: Observable, decorators: [{ type: Inject, args: [TUI_FROM_TO_TEXTS,] }] }
145
+ { type: Observable, decorators: [{ type: Inject, args: [TUI_FROM_TO_TEXTS,] }] },
146
+ { type: TuiNewRangeDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiNewRangeDirective,] }] }
93
147
  ]; };
148
+ __decorate([
149
+ Input(),
150
+ tuiDefaultProp()
151
+ ], TuiRangeComponent.prototype, "min", void 0);
152
+ __decorate([
153
+ Input(),
154
+ tuiDefaultProp()
155
+ ], TuiRangeComponent.prototype, "max", void 0);
156
+ __decorate([
157
+ Input(),
158
+ tuiDefaultProp()
159
+ ], TuiRangeComponent.prototype, "steps", void 0);
160
+ __decorate([
161
+ Input(),
162
+ tuiDefaultProp(nonNegativeFiniteAssertion, 'Quantum must be a non-negative number')
163
+ ], TuiRangeComponent.prototype, "quantum", void 0);
164
+ __decorate([
165
+ ViewChildren(TuiSliderComponent, { read: ElementRef })
166
+ ], TuiRangeComponent.prototype, "slidersRefs", void 0);
167
+ __decorate([
168
+ HostBinding('style.--left.%')
169
+ ], TuiRangeComponent.prototype, "left", null);
170
+ __decorate([
171
+ HostBinding('style.--right.%')
172
+ ], TuiRangeComponent.prototype, "right", null);
173
+ __decorate([
174
+ HostListener('focusin', ['true']),
175
+ HostListener('focusout', ['false'])
176
+ ], TuiRangeComponent.prototype, "onFocused", null);
177
+ __decorate([
178
+ HostListener('keydown.arrowUp.prevent', ['1', '$event.target']),
179
+ HostListener('keydown.arrowRight.prevent', ['1', '$event.target']),
180
+ HostListener('keydown.arrowLeft.prevent', ['-1', '$event.target']),
181
+ HostListener('keydown.arrowDown.prevent', ['-1', '$event.target'])
182
+ ], TuiRangeComponent.prototype, "changeByStep", null);
183
+ __decorate([
184
+ tuiPure
185
+ ], TuiRangeComponent.prototype, "computePureKeySteps", null);
94
186
  TuiRangeComponent = TuiRangeComponent_1 = __decorate([
95
187
  Component({
96
188
  selector: 'tui-range',
97
- template: "<div\n class=\"event-catcher\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n>\n <div class=\"wrapper\">\n <div *ngIf=\"segmented\" class=\"segments\">\n <span\n *tuiRepeatTimes=\"let segmentIndex of segments + 1\"\n automation-id=\"tui-slider__segment\"\n class=\"segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\" class=\"number\">\n {{ getSegmentPrefix(segmentIndex, fromToText) }} {{\n getSegmentLabel(segmentIndex) | tuiFormatNumber }}\n <span *ngIf=\"pluralizeMap\">\n {{ getSegmentLabel(segmentIndex) | i18nPlural:\n pluralizeMap }}\n </span>\n </span>\n </span>\n </div>\n <div\n automation-id=\"tui-slider__bar\"\n class=\"bar\"\n [style.left.%]=\"left\"\n [style.right.%]=\"right\"\n >\n <div\n #dotLeft\n automation-id=\"tui-slider__left\"\n class=\"dot\"\n [class.dot_focus-visible]=\"focusVisibleLeft && computedFocused\"\n [tuiFocusable]=\"isLeftFocusable\"\n (tuiFocusVisibleChange)=\"onLeftFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(false)\"\n (keydown.arrowDown.prevent)=\"decrement(false)\"\n (keydown.arrowRight.prevent)=\"increment(false)\"\n (keydown.arrowUp.prevent)=\"increment(false)\"\n ></div>\n <div\n #dotRight\n automation-id=\"tui-slider__right\"\n class=\"dot\"\n [class.dot_focus-visible]=\"focusVisibleRight && computedFocused\"\n [tuiFocusable]=\"isRightFocusable\"\n (tuiFocusVisibleChange)=\"onRightFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(true)\"\n (keydown.arrowDown.prevent)=\"decrement(true)\"\n (keydown.arrowRight.prevent)=\"increment(true)\"\n (keydown.arrowUp.prevent)=\"increment(true)\"\n ></div>\n </div>\n </div>\n</div>\n",
189
+ template: "<div class=\"track\">\n <input\n tuiSlider\n readonly\n type=\"range\"\n step=\"any\"\n automation-id=\"tui-range__left\"\n class=\"thumb\"\n [min]=\"min\"\n [max]=\"max\"\n [ngModel]=\"value[0]\"\n [size]=\"size\"\n [keySteps]=\"computedKeySteps\"\n [tuiFocusable]=\"focusable\"\n [attr.disabled]=\"computedDisabled || null\"\n />\n <input\n tuiSlider\n readonly\n type=\"range\"\n step=\"any\"\n automation-id=\"tui-range__right\"\n class=\"thumb\"\n [min]=\"min\"\n [max]=\"max\"\n [ngModel]=\"value[1]\"\n [size]=\"size\"\n [keySteps]=\"computedKeySteps\"\n [tuiFocusable]=\"focusable\"\n [attr.disabled]=\"computedDisabled || null\"\n />\n</div>\n\n<!-- TODO backward compatibility only (remove in v3.0) -->\n<div\n *ngIf=\"segmented\"\n class=\"segments\"\n>\n <span\n *tuiRepeatTimes=\"let tickIndex of segments + 1\"\n automation-id=\"tui-slider__segment\"\n class=\"segment\"\n >\n <ng-container *ngIf=\"fromToTexts$ | async as fromToText\">\n <span\n *ngIf=\"!isNew\"\n class=\"number\"\n >\n {{ getSegmentPrefix(tickIndex, fromToText) }} {{ tickIndex |\n tuiSliderTickLabel:segments:computedKeySteps | tuiFormatNumber\n }}\n <span *ngIf=\"pluralizeMap\">\n {{ tickIndex | tuiSliderTickLabel:segments:computedKeySteps\n | i18nPlural: pluralizeMap }}\n </span>\n </span>\n </ng-container>\n </span>\n</div>\n",
98
190
  changeDetection: ChangeDetectionStrategy.OnPush,
191
+ host: {
192
+ '[attr.tabindex]': '-1',
193
+ '[attr.aria-disabled]': 'computedDisabled',
194
+ },
99
195
  providers: [
100
196
  {
101
197
  provide: TUI_FOCUSABLE_ITEM_ACCESSOR,
102
198
  useExisting: forwardRef(function () { return TuiRangeComponent_1; }),
103
199
  },
104
200
  ],
105
- styles: [":host{display:block;border-radius:var(--tui-radius-m);color:var(--tui-base-03);min-height:.125rem;font-size:1rem}:host[data-size='s']{min-height:.125rem;font-size:.5rem}:host._segmented{padding-bottom:1.25rem}:host._disabled{cursor:default;pointer-events:none;opacity:var(--tui-disabled-opacity)}.event-catcher{min-height:inherit;border-radius:inherit;padding:.4375rem 0;cursor:pointer}.wrapper{position:relative;min-height:inherit;border-radius:inherit;background-color:currentColor;border:solid transparent;border-width:0 1em}.bar{position:absolute;top:0;bottom:0;margin:0 -1em;border-radius:inherit;background-color:var(--tui-primary)}:host-context(tui-input-slider) .bar{margin-left:calc(var(--tui-radius-m)/ 2);border-bottom-left-radius:calc(var(--tui-radius-m) * 5) calc(var(--tui-radius-m) * 1.5)}.dot{transition-property:background-color;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:50%;z-index:1;width:1em;height:1em;transform:translate(0,-50%);border-radius:100%;background-color:var(--tui-primary);outline:0;cursor:ew-resize}.dot:last-child{right:0;transform:translate(0,-50%)}.dot:hover{background-color:var(--tui-primary-hover)}.dot:active{background-color:var(--tui-primary-active)}.dot_focus-visible{box-shadow:inset 0 0 0 2px var(--tui-focus)}.segments{position:relative;z-index:1;display:flex;justify-content:space-between;min-height:inherit;margin:0 -1em}.segments-spacer{height:1.625rem}.segment{position:relative;height:inherit;width:.25rem;background-color:rgba(0,0,0,.36);pointer-events:none}.segment:first-of-type,.segment:last-of-type{background-color:transparent}.number{position:absolute;left:50%;transform:translate(-50%,0);top:100%;font:var(--tui-font-text-s);margin-top:.5rem;color:var(--tui-text-02);white-space:nowrap}.segment:first-of-type .number{left:-.05em;transform:none}.segment:last-of-type .number{left:auto;right:-.05em;transform:none}:host._disabled .number{color:var(--tui-text-01)}"]
201
+ styles: [":host{position:relative;display:block;height:.125rem;border-radius:var(--tui-radius-m);background:var(--tui-base-03);cursor:pointer;outline:0;margin:.4375rem 0}:host:active{cursor:ew-resize}:host:after{content:'';position:absolute;top:-.4375rem;bottom:-.4375rem;width:100%}:host._disabled{opacity:var(--tui-disabled-opacity);cursor:auto}:host[data-size='s'] .track{position:relative;margin:0 .25rem;height:100%}:host[data-size='s'] .track:after{content:'';position:absolute;top:0;left:var(--left);right:var(--right);height:100%;background:var(--tui-primary);margin:0 -.25rem}:host[data-size='m'] .track{position:relative;margin:0 .5rem;height:100%}:host[data-size='m'] .track:after{content:'';position:absolute;top:0;left:var(--left);right:var(--right);height:100%;background:var(--tui-primary);margin:0 -.5rem}.thumb{pointer-events:none;position:absolute;top:.0625rem;left:0;right:0;z-index:1;transform:translate(0,-50%)}.thumb::-webkit-slider-thumb{pointer-events:all}.thumb::-moz-range-thumb{pointer-events:all}input[type=range].thumb::-webkit-slider-runnable-track{background:0 0}input[type=range].thumb::-moz-range-track{background:0 0}input[type=range].thumb::-moz-range-progress{background:0 0}input[type=range].thumb::-ms-track{background:0 0}input[type=range].thumb::-ms-fill-lower{background:0 0}.thumb:last-of-type::-webkit-slider-thumb{transform:translate(50%,0)}.thumb:first-of-type::-webkit-slider-thumb{transform:translate(-50%,0)}.thumb:last-of-type::-moz-range-thumb{transform:translate(50%,0)}.thumb:first-of-type::-moz-range-thumb{transform:translate(-50%,0)}:host._disabled .thumb{opacity:1}.segments{position:absolute;top:0;left:0;bottom:0;right:0}:host[data-size='s'] .segments{display:flex;margin:0 .25rem;font:var(--tui-font-text-s);padding:0 .25rem}:host[data-size='s'] .segments>*{position:relative;flex:2;text-align:center}:host[data-size='s'] .segments>:first-child{left:-.25rem;flex:1;text-align:left}:host[data-size='s'] .segments>:last-child{right:-.25rem;flex:1;text-align:right}tui-input-slider+:host[data-size='s'] .segments{margin-left:calc(var(--tui-radius-m)/ 2 + .25rem)}tui-input-range+:host[data-size='s'] .segments,tui-range+:host[data-size='s'] .segments{margin-left:.5rem;margin-right:.5rem}tui-input-range+:host[data-size='s'] .segments>:first-child,tui-range+:host[data-size='s'] .segments>:first-child{left:-.5rem}tui-input-range+:host[data-size='s'] .segments>:last-child,tui-range+:host[data-size='s'] .segments>:last-child{right:-.5rem}:host[data-size='m'] .segments{display:flex;margin:0 .5rem;font:var(--tui-font-text-s);padding:0 .5rem}:host[data-size='m'] .segments>*{position:relative;flex:2;text-align:center}:host[data-size='m'] .segments>:first-child{left:-.5rem;flex:1;text-align:left}:host[data-size='m'] .segments>:last-child{right:-.5rem;flex:1;text-align:right}tui-input-slider+:host[data-size='m'] .segments{margin-left:calc(var(--tui-radius-m)/ 2 + .5rem)}tui-input-range+:host[data-size='m'] .segments,tui-range+:host[data-size='m'] .segments{margin-left:1rem;margin-right:1rem}tui-input-range+:host[data-size='m'] .segments>:first-child,tui-range+:host[data-size='m'] .segments>:first-child{left:-1rem}tui-input-range+:host[data-size='m'] .segments>:last-child,tui-range+:host[data-size='m'] .segments>:last-child{right:-1rem}.segment:not(:last-of-type):not(:first-of-type):before{content:'';position:absolute;left:0;right:0;margin:auto;background:var(--tui-base-07);width:.25rem;height:100%}.segment:last-of-type .number{margin-right:-.5rem}.segment:first-of-type .number{margin-left:-.5rem}.number{display:inline-block;margin-top:.5rem}"]
106
202
  }),
107
203
  __param(0, Optional()),
108
204
  __param(0, Self()),
@@ -110,11 +206,105 @@ var TuiRangeComponent = /** @class */ (function (_super) {
110
206
  __param(1, Inject(ChangeDetectorRef)),
111
207
  __param(2, Inject(DOCUMENT)),
112
208
  __param(3, Inject(ElementRef)),
113
- __param(4, Inject(TUI_FROM_TO_TEXTS))
209
+ __param(4, Inject(TUI_FROM_TO_TEXTS)),
210
+ __param(5, Optional()),
211
+ __param(5, Inject(TuiNewRangeDirective))
114
212
  ], TuiRangeComponent);
115
213
  return TuiRangeComponent;
116
214
  }(AbstractTuiSlider));
117
215
 
216
+ // @dynamic
217
+ var TuiRangeChangeDirective = /** @class */ (function () {
218
+ function TuiRangeChangeDirective(documentRef, elementRef, range, destroy$) {
219
+ var _this = this;
220
+ this.documentRef = documentRef;
221
+ this.elementRef = elementRef;
222
+ this.range = range;
223
+ /**
224
+ * TODO replace with pointer events (when all supported browsers can handle them).
225
+ * Dont forget to use setPointerCapture instead of listening all documentRef events
226
+ */
227
+ this.pointerDown$ = merge(typedFromEvent(this.elementRef.nativeElement, 'touchstart', { passive: true }).pipe(filter(function (_a) {
228
+ var touches = _a.touches;
229
+ return touches.length === 1;
230
+ }), map(function (_a) {
231
+ var touches = _a.touches;
232
+ return touches[0];
233
+ })), typedFromEvent(this.elementRef.nativeElement, 'mousedown', { passive: true }));
234
+ this.pointerMove$ = merge(typedFromEvent(this.documentRef, 'touchmove').pipe(filter(function (_a) {
235
+ var touches = _a.touches;
236
+ return touches.length === 1;
237
+ }), map(function (_a) {
238
+ var touches = _a.touches;
239
+ return touches[0];
240
+ })), typedFromEvent(this.documentRef, 'mousemove'));
241
+ this.pointerUp$ = merge(typedFromEvent(this.documentRef, 'touchend', { passive: true }), typedFromEvent(this.documentRef, 'mouseup', { passive: true }));
242
+ this.activeThumbChange = new EventEmitter();
243
+ var activeThumb;
244
+ this.pointerDown$
245
+ .pipe(tap(function (_a) {
246
+ var clientX = _a.clientX, target = _a.target;
247
+ activeThumb = _this.detectActiveThumb(clientX, target);
248
+ _this.activeThumbChange.emit(activeThumb);
249
+ elementRef.nativeElement.focus();
250
+ }), switchMap(function (event) { return _this.pointerMove$.pipe(startWith(event)); }), map(function (_a) {
251
+ var clientX = _a.clientX;
252
+ return clamp(_this.getFractionFromEvents(clientX), 0, 1);
253
+ }), takeUntil(this.pointerUp$), repeat(), takeUntil(destroy$))
254
+ .subscribe(function (fraction) {
255
+ var value = _this.range.getValueFromFraction(_this.range.fractionGuard(fraction));
256
+ _this.range.processValue(value, activeThumb === 'right');
257
+ });
258
+ }
259
+ TuiRangeChangeDirective.prototype.getFractionFromEvents = function (clickClientX) {
260
+ var hostRect = this.elementRef.nativeElement.getBoundingClientRect();
261
+ var value = clickClientX - hostRect.left;
262
+ var total = hostRect.width;
263
+ return round(value / total, TUI_FLOATING_PRECISION);
264
+ };
265
+ TuiRangeChangeDirective.prototype.detectActiveThumb = function (clientX, target) {
266
+ var _a = __read(this.range.slidersRefs, 2), leftSliderRef = _a[0], rightSliderRef = _a[1];
267
+ switch (target) {
268
+ case leftSliderRef.nativeElement:
269
+ return 'left';
270
+ case rightSliderRef.nativeElement:
271
+ return 'right';
272
+ default:
273
+ return this.findNearestActiveThumb(clientX);
274
+ }
275
+ };
276
+ TuiRangeChangeDirective.prototype.findNearestActiveThumb = function (clientX) {
277
+ var fraction = this.getFractionFromEvents(clientX);
278
+ var deltaLeft = fraction * 100 - this.range.left;
279
+ var deltaRight = fraction * 100 - 100 + this.range.right;
280
+ return Math.abs(deltaLeft) > Math.abs(deltaRight) ||
281
+ deltaRight > 0 ||
282
+ (this.range.left === 0 && this.range.right === 100)
283
+ ? 'right'
284
+ : 'left';
285
+ };
286
+ TuiRangeChangeDirective.ctorParameters = function () { return [
287
+ { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
288
+ { type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
289
+ { type: TuiRangeComponent, decorators: [{ type: Inject, args: [TuiRangeComponent,] }] },
290
+ { type: Observable, decorators: [{ type: Inject, args: [TuiDestroyService,] }] }
291
+ ]; };
292
+ __decorate([
293
+ Output()
294
+ ], TuiRangeChangeDirective.prototype, "activeThumbChange", void 0);
295
+ TuiRangeChangeDirective = __decorate([
296
+ Directive({
297
+ selector: 'tui-range',
298
+ providers: [TuiDestroyService],
299
+ }),
300
+ __param(0, Inject(DOCUMENT)),
301
+ __param(1, Inject(ElementRef)),
302
+ __param(2, Inject(TuiRangeComponent)),
303
+ __param(3, Inject(TuiDestroyService))
304
+ ], TuiRangeChangeDirective);
305
+ return TuiRangeChangeDirective;
306
+ }());
307
+
118
308
  var TuiRangeModule = /** @class */ (function () {
119
309
  function TuiRangeModule() {
120
310
  }
@@ -124,12 +314,12 @@ var TuiRangeModule = /** @class */ (function () {
124
314
  CommonModule,
125
315
  TuiRepeatTimesModule,
126
316
  TuiFocusableModule,
127
- TuiActiveZoneModule,
128
- TuiFocusVisibleModule,
129
317
  TuiFormatNumberPipeModule,
318
+ TuiSliderModule,
319
+ FormsModule,
130
320
  ],
131
- declarations: [TuiRangeComponent],
132
- exports: [TuiRangeComponent],
321
+ declarations: [TuiRangeComponent, TuiRangeChangeDirective, TuiNewRangeDirective],
322
+ exports: [TuiRangeComponent, TuiRangeChangeDirective, TuiNewRangeDirective],
133
323
  })
134
324
  ], TuiRangeModule);
135
325
  return TuiRangeModule;
@@ -139,5 +329,5 @@ var TuiRangeModule = /** @class */ (function () {
139
329
  * Generated bundle index. Do not edit.
140
330
  */
141
331
 
142
- export { TuiRangeComponent, TuiRangeModule };
332
+ export { TuiNewRangeDirective, TuiRangeChangeDirective, TuiRangeComponent, TuiRangeModule };
143
333
  //# sourceMappingURL=taiga-ui-kit-components-range.js.map