@taiga-ui/kit 3.0.0-rc.0 → 3.0.0-rc.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 (585) hide show
  1. package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -17
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-action.umd.js +3 -9
  4. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-arrow.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-avatar.umd.js +3 -3
  8. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-badge.umd.js +3 -3
  10. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-badged-content.umd.js +3 -6
  12. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  14. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +0 -1
  16. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +12 -8
  18. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-carousel.umd.js +4 -5
  20. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +7 -10
  22. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +5 -9
  24. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-checkbox.umd.js +5 -9
  26. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-combo-box.umd.js +21 -41
  28. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +5 -26
  30. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-files.umd.js +1 -2
  32. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  34. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-copy.umd.js +21 -36
  36. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-count.umd.js +12 -35
  38. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +19 -42
  40. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +18 -42
  42. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-date.umd.js +17 -41
  44. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-files.umd.js +4 -17
  46. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -8
  48. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +19 -37
  50. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-input-month.umd.js +19 -37
  52. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-number.umd.js +14 -37
  54. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-password.umd.js +29 -56
  56. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +38 -51
  58. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-phone.umd.js +30 -57
  60. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-range.umd.js +17 -13
  62. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-slider.umd.js +14 -12
  64. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-tag.umd.js +33 -50
  66. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-time.umd.js +8 -15
  68. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input.umd.js +16 -33
  70. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +108 -18
  72. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-marker-icon.umd.js +1 -1
  74. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +3 -3
  76. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-multi-select.umd.js +34 -69
  78. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-pagination.umd.js +10 -23
  80. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +2 -15
  82. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-progress.umd.js +5 -15
  84. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-radio-block.umd.js +7 -10
  86. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +5 -9
  88. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-radio-list.umd.js +5 -9
  90. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-radio.umd.js +5 -10
  92. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  93. package/bundles/taiga-ui-kit-components-range.umd.js +40 -86
  94. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  95. package/bundles/taiga-ui-kit-components-rating.umd.js +4 -8
  96. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  97. package/bundles/taiga-ui-kit-components-select-option.umd.js +5 -5
  98. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  99. package/bundles/taiga-ui-kit-components-select.umd.js +20 -40
  100. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  101. package/bundles/taiga-ui-kit-components-slider.umd.js +40 -38
  102. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-stepper.umd.js +9 -7
  104. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  105. package/bundles/taiga-ui-kit-components-tabs.umd.js +40 -40
  106. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-tag.umd.js +6 -17
  108. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-text-area.umd.js +18 -31
  110. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-toggle.umd.js +5 -9
  112. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-tree.umd.js +2 -8
  114. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  115. package/bundles/taiga-ui-kit-constants.umd.js +334 -3
  116. package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
  117. package/bundles/{taiga-ui-kit-directives-dropdown-context.umd.js → taiga-ui-kit-directives-data-list-dropdown-manager.umd.js} +117 -141
  118. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -0
  119. package/bundles/taiga-ui-kit-directives-highlight.umd.js +0 -1
  120. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  121. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +2 -2
  122. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-directives-present.umd.js +2 -2
  124. package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-directives-project-class.umd.js +0 -3
  126. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-directives.umd.js +6 -18
  128. package/bundles/taiga-ui-kit-directives.umd.js.map +1 -1
  129. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +4 -4
  130. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-pipes-field-error.umd.js +0 -2
  132. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  133. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +3 -3
  134. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  135. package/bundles/taiga-ui-kit-providers.umd.js +11 -42
  136. package/bundles/taiga-ui-kit-providers.umd.js.map +1 -1
  137. package/bundles/taiga-ui-kit-tokens.umd.js +17 -12
  138. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  139. package/bundles/taiga-ui-kit-utils-files.umd.js +3 -15
  140. package/bundles/taiga-ui-kit-utils-files.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-utils-format.umd.js +1 -5
  142. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  143. package/bundles/taiga-ui-kit-utils-mask.umd.js +3 -9
  144. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-utils-math.umd.js +1 -1
  146. package/bundles/taiga-ui-kit-utils-math.umd.js.map +1 -1
  147. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js +1 -5
  148. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  149. package/bundles/taiga-ui-kit-utils.umd.js +4 -10
  150. package/bundles/taiga-ui-kit-utils.umd.js.map +1 -1
  151. package/components/badge/badge.component.d.ts +2 -2
  152. package/components/badged-content/badged-content.component.d.ts +2 -2
  153. package/components/combo-box/index.d.ts +0 -1
  154. package/components/filter/filter.component.d.ts +1 -1
  155. package/components/input/index.d.ts +0 -1
  156. package/components/input-copy/index.d.ts +0 -1
  157. package/components/input-copy/input-copy.component.d.ts +4 -4
  158. package/components/input-date/index.d.ts +0 -1
  159. package/components/input-date-range/index.d.ts +0 -1
  160. package/components/input-date-time/index.d.ts +0 -1
  161. package/components/input-month/index.d.ts +0 -1
  162. package/components/input-month-range/index.d.ts +0 -1
  163. package/components/input-password/input-password.component.d.ts +2 -2
  164. package/components/input-password/input-password.module.d.ts +2 -3
  165. package/components/input-phone/index.d.ts +0 -1
  166. package/components/input-phone/input-phone.component.d.ts +2 -2
  167. package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -5
  168. package/components/input-range/input-range.component.d.ts +1 -0
  169. package/components/input-slider/input-slider.component.d.ts +1 -0
  170. package/components/input-tag/input-tag-options.d.ts +4 -1
  171. package/components/input-tag/input-tag.component.d.ts +3 -5
  172. package/components/line-clamp/index.d.ts +1 -0
  173. package/components/line-clamp/line-clamp-box.component.d.ts +7 -0
  174. package/components/line-clamp/line-clamp-position.directive.d.ts +9 -0
  175. package/components/line-clamp/line-clamp.module.d.ts +7 -5
  176. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +0 -3
  177. package/components/pagination/pagination.component.d.ts +0 -1
  178. package/components/progress/progress-segmented/progress-segmented.component.d.ts +0 -2
  179. package/components/range/range.component.d.ts +7 -23
  180. package/components/select/index.d.ts +0 -1
  181. package/components/slider/helpers/slider-key-steps.directive.d.ts +1 -3
  182. package/components/slider/slider.component.d.ts +5 -3
  183. package/components/stepper/step/step.component.d.ts +2 -2
  184. package/components/tabs/tab/tab.providers.d.ts +1 -4
  185. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +2 -1
  186. package/components/tabs/tabs-with-more/tabs-with-more.providers.d.ts +3 -4
  187. package/components/tag/tag.component.d.ts +1 -3
  188. package/components/text-area/index.d.ts +0 -1
  189. package/components/tree/components/tree-item/tree-item.providers.d.ts +0 -1
  190. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +15 -0
  191. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.d.ts +7 -0
  192. package/directives/data-list-dropdown-manager/index.d.ts +2 -0
  193. package/directives/data-list-dropdown-manager/package.json +10 -0
  194. package/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.d.ts +5 -0
  195. package/directives/index.d.ts +1 -3
  196. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -17
  197. package/esm2015/components/accordion/accordion.component.js +5 -5
  198. package/esm2015/components/action/action.component.js +6 -12
  199. package/esm2015/components/arrow/arrow.component.js +3 -3
  200. package/esm2015/components/avatar/avatar.component.js +6 -6
  201. package/esm2015/components/badge/badge.component.js +6 -6
  202. package/esm2015/components/badged-content/badged-content.component.js +4 -7
  203. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
  204. package/esm2015/components/calendar-month/calendar-month.component.js +1 -2
  205. package/esm2015/components/calendar-range/calendar-range.component.js +12 -11
  206. package/esm2015/components/carousel/carousel-scroll.directive.js +3 -3
  207. package/esm2015/components/carousel/carousel.component.js +4 -5
  208. package/esm2015/components/carousel/carousel.directive.js +3 -3
  209. package/esm2015/components/checkbox/checkbox.component.js +8 -12
  210. package/esm2015/components/checkbox-block/checkbox-block.component.js +10 -13
  211. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +8 -12
  212. package/esm2015/components/combo-box/combo-box.component.js +20 -8
  213. package/esm2015/components/combo-box/combo-box.directive.js +5 -15
  214. package/esm2015/components/combo-box/index.js +1 -2
  215. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +5 -15
  216. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +5 -15
  217. package/esm2015/components/data-list-wrapper/data-list-wrapper.js +3 -4
  218. package/esm2015/components/files/file/file.component.js +3 -4
  219. package/esm2015/components/filter/filter.component.js +2 -2
  220. package/esm2015/components/input/index.js +1 -2
  221. package/esm2015/components/input/input.component.js +18 -7
  222. package/esm2015/components/input/input.directive.js +5 -15
  223. package/esm2015/components/input-copy/index.js +1 -2
  224. package/esm2015/components/input-copy/input-copy.component.js +18 -10
  225. package/esm2015/components/input-copy/input-copy.directive.js +5 -15
  226. package/esm2015/components/input-count/input-count.component.js +14 -27
  227. package/esm2015/components/input-count/input-count.directive.js +5 -15
  228. package/esm2015/components/input-date/index.js +1 -2
  229. package/esm2015/components/input-date/input-date.component.js +15 -9
  230. package/esm2015/components/input-date/input-date.directive.js +5 -15
  231. package/esm2015/components/input-date-range/index.js +1 -2
  232. package/esm2015/components/input-date-range/input-date-range.component.js +18 -11
  233. package/esm2015/components/input-date-range/input-date-range.directive.js +5 -15
  234. package/esm2015/components/input-date-time/index.js +1 -2
  235. package/esm2015/components/input-date-time/input-date-time.component.js +16 -10
  236. package/esm2015/components/input-date-time/input-date-time.directive.js +5 -15
  237. package/esm2015/components/input-files/input-files.component.js +8 -21
  238. package/esm2015/components/input-inline/input-inline.component.js +5 -11
  239. package/esm2015/components/input-month/index.js +1 -2
  240. package/esm2015/components/input-month/input-month.component.js +17 -8
  241. package/esm2015/components/input-month/input-month.directive.js +5 -17
  242. package/esm2015/components/input-month-range/index.js +1 -2
  243. package/esm2015/components/input-month-range/input-month-range.component.js +17 -8
  244. package/esm2015/components/input-month-range/input-month-range.directive.js +5 -17
  245. package/esm2015/components/input-number/input-number.component.js +16 -29
  246. package/esm2015/components/input-number/input-number.directive.js +5 -15
  247. package/esm2015/components/input-password/input-password.component.js +18 -32
  248. package/esm2015/components/input-password/input-password.directive.js +5 -15
  249. package/esm2015/components/input-password/input-password.module.js +1 -5
  250. package/esm2015/components/input-phone/index.js +1 -2
  251. package/esm2015/components/input-phone/input-phone.component.js +28 -14
  252. package/esm2015/components/input-phone/input-phone.directive.js +5 -15
  253. package/esm2015/components/input-phone-international/input-phone-international.component.js +16 -22
  254. package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +5 -11
  255. package/esm2015/components/input-range/input-range.component.js +20 -16
  256. package/esm2015/components/input-slider/input-slider.component.js +13 -15
  257. package/esm2015/components/input-tag/input-tag-options.js +8 -1
  258. package/esm2015/components/input-tag/input-tag.component.js +24 -54
  259. package/esm2015/components/input-time/input-time.component.js +11 -18
  260. package/esm2015/components/line-clamp/index.js +2 -1
  261. package/esm2015/components/line-clamp/line-clamp-box.component.js +32 -0
  262. package/esm2015/components/line-clamp/line-clamp-position.directive.js +26 -0
  263. package/esm2015/components/line-clamp/line-clamp.component.js +22 -9
  264. package/esm2015/components/line-clamp/line-clamp.module.js +30 -6
  265. package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
  266. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +11 -21
  267. package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +17 -28
  268. package/esm2015/components/multi-select/multi-select.component.js +15 -30
  269. package/esm2015/components/multi-select-option/multi-select-option.component.js +6 -6
  270. package/esm2015/components/pagination/pagination.component.js +13 -25
  271. package/esm2015/components/pdf-viewer/pdf-viewer.module.js +4 -17
  272. package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +4 -4
  273. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  274. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +3 -11
  275. package/esm2015/components/radio/radio.component.js +8 -13
  276. package/esm2015/components/radio-block/radio-block.component.js +10 -13
  277. package/esm2015/components/radio-labeled/radio-labeled.component.js +8 -12
  278. package/esm2015/components/radio-list/radio-list.component.js +8 -12
  279. package/esm2015/components/range/range-change.directive.js +10 -9
  280. package/esm2015/components/range/range.component.js +27 -79
  281. package/esm2015/components/rating/rating.component.js +7 -11
  282. package/esm2015/components/select/index.js +1 -2
  283. package/esm2015/components/select/select.component.js +19 -7
  284. package/esm2015/components/select/select.directive.js +5 -15
  285. package/esm2015/components/select-option/select-option.component.js +7 -7
  286. package/esm2015/components/slider/helpers/slider-key-steps.directive.js +14 -22
  287. package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -6
  288. package/esm2015/components/slider/slider.component.js +21 -10
  289. package/esm2015/components/stepper/step/step.component.js +5 -5
  290. package/esm2015/components/stepper/stepper.component.js +7 -5
  291. package/esm2015/components/tabs/tab/tab.providers.js +10 -10
  292. package/esm2015/components/tabs/tabs/tabs.component.js +1 -2
  293. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +18 -17
  294. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +9 -11
  295. package/esm2015/components/tag/tag.component.js +10 -20
  296. package/esm2015/components/text-area/index.js +1 -2
  297. package/esm2015/components/text-area/text-area.component.js +19 -8
  298. package/esm2015/components/text-area/text-area.directive.js +5 -15
  299. package/esm2015/components/toggle/toggle.component.js +8 -12
  300. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +2 -6
  301. package/esm2015/components/tree/directives/tree-controller.directive.js +3 -3
  302. package/esm2015/components/tree/misc/tree.service.js +1 -2
  303. package/esm2015/constants/max-day-range-length-mapper.js +5 -4
  304. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +100 -0
  305. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.js +16 -0
  306. package/esm2015/directives/data-list-dropdown-manager/index.js +3 -0
  307. package/esm2015/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.js +5 -0
  308. package/esm2015/directives/highlight/highlight.directive.js +1 -2
  309. package/esm2015/directives/index.js +2 -4
  310. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +2 -2
  311. package/esm2015/directives/lazy-loading/lazy-loading.service.js +3 -3
  312. package/esm2015/directives/present/present.directive.js +4 -4
  313. package/esm2015/directives/project-class/project-class.directive.js +1 -4
  314. package/esm2015/interfaces/index.js +1 -2
  315. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +7 -7
  316. package/esm2015/pipes/field-error/field-error-content-pipe.js +1 -2
  317. package/esm2015/pipes/field-error/field-error-pipe.js +1 -2
  318. package/esm2015/pipes/filter-by-input/filter-by-input.base.js +5 -5
  319. package/esm2015/providers/month-formatter.provider.js +8 -13
  320. package/esm2015/providers/specific-dropdown-controllers.js +6 -29
  321. package/esm2015/tokens/calendar-date-stream.js +15 -0
  322. package/esm2015/tokens/index.js +2 -3
  323. package/esm2015/utils/files/format-size.js +4 -9
  324. package/esm2015/utils/files/get-accept-array.js +2 -7
  325. package/esm2015/utils/format/string-hash-to-hsl.js +2 -5
  326. package/esm2015/utils/index.js +1 -2
  327. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -8
  328. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +3 -3
  329. package/esm2015/utils/math/key-steps.js +3 -3
  330. package/esm2015/utils/miscellaneous/get-precision.js +2 -5
  331. package/fesm2015/taiga-ui-kit-components-accordion.js +7 -19
  332. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  333. package/fesm2015/taiga-ui-kit-components-action.js +5 -11
  334. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  335. package/fesm2015/taiga-ui-kit-components-arrow.js +2 -2
  336. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  337. package/fesm2015/taiga-ui-kit-components-avatar.js +5 -5
  338. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  339. package/fesm2015/taiga-ui-kit-components-badge.js +4 -4
  340. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  341. package/fesm2015/taiga-ui-kit-components-badged-content.js +3 -6
  342. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  343. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  344. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  345. package/fesm2015/taiga-ui-kit-components-calendar-month.js +0 -1
  346. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  347. package/fesm2015/taiga-ui-kit-components-calendar-range.js +12 -11
  348. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  349. package/fesm2015/taiga-ui-kit-components-carousel.js +5 -6
  350. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  351. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +9 -12
  352. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  353. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +7 -11
  354. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  355. package/fesm2015/taiga-ui-kit-components-checkbox.js +7 -11
  356. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  357. package/fesm2015/taiga-ui-kit-components-combo-box.js +22 -41
  358. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  359. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +7 -28
  360. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  361. package/fesm2015/taiga-ui-kit-components-files.js +2 -3
  362. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  363. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  364. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  365. package/fesm2015/taiga-ui-kit-components-input-copy.js +22 -36
  366. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  367. package/fesm2015/taiga-ui-kit-components-input-count.js +15 -38
  368. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  369. package/fesm2015/taiga-ui-kit-components-input-date-range.js +20 -44
  370. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  371. package/fesm2015/taiga-ui-kit-components-input-date-time.js +19 -44
  372. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  373. package/fesm2015/taiga-ui-kit-components-input-date.js +18 -43
  374. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  375. package/fesm2015/taiga-ui-kit-components-input-files.js +7 -20
  376. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  377. package/fesm2015/taiga-ui-kit-components-input-inline.js +4 -10
  378. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  379. package/fesm2015/taiga-ui-kit-components-input-month-range.js +20 -37
  380. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  381. package/fesm2015/taiga-ui-kit-components-input-month.js +20 -37
  382. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  383. package/fesm2015/taiga-ui-kit-components-input-number.js +17 -40
  384. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  385. package/fesm2015/taiga-ui-kit-components-input-password.js +20 -47
  386. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  387. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +18 -30
  388. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  389. package/fesm2015/taiga-ui-kit-components-input-phone.js +31 -57
  390. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  391. package/fesm2015/taiga-ui-kit-components-input-range.js +19 -15
  392. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  393. package/fesm2015/taiga-ui-kit-components-input-slider.js +12 -14
  394. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  395. package/fesm2015/taiga-ui-kit-components-input-tag.js +33 -55
  396. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  397. package/fesm2015/taiga-ui-kit-components-input-time.js +10 -17
  398. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  399. package/fesm2015/taiga-ui-kit-components-input.js +20 -36
  400. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  401. package/fesm2015/taiga-ui-kit-components-line-clamp.js +96 -14
  402. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  403. package/fesm2015/taiga-ui-kit-components-marker-icon.js +1 -1
  404. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  405. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +5 -5
  406. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  407. package/fesm2015/taiga-ui-kit-components-multi-select.js +37 -73
  408. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  409. package/fesm2015/taiga-ui-kit-components-pagination.js +13 -25
  410. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  411. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +3 -16
  412. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  413. package/fesm2015/taiga-ui-kit-components-progress.js +7 -15
  414. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  415. package/fesm2015/taiga-ui-kit-components-radio-block.js +9 -12
  416. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  417. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +7 -11
  418. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  419. package/fesm2015/taiga-ui-kit-components-radio-list.js +7 -11
  420. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  421. package/fesm2015/taiga-ui-kit-components-radio.js +7 -12
  422. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  423. package/fesm2015/taiga-ui-kit-components-range.js +38 -86
  424. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  425. package/fesm2015/taiga-ui-kit-components-rating.js +6 -10
  426. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  427. package/fesm2015/taiga-ui-kit-components-select-option.js +6 -6
  428. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  429. package/fesm2015/taiga-ui-kit-components-select.js +21 -40
  430. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  431. package/fesm2015/taiga-ui-kit-components-slider.js +34 -32
  432. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  433. package/fesm2015/taiga-ui-kit-components-stepper.js +10 -8
  434. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  435. package/fesm2015/taiga-ui-kit-components-tabs.js +33 -35
  436. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  437. package/fesm2015/taiga-ui-kit-components-tag.js +10 -20
  438. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  439. package/fesm2015/taiga-ui-kit-components-text-area.js +22 -34
  440. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  441. package/fesm2015/taiga-ui-kit-components-toggle.js +7 -11
  442. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  443. package/fesm2015/taiga-ui-kit-components-tree.js +4 -9
  444. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  445. package/fesm2015/taiga-ui-kit-constants.js +4 -3
  446. package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
  447. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +120 -0
  448. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -0
  449. package/fesm2015/taiga-ui-kit-directives-highlight.js +0 -1
  450. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +3 -3
  452. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  453. package/fesm2015/taiga-ui-kit-directives-present.js +3 -3
  454. package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-directives-project-class.js +0 -3
  456. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-directives.js +1 -3
  458. package/fesm2015/taiga-ui-kit-directives.js.map +1 -1
  459. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +6 -6
  460. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  461. package/fesm2015/taiga-ui-kit-pipes-field-error.js +0 -2
  462. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  463. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +4 -4
  464. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  465. package/fesm2015/taiga-ui-kit-providers.js +13 -40
  466. package/fesm2015/taiga-ui-kit-providers.js.map +1 -1
  467. package/fesm2015/taiga-ui-kit-tokens.js +15 -8
  468. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-utils-files.js +5 -15
  470. package/fesm2015/taiga-ui-kit-utils-files.js.map +1 -1
  471. package/fesm2015/taiga-ui-kit-utils-format.js +2 -5
  472. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  473. package/fesm2015/taiga-ui-kit-utils-mask.js +4 -9
  474. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  475. package/fesm2015/taiga-ui-kit-utils-math.js +2 -2
  476. package/fesm2015/taiga-ui-kit-utils-math.js.map +1 -1
  477. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js +2 -5
  478. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  479. package/fesm2015/taiga-ui-kit-utils.js +0 -1
  480. package/fesm2015/taiga-ui-kit-utils.js.map +1 -1
  481. package/interfaces/index.d.ts +0 -1
  482. package/package.json +5 -5
  483. package/providers/month-formatter.provider.d.ts +0 -7
  484. package/providers/specific-dropdown-controllers.d.ts +1 -6
  485. package/tokens/calendar-date-stream.d.ts +5 -0
  486. package/tokens/index.d.ts +1 -2
  487. package/tokens/validation-errors.d.ts +1 -1
  488. package/utils/files/format-size.d.ts +1 -5
  489. package/utils/files/get-accept-array.d.ts +1 -5
  490. package/utils/format/string-hash-to-hsl.d.ts +1 -3
  491. package/utils/index.d.ts +0 -1
  492. package/utils/mask/create-auto-corrected-date-pipe.d.ts +1 -5
  493. package/utils/miscellaneous/get-precision.d.ts +1 -3
  494. package/abstract/index.d.ts +0 -1
  495. package/abstract/package.json +0 -10
  496. package/abstract/slider/slider.d.ts +0 -69
  497. package/abstract/taiga-ui-kit-abstract.d.ts +0 -5
  498. package/bundles/taiga-ui-kit-abstract.umd.js +0 -651
  499. package/bundles/taiga-ui-kit-abstract.umd.js.map +0 -1
  500. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +0 -1
  501. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js +0 -107
  502. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js.map +0 -1
  503. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +0 -643
  504. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +0 -1
  505. package/bundles/taiga-ui-kit-utils-dom.umd.js +0 -124
  506. package/bundles/taiga-ui-kit-utils-dom.umd.js.map +0 -1
  507. package/components/combo-box/combo-box.providers.d.ts +0 -1
  508. package/components/input/input.providers.d.ts +0 -1
  509. package/components/input-copy/input-copy.providers.d.ts +0 -2
  510. package/components/input-date/input-date.providers.d.ts +0 -1
  511. package/components/input-date-range/input-date-range.providers.d.ts +0 -1
  512. package/components/input-date-time/input-date-time.providers.d.ts +0 -1
  513. package/components/input-month/input-month.providers.d.ts +0 -2
  514. package/components/input-month-range/input-month-range.providers.d.ts +0 -2
  515. package/components/input-phone/input-phone.providers.d.ts +0 -5
  516. package/components/select/select.providers.d.ts +0 -1
  517. package/components/text-area/text-area.providers.d.ts +0 -2
  518. package/directives/dropdown-context/dropdown-context.directive.d.ts +0 -30
  519. package/directives/dropdown-context/dropdown-context.module.d.ts +0 -8
  520. package/directives/dropdown-context/index.d.ts +0 -2
  521. package/directives/dropdown-context/package.json +0 -10
  522. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.d.ts +0 -5
  523. package/directives/dropdown-hover/dropdown-hover.directive.d.ts +0 -11
  524. package/directives/dropdown-hover/dropdown-hover.module.d.ts +0 -7
  525. package/directives/dropdown-hover/index.d.ts +0 -2
  526. package/directives/dropdown-hover/package.json +0 -10
  527. package/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.d.ts +0 -5
  528. package/directives/dropdown-selection/dropdown-selection.directive.d.ts +0 -46
  529. package/directives/dropdown-selection/dropdown-selection.module.d.ts +0 -8
  530. package/directives/dropdown-selection/index.d.ts +0 -2
  531. package/directives/dropdown-selection/package.json +0 -10
  532. package/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.d.ts +0 -5
  533. package/esm2015/abstract/index.js +0 -2
  534. package/esm2015/abstract/slider/slider.js +0 -264
  535. package/esm2015/abstract/taiga-ui-kit-abstract.js +0 -5
  536. package/esm2015/components/combo-box/combo-box.providers.js +0 -26
  537. package/esm2015/components/input/input.providers.js +0 -22
  538. package/esm2015/components/input-copy/input-copy.providers.js +0 -16
  539. package/esm2015/components/input-date/input-date.providers.js +0 -27
  540. package/esm2015/components/input-date-range/input-date-range.providers.js +0 -27
  541. package/esm2015/components/input-date-time/input-date-time.providers.js +0 -27
  542. package/esm2015/components/input-month/input-month.providers.js +0 -19
  543. package/esm2015/components/input-month-range/input-month-range.providers.js +0 -19
  544. package/esm2015/components/input-phone/input-phone.providers.js +0 -35
  545. package/esm2015/components/select/select.providers.js +0 -26
  546. package/esm2015/components/text-area/text-area.providers.js +0 -18
  547. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +0 -141
  548. package/esm2015/directives/dropdown-context/dropdown-context.module.js +0 -18
  549. package/esm2015/directives/dropdown-context/index.js +0 -3
  550. package/esm2015/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +0 -5
  551. package/esm2015/directives/dropdown-hover/dropdown-hover.directive.js +0 -56
  552. package/esm2015/directives/dropdown-hover/dropdown-hover.module.js +0 -16
  553. package/esm2015/directives/dropdown-hover/index.js +0 -3
  554. package/esm2015/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.js +0 -5
  555. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +0 -252
  556. package/esm2015/directives/dropdown-selection/dropdown-selection.module.js +0 -18
  557. package/esm2015/directives/dropdown-selection/index.js +0 -3
  558. package/esm2015/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.js +0 -5
  559. package/esm2015/interfaces/bread-crumbs-item.js +0 -2
  560. package/esm2015/tokens/calendar-data-stream.js +0 -3
  561. package/esm2015/tokens/tag-status.js +0 -6
  562. package/esm2015/utils/dom/get-word-range.js +0 -53
  563. package/esm2015/utils/dom/index.js +0 -4
  564. package/esm2015/utils/dom/scroll-to-element.js +0 -23
  565. package/esm2015/utils/dom/set-range-offset.js +0 -29
  566. package/esm2015/utils/dom/taiga-ui-kit-utils-dom.js +0 -5
  567. package/fesm2015/taiga-ui-kit-abstract.js +0 -271
  568. package/fesm2015/taiga-ui-kit-abstract.js.map +0 -1
  569. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +0 -162
  570. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +0 -1
  571. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js +0 -76
  572. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js.map +0 -1
  573. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +0 -273
  574. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +0 -1
  575. package/fesm2015/taiga-ui-kit-utils-dom.js +0 -111
  576. package/fesm2015/taiga-ui-kit-utils-dom.js.map +0 -1
  577. package/interfaces/bread-crumbs-item.d.ts +0 -6
  578. package/tokens/calendar-data-stream.d.ts +0 -4
  579. package/tokens/tag-status.d.ts +0 -3
  580. package/utils/dom/get-word-range.d.ts +0 -9
  581. package/utils/dom/index.d.ts +0 -3
  582. package/utils/dom/package.json +0 -10
  583. package/utils/dom/scroll-to-element.d.ts +0 -5
  584. package/utils/dom/set-range-offset.d.ts +0 -6
  585. package/utils/dom/taiga-ui-kit-utils-dom.d.ts +0 -5
@@ -2,10 +2,10 @@ import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { EventEmitter, ChangeDetectorRef, Component, ChangeDetectionStrategy, Inject, Optional, Input, Output, NgModule } from '@angular/core';
4
4
  import * as i2 from '@taiga-ui/cdk';
5
- import { ALWAYS_FALSE_HANDLER, TuiMonth, TUI_FIRST_DAY, TUI_LAST_DAY, watch, TuiDestroyService, tuiDefaultProp, TuiMapperPipeModule } from '@taiga-ui/cdk';
5
+ import { ALWAYS_FALSE_HANDLER, TuiMonth, TUI_FIRST_DAY, TUI_LAST_DAY, tuiWatch, TuiDestroyService, tuiDefaultProp, TuiMapperPipeModule } from '@taiga-ui/cdk';
6
6
  import * as i1 from '@taiga-ui/core';
7
7
  import { TUI_DEFAULT_MARKER_HANDLER, TuiScrollbarModule, TuiCalendarModule } from '@taiga-ui/core';
8
- import { TUI_CALENDAR_DATA_STREAM } from '@taiga-ui/kit/tokens';
8
+ import { TUI_CALENDAR_DATE_STREAM } from '@taiga-ui/kit/tokens';
9
9
  import { takeUntil } from 'rxjs/operators';
10
10
  import * as i3 from 'rxjs';
11
11
 
@@ -30,7 +30,7 @@ class TuiPrimitiveCalendarRangeComponent {
30
30
  return;
31
31
  }
32
32
  valueChanges
33
- .pipe(watch(changeDetectorRef), takeUntil(destroy$))
33
+ .pipe(tuiWatch(changeDetectorRef), takeUntil(destroy$))
34
34
  .subscribe(value => {
35
35
  this.value = value;
36
36
  this.updateViewedMonths();
@@ -102,8 +102,8 @@ class TuiPrimitiveCalendarRangeComponent {
102
102
  }
103
103
  }
104
104
  }
105
- TuiPrimitiveCalendarRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPrimitiveCalendarRangeComponent, deps: [{ token: TUI_CALENDAR_DATA_STREAM, optional: true }, { token: ChangeDetectorRef }, { token: TuiDestroyService }], target: i0.ɵɵFactoryTarget.Component });
106
- TuiPrimitiveCalendarRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiPrimitiveCalendarRangeComponent, selector: "tui-primitive-calendar-range", inputs: { disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultViewedMonthFirst: "defaultViewedMonthFirst", defaultViewedMonthSecond: "defaultViewedMonthSecond", min: "min", max: "max", value: "value" }, outputs: { dayClick: "dayClick" }, providers: [TuiDestroyService], ngImport: i0, template: "<tui-calendar\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthFirst\"\n [markerHandler]=\"markerHandler\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset:-1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"border\"\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthSecond\"\n [markerHandler]=\"markerHandler\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset:1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n", styles: [":host{display:flex}.border{border-left:1px solid var(--tui-base-03)}\n"], components: [{ type: i1.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "value", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }], pipes: { "tuiMapper": i2.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
105
+ TuiPrimitiveCalendarRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPrimitiveCalendarRangeComponent, deps: [{ token: TUI_CALENDAR_DATE_STREAM, optional: true }, { token: ChangeDetectorRef }, { token: TuiDestroyService }], target: i0.ɵɵFactoryTarget.Component });
106
+ TuiPrimitiveCalendarRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiPrimitiveCalendarRangeComponent, selector: "tui-primitive-calendar-range", inputs: { disabledItemHandler: "disabledItemHandler", markerHandler: "markerHandler", defaultViewedMonthFirst: "defaultViewedMonthFirst", defaultViewedMonthSecond: "defaultViewedMonthSecond", min: "min", max: "max", value: "value" }, outputs: { dayClick: "dayClick" }, providers: [TuiDestroyService], ngImport: i0, template: "<tui-calendar\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthFirst\"\n [markerHandler]=\"markerHandler\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset:-1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"t-border\"\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthSecond\"\n [markerHandler]=\"markerHandler\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset:1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n", styles: [":host{display:flex}.t-border{border-left:1px solid var(--tui-base-03)}\n"], components: [{ type: i1.TuiCalendarComponent, selector: "tui-calendar", inputs: ["month", "value", "disabledItemHandler", "min", "max", "minViewedMonth", "maxViewedMonth", "hoveredItem", "showAdjacent", "markerHandler"], outputs: ["dayClick", "monthChange", "hoveredItemChange"] }], pipes: { "tuiMapper": i2.TuiMapperPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
107
107
  __decorate([
108
108
  tuiDefaultProp()
109
109
  ], TuiPrimitiveCalendarRangeComponent.prototype, "disabledItemHandler", void 0);
@@ -136,7 +136,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
136
136
  }]
137
137
  }], ctorParameters: function () { return [{ type: i3.Observable, decorators: [{
138
138
  type: Inject,
139
- args: [TUI_CALENDAR_DATA_STREAM]
139
+ args: [TUI_CALENDAR_DATE_STREAM]
140
140
  }, {
141
141
  type: Optional
142
142
  }] }, { type: i0.ChangeDetectorRef, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-internal-primitive-calendar-range.js","sources":["../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.component.ts","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.template.html","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.module.ts","../../../projects/kit/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n tuiDefaultProp,\n TuiDestroyService,\n TuiMapper,\n TuiMonth,\n watch,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER, TuiMarkerHandler} from '@taiga-ui/core';\nimport {TUI_CALENDAR_DATA_STREAM} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Component({\n selector: `tui-primitive-calendar-range`,\n templateUrl: `./primitive-calendar-range.template.html`,\n styleUrls: [`./primitive-calendar-range.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiPrimitiveCalendarRangeComponent implements OnInit {\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultViewedMonthFirst = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n defaultViewedMonthSecond = TuiMonth.currentLocal().append({month: 1});\n\n @Input()\n @tuiDefaultProp()\n min = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n hoveredItem: TuiDay | null = null;\n\n userViewedMonthFirst: TuiMonth = this.defaultViewedMonthFirst;\n userViewedMonthSecond: TuiMonth = this.defaultViewedMonthSecond;\n\n constructor(\n @Inject(TUI_CALENDAR_DATA_STREAM)\n @Optional()\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges\n .pipe(watch(changeDetectorRef), takeUntil(destroy$))\n .subscribe(value => {\n this.value = value;\n this.updateViewedMonths();\n });\n }\n\n get cappedUserViewedMonthSecond(): TuiMonth {\n return this.userViewedMonthSecond.monthBefore(this.max)\n ? this.userViewedMonthSecond\n : this.max;\n }\n\n get cappedUserViewedMonthFirst(): TuiMonth {\n return this.userViewedMonthFirst.monthSameOrBefore(this.userViewedMonthSecond)\n ? this.userViewedMonthFirst\n : this.userViewedMonthSecond;\n }\n\n monthOffset: TuiMapper<TuiMonth, TuiMonth> = (value, offset: number) =>\n value.append({month: offset});\n\n ngOnInit(): void {\n this.setInitialMonths();\n }\n\n onSectionFirstViewedMonth(month: TuiMonth): void {\n this.userViewedMonthFirst = month;\n\n if (this.userViewedMonthSecond.year < this.userViewedMonthFirst.year) {\n this.userViewedMonthSecond = this.userViewedMonthSecond.append({\n year: month.year - this.userViewedMonthSecond.year,\n });\n }\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n if (this.userViewedMonthFirst.year > this.userViewedMonthSecond.year) {\n this.userViewedMonthFirst = this.userViewedMonthFirst.append({\n year: month.year - this.userViewedMonthFirst.year,\n });\n }\n }\n\n onDayClick(day: TuiDay): void {\n this.dayClick.emit(day);\n }\n\n private setInitialMonths(): void {\n if (!this.value) {\n this.userViewedMonthSecond = this.updatedViewedMonthSecond(\n this.defaultViewedMonthSecond,\n );\n\n this.userViewedMonthFirst = this.updatedViewedMonthFirst(\n this.defaultViewedMonthFirst,\n );\n }\n }\n\n private updatedViewedMonthSecond(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.max)) {\n return this.max;\n }\n\n if (month.monthBefore(this.min)) {\n return this.min.append({month: 1});\n }\n\n return month;\n }\n\n private updatedViewedMonthFirst(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.userViewedMonthSecond)) {\n return this.userViewedMonthSecond.append({month: -1});\n }\n\n if (month.monthSameOrBefore(this.min)) {\n return this.min;\n }\n\n return month;\n }\n\n private updateViewedMonths(): void {\n this.userViewedMonthFirst =\n this.value === null ? this.defaultViewedMonthFirst : this.value.from;\n this.userViewedMonthSecond =\n this.value === null ? this.defaultViewedMonthSecond : this.value.to;\n\n if (this.userViewedMonthFirst.monthSame(this.userViewedMonthSecond)) {\n this.userViewedMonthSecond = this.userViewedMonthSecond.append({month: 1});\n }\n }\n}\n","<tui-calendar\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthFirst\"\n [markerHandler]=\"markerHandler\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset:-1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"border\"\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthSecond\"\n [markerHandler]=\"markerHandler\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset:1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n","import {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiScrollbarModule} from '@taiga-ui/core';\n\nimport {TuiPrimitiveCalendarRangeComponent} from './primitive-calendar-range.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [TuiMapperPipeModule, TuiScrollbarModule, TuiCalendarModule],\n declarations: [TuiPrimitiveCalendarRangeComponent],\n exports: [TuiPrimitiveCalendarRangeComponent],\n})\nexport class TuiPrimitiveCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AA6BA;;AAEG;MAQU,kCAAkC,CAAA;AAqC3C,IAAA,WAAA,CAGI,YAAmD,EACxB,iBAAoC,EACpC,QAA2B,EAAA;QAvC1D,IAAmB,CAAA,mBAAA,GAA8B,oBAAoB,CAAC;QAItE,IAAa,CAAA,aAAA,GAAqB,0BAA0B,CAAC;AAI7D,QAAA,IAAA,CAAA,uBAAuB,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;AAIlD,QAAA,IAAA,CAAA,wBAAwB,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,CAAC,CAAC;QAItE,IAAG,CAAA,GAAA,GAAG,aAAa,CAAC;QAIpB,IAAG,CAAA,GAAA,GAAG,YAAY,CAAC;QAInB,IAAK,CAAA,KAAA,GAAuB,IAAI,CAAC;AAGxB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAU,CAAC;QAE/C,IAAW,CAAA,WAAA,GAAkB,IAAI,CAAC;AAElC,QAAA,IAAA,CAAA,oBAAoB,GAAa,IAAI,CAAC,uBAAuB,CAAC;AAC9D,QAAA,IAAA,CAAA,qBAAqB,GAAa,IAAI,CAAC,wBAAwB,CAAC;AAiChE,QAAA,IAAA,CAAA,WAAW,GAAkC,CAAC,KAAK,EAAE,MAAc,KAC/D,KAAK,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,MAAM,EAAC,CAAC,CAAC;QAzB9B,IAAI,CAAC,YAAY,EAAE;YACf,OAAO;AACV,SAAA;QAED,YAAY;aACP,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;aACnD,SAAS,CAAC,KAAK,IAAG;AACf,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAC9B,SAAC,CAAC,CAAC;KACV;AAED,IAAA,IAAI,2BAA2B,GAAA;QAC3B,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;cACjD,IAAI,CAAC,qBAAqB;AAC5B,cAAE,IAAI,CAAC,GAAG,CAAC;KAClB;AAED,IAAA,IAAI,0BAA0B,GAAA;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,IAAI,CAAC,qBAAqB,CAAC;cACxE,IAAI,CAAC,oBAAoB;AAC3B,cAAE,IAAI,CAAC,qBAAqB,CAAC;KACpC;IAKD,QAAQ,GAAA;QACJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;AAED,IAAA,yBAAyB,CAAC,KAAe,EAAA;AACrC,QAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAElC,IAAI,IAAI,CAAC,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE;YAClE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;gBAC3D,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI;AACrD,aAAA,CAAC,CAAC;AACN,SAAA;KACJ;AAED,IAAA,0BAA0B,CAAC,KAAe,EAAA;AACtC,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QAEnC,IAAI,IAAI,CAAC,oBAAoB,CAAC,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE;YAClE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBACzD,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI;AACpD,aAAA,CAAC,CAAC;AACN,SAAA;KACJ;AAED,IAAA,UAAU,CAAC,GAAW,EAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAC3B;IAEO,gBAAgB,GAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,CACtD,IAAI,CAAC,wBAAwB,CAChC,CAAC;YAEF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,CACpD,IAAI,CAAC,uBAAuB,CAC/B,CAAC;AACL,SAAA;KACJ;AAEO,IAAA,wBAAwB,CAAC,KAAe,EAAA;QAC5C,IAAI,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC,GAAG,CAAC;AACnB,SAAA;QAED,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AAC7B,YAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,CAAC,CAAC;AACtC,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KAChB;AAEO,IAAA,uBAAuB,CAAC,KAAe,EAAA;QAC3C,IAAI,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;AACpD,YAAA,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC;AACzD,SAAA;QAED,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACnC,OAAO,IAAI,CAAC,GAAG,CAAC;AACnB,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KAChB;IAEO,kBAAkB,GAAA;AACtB,QAAA,IAAI,CAAC,oBAAoB;AACrB,YAAA,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AACzE,QAAA,IAAI,CAAC,qBAAqB;AACtB,YAAA,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAExE,IAAI,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;AACjE,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,CAAC,CAAC;AAC9E,SAAA;KACJ;;AAhJQ,kCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kCAAkC,EAsC/B,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,wBAAwB,EAGxB,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,iBAAiB,aACjB,iBAAiB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA1CpB,kCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kCAAkC,EAFhC,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,CAAC,iBAAiB,CAAC,0BCrClC,87BA2BA,EAAA,MAAA,EAAA,CAAA,wEAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,KAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,aAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,WAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADeI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACqD,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,qBAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAItE,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAC4C,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI7D,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACiC,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,yBAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIlD,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACqD,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,0BAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAItE,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACG,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIpB,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACE,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,KAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAInB,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACgB,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FA3BxB,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAP9C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAA8B,4BAAA,CAAA;AACxC,oBAAA,WAAW,EAAE,CAA0C,wCAAA,CAAA;oBACvD,SAAS,EAAE,CAAC,CAAA,qCAAA,CAAuC,CAAC;oBACpD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,SAAS,EAAE,CAAC,iBAAiB,CAAC;AACjC,iBAAA,CAAA;;0BAuCQ,MAAM;2BAAC,wBAAwB,CAAA;;0BAC/B,QAAQ;;0BAER,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,MAAM;2BAAC,iBAAiB,CAAA;4CAvC7B,mBAAmB,EAAA,CAAA;sBAFlB,KAAK;gBAMN,aAAa,EAAA,CAAA;sBAFZ,KAAK;gBAMN,uBAAuB,EAAA,CAAA;sBAFtB,KAAK;gBAMN,wBAAwB,EAAA,CAAA;sBAFvB,KAAK;gBAMN,GAAG,EAAA,CAAA;sBAFF,KAAK;gBAMN,GAAG,EAAA,CAAA;sBAFF,KAAK;gBAMN,KAAK,EAAA,CAAA;sBAFJ,KAAK;gBAKG,QAAQ,EAAA,CAAA;sBADhB,MAAM;;;AE9DX;;AAEG;MAMU,+BAA+B,CAAA;;6HAA/B,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;8HAA/B,+BAA+B,EAAA,YAAA,EAAA,CAHzB,kCAAkC,CADvC,EAAA,OAAA,EAAA,CAAA,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,CAAA,EAAA,OAAA,EAAA,CAE1D,kCAAkC,CAAA,EAAA,CAAA,CAAA;AAEnC,+BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,YAJ/B,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAA,EAAA,CAAA,CAAA;4FAI5D,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAL3C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,iBAAiB,CAAC;oBACrE,YAAY,EAAE,CAAC,kCAAkC,CAAC;oBAClD,OAAO,EAAE,CAAC,kCAAkC,CAAC;AAChD,iBAAA,CAAA;;;ACbD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-internal-primitive-calendar-range.js","sources":["../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.component.ts","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.template.html","../../../projects/kit/internal/primitive-calendar-range/primitive-calendar-range.module.ts","../../../projects/kit/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n TuiDayRange,\n tuiDefaultProp,\n TuiDestroyService,\n TuiMapper,\n TuiMonth,\n tuiWatch,\n} from '@taiga-ui/cdk';\nimport {TUI_DEFAULT_MARKER_HANDLER, TuiMarkerHandler} from '@taiga-ui/core';\nimport {TUI_CALENDAR_DATE_STREAM} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Component({\n selector: `tui-primitive-calendar-range`,\n templateUrl: `./primitive-calendar-range.template.html`,\n styleUrls: [`./primitive-calendar-range.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [TuiDestroyService],\n})\nexport class TuiPrimitiveCalendarRangeComponent implements OnInit {\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n markerHandler: TuiMarkerHandler = TUI_DEFAULT_MARKER_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultViewedMonthFirst = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n defaultViewedMonthSecond = TuiMonth.currentLocal().append({month: 1});\n\n @Input()\n @tuiDefaultProp()\n min = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max = TUI_LAST_DAY;\n\n @Input()\n @tuiDefaultProp()\n value: TuiDayRange | null = null;\n\n @Output()\n readonly dayClick = new EventEmitter<TuiDay>();\n\n hoveredItem: TuiDay | null = null;\n\n userViewedMonthFirst: TuiMonth = this.defaultViewedMonthFirst;\n userViewedMonthSecond: TuiMonth = this.defaultViewedMonthSecond;\n\n constructor(\n @Inject(TUI_CALENDAR_DATE_STREAM)\n @Optional()\n valueChanges: Observable<TuiDayRange | null> | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges\n .pipe(tuiWatch(changeDetectorRef), takeUntil(destroy$))\n .subscribe(value => {\n this.value = value;\n this.updateViewedMonths();\n });\n }\n\n get cappedUserViewedMonthSecond(): TuiMonth {\n return this.userViewedMonthSecond.monthBefore(this.max)\n ? this.userViewedMonthSecond\n : this.max;\n }\n\n get cappedUserViewedMonthFirst(): TuiMonth {\n return this.userViewedMonthFirst.monthSameOrBefore(this.userViewedMonthSecond)\n ? this.userViewedMonthFirst\n : this.userViewedMonthSecond;\n }\n\n monthOffset: TuiMapper<TuiMonth, TuiMonth> = (value, offset: number) =>\n value.append({month: offset});\n\n ngOnInit(): void {\n this.setInitialMonths();\n }\n\n onSectionFirstViewedMonth(month: TuiMonth): void {\n this.userViewedMonthFirst = month;\n\n if (this.userViewedMonthSecond.year < this.userViewedMonthFirst.year) {\n this.userViewedMonthSecond = this.userViewedMonthSecond.append({\n year: month.year - this.userViewedMonthSecond.year,\n });\n }\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n if (this.userViewedMonthFirst.year > this.userViewedMonthSecond.year) {\n this.userViewedMonthFirst = this.userViewedMonthFirst.append({\n year: month.year - this.userViewedMonthFirst.year,\n });\n }\n }\n\n onDayClick(day: TuiDay): void {\n this.dayClick.emit(day);\n }\n\n private setInitialMonths(): void {\n if (!this.value) {\n this.userViewedMonthSecond = this.updatedViewedMonthSecond(\n this.defaultViewedMonthSecond,\n );\n\n this.userViewedMonthFirst = this.updatedViewedMonthFirst(\n this.defaultViewedMonthFirst,\n );\n }\n }\n\n private updatedViewedMonthSecond(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.max)) {\n return this.max;\n }\n\n if (month.monthBefore(this.min)) {\n return this.min.append({month: 1});\n }\n\n return month;\n }\n\n private updatedViewedMonthFirst(month: TuiMonth): TuiMonth {\n if (month.monthSameOrAfter(this.userViewedMonthSecond)) {\n return this.userViewedMonthSecond.append({month: -1});\n }\n\n if (month.monthSameOrBefore(this.min)) {\n return this.min;\n }\n\n return month;\n }\n\n private updateViewedMonths(): void {\n this.userViewedMonthFirst =\n this.value === null ? this.defaultViewedMonthFirst : this.value.from;\n this.userViewedMonthSecond =\n this.value === null ? this.defaultViewedMonthSecond : this.value.to;\n\n if (this.userViewedMonthFirst.monthSame(this.userViewedMonthSecond)) {\n this.userViewedMonthSecond = this.userViewedMonthSecond.append({month: 1});\n }\n }\n}\n","<tui-calendar\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthFirst\"\n [markerHandler]=\"markerHandler\"\n [maxViewedMonth]=\"cappedUserViewedMonthSecond | tuiMapper: monthOffset:-1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionFirstViewedMonth($event)\"\n></tui-calendar>\n<tui-calendar\n class=\"t-border\"\n [min]=\"min\"\n [max]=\"max\"\n [month]=\"userViewedMonthSecond\"\n [markerHandler]=\"markerHandler\"\n [minViewedMonth]=\"cappedUserViewedMonthFirst | tuiMapper: monthOffset:1\"\n [value]=\"value\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [showAdjacent]=\"false\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onSectionSecondViewedMonth($event)\"\n></tui-calendar>\n","import {NgModule} from '@angular/core';\nimport {TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {TuiCalendarModule, TuiScrollbarModule} from '@taiga-ui/core';\n\nimport {TuiPrimitiveCalendarRangeComponent} from './primitive-calendar-range.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [TuiMapperPipeModule, TuiScrollbarModule, TuiCalendarModule],\n declarations: [TuiPrimitiveCalendarRangeComponent],\n exports: [TuiPrimitiveCalendarRangeComponent],\n})\nexport class TuiPrimitiveCalendarRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -10,7 +10,6 @@ import { of, isObservable } from 'rxjs';
10
10
  import { map } from 'rxjs/operators';
11
11
 
12
12
  const EMPTY_RECORD = {};
13
- // @dynamic
14
13
  class TuiFieldErrorPipe {
15
14
  constructor(ngControl, formArrayName, formGroupName, formGroup, validationErrors) {
16
15
  this.ngControl = ngControl;
@@ -131,7 +130,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
131
130
  args: [TUI_VALIDATION_ERRORS]
132
131
  }] }]; }, propDecorators: { getErrorId: [], getError: [] } });
133
132
 
134
- // @dynamic
135
133
  class TuiFieldErrorContentPipe {
136
134
  constructor(injector) {
137
135
  this.injector = injector;
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-pipes-field-error.js","sources":["../../../projects/kit/pipes/field-error/field-error-pipe.ts","../../../projects/kit/pipes/field-error/field-error-content-pipe.ts","../../../projects/kit/pipes/field-error/field-error.module.ts","../../../projects/kit/pipes/field-error/taiga-ui-kit-pipes-field-error.ts"],"sourcesContent":["import {Inject, Optional, Pipe, PipeTransform, Self} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormArrayName,\n FormGroupDirective,\n FormGroupName,\n NgControl,\n} from '@angular/forms';\nimport {tuiIsString, tuiPure, TuiValidationError} from '@taiga-ui/cdk';\nimport {TUI_VALIDATION_ERRORS} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {isObservable, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst EMPTY_RECORD = {};\n\n// @dynamic\n@Pipe({\n name: `tuiFieldError`,\n pure: false,\n})\nexport class TuiFieldErrorPipe implements PipeTransform, ControlValueAccessor {\n private order: readonly string[] = [];\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n private readonly ngControl: NgControl | null,\n @Optional()\n @Self()\n @Inject(FormArrayName)\n private readonly formArrayName: FormArrayName | null,\n @Optional()\n @Self()\n @Inject(FormGroupName)\n private readonly formGroupName: FormGroupName | null,\n @Optional()\n @Self()\n @Inject(FormGroupDirective)\n private readonly formGroup: FormGroupDirective | null,\n @Inject(TUI_VALIDATION_ERRORS)\n private readonly validationErrors: Record<\n string,\n PolymorpheusContent | Observable<PolymorpheusContent>\n >,\n ) {\n if (this.ngControl && !this.ngControl.valueAccessor) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n transform(order: readonly string[]): Observable<TuiValidationError | null> {\n this.order = order;\n\n return this.computedError;\n }\n\n get computedError(): Observable<TuiValidationError | null> {\n return (this.invalid && this.touched && this.error) || of(null);\n }\n\n registerOnChange(): void {}\n\n registerOnTouched(): void {}\n\n setDisabledState(): void {}\n\n writeValue(): void {}\n\n private get error(): Observable<TuiValidationError> | null {\n const {errorId} = this;\n\n if (!errorId) {\n return null;\n }\n\n const firstError = this.controlErrors[errorId];\n const errorContent = this.validationErrors[errorId];\n\n return this.getError(firstError, errorContent);\n }\n\n private get invalid(): boolean {\n return !!this.control?.invalid;\n }\n\n private get touched(): boolean {\n return !!this.control?.touched;\n }\n\n private get control(): AbstractControl | null {\n return (\n this.ngControl?.control ||\n this.formArrayName?.control ||\n this.formGroupName?.control ||\n this.formGroup?.control ||\n null\n );\n }\n\n private get errorId(): string {\n return this.getErrorId(this.order, this.controlErrors);\n }\n\n private get controlErrors(): Record<string, unknown> {\n return this.control?.errors || EMPTY_RECORD;\n }\n\n @tuiPure\n private getErrorId(\n order: readonly string[],\n controlErrors: Record<string, unknown>,\n ): string {\n const id = order?.find(errorId => controlErrors[errorId]);\n const fallback = Object.keys(controlErrors)[0];\n\n return id || fallback || ``;\n }\n\n @tuiPure\n private getError(\n firstError: any,\n errorContent?: PolymorpheusContent | Observable<PolymorpheusContent>,\n ): Observable<TuiValidationError> {\n if (firstError instanceof TuiValidationError) {\n return of(firstError);\n }\n\n if (errorContent === undefined && tuiIsString(firstError)) {\n return of(new TuiValidationError(firstError));\n }\n\n if (isObservable(errorContent)) {\n return errorContent.pipe(\n map(error => new TuiValidationError(error || ``, firstError)),\n );\n }\n\n return of(new TuiValidationError(errorContent || ``, firstError));\n }\n}\n","import {AsyncPipe} from '@angular/common';\nimport {Inject, Injector, OnDestroy, Pipe, PipeTransform} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFieldErrorPipe} from './field-error-pipe';\n\n// @dynamic\n@Pipe({\n name: `tuiFieldErrorContent`,\n pure: false,\n})\nexport class TuiFieldErrorContentPipe implements PipeTransform, OnDestroy {\n private readonly localInjector = Injector.create({\n providers: [{provide: AsyncPipe}, {provide: TuiFieldErrorPipe}],\n parent: this.injector,\n });\n\n private readonly asyncPipe = this.localInjector.get(AsyncPipe);\n private readonly fieldErrorPipe = this.localInjector.get(TuiFieldErrorPipe);\n\n constructor(@Inject(Injector) private readonly injector: Injector) {}\n\n transform(order: readonly string[]): PolymorpheusContent {\n return this.getErrorContent(order);\n }\n\n ngOnDestroy(): void {\n this.asyncPipe.ngOnDestroy();\n }\n\n private getErrorContent(order: readonly string[]): PolymorpheusContent {\n const error = this.asyncPipe.transform(this.fieldErrorPipe.transform(order));\n\n if (!error) {\n return ``;\n }\n\n return typeof error.message === `function`\n ? error.message(error.context)\n : error.message;\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFieldErrorContentPipe} from './field-error-content-pipe';\nimport {TuiFieldErrorPipe} from './field-error-pipe';\n\n@NgModule({\n declarations: [TuiFieldErrorPipe, TuiFieldErrorContentPipe],\n exports: [TuiFieldErrorPipe, TuiFieldErrorContentPipe],\n})\nexport class TuiFieldErrorPipeModule {}\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-pipes-field-error.js","sources":["../../../projects/kit/pipes/field-error/field-error-pipe.ts","../../../projects/kit/pipes/field-error/field-error-content-pipe.ts","../../../projects/kit/pipes/field-error/field-error.module.ts","../../../projects/kit/pipes/field-error/taiga-ui-kit-pipes-field-error.ts"],"sourcesContent":["import {Inject, Optional, Pipe, PipeTransform, Self} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n FormArrayName,\n FormGroupDirective,\n FormGroupName,\n NgControl,\n} from '@angular/forms';\nimport {tuiIsString, tuiPure, TuiValidationError} from '@taiga-ui/cdk';\nimport {TUI_VALIDATION_ERRORS} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {isObservable, Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nconst EMPTY_RECORD = {};\n\n@Pipe({\n name: `tuiFieldError`,\n pure: false,\n})\nexport class TuiFieldErrorPipe implements PipeTransform, ControlValueAccessor {\n private order: readonly string[] = [];\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n private readonly ngControl: NgControl | null,\n @Optional()\n @Self()\n @Inject(FormArrayName)\n private readonly formArrayName: FormArrayName | null,\n @Optional()\n @Self()\n @Inject(FormGroupName)\n private readonly formGroupName: FormGroupName | null,\n @Optional()\n @Self()\n @Inject(FormGroupDirective)\n private readonly formGroup: FormGroupDirective | null,\n @Inject(TUI_VALIDATION_ERRORS)\n private readonly validationErrors: Record<\n string,\n PolymorpheusContent | Observable<PolymorpheusContent>\n >,\n ) {\n if (this.ngControl && !this.ngControl.valueAccessor) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n transform(order: readonly string[]): Observable<TuiValidationError | null> {\n this.order = order;\n\n return this.computedError;\n }\n\n get computedError(): Observable<TuiValidationError | null> {\n return (this.invalid && this.touched && this.error) || of(null);\n }\n\n registerOnChange(): void {}\n\n registerOnTouched(): void {}\n\n setDisabledState(): void {}\n\n writeValue(): void {}\n\n private get error(): Observable<TuiValidationError> | null {\n const {errorId} = this;\n\n if (!errorId) {\n return null;\n }\n\n const firstError = this.controlErrors[errorId];\n const errorContent = this.validationErrors[errorId];\n\n return this.getError(firstError, errorContent);\n }\n\n private get invalid(): boolean {\n return !!this.control?.invalid;\n }\n\n private get touched(): boolean {\n return !!this.control?.touched;\n }\n\n private get control(): AbstractControl | null {\n return (\n this.ngControl?.control ||\n this.formArrayName?.control ||\n this.formGroupName?.control ||\n this.formGroup?.control ||\n null\n );\n }\n\n private get errorId(): string {\n return this.getErrorId(this.order, this.controlErrors);\n }\n\n private get controlErrors(): Record<string, unknown> {\n return this.control?.errors || EMPTY_RECORD;\n }\n\n @tuiPure\n private getErrorId(\n order: readonly string[],\n controlErrors: Record<string, unknown>,\n ): string {\n const id = order?.find(errorId => controlErrors[errorId]);\n const fallback = Object.keys(controlErrors)[0];\n\n return id || fallback || ``;\n }\n\n @tuiPure\n private getError(\n firstError: any,\n errorContent?: PolymorpheusContent | Observable<PolymorpheusContent>,\n ): Observable<TuiValidationError> {\n if (firstError instanceof TuiValidationError) {\n return of(firstError);\n }\n\n if (errorContent === undefined && tuiIsString(firstError)) {\n return of(new TuiValidationError(firstError));\n }\n\n if (isObservable(errorContent)) {\n return errorContent.pipe(\n map(error => new TuiValidationError(error || ``, firstError)),\n );\n }\n\n return of(new TuiValidationError(errorContent || ``, firstError));\n }\n}\n","import {AsyncPipe} from '@angular/common';\nimport {Inject, Injector, OnDestroy, Pipe, PipeTransform} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiFieldErrorPipe} from './field-error-pipe';\n\n@Pipe({\n name: `tuiFieldErrorContent`,\n pure: false,\n})\nexport class TuiFieldErrorContentPipe implements PipeTransform, OnDestroy {\n private readonly localInjector = Injector.create({\n providers: [{provide: AsyncPipe}, {provide: TuiFieldErrorPipe}],\n parent: this.injector,\n });\n\n private readonly asyncPipe = this.localInjector.get(AsyncPipe);\n private readonly fieldErrorPipe = this.localInjector.get(TuiFieldErrorPipe);\n\n constructor(@Inject(Injector) private readonly injector: Injector) {}\n\n transform(order: readonly string[]): PolymorpheusContent {\n return this.getErrorContent(order);\n }\n\n ngOnDestroy(): void {\n this.asyncPipe.ngOnDestroy();\n }\n\n private getErrorContent(order: readonly string[]): PolymorpheusContent {\n const error = this.asyncPipe.transform(this.fieldErrorPipe.transform(order));\n\n if (!error) {\n return ``;\n }\n\n return typeof error.message === `function`\n ? error.message(error.context)\n : error.message;\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFieldErrorContentPipe} from './field-error-content-pipe';\nimport {TuiFieldErrorPipe} from './field-error-pipe';\n\n@NgModule({\n declarations: [TuiFieldErrorPipe, TuiFieldErrorContentPipe],\n exports: [TuiFieldErrorPipe, TuiFieldErrorContentPipe],\n})\nexport class TuiFieldErrorPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from 'tslib';
2
- import { isPresent, tuiPure, TUI_DEFAULT_STRINGIFY, TUI_DEFAULT_MATCHER, TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk';
2
+ import { tuiIsPresent, tuiPure, TUI_DEFAULT_STRINGIFY, TUI_DEFAULT_MATCHER, TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk';
3
3
  import { tuiIsFlat } from '@taiga-ui/kit/utils';
4
4
  import * as i0 from '@angular/core';
5
5
  import { Pipe, Inject, NgModule } from '@angular/core';
@@ -20,13 +20,13 @@ class AbstractTuiFilterByInput {
20
20
  }
21
21
  filterFlat(items, matcher, stringify, query) {
22
22
  const match = this.getMatch(items, stringify, query);
23
- return isPresent(match)
23
+ return tuiIsPresent(match)
24
24
  ? items
25
25
  : items.filter(item => matcher(item, query, stringify));
26
26
  }
27
27
  filter2d(items, matcher, stringify, query) {
28
- const match = items.find(item => isPresent(this.getMatch(item, stringify, query)));
29
- return isPresent(match)
28
+ const match = items.find(item => tuiIsPresent(this.getMatch(item, stringify, query)));
29
+ return tuiIsPresent(match)
30
30
  ? items
31
31
  : items.map(inner => this.filterFlat(inner, matcher, stringify, query));
32
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-pipes-filter-by-input.js","sources":["../../../projects/kit/pipes/filter-by-input/filter-by-input.base.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input-with.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.module.ts","../../../projects/kit/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport {\n isPresent,\n TuiFocusableElementAccessor,\n tuiPure,\n TuiStringHandler,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {tuiIsFlat} from '@taiga-ui/kit/utils';\n\nexport type ArrayElement<A> = A extends ReadonlyArray<infer T>\n ? A extends ReadonlyArray<ReadonlyArray<infer G>>\n ? G\n : T\n : never;\n\nexport abstract class AbstractTuiFilterByInput {\n protected abstract readonly accessor: TuiFocusableElementAccessor;\n\n protected get query(): string {\n return this.accessor.nativeFocusableElement\n ? (this.accessor.nativeFocusableElement as HTMLInputElement).value || ``\n : ``;\n }\n\n @tuiPure\n protected filter<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n if (!items) {\n return null;\n }\n\n return tuiIsFlat(items)\n ? this.filterFlat(items, matcher, stringify, query)\n : this.filter2d(items, matcher, stringify, query);\n }\n\n private filterFlat<T>(\n items: readonly T[],\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] {\n const match = this.getMatch(items, stringify, query);\n\n return isPresent(match)\n ? items\n : items.filter(item => matcher(item, query, stringify));\n }\n\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> {\n const match = items.find(item =>\n isPresent(this.getMatch(item, stringify, query)),\n );\n\n return isPresent(match)\n ? items\n : items.map(inner => this.filterFlat(inner, matcher, stringify, query));\n }\n\n private getMatch<T>(\n items: readonly T[],\n stringify: TuiStringHandler<T>,\n query: string,\n ): T | undefined {\n return items.find(\n item => stringify(item).toLocaleLowerCase() === query.toLocaleLowerCase(),\n );\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInput`,\n pure: false,\n})\nexport class TuiFilterByInputPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringMatcher<ArrayElement<T>>): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n return this.filter(items, matcher, TUI_DEFAULT_STRINGIFY, this.query);\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInputWith`,\n pure: false,\n})\nexport class TuiFilterByInputWithPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringHandler<ArrayElement<T>>): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n stringify: TuiStringHandler<T>,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n return this.filter(items, TUI_DEFAULT_MATCHER, stringify, this.query);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFilterByInputPipe} from './filter-by-input.pipe';\nimport {TuiFilterByInputWithPipe} from './filter-by-input-with.pipe';\n\n@NgModule({\n declarations: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n exports: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n})\nexport class TuiFilterByInputPipeModule {}\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-pipes-filter-by-input.js","sources":["../../../projects/kit/pipes/filter-by-input/filter-by-input.base.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input-with.pipe.ts","../../../projects/kit/pipes/filter-by-input/filter-by-input.module.ts","../../../projects/kit/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport {\n TuiFocusableElementAccessor,\n tuiIsPresent,\n tuiPure,\n TuiStringHandler,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\nimport {tuiIsFlat} from '@taiga-ui/kit/utils';\n\nexport type ArrayElement<A> = A extends ReadonlyArray<infer T>\n ? A extends ReadonlyArray<ReadonlyArray<infer G>>\n ? G\n : T\n : never;\n\nexport abstract class AbstractTuiFilterByInput {\n protected abstract readonly accessor: TuiFocusableElementAccessor;\n\n protected get query(): string {\n return this.accessor.nativeFocusableElement\n ? (this.accessor.nativeFocusableElement as HTMLInputElement).value || ``\n : ``;\n }\n\n @tuiPure\n protected filter<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n if (!items) {\n return null;\n }\n\n return tuiIsFlat(items)\n ? this.filterFlat(items, matcher, stringify, query)\n : this.filter2d(items, matcher, stringify, query);\n }\n\n private filterFlat<T>(\n items: readonly T[],\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): readonly T[] {\n const match = this.getMatch(items, stringify, query);\n\n return tuiIsPresent(match)\n ? items\n : items.filter(item => matcher(item, query, stringify));\n }\n\n private filter2d<T>(\n items: ReadonlyArray<readonly T[]>,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> {\n const match = items.find(item =>\n tuiIsPresent(this.getMatch(item, stringify, query)),\n );\n\n return tuiIsPresent(match)\n ? items\n : items.map(inner => this.filterFlat(inner, matcher, stringify, query));\n }\n\n private getMatch<T>(\n items: readonly T[],\n stringify: TuiStringHandler<T>,\n query: string,\n ): T | undefined {\n return items.find(\n item => stringify(item).toLocaleLowerCase() === query.toLocaleLowerCase(),\n );\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringMatcher,\n} from '@taiga-ui/cdk';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInput`,\n pure: false,\n})\nexport class TuiFilterByInputPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringMatcher<ArrayElement<T>>): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n return this.filter(items, matcher, TUI_DEFAULT_STRINGIFY, this.query);\n }\n}\n","import {Inject, Pipe, PipeTransform} from '@angular/core';\nimport {\n TUI_DEFAULT_MATCHER,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\n\nimport {AbstractTuiFilterByInput, ArrayElement} from './filter-by-input.base';\n\n@Pipe({\n name: `tuiFilterByInputWith`,\n pure: false,\n})\nexport class TuiFilterByInputWithPipe\n extends AbstractTuiFilterByInput\n implements PipeTransform\n{\n constructor(\n @Inject(TUI_FOCUSABLE_ITEM_ACCESSOR)\n protected readonly accessor: TuiFocusableElementAccessor,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringHandler<ArrayElement<T>>): T;\n transform<T>(\n items: readonly T[] | ReadonlyArray<readonly T[]> | null,\n stringify: TuiStringHandler<T>,\n ): readonly T[] | ReadonlyArray<readonly T[]> | null {\n return this.filter(items, TUI_DEFAULT_MATCHER, stringify, this.query);\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiFilterByInputPipe} from './filter-by-input.pipe';\nimport {TuiFilterByInputWithPipe} from './filter-by-input-with.pipe';\n\n@NgModule({\n declarations: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n exports: [TuiFilterByInputPipe, TuiFilterByInputWithPipe],\n})\nexport class TuiFilterByInputPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TuiMonthPipe, TuiDropdownControllerDirective, TUI_DROPDOWN_CONTROLLER, TUI_VALUE_ACCESSOR } from '@taiga-ui/core';
1
+ import { TuiMonthPipe, tuiDropdownOptionsProvider, TUI_VALUE_ACCESSOR } from '@taiga-ui/core';
2
2
  import { TUI_MONTH_FORMATTER } from '@taiga-ui/kit/tokens';
3
3
  import { of, identity } from 'rxjs';
4
4
  import { map } from 'rxjs/operators';
@@ -8,46 +8,19 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
8
  const TUI_MONTH_FORMATTER_PROVIDER = {
9
9
  provide: TUI_MONTH_FORMATTER,
10
10
  deps: [TuiMonthPipe],
11
- useFactory: monthFormatterFactory,
11
+ useFactory: (pipe) => {
12
+ return month => month
13
+ ? pipe
14
+ .transform(month)
15
+ .pipe(map(formatted => `${formatted} ${month.formattedYear}`))
16
+ : of(``);
17
+ },
12
18
  };
13
- /**
14
- * Range.setStart/set-end, except it uses offset in characters only
15
- */
16
- // eslint-disable-next-line @typescript-eslint/naming-convention
17
- function monthFormatterFactory(pipe) {
18
- return month => month
19
- ? pipe
20
- .transform(month)
21
- .pipe(map(formatted => `${formatted} ${month.formattedYear}`))
22
- : of(``);
23
- }
24
19
 
25
- // eslint-disable-next-line @typescript-eslint/naming-convention
26
- function fixedDropdownControllerFactory(directive) {
27
- directive = directive || new TuiDropdownControllerDirective();
28
- directive.limitWidth = `fixed`;
29
- return directive;
30
- }
31
- const FIXED_DROPDOWN_CONTROLLER_PROVIDER = [
32
- {
33
- provide: TUI_DROPDOWN_CONTROLLER,
34
- deps: [[new Optional(), TuiDropdownControllerDirective]],
35
- useFactory: fixedDropdownControllerFactory,
36
- },
37
- ];
38
- // eslint-disable-next-line @typescript-eslint/naming-convention
39
- function leftAlignedDropdownControllerFactory(directive) {
40
- directive = directive || new TuiDropdownControllerDirective();
41
- directive.align = `left`;
42
- return directive;
43
- }
44
- const LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER = [
45
- {
46
- provide: TUI_DROPDOWN_CONTROLLER,
47
- deps: [[new Optional(), TuiDropdownControllerDirective]],
48
- useFactory: leftAlignedDropdownControllerFactory,
49
- },
50
- ];
20
+ const FIXED_DROPDOWN_CONTROLLER_PROVIDER = tuiDropdownOptionsProvider({
21
+ limitWidth: `fixed`,
22
+ align: `right`,
23
+ });
51
24
 
52
25
  const TUI_VALUE_ACCESSOR_PROVIDER = {
53
26
  provide: TUI_VALUE_ACCESSOR,
@@ -59,5 +32,5 @@ const TUI_VALUE_ACCESSOR_PROVIDER = {
59
32
  * Generated bundle index. Do not edit.
60
33
  */
61
34
 
62
- export { FIXED_DROPDOWN_CONTROLLER_PROVIDER, LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER, TUI_MONTH_FORMATTER_PROVIDER, TUI_VALUE_ACCESSOR_PROVIDER, fixedDropdownControllerFactory, leftAlignedDropdownControllerFactory, monthFormatterFactory };
35
+ export { FIXED_DROPDOWN_CONTROLLER_PROVIDER, TUI_MONTH_FORMATTER_PROVIDER, TUI_VALUE_ACCESSOR_PROVIDER };
63
36
  //# sourceMappingURL=taiga-ui-kit-providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-providers.js","sources":["../../../projects/kit/providers/month-formatter.provider.ts","../../../projects/kit/providers/specific-dropdown-controllers.ts","../../../projects/kit/providers/value-accessor.provider.ts","../../../projects/kit/providers/taiga-ui-kit-providers.ts"],"sourcesContent":["import {FactoryProvider} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {TuiMonthPipe} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER} from '@taiga-ui/kit/tokens';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nexport const TUI_MONTH_FORMATTER_PROVIDER: FactoryProvider = {\n provide: TUI_MONTH_FORMATTER,\n deps: [TuiMonthPipe],\n useFactory: monthFormatterFactory,\n};\n\n/**\n * Range.setStart/set-end, except it uses offset in characters only\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function monthFormatterFactory(\n pipe: TuiMonthPipe,\n): TuiHandler<TuiMonth | null, Observable<string>> {\n return month =>\n month\n ? pipe\n .transform(month)\n .pipe(map(formatted => `${formatted} ${month.formattedYear}`))\n : of(``);\n}\n","import {Optional, Provider} from '@angular/core';\nimport {TUI_DROPDOWN_CONTROLLER, TuiDropdownControllerDirective} from '@taiga-ui/core';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function fixedDropdownControllerFactory(\n directive: TuiDropdownControllerDirective | null,\n): TuiDropdownControllerDirective {\n directive = directive || new TuiDropdownControllerDirective();\n directive.limitWidth = `fixed`;\n\n return directive;\n}\n\nexport const FIXED_DROPDOWN_CONTROLLER_PROVIDER: Provider = [\n {\n provide: TUI_DROPDOWN_CONTROLLER,\n deps: [[new Optional(), TuiDropdownControllerDirective]],\n useFactory: fixedDropdownControllerFactory,\n },\n];\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function leftAlignedDropdownControllerFactory(\n directive: TuiDropdownControllerDirective | null,\n): TuiDropdownControllerDirective {\n directive = directive || new TuiDropdownControllerDirective();\n directive.align = `left`;\n\n return directive;\n}\n\nexport const LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER: Provider = [\n {\n provide: TUI_DROPDOWN_CONTROLLER,\n deps: [[new Optional(), TuiDropdownControllerDirective]],\n useFactory: leftAlignedDropdownControllerFactory,\n },\n];\n","import {FactoryProvider, Optional, Self} from '@angular/core';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {TUI_VALUE_ACCESSOR} from '@taiga-ui/core';\nimport {identity} from 'rxjs';\n\nexport const TUI_VALUE_ACCESSOR_PROVIDER: FactoryProvider = {\n provide: TUI_VALUE_ACCESSOR,\n deps: [[new Optional(), new Self(), NG_VALUE_ACCESSOR]],\n useFactory: identity,\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAOa,MAAA,4BAA4B,GAAoB;AACzD,IAAA,OAAO,EAAE,mBAAmB;IAC5B,IAAI,EAAE,CAAC,YAAY,CAAC;AACpB,IAAA,UAAU,EAAE,qBAAqB;EACnC;AAEF;;AAEG;AACH;AACM,SAAU,qBAAqB,CACjC,IAAkB,EAAA;AAElB,IAAA,OAAO,KAAK,IACR,KAAK;AACD,UAAE,IAAI;aACC,SAAS,CAAC,KAAK,CAAC;AAChB,aAAA,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAG,EAAA,SAAS,IAAI,KAAK,CAAC,aAAa,CAAA,CAAE,CAAC,CAAC;AACpE,UAAE,EAAE,CAAC,CAAA,CAAE,CAAC,CAAC;AACrB;;ACvBA;AACM,SAAU,8BAA8B,CAC1C,SAAgD,EAAA;AAEhD,IAAA,SAAS,GAAG,SAAS,IAAI,IAAI,8BAA8B,EAAE,CAAC;AAC9D,IAAA,SAAS,CAAC,UAAU,GAAG,CAAA,KAAA,CAAO,CAAC;AAE/B,IAAA,OAAO,SAAS,CAAC;AACrB,CAAC;AAEY,MAAA,kCAAkC,GAAa;AACxD,IAAA;AACI,QAAA,OAAO,EAAE,uBAAuB;QAChC,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,8BAA8B,CAAC,CAAC;AACxD,QAAA,UAAU,EAAE,8BAA8B;AAC7C,KAAA;EACH;AAEF;AACM,SAAU,oCAAoC,CAChD,SAAgD,EAAA;AAEhD,IAAA,SAAS,GAAG,SAAS,IAAI,IAAI,8BAA8B,EAAE,CAAC;AAC9D,IAAA,SAAS,CAAC,KAAK,GAAG,CAAA,IAAA,CAAM,CAAC;AAEzB,IAAA,OAAO,SAAS,CAAC;AACrB,CAAC;AAEY,MAAA,yCAAyC,GAAa;AAC/D,IAAA;AACI,QAAA,OAAO,EAAE,uBAAuB;QAChC,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,8BAA8B,CAAC,CAAC;AACxD,QAAA,UAAU,EAAE,oCAAoC;AACnD,KAAA;;;AC/BQ,MAAA,2BAA2B,GAAoB;AACxD,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC;AACvD,IAAA,UAAU,EAAE,QAAQ;;;ACRxB;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-providers.js","sources":["../../../projects/kit/providers/month-formatter.provider.ts","../../../projects/kit/providers/specific-dropdown-controllers.ts","../../../projects/kit/providers/value-accessor.provider.ts","../../../projects/kit/providers/taiga-ui-kit-providers.ts"],"sourcesContent":["import {FactoryProvider} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {TuiMonthPipe} from '@taiga-ui/core';\nimport {TUI_MONTH_FORMATTER} from '@taiga-ui/kit/tokens';\nimport {Observable, of} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nexport const TUI_MONTH_FORMATTER_PROVIDER: FactoryProvider = {\n provide: TUI_MONTH_FORMATTER,\n deps: [TuiMonthPipe],\n useFactory: (pipe: TuiMonthPipe): TuiHandler<TuiMonth | null, Observable<string>> => {\n return month =>\n month\n ? pipe\n .transform(month)\n .pipe(map(formatted => `${formatted} ${month.formattedYear}`))\n : of(``);\n },\n};\n","import {tuiDropdownOptionsProvider} from '@taiga-ui/core';\n\nexport const FIXED_DROPDOWN_CONTROLLER_PROVIDER = tuiDropdownOptionsProvider({\n limitWidth: `fixed`,\n align: `right`,\n});\n","import {FactoryProvider, Optional, Self} from '@angular/core';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {TUI_VALUE_ACCESSOR} from '@taiga-ui/core';\nimport {identity} from 'rxjs';\n\nexport const TUI_VALUE_ACCESSOR_PROVIDER: FactoryProvider = {\n provide: TUI_VALUE_ACCESSOR,\n deps: [[new Optional(), new Self(), NG_VALUE_ACCESSOR]],\n useFactory: identity,\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAOa,MAAA,4BAA4B,GAAoB;AACzD,IAAA,OAAO,EAAE,mBAAmB;IAC5B,IAAI,EAAE,CAAC,YAAY,CAAC;AACpB,IAAA,UAAU,EAAE,CAAC,IAAkB,KAAqD;AAChF,QAAA,OAAO,KAAK,IACR,KAAK;AACD,cAAE,IAAI;iBACC,SAAS,CAAC,KAAK,CAAC;AAChB,iBAAA,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAG,EAAA,SAAS,IAAI,KAAK,CAAC,aAAa,CAAA,CAAE,CAAC,CAAC;AACpE,cAAE,EAAE,CAAC,CAAA,CAAE,CAAC,CAAC;KACpB;;;ACfE,MAAM,kCAAkC,GAAG,0BAA0B,CAAC;AACzE,IAAA,UAAU,EAAE,CAAO,KAAA,CAAA;AACnB,IAAA,KAAK,EAAE,CAAO,KAAA,CAAA;AACjB,CAAA;;ACAY,MAAA,2BAA2B,GAAoB;AACxD,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAC;AACvD,IAAA,UAAU,EAAE,QAAQ;;;ACRxB;;AAEG;;;;"}
@@ -1,8 +1,20 @@
1
- import { InjectionToken } from '@angular/core';
1
+ import { InjectionToken, Optional, Self } from '@angular/core';
2
+ import { NgControl } from '@angular/forms';
3
+ import { tuiControlValueFactory } from '@taiga-ui/kit/utils';
2
4
  import { tuiExtractI18n } from '@taiga-ui/i18n';
3
5
  import { TUI_DEFAULT_STRINGIFY, TUI_DEFAULT_IDENTITY_MATCHER, ALWAYS_FALSE_HANDLER } from '@taiga-ui/cdk';
4
6
 
5
- const TUI_CALENDAR_DATA_STREAM = new InjectionToken(`Stream that emits calendar data change`);
7
+ const TUI_CALENDAR_DATE_STREAM = new InjectionToken(`Stream that emits calendar data change`);
8
+ function tuiDateStreamWithTransformer(transformer) {
9
+ return {
10
+ provide: TUI_CALENDAR_DATE_STREAM,
11
+ deps: [
12
+ [new Optional(), new Self(), NgControl],
13
+ [new Optional(), transformer],
14
+ ],
15
+ useFactory: tuiControlValueFactory,
16
+ };
17
+ }
6
18
 
7
19
  const TUI_DATE_VALUE_TRANSFORMER = new InjectionToken(`Control value transformer of TuiDay to custom value format for InputDate* components`);
8
20
  const TUI_DATE_RANGE_VALUE_TRANSFORMER = new InjectionToken(`Control value transformer for InputDateRange component`);
@@ -87,11 +99,6 @@ const TUI_TAB_MARGIN = new InjectionToken(`Margin between tabs`, {
87
99
  factory: () => 24,
88
100
  });
89
101
 
90
- // TODO: 3.0 use TUI_TAG_OPTIONS instead of it
91
- const TUI_TAG_STATUS = new InjectionToken(`Status for tags inside InputTag component`, {
92
- factory: () => `primary`,
93
- });
94
-
95
102
  const TUI_VALIDATION_ERRORS = new InjectionToken(`Validation errors`, {
96
103
  factory: () => ({}),
97
104
  });
@@ -100,5 +107,5 @@ const TUI_VALIDATION_ERRORS = new InjectionToken(`Validation errors`, {
100
107
  * Generated bundle index. Do not edit.
101
108
  */
102
109
 
103
- export { TUI_CALENDAR_DATA_STREAM, TUI_CALENDAR_MONTHS, TUI_CANCEL_WORD, TUI_CHOOSE_DAY_OR_RANGE_TEXTS, TUI_COPY_TEXTS, TUI_COUNTRIES, TUI_DATE_RANGE_VALUE_TRANSFORMER, TUI_DATE_TEXTS, TUI_DATE_TIME_VALUE_TRANSFORMER, TUI_DATE_VALUE_TRANSFORMER, TUI_DEFAULT_ITEMS_HANDLERS, TUI_DIGITAL_INFORMATION_UNITS, TUI_DONE_WORD, TUI_FILE_TEXTS, TUI_FROM_TO_TEXTS, TUI_HIDE_TEXT, TUI_INPUT_FILE_TEXTS, TUI_ITEMS_HANDLERS, TUI_MOBILE_CALENDAR, TUI_MONTH_FORMATTER, TUI_MORE_WORD, TUI_OTHER_DATE_TEXT, TUI_PAGINATION_TEXTS, TUI_PASSWORD_TEXTS, TUI_PLUS_MINUS_TEXTS, TUI_SHOW_ALL_TEXT, TUI_TAB_MARGIN, TUI_TAG_STATUS, TUI_TIME_TEXTS, TUI_VALIDATION_ERRORS, tuiItemsHandlersProvider };
110
+ export { TUI_CALENDAR_DATE_STREAM, TUI_CALENDAR_MONTHS, TUI_CANCEL_WORD, TUI_CHOOSE_DAY_OR_RANGE_TEXTS, TUI_COPY_TEXTS, TUI_COUNTRIES, TUI_DATE_RANGE_VALUE_TRANSFORMER, TUI_DATE_TEXTS, TUI_DATE_TIME_VALUE_TRANSFORMER, TUI_DATE_VALUE_TRANSFORMER, TUI_DEFAULT_ITEMS_HANDLERS, TUI_DIGITAL_INFORMATION_UNITS, TUI_DONE_WORD, TUI_FILE_TEXTS, TUI_FROM_TO_TEXTS, TUI_HIDE_TEXT, TUI_INPUT_FILE_TEXTS, TUI_ITEMS_HANDLERS, TUI_MOBILE_CALENDAR, TUI_MONTH_FORMATTER, TUI_MORE_WORD, TUI_OTHER_DATE_TEXT, TUI_PAGINATION_TEXTS, TUI_PASSWORD_TEXTS, TUI_PLUS_MINUS_TEXTS, TUI_SHOW_ALL_TEXT, TUI_TAB_MARGIN, TUI_TIME_TEXTS, TUI_VALIDATION_ERRORS, tuiDateStreamWithTransformer, tuiItemsHandlersProvider };
104
111
  //# sourceMappingURL=taiga-ui-kit-tokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-tokens.js","sources":["../../../projects/kit/tokens/calendar-data-stream.ts","../../../projects/kit/tokens/date-inputs-value-transformers.ts","../../../projects/kit/tokens/i18n.ts","../../../projects/kit/tokens/items-handlers.ts","../../../projects/kit/tokens/mobile-calendar.ts","../../../projects/kit/tokens/month-formatter.ts","../../../projects/kit/tokens/tab-margin.ts","../../../projects/kit/tokens/tag-status.ts","../../../projects/kit/tokens/validation-errors.ts","../../../projects/kit/tokens/taiga-ui-kit-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {TuiDay, TuiDayRange} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nexport const TUI_CALENDAR_DATA_STREAM = new InjectionToken<\n Observable<TuiDay | TuiDayRange | null>\n>(`Stream that emits calendar data change`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiControlValueTransformer, TuiDay, TuiDayRange, TuiTime} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDay | null>\n>(`Control value transformer of TuiDay to custom value format for InputDate* components`);\n\nexport const TUI_DATE_RANGE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDayRange | null>\n>(`Control value transformer for InputDateRange component`);\n\nexport const TUI_DATE_TIME_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<[TuiDay | null, TuiTime | null]>\n>(`Control value transformer for InputDateTime component`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiCountryIsoCode, tuiExtractI18n} from '@taiga-ui/i18n';\nimport {Observable} from 'rxjs';\n\nexport const TUI_CANCEL_WORD = new InjectionToken(`i18n 'cancel' word`, {\n factory: tuiExtractI18n(`cancel`),\n});\n\nexport const TUI_DONE_WORD = new InjectionToken(`i18n 'done' word`, {\n factory: tuiExtractI18n(`done`),\n});\n\nexport const TUI_MORE_WORD = new InjectionToken(`i18n 'more' word`, {\n factory: tuiExtractI18n(`more`),\n});\n\nexport const TUI_HIDE_TEXT = new InjectionToken(`i18n 'hide' word`, {\n factory: tuiExtractI18n(`hide`),\n});\n\nexport const TUI_SHOW_ALL_TEXT = new InjectionToken(`i18n 'show all' word`, {\n factory: tuiExtractI18n(`showAll`),\n});\n\nexport const TUI_OTHER_DATE_TEXT = new InjectionToken(`i18n 'Other date' text`, {\n factory: tuiExtractI18n(`otherDate`),\n});\n\nexport const TUI_CHOOSE_DAY_OR_RANGE_TEXTS = new InjectionToken(\n `choose day or range i18n texts`,\n {\n factory: tuiExtractI18n(`mobileCalendarTexts`),\n },\n);\n\nexport const TUI_FROM_TO_TEXTS = new InjectionToken(`from and to i18n texts`, {\n factory: tuiExtractI18n(`range`),\n});\n\nexport const TUI_PLUS_MINUS_TEXTS = new InjectionToken(`plus and minus i18n texts`, {\n factory: tuiExtractI18n(`countTexts`),\n});\n\nexport const TUI_TIME_TEXTS = new InjectionToken(`time i18n texts`, {\n factory: tuiExtractI18n(`time`),\n});\n\nexport const TUI_DATE_TEXTS = new InjectionToken<Observable<Record<TuiDateMode, string>>>(\n `date format i18n texts`,\n {\n factory: tuiExtractI18n(`dateTexts`),\n },\n);\n\nexport const TUI_DIGITAL_INFORMATION_UNITS = new InjectionToken(\n `short bytes, kilobytes and megabytes i18n texts`,\n {\n factory: tuiExtractI18n(`digitalInformationUnits`),\n },\n);\n\nexport const TUI_COPY_TEXTS = new InjectionToken(`copy i18n texts`, {\n factory: tuiExtractI18n(`copyTexts`),\n});\n\nexport const TUI_PASSWORD_TEXTS = new InjectionToken(`password i18n texts`, {\n factory: tuiExtractI18n(`passwordTexts`),\n});\n\nexport const TUI_CALENDAR_MONTHS = new InjectionToken(`short calendar months i18n`, {\n factory: tuiExtractI18n(`shortCalendarMonths`),\n});\n\nexport const TUI_FILE_TEXTS = new InjectionToken(`file i18n texts`, {\n factory: tuiExtractI18n(`fileTexts`),\n});\n\nexport const TUI_PAGINATION_TEXTS = new InjectionToken(`pagination i18n texts`, {\n factory: tuiExtractI18n(`pagination`),\n});\n\nexport const TUI_INPUT_FILE_TEXTS = new InjectionToken(`tui-input-file i18n texts`, {\n factory: tuiExtractI18n(`inputFileTexts`),\n});\n\nexport const TUI_COUNTRIES: InjectionToken<\n Observable<Record<TuiCountryIsoCode, string>>\n> = new InjectionToken(`Localized countries names`, {\n factory: tuiExtractI18n(`countries`),\n});\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n TuiIdentityMatcher,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\n\nexport interface TuiItemsHandlers<T> {\n readonly stringify: TuiStringHandler<T>;\n readonly identityMatcher: TuiIdentityMatcher<T>;\n readonly disabledItemHandler: TuiBooleanHandler<T>;\n}\n\nexport const TUI_DEFAULT_ITEMS_HANDLERS: TuiItemsHandlers<unknown> = {\n stringify: TUI_DEFAULT_STRINGIFY,\n identityMatcher: TUI_DEFAULT_IDENTITY_MATCHER,\n disabledItemHandler: ALWAYS_FALSE_HANDLER,\n};\n\nexport const TUI_ITEMS_HANDLERS = new InjectionToken<TuiItemsHandlers<unknown>>(\n `Default items handlers for components`,\n {\n factory: () => TUI_DEFAULT_ITEMS_HANDLERS,\n },\n);\n\nexport const tuiItemsHandlersProvider: <T>(\n options: Partial<TuiItemsHandlers<T>>,\n) => ValueProvider = <T>(options: Partial<TuiItemsHandlers<T>>) => ({\n provide: TUI_ITEMS_HANDLERS,\n useValue: {...TUI_DEFAULT_ITEMS_HANDLERS, ...options},\n});\n","import {InjectionToken, Type} from '@angular/core';\n\nexport const TUI_MOBILE_CALENDAR = new InjectionToken<Type<unknown>>(\n `A component for mobile data picker`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MONTH_FORMATTER = new InjectionToken<\n TuiHandler<TuiMonth | null, Observable<string>>\n>(`A function to get localized formatted month`);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_TAB_MARGIN = new InjectionToken<number>(`Margin between tabs`, {\n factory: () => 24,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiStatus} from '@taiga-ui/kit/types';\n\n// TODO: 3.0 use TUI_TAG_OPTIONS instead of it\nexport const TUI_TAG_STATUS = new InjectionToken<TuiStatus>(\n `Status for tags inside InputTag component`,\n {\n factory: () => `primary`,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, PolymorpheusContent | Observable<PolymorpheusContent>>\n>(`Validation errors`, {\n factory: () => ({}),\n});\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-tokens.js","sources":["../../../projects/kit/tokens/calendar-date-stream.ts","../../../projects/kit/tokens/date-inputs-value-transformers.ts","../../../projects/kit/tokens/i18n.ts","../../../projects/kit/tokens/items-handlers.ts","../../../projects/kit/tokens/mobile-calendar.ts","../../../projects/kit/tokens/month-formatter.ts","../../../projects/kit/tokens/tab-margin.ts","../../../projects/kit/tokens/validation-errors.ts","../../../projects/kit/tokens/taiga-ui-kit-tokens.ts"],"sourcesContent":["import {InjectionToken, Optional, Provider, Self} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiControlValueTransformer, TuiDay, TuiDayRange} from '@taiga-ui/cdk';\nimport {tuiControlValueFactory} from '@taiga-ui/kit/utils';\nimport {Observable} from 'rxjs';\n\nexport const TUI_CALENDAR_DATE_STREAM = new InjectionToken<\n Observable<TuiDay | TuiDayRange | null>\n>(`Stream that emits calendar data change`);\n\nexport function tuiDateStreamWithTransformer(\n transformer: InjectionToken<TuiControlValueTransformer<any>>,\n): Provider {\n return {\n provide: TUI_CALENDAR_DATE_STREAM,\n deps: [\n [new Optional(), new Self(), NgControl],\n [new Optional(), transformer],\n ],\n useFactory: tuiControlValueFactory,\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiControlValueTransformer, TuiDay, TuiDayRange, TuiTime} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDay | null>\n>(`Control value transformer of TuiDay to custom value format for InputDate* components`);\n\nexport const TUI_DATE_RANGE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDayRange | null>\n>(`Control value transformer for InputDateRange component`);\n\nexport const TUI_DATE_TIME_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<[TuiDay | null, TuiTime | null]>\n>(`Control value transformer for InputDateTime component`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiCountryIsoCode, tuiExtractI18n} from '@taiga-ui/i18n';\nimport {Observable} from 'rxjs';\n\nexport const TUI_CANCEL_WORD = new InjectionToken(`i18n 'cancel' word`, {\n factory: tuiExtractI18n(`cancel`),\n});\n\nexport const TUI_DONE_WORD = new InjectionToken(`i18n 'done' word`, {\n factory: tuiExtractI18n(`done`),\n});\n\nexport const TUI_MORE_WORD = new InjectionToken(`i18n 'more' word`, {\n factory: tuiExtractI18n(`more`),\n});\n\nexport const TUI_HIDE_TEXT = new InjectionToken(`i18n 'hide' word`, {\n factory: tuiExtractI18n(`hide`),\n});\n\nexport const TUI_SHOW_ALL_TEXT = new InjectionToken(`i18n 'show all' word`, {\n factory: tuiExtractI18n(`showAll`),\n});\n\nexport const TUI_OTHER_DATE_TEXT = new InjectionToken(`i18n 'Other date' text`, {\n factory: tuiExtractI18n(`otherDate`),\n});\n\nexport const TUI_CHOOSE_DAY_OR_RANGE_TEXTS = new InjectionToken(\n `choose day or range i18n texts`,\n {\n factory: tuiExtractI18n(`mobileCalendarTexts`),\n },\n);\n\nexport const TUI_FROM_TO_TEXTS = new InjectionToken(`from and to i18n texts`, {\n factory: tuiExtractI18n(`range`),\n});\n\nexport const TUI_PLUS_MINUS_TEXTS = new InjectionToken(`plus and minus i18n texts`, {\n factory: tuiExtractI18n(`countTexts`),\n});\n\nexport const TUI_TIME_TEXTS = new InjectionToken(`time i18n texts`, {\n factory: tuiExtractI18n(`time`),\n});\n\nexport const TUI_DATE_TEXTS = new InjectionToken<Observable<Record<TuiDateMode, string>>>(\n `date format i18n texts`,\n {\n factory: tuiExtractI18n(`dateTexts`),\n },\n);\n\nexport const TUI_DIGITAL_INFORMATION_UNITS = new InjectionToken(\n `short bytes, kilobytes and megabytes i18n texts`,\n {\n factory: tuiExtractI18n(`digitalInformationUnits`),\n },\n);\n\nexport const TUI_COPY_TEXTS = new InjectionToken(`copy i18n texts`, {\n factory: tuiExtractI18n(`copyTexts`),\n});\n\nexport const TUI_PASSWORD_TEXTS = new InjectionToken(`password i18n texts`, {\n factory: tuiExtractI18n(`passwordTexts`),\n});\n\nexport const TUI_CALENDAR_MONTHS = new InjectionToken(`short calendar months i18n`, {\n factory: tuiExtractI18n(`shortCalendarMonths`),\n});\n\nexport const TUI_FILE_TEXTS = new InjectionToken(`file i18n texts`, {\n factory: tuiExtractI18n(`fileTexts`),\n});\n\nexport const TUI_PAGINATION_TEXTS = new InjectionToken(`pagination i18n texts`, {\n factory: tuiExtractI18n(`pagination`),\n});\n\nexport const TUI_INPUT_FILE_TEXTS = new InjectionToken(`tui-input-file i18n texts`, {\n factory: tuiExtractI18n(`inputFileTexts`),\n});\n\nexport const TUI_COUNTRIES: InjectionToken<\n Observable<Record<TuiCountryIsoCode, string>>\n> = new InjectionToken(`Localized countries names`, {\n factory: tuiExtractI18n(`countries`),\n});\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n TUI_DEFAULT_IDENTITY_MATCHER,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n TuiIdentityMatcher,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\n\nexport interface TuiItemsHandlers<T> {\n readonly stringify: TuiStringHandler<T>;\n readonly identityMatcher: TuiIdentityMatcher<T>;\n readonly disabledItemHandler: TuiBooleanHandler<T>;\n}\n\nexport const TUI_DEFAULT_ITEMS_HANDLERS: TuiItemsHandlers<unknown> = {\n stringify: TUI_DEFAULT_STRINGIFY,\n identityMatcher: TUI_DEFAULT_IDENTITY_MATCHER,\n disabledItemHandler: ALWAYS_FALSE_HANDLER,\n};\n\nexport const TUI_ITEMS_HANDLERS = new InjectionToken<TuiItemsHandlers<unknown>>(\n `Default items handlers for components`,\n {\n factory: () => TUI_DEFAULT_ITEMS_HANDLERS,\n },\n);\n\nexport const tuiItemsHandlersProvider: <T>(\n options: Partial<TuiItemsHandlers<T>>,\n) => ValueProvider = <T>(options: Partial<TuiItemsHandlers<T>>) => ({\n provide: TUI_ITEMS_HANDLERS,\n useValue: {...TUI_DEFAULT_ITEMS_HANDLERS, ...options},\n});\n","import {InjectionToken, Type} from '@angular/core';\n\nexport const TUI_MOBILE_CALENDAR = new InjectionToken<Type<unknown>>(\n `A component for mobile data picker`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MONTH_FORMATTER = new InjectionToken<\n TuiHandler<TuiMonth | null, Observable<string>>\n>(`A function to get localized formatted month`);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_TAB_MARGIN = new InjectionToken<number>(`Margin between tabs`, {\n factory: () => 24,\n});\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, PolymorpheusContent | Observable<PolymorpheusContent>>\n>(`Validation errors`, {\n factory: () => ({}),\n});\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,8 @@
1
- import { round } from '@taiga-ui/cdk';
1
+ import { tuiRound } from '@taiga-ui/cdk';
2
2
 
3
3
  const BYTES_PER_KB = 1000;
4
4
  const BYTES_PER_MB = 1000 * BYTES_PER_KB;
5
- /**
6
- * @deprecated: use {@link tuiFormatSize} instead
7
- */
8
- // eslint-disable-next-line @typescript-eslint/naming-convention
9
- function formatSize(units, size) {
5
+ function tuiFormatSize(units, size) {
10
6
  if (size === undefined) {
11
7
  return null;
12
8
  }
@@ -16,25 +12,19 @@ function formatSize(units, size) {
16
12
  if (size < BYTES_PER_MB) {
17
13
  return `${(size / BYTES_PER_KB).toFixed(0)} ${units[1]}`;
18
14
  }
19
- return `${round(size / BYTES_PER_MB, 2).toLocaleString(`ru-RU`)} ${units[2]}`;
15
+ return `${tuiRound(size / BYTES_PER_MB, 2).toLocaleString(`ru-RU`)} ${units[2]}`;
20
16
  }
21
- const tuiFormatSize = formatSize;
22
17
 
23
- /**
24
- * @deprecated: use {@link tuiGetAcceptArray} instead
25
- */
26
- // eslint-disable-next-line @typescript-eslint/naming-convention
27
- function getAcceptArray(accept) {
18
+ function tuiGetAcceptArray(accept) {
28
19
  return accept
29
20
  .toLowerCase()
30
21
  .split(`,`)
31
22
  .map(format => format.trim());
32
23
  }
33
- const tuiGetAcceptArray = getAcceptArray;
34
24
 
35
25
  /**
36
26
  * Generated bundle index. Do not edit.
37
27
  */
38
28
 
39
- export { formatSize, getAcceptArray, tuiFormatSize, tuiGetAcceptArray };
29
+ export { tuiFormatSize, tuiGetAcceptArray };
40
30
  //# sourceMappingURL=taiga-ui-kit-utils-files.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-utils-files.js","sources":["../../../projects/kit/utils/files/format-size.ts","../../../projects/kit/utils/files/get-accept-array.ts","../../../projects/kit/utils/files/taiga-ui-kit-utils-files.ts"],"sourcesContent":["import {round} from '@taiga-ui/cdk';\n\nconst BYTES_PER_KB = 1000;\nconst BYTES_PER_MB = 1000 * BYTES_PER_KB;\n\n/**\n * @deprecated: use {@link tuiFormatSize} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function formatSize(\n units: [string, string, string],\n size?: number,\n): string | null {\n if (size === undefined) {\n return null;\n }\n\n if (size < BYTES_PER_KB) {\n return `${size} ${units[0]}`;\n }\n\n if (size < BYTES_PER_MB) {\n return `${(size / BYTES_PER_KB).toFixed(0)} ${units[1]}`;\n }\n\n return `${round(size / BYTES_PER_MB, 2).toLocaleString(`ru-RU`)} ${units[2]}`;\n}\n\nexport const tuiFormatSize = formatSize;\n","/**\n * @deprecated: use {@link tuiGetAcceptArray} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function getAcceptArray(accept: string): readonly string[] {\n return accept\n .toLowerCase()\n .split(`,`)\n .map(format => format.trim());\n}\n\nexport const tuiGetAcceptArray = getAcceptArray;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,YAAY,GAAG,IAAI,GAAG,YAAY,CAAC;AAEzC;;AAEG;AACH;AACgB,SAAA,UAAU,CACtB,KAA+B,EAC/B,IAAa,EAAA;IAEb,IAAI,IAAI,KAAK,SAAS,EAAE;AACpB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,IAAI,IAAI,GAAG,YAAY,EAAE;QACrB,OAAO,CAAA,EAAG,IAAI,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAChC,KAAA;IAED,IAAI,IAAI,GAAG,YAAY,EAAE;AACrB,QAAA,OAAO,GAAG,CAAC,IAAI,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,KAAA;IAED,OAAO,CAAA,EAAG,KAAK,CAAC,IAAI,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA,KAAA,CAAO,CAAC,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAClF,CAAC;AAEM,MAAM,aAAa,GAAG;;AC5B7B;;AAEG;AACH;AACM,SAAU,cAAc,CAAC,MAAc,EAAA;AACzC,IAAA,OAAO,MAAM;AACR,SAAA,WAAW,EAAE;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AACtC,CAAC;AAEM,MAAM,iBAAiB,GAAG;;ACXjC;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-utils-files.js","sources":["../../../projects/kit/utils/files/format-size.ts","../../../projects/kit/utils/files/get-accept-array.ts","../../../projects/kit/utils/files/taiga-ui-kit-utils-files.ts"],"sourcesContent":["import {tuiRound} from '@taiga-ui/cdk';\n\nconst BYTES_PER_KB = 1000;\nconst BYTES_PER_MB = 1000 * BYTES_PER_KB;\n\nexport function tuiFormatSize(\n units: [string, string, string],\n size?: number,\n): string | null {\n if (size === undefined) {\n return null;\n }\n\n if (size < BYTES_PER_KB) {\n return `${size} ${units[0]}`;\n }\n\n if (size < BYTES_PER_MB) {\n return `${(size / BYTES_PER_KB).toFixed(0)} ${units[1]}`;\n }\n\n return `${tuiRound(size / BYTES_PER_MB, 2).toLocaleString(`ru-RU`)} ${units[2]}`;\n}\n","export function tuiGetAcceptArray(accept: string): readonly string[] {\n return accept\n .toLowerCase()\n .split(`,`)\n .map(format => format.trim());\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,YAAY,GAAG,IAAI,GAAG,YAAY,CAAC;AAEzB,SAAA,aAAa,CACzB,KAA+B,EAC/B,IAAa,EAAA;IAEb,IAAI,IAAI,KAAK,SAAS,EAAE;AACpB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,IAAI,IAAI,GAAG,YAAY,EAAE;QACrB,OAAO,CAAA,EAAG,IAAI,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAChC,KAAA;IAED,IAAI,IAAI,GAAG,YAAY,EAAE;AACrB,QAAA,OAAO,GAAG,CAAC,IAAI,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,KAAA;IAED,OAAO,CAAA,EAAG,QAAQ,CAAC,IAAI,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA,KAAA,CAAO,CAAC,CAAI,CAAA,EAAA,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACrF;;ACtBM,SAAU,iBAAiB,CAAC,MAAc,EAAA;AAC5C,IAAA,OAAO,MAAM;AACR,SAAA,WAAW,EAAE;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AACtC;;ACLA;;AAEG;;;;"}
@@ -1,12 +1,10 @@
1
1
  /**
2
- * @deprecated: use {@link tuiStringHashToHsl} instead
3
2
  * Converts a string to an HSL color
4
3
  * @param value string to convert
5
4
  * @return HSL color string
6
5
  */
7
6
  // @bad TODO: convert stringHashToHsl to stringHashToRgb
8
- // eslint-disable-next-line @typescript-eslint/naming-convention
9
- function stringHashToHsl(value) {
7
+ function tuiStringHashToHsl(value) {
10
8
  if (value === ``) {
11
9
  return ``;
12
10
  }
@@ -20,11 +18,10 @@ function stringHashToHsl(value) {
20
18
  const lightness = 80 + (hash % 5);
21
19
  return `hsl(${hue},${saturation}%,${lightness}%)`;
22
20
  }
23
- const tuiStringHashToHsl = stringHashToHsl;
24
21
 
25
22
  /**
26
23
  * Generated bundle index. Do not edit.
27
24
  */
28
25
 
29
- export { stringHashToHsl, tuiStringHashToHsl };
26
+ export { tuiStringHashToHsl };
30
27
  //# sourceMappingURL=taiga-ui-kit-utils-format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-utils-format.js","sources":["../../../projects/kit/utils/format/string-hash-to-hsl.ts","../../../projects/kit/utils/format/taiga-ui-kit-utils-format.ts"],"sourcesContent":["/**\n * @deprecated: use {@link tuiStringHashToHsl} instead\n * Converts a string to an HSL color\n * @param value string to convert\n * @return HSL color string\n */\n// @bad TODO: convert stringHashToHsl to stringHashToRgb\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function stringHashToHsl(value: string): string {\n if (value === ``) {\n return ``;\n }\n\n let hash = 0;\n\n for (let i = 0; i < value.length; i++) {\n hash = value.charCodeAt(i) + ((hash << 5) - hash);\n hash = hash & hash;\n }\n\n const hue = hash % 360;\n const saturation = 60 + (hash % 5);\n const lightness = 80 + (hash % 5);\n\n return `hsl(${hue},${saturation}%,${lightness}%)`;\n}\n\nexport const tuiStringHashToHsl = stringHashToHsl;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;AAKG;AACH;AACA;AACM,SAAU,eAAe,CAAC,KAAa,EAAA;IACzC,IAAI,KAAK,KAAK,CAAA,CAAE,EAAE;AACd,QAAA,OAAO,EAAE,CAAC;AACb,KAAA;IAED,IAAI,IAAI,GAAG,CAAC,CAAC;AAEb,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACnC,QAAA,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;AAClD,QAAA,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACtB,KAAA;AAED,IAAA,MAAM,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;IACvB,MAAM,UAAU,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;AAElC,IAAA,OAAO,OAAO,GAAG,CAAA,CAAA,EAAI,UAAU,CAAK,EAAA,EAAA,SAAS,IAAI,CAAC;AACtD,CAAC;AAEM,MAAM,kBAAkB,GAAG;;AC3BlC;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-utils-format.js","sources":["../../../projects/kit/utils/format/string-hash-to-hsl.ts","../../../projects/kit/utils/format/taiga-ui-kit-utils-format.ts"],"sourcesContent":["/**\n * Converts a string to an HSL color\n * @param value string to convert\n * @return HSL color string\n */\n// @bad TODO: convert stringHashToHsl to stringHashToRgb\nexport function tuiStringHashToHsl(value: string): string {\n if (value === ``) {\n return ``;\n }\n\n let hash = 0;\n\n for (let i = 0; i < value.length; i++) {\n hash = value.charCodeAt(i) + ((hash << 5) - hash);\n hash = hash & hash;\n }\n\n const hue = hash % 360;\n const saturation = 60 + (hash % 5);\n const lightness = 80 + (hash % 5);\n\n return `hsl(${hue},${saturation}%,${lightness}%)`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;AAIG;AACH;AACM,SAAU,kBAAkB,CAAC,KAAa,EAAA;IAC5C,IAAI,KAAK,KAAK,CAAA,CAAE,EAAE;AACd,QAAA,OAAO,EAAE,CAAC;AACb,KAAA;IAED,IAAI,IAAI,GAAG,CAAC,CAAC;AAEb,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACnC,QAAA,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;AAClD,QAAA,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACtB,KAAA;AAED,IAAA,MAAM,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;IACvB,MAAM,UAAU,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;AAElC,IAAA,OAAO,OAAO,GAAG,CAAA,CAAA,EAAI,UAAU,CAAK,EAAA,EAAA,SAAS,IAAI,CAAC;AACtD;;ACvBA;;AAEG;;;;"}
@@ -2,11 +2,7 @@ import { TuiDay, DATE_FILLER_LENGTH, DATE_RANGE_FILLER_LENGTH, TuiDayRange, RANG
2
2
  import { MAX_TIME_VALUES, DATE_TIME_SEPARATOR } from '@taiga-ui/kit/constants';
3
3
  import { TUI_DIGIT_REGEXP } from '@taiga-ui/core';
4
4
 
5
- /**
6
- * @deprecated: use {@link tuiNormalizeDateValue} instead
7
- */
8
- // eslint-disable-next-line @typescript-eslint/naming-convention
9
- function normalizeDateValue(dateValue, { value, min, max, dateFormat, dateSeparator }) {
5
+ function tuiNormalizeDateValue(dateValue, { value, min, max, dateFormat, dateSeparator }) {
10
6
  return value && value.toString(dateFormat, dateSeparator) === dateValue
11
7
  ? dateValue
12
8
  : TuiDay.normalizeParse(dateValue, dateFormat)
@@ -19,11 +15,10 @@ function tuiCreateAutoCorrectedDatePipe(config) {
19
15
  return { value };
20
16
  }
21
17
  return {
22
- value: normalizeDateValue(value, config),
18
+ value: tuiNormalizeDateValue(value, config),
23
19
  };
24
20
  };
25
21
  }
26
- const tuiNormalizeDateValue = normalizeDateValue;
27
22
 
28
23
  function parseWithLimit(value, config) {
29
24
  return TuiDay.normalizeParse(value.slice(0, DATE_FILLER_LENGTH), config.dateFormat).dayLimit(config.min, config.max);
@@ -100,7 +95,7 @@ function tuiCreateAutoCorrectedDateTimePipe(configs) {
100
95
  return { value };
101
96
  }
102
97
  const [date, time] = value.split(DATE_TIME_SEPARATOR);
103
- const formattedDate = normalizeDateValue(date, configs);
98
+ const formattedDate = tuiNormalizeDateValue(date, configs);
104
99
  if (!time) {
105
100
  return { value: formattedDate };
106
101
  }
@@ -165,5 +160,5 @@ function tuiCreateTimeMask(mode, maxValues = {}) {
165
160
  * Generated bundle index. Do not edit.
166
161
  */
167
162
 
168
- export { normalizeDateValue, tuiCreateAutoCorrectedDatePipe, tuiCreateAutoCorrectedDateRangePipe, tuiCreateAutoCorrectedDateTimePipe, tuiCreateAutoCorrectedTimePipe, tuiCreateDateMask, tuiCreateDateRangeMask, tuiCreateTimeMask, tuiNormalizeDateValue };
163
+ export { tuiCreateAutoCorrectedDatePipe, tuiCreateAutoCorrectedDateRangePipe, tuiCreateAutoCorrectedDateTimePipe, tuiCreateAutoCorrectedTimePipe, tuiCreateDateMask, tuiCreateDateRangeMask, tuiCreateTimeMask, tuiNormalizeDateValue };
169
164
  //# sourceMappingURL=taiga-ui-kit-utils-mask.js.map