@taiga-ui/kit 3.23.1 → 3.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. package/abstract/abstract-native-select.d.ts +2 -2
  2. package/bundles/taiga-ui-kit-abstract.umd.js +3 -3
  3. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -5
  5. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-action.umd.js +3 -3
  7. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +2 -4
  9. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-carousel.umd.js +12 -12
  11. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +2 -2
  13. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +2 -2
  15. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-checkbox.umd.js +2 -2
  17. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-combo-box.umd.js +2 -2
  19. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-elastic-container.umd.js +337 -9
  21. package/bundles/taiga-ui-kit-components-elastic-container.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-files.umd.js +8 -9
  23. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-filter.umd.js +4 -4
  25. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-input-copy.umd.js +4 -4
  27. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-input-count.umd.js +2 -2
  29. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +5 -5
  31. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +3 -3
  33. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-date.umd.js +5 -5
  35. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-input-files.umd.js +9 -9
  37. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -2
  39. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +2 -2
  41. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-input-month.umd.js +2 -2
  43. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-input-number.umd.js +3 -3
  45. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-input-password.umd.js +2 -2
  47. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +3 -3
  49. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  51. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-input-range.umd.js +4 -4
  53. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-input-slider.umd.js +2 -2
  55. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  56. package/bundles/taiga-ui-kit-components-input-tag.umd.js +4 -5
  57. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  58. package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
  59. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-components-input-year.umd.js +2 -2
  61. package/bundles/taiga-ui-kit-components-input-year.umd.js.map +1 -1
  62. package/bundles/taiga-ui-kit-components-input.umd.js +2 -2
  63. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  64. package/bundles/taiga-ui-kit-components-items-with-more.umd.js +3 -3
  65. package/bundles/taiga-ui-kit-components-items-with-more.umd.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +5 -5
  67. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  68. package/bundles/taiga-ui-kit-components-multi-select.umd.js +3 -4
  69. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  70. package/bundles/taiga-ui-kit-components-pagination.umd.js +11 -11
  71. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  72. package/bundles/taiga-ui-kit-components-progress.umd.js +8 -9
  73. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  74. package/bundles/taiga-ui-kit-components-prompt.umd.js +11 -10
  75. package/bundles/taiga-ui-kit-components-prompt.umd.js.map +1 -1
  76. package/bundles/taiga-ui-kit-components-push.umd.js +3 -7
  77. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
  78. package/bundles/taiga-ui-kit-components-radio-block.umd.js +2 -2
  79. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  80. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +2 -2
  81. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  82. package/bundles/taiga-ui-kit-components-radio-list.umd.js +4 -4
  83. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
  85. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-range.umd.js +16 -16
  87. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-rating.umd.js +2 -2
  89. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-routable-dialog.umd.js +2 -2
  91. package/bundles/taiga-ui-kit-components-routable-dialog.umd.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-select-option.umd.js +3 -3
  93. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-select.umd.js +2 -2
  95. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-slider.umd.js +24 -22
  97. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-stepper.umd.js +68 -50
  99. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-tabs.umd.js +23 -23
  101. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  102. package/bundles/taiga-ui-kit-components-tag.umd.js +3 -3
  103. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  104. package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
  105. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  106. package/bundles/taiga-ui-kit-components-tiles.umd.js +9 -9
  107. package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
  108. package/bundles/taiga-ui-kit-components-toggle.umd.js +2 -2
  109. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  110. package/bundles/taiga-ui-kit-components-tree.umd.js +3 -3
  111. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  112. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js +5 -5
  113. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -1
  114. package/bundles/taiga-ui-kit-directives-highlight.umd.js +9 -9
  115. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  116. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +5 -5
  117. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  118. package/bundles/taiga-ui-kit-directives-project-class.umd.js +3 -3
  119. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  120. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +2 -4
  121. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  122. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +14 -7
  123. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  124. package/bundles/taiga-ui-kit-services.umd.js +3 -3
  125. package/bundles/taiga-ui-kit-services.umd.js.map +1 -1
  126. package/bundles/taiga-ui-kit-tokens.umd.js +1 -0
  127. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  128. package/bundles/taiga-ui-kit-utils-mask.umd.js +4 -2
  129. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  130. package/components/accordion/accordion-item/accordion-item-content.directive.d.ts +1 -1
  131. package/components/accordion/accordion-item/accordion-item.component.d.ts +2 -2
  132. package/components/action/action.component.d.ts +2 -2
  133. package/components/arrow/arrow.component.d.ts +1 -1
  134. package/components/calendar-range/calendar-range.component.d.ts +1 -1
  135. package/components/carousel/carousel-scroll.directive.d.ts +2 -2
  136. package/components/carousel/carousel.component.d.ts +3 -3
  137. package/components/carousel/carousel.directive.d.ts +2 -2
  138. package/components/checkbox/checkbox.component.d.ts +1 -1
  139. package/components/checkbox-block/checkbox-block.component.d.ts +1 -1
  140. package/components/checkbox-labeled/checkbox-labeled.component.d.ts +1 -1
  141. package/components/combo-box/combo-box.component.d.ts +1 -1
  142. package/components/elastic-container/elastic-container.component.d.ts +2 -0
  143. package/components/elastic-container/elastic-container.directive.d.ts +2 -2
  144. package/components/files/file/file.component.d.ts +2 -3
  145. package/components/files/files.module.d.ts +1 -1
  146. package/components/filter/filter.component.d.ts +2 -2
  147. package/components/input/input.component.d.ts +1 -1
  148. package/components/input-copy/input-copy.component.d.ts +2 -2
  149. package/components/input-count/input-count.component.d.ts +1 -1
  150. package/components/input-date/input-date.component.d.ts +4 -4
  151. package/components/input-date-range/input-date-range.component.d.ts +4 -4
  152. package/components/input-date-time/input-date-time.component.d.ts +3 -3
  153. package/components/input-files/input-files.component.d.ts +1 -1
  154. package/components/input-files/input-files.directive.d.ts +2 -2
  155. package/components/input-inline/input-inline.component.d.ts +1 -1
  156. package/components/input-month/input-month.component.d.ts +1 -1
  157. package/components/input-month-range/input-month-range.component.d.ts +1 -1
  158. package/components/input-number/input-number.component.d.ts +1 -1
  159. package/components/input-password/input-password.component.d.ts +1 -1
  160. package/components/input-phone/input-phone.component.d.ts +1 -1
  161. package/components/input-phone-international/input-phone-international.component.d.ts +1 -1
  162. package/components/input-range/input-range.component.d.ts +2 -2
  163. package/components/input-slider/input-slider.component.d.ts +1 -1
  164. package/components/input-tag/input-tag.component.d.ts +2 -2
  165. package/components/input-time/input-time.component.d.ts +1 -1
  166. package/components/input-year/input-year.component.d.ts +1 -1
  167. package/components/items-with-more/items-with-more.service.d.ts +2 -2
  168. package/components/line-clamp/line-clamp.component.d.ts +2 -2
  169. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +1 -1
  170. package/components/multi-select/multi-select.component.d.ts +1 -1
  171. package/components/pagination/pagination.component.d.ts +3 -3
  172. package/components/pdf-viewer/pdf-viewer.service.d.ts +1 -1
  173. package/components/progress/progress-bar/progress-color-segments.directive.d.ts +2 -2
  174. package/components/progress/progress-circle/progress-circle.component.d.ts +3 -3
  175. package/components/prompt/prompt.component.d.ts +1 -1
  176. package/components/prompt/prompt.module.d.ts +2 -1
  177. package/components/push/push-alert.directive.d.ts +1 -1
  178. package/components/push/push.service.d.ts +3 -5
  179. package/components/radio/radio.component.d.ts +1 -1
  180. package/components/radio-block/radio-block.component.d.ts +1 -1
  181. package/components/radio-labeled/radio-labeled.component.d.ts +1 -1
  182. package/components/radio-list/radio-list.component.d.ts +2 -2
  183. package/components/range/range-change.directive.d.ts +4 -4
  184. package/components/range/range.component.d.ts +2 -2
  185. package/components/rating/rating.component.d.ts +1 -1
  186. package/components/routable-dialog/routable-dialog.component.d.ts +1 -1
  187. package/components/select/select.component.d.ts +1 -1
  188. package/components/select-option/select-option.component.d.ts +3 -3
  189. package/components/slider/helpers/slider-key-steps.directive.d.ts +2 -2
  190. package/components/slider/helpers/slider-readonly.directive.d.ts +1 -1
  191. package/components/slider/slider.component.d.ts +2 -2
  192. package/components/stepper/step/step.component.d.ts +2 -2
  193. package/components/stepper/stepper.component.d.ts +7 -3
  194. package/components/tabs/tab/tab.component.d.ts +2 -2
  195. package/components/tabs/tabs/tabs.component.d.ts +2 -2
  196. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +3 -3
  197. package/components/tabs/tabs.directive.d.ts +2 -2
  198. package/components/tabs/underline/underline.component.d.ts +1 -1
  199. package/components/tag/tag.component.d.ts +2 -2
  200. package/components/text-area/text-area.component.d.ts +1 -1
  201. package/components/tiles/tile.component.d.ts +2 -2
  202. package/components/tiles/tiles.component.d.ts +3 -3
  203. package/components/toggle/toggle.component.d.ts +1 -1
  204. package/components/tree/components/tree-item/tree-item.component.d.ts +2 -2
  205. package/components/tree/misc/tree.constants.d.ts +1 -1
  206. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +2 -2
  207. package/directives/highlight/highlight.directive.d.ts +3 -3
  208. package/directives/lazy-loading/lazy-loading.directive.d.ts +2 -2
  209. package/directives/lazy-loading/lazy-loading.service.d.ts +1 -1
  210. package/directives/project-class/project-class.directive.d.ts +2 -2
  211. package/esm2015/abstract/abstract-native-select.js +4 -4
  212. package/esm2015/components/accordion/accordion-item/accordion-item-content.directive.js +3 -3
  213. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +4 -4
  214. package/esm2015/components/action/action.component.js +4 -4
  215. package/esm2015/components/calendar-range/calendar-range.component.js +3 -5
  216. package/esm2015/components/carousel/carousel-scroll.directive.js +5 -5
  217. package/esm2015/components/carousel/carousel.component.js +6 -6
  218. package/esm2015/components/carousel/carousel.directive.js +4 -4
  219. package/esm2015/components/checkbox/checkbox.component.js +3 -3
  220. package/esm2015/components/checkbox-block/checkbox-block.component.js +3 -3
  221. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +3 -3
  222. package/esm2015/components/combo-box/combo-box.component.js +3 -3
  223. package/esm2015/components/elastic-container/elastic-container.component.js +15 -3
  224. package/esm2015/components/elastic-container/elastic-container.directive.js +4 -4
  225. package/esm2015/components/files/file/file.component.js +6 -10
  226. package/esm2015/components/files/files.module.js +6 -3
  227. package/esm2015/components/filter/filter.component.js +5 -5
  228. package/esm2015/components/input/input.component.js +3 -3
  229. package/esm2015/components/input-copy/input-copy.component.js +5 -5
  230. package/esm2015/components/input-count/input-count.component.js +3 -3
  231. package/esm2015/components/input-date/input-date.component.js +6 -6
  232. package/esm2015/components/input-date-range/input-date-range.component.js +6 -6
  233. package/esm2015/components/input-date-time/input-date-time.component.js +4 -4
  234. package/esm2015/components/input-files/input-files.component.js +3 -3
  235. package/esm2015/components/input-files/input-files.directive.js +8 -8
  236. package/esm2015/components/input-inline/input-inline.component.js +3 -3
  237. package/esm2015/components/input-month/input-month.component.js +3 -3
  238. package/esm2015/components/input-month-range/input-month-range.component.js +3 -3
  239. package/esm2015/components/input-number/input-number.component.js +4 -4
  240. package/esm2015/components/input-password/input-password.component.js +3 -3
  241. package/esm2015/components/input-phone/input-phone.component.js +3 -3
  242. package/esm2015/components/input-phone-international/input-phone-international.component.js +4 -4
  243. package/esm2015/components/input-range/input-range.component.js +5 -5
  244. package/esm2015/components/input-slider/input-slider.component.js +3 -3
  245. package/esm2015/components/input-tag/input-tag.component.js +5 -6
  246. package/esm2015/components/input-time/input-time.component.js +3 -3
  247. package/esm2015/components/input-year/input-year.component.js +3 -3
  248. package/esm2015/components/items-with-more/items-with-more.service.js +4 -4
  249. package/esm2015/components/line-clamp/line-clamp.component.js +6 -6
  250. package/esm2015/components/multi-select/multi-select.component.js +3 -3
  251. package/esm2015/components/multi-select/native-multi-select/native-multi-select.js +2 -3
  252. package/esm2015/components/pagination/pagination.component.js +12 -12
  253. package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +4 -4
  254. package/esm2015/components/progress/progress-circle/progress-circle.component.js +6 -7
  255. package/esm2015/components/prompt/prompt.component.js +5 -4
  256. package/esm2015/components/prompt/prompt.module.js +5 -4
  257. package/esm2015/components/push/push-alert.component.js +2 -2
  258. package/esm2015/components/push/push-alert.directive.js +3 -3
  259. package/esm2015/components/push/push.service.js +1 -4
  260. package/esm2015/components/radio/radio.component.js +3 -3
  261. package/esm2015/components/radio-block/radio-block.component.js +3 -3
  262. package/esm2015/components/radio-labeled/radio-labeled.component.js +3 -3
  263. package/esm2015/components/radio-list/radio-list.component.js +5 -5
  264. package/esm2015/components/range/range-change.directive.js +11 -11
  265. package/esm2015/components/range/range.component.js +6 -6
  266. package/esm2015/components/rating/rating.component.js +3 -3
  267. package/esm2015/components/routable-dialog/routable-dialog.component.js +3 -3
  268. package/esm2015/components/select/select.component.js +3 -3
  269. package/esm2015/components/select-option/select-option.component.js +4 -4
  270. package/esm2015/components/slider/helpers/slider-key-steps.directive.js +7 -6
  271. package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -5
  272. package/esm2015/components/slider/helpers/slider-thumb-label/slider-thumb-label.component.js +5 -4
  273. package/esm2015/components/slider/slider.component.js +11 -11
  274. package/esm2015/components/stepper/step/step.component.js +4 -4
  275. package/esm2015/components/stepper/stepper.component.js +40 -20
  276. package/esm2015/components/tabs/tab/tab.component.js +5 -5
  277. package/esm2015/components/tabs/tabs/tabs.component.js +5 -5
  278. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +7 -7
  279. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +3 -3
  280. package/esm2015/components/tabs/tabs.directive.js +4 -4
  281. package/esm2015/components/tabs/underline/underline.component.js +5 -5
  282. package/esm2015/components/tag/tag.component.js +4 -4
  283. package/esm2015/components/text-area/text-area.component.js +3 -3
  284. package/esm2015/components/tiles/tile.component.js +4 -4
  285. package/esm2015/components/tiles/tiles.component.js +7 -7
  286. package/esm2015/components/toggle/toggle.component.js +3 -3
  287. package/esm2015/components/tree/components/tree-item/tree-item.component.js +4 -4
  288. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +6 -6
  289. package/esm2015/directives/highlight/highlight.directive.js +10 -10
  290. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +4 -4
  291. package/esm2015/directives/lazy-loading/lazy-loading.service.js +3 -3
  292. package/esm2015/directives/project-class/project-class.directive.js +4 -4
  293. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +3 -5
  294. package/esm2015/pipes/filter-by-input/filter-by-input-with.pipe.js +4 -1
  295. package/esm2015/pipes/filter-by-input/filter-by-input.pipe.js +9 -4
  296. package/esm2015/services/dialog-form.service.js +4 -4
  297. package/esm2015/tokens/date-inputs-value-transformers.js +2 -1
  298. package/esm2015/utils/mask/create-date-mask.js +3 -2
  299. package/esm2015/utils/mask/create-date-range-mask.js +3 -2
  300. package/fesm2015/taiga-ui-kit-abstract.js +3 -3
  301. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  302. package/fesm2015/taiga-ui-kit-components-accordion.js +5 -5
  303. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  304. package/fesm2015/taiga-ui-kit-components-action.js +3 -3
  305. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  306. package/fesm2015/taiga-ui-kit-components-calendar-range.js +2 -4
  307. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  308. package/fesm2015/taiga-ui-kit-components-carousel.js +12 -12
  309. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  310. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +2 -2
  311. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  312. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +2 -2
  313. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  314. package/fesm2015/taiga-ui-kit-components-checkbox.js +2 -2
  315. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  316. package/fesm2015/taiga-ui-kit-components-combo-box.js +2 -2
  317. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  318. package/fesm2015/taiga-ui-kit-components-elastic-container.js +17 -5
  319. package/fesm2015/taiga-ui-kit-components-elastic-container.js.map +1 -1
  320. package/fesm2015/taiga-ui-kit-components-files.js +9 -10
  321. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  322. package/fesm2015/taiga-ui-kit-components-filter.js +4 -4
  323. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  324. package/fesm2015/taiga-ui-kit-components-input-copy.js +4 -4
  325. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  326. package/fesm2015/taiga-ui-kit-components-input-count.js +2 -2
  327. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  328. package/fesm2015/taiga-ui-kit-components-input-date-range.js +5 -5
  329. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  330. package/fesm2015/taiga-ui-kit-components-input-date-time.js +3 -3
  331. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  332. package/fesm2015/taiga-ui-kit-components-input-date.js +5 -5
  333. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  334. package/fesm2015/taiga-ui-kit-components-input-files.js +9 -9
  335. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  336. package/fesm2015/taiga-ui-kit-components-input-inline.js +2 -2
  337. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  338. package/fesm2015/taiga-ui-kit-components-input-month-range.js +2 -2
  339. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  340. package/fesm2015/taiga-ui-kit-components-input-month.js +2 -2
  341. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  342. package/fesm2015/taiga-ui-kit-components-input-number.js +3 -3
  343. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  344. package/fesm2015/taiga-ui-kit-components-input-password.js +2 -2
  345. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  346. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +3 -3
  347. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  348. package/fesm2015/taiga-ui-kit-components-input-phone.js +2 -2
  349. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  350. package/fesm2015/taiga-ui-kit-components-input-range.js +4 -4
  351. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  352. package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
  353. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  354. package/fesm2015/taiga-ui-kit-components-input-tag.js +4 -5
  355. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  356. package/fesm2015/taiga-ui-kit-components-input-time.js +2 -2
  357. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  358. package/fesm2015/taiga-ui-kit-components-input-year.js +2 -2
  359. package/fesm2015/taiga-ui-kit-components-input-year.js.map +1 -1
  360. package/fesm2015/taiga-ui-kit-components-input.js +2 -2
  361. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  362. package/fesm2015/taiga-ui-kit-components-items-with-more.js +3 -3
  363. package/fesm2015/taiga-ui-kit-components-items-with-more.js.map +1 -1
  364. package/fesm2015/taiga-ui-kit-components-line-clamp.js +5 -5
  365. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  366. package/fesm2015/taiga-ui-kit-components-multi-select.js +3 -4
  367. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  368. package/fesm2015/taiga-ui-kit-components-pagination.js +11 -11
  369. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  370. package/fesm2015/taiga-ui-kit-components-progress.js +8 -9
  371. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  372. package/fesm2015/taiga-ui-kit-components-prompt.js +8 -7
  373. package/fesm2015/taiga-ui-kit-components-prompt.js.map +1 -1
  374. package/fesm2015/taiga-ui-kit-components-push.js +3 -6
  375. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
  376. package/fesm2015/taiga-ui-kit-components-radio-block.js +2 -2
  377. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  378. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +2 -2
  379. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  380. package/fesm2015/taiga-ui-kit-components-radio-list.js +4 -4
  381. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  382. package/fesm2015/taiga-ui-kit-components-radio.js +2 -2
  383. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  384. package/fesm2015/taiga-ui-kit-components-range.js +15 -15
  385. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  386. package/fesm2015/taiga-ui-kit-components-rating.js +2 -2
  387. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  388. package/fesm2015/taiga-ui-kit-components-routable-dialog.js +2 -2
  389. package/fesm2015/taiga-ui-kit-components-routable-dialog.js.map +1 -1
  390. package/fesm2015/taiga-ui-kit-components-select-option.js +3 -3
  391. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  392. package/fesm2015/taiga-ui-kit-components-select.js +2 -2
  393. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  394. package/fesm2015/taiga-ui-kit-components-slider.js +24 -22
  395. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  396. package/fesm2015/taiga-ui-kit-components-stepper.js +44 -27
  397. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  398. package/fesm2015/taiga-ui-kit-components-tabs.js +23 -23
  399. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  400. package/fesm2015/taiga-ui-kit-components-tag.js +3 -3
  401. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  402. package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
  403. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  404. package/fesm2015/taiga-ui-kit-components-tiles.js +9 -9
  405. package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
  406. package/fesm2015/taiga-ui-kit-components-toggle.js +2 -2
  407. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  408. package/fesm2015/taiga-ui-kit-components-tree.js +3 -3
  409. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +5 -5
  411. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -1
  412. package/fesm2015/taiga-ui-kit-directives-highlight.js +9 -9
  413. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  414. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +5 -5
  415. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  416. package/fesm2015/taiga-ui-kit-directives-project-class.js +3 -3
  417. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  418. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +2 -4
  419. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  420. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +11 -3
  421. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  422. package/fesm2015/taiga-ui-kit-services.js +3 -3
  423. package/fesm2015/taiga-ui-kit-services.js.map +1 -1
  424. package/fesm2015/taiga-ui-kit-tokens.js +1 -0
  425. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  426. package/fesm2015/taiga-ui-kit-utils-mask.js +4 -2
  427. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  428. package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +1 -1
  429. package/package.json +4 -4
  430. package/pipes/filter-by-input/filter-by-input-with.pipe.d.ts +3 -0
  431. package/pipes/filter-by-input/filter-by-input.pipe.d.ts +3 -1
  432. package/services/dialog-form.service.d.ts +2 -2
@@ -7,9 +7,9 @@ import { Observable, of, Subject } from 'rxjs';
7
7
  import { switchMap, filter, map, catchError, take, takeUntil } from 'rxjs/operators';
8
8
 
9
9
  class TuiLazyLoadingService extends Observable {
10
- constructor(changeDetectorRef, destroy$, intersections$) {
10
+ constructor(cdr, destroy$, intersections$) {
11
11
  super(subscriber => this.src$
12
- .pipe(switchMap(src => intersections$.pipe(filter(([{ isIntersecting }]) => isIntersecting), map(() => src), catchError(() => of(src)), tuiWatch(changeDetectorRef), take(1))), takeUntil(destroy$))
12
+ .pipe(switchMap(src => intersections$.pipe(filter(([{ isIntersecting }]) => isIntersecting), map(() => src), catchError(() => of(src)), tuiWatch(cdr), take(1))), takeUntil(destroy$))
13
13
  .subscribe(subscriber));
14
14
  this.src$ = new Subject();
15
15
  }
@@ -35,9 +35,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
35
35
  }] }]; } });
36
36
 
37
37
  class TuiLazyLoadingDirective {
38
- constructor(src$, elementRef) {
38
+ constructor(src$, el) {
39
39
  this.src$ = src$;
40
- this.elementRef = elementRef;
40
+ this.el = el;
41
41
  this.animation = 'tuiSkeletonVibe ease-in-out 1s infinite alternate';
42
42
  this.background = 'var(--tui-clear-hover)';
43
43
  this.src = null;
@@ -52,7 +52,7 @@ class TuiLazyLoadingDirective {
52
52
  this.src$.next(src);
53
53
  }
54
54
  get supported() {
55
- return 'loading' in this.elementRef.nativeElement;
55
+ return 'loading' in this.el.nativeElement;
56
56
  }
57
57
  onLoad() {
58
58
  this.background = '';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-lazy-loading.js","sources":["../../../projects/kit/directives/lazy-loading/lazy-loading.service.ts","../../../projects/kit/directives/lazy-loading/lazy-loading.directive.ts","../../../projects/kit/directives/lazy-loading/lazy-loading.module.ts","../../../projects/kit/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.ts"],"sourcesContent":["import {ChangeDetectorRef, Inject, Injectable, Self} from '@angular/core';\nimport {SafeResourceUrl} from '@angular/platform-browser';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiDestroyService, tuiWatch} from '@taiga-ui/cdk';\nimport {Observable, of, Subject} from 'rxjs';\nimport {catchError, filter, map, switchMap, take, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiLazyLoadingService extends Observable<SafeResourceUrl | string> {\n private readonly src$ = new Subject<SafeResourceUrl | string>();\n\n constructor(\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(IntersectionObserverService)\n intersections$: Observable<IntersectionObserverEntry[]>,\n ) {\n super(subscriber =>\n this.src$\n .pipe(\n switchMap(src =>\n intersections$.pipe(\n filter(([{isIntersecting}]) => isIntersecting),\n map(() => src),\n catchError(() => of(src)),\n tuiWatch(changeDetectorRef),\n take(1),\n ),\n ),\n takeUntil(destroy$),\n )\n .subscribe(subscriber),\n );\n }\n\n next(src: SafeResourceUrl | string): void {\n this.src$.next(src);\n }\n}\n","import {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {SafeResourceUrl} from '@angular/platform-browser';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\n\nimport {TuiLazyLoadingService} from './lazy-loading.service';\n\n@Directive({\n selector: 'img[loading=\"lazy\"]',\n providers: [TuiLazyLoadingService, IntersectionObserverService, TuiDestroyService],\n})\nexport class TuiLazyLoadingDirective {\n @Input('src')\n set srcSetter(src: SafeResourceUrl | string) {\n this.src = this.supported ? src : null;\n this.src$.next(src);\n }\n\n @HostBinding('style.animation')\n animation = 'tuiSkeletonVibe ease-in-out 1s infinite alternate';\n\n @HostBinding('style.background')\n background = 'var(--tui-clear-hover)';\n\n @HostBinding('attr.src')\n src: SafeResourceUrl | string | null = null;\n\n constructor(\n @Inject(TuiLazyLoadingService)\n private readonly src$: TuiLazyLoadingService,\n @Inject(ElementRef)\n private readonly elementRef: ElementRef<HTMLImageElement>,\n ) {\n if (!this.supported) {\n this.src$.subscribe(src => {\n this.src = src;\n });\n }\n }\n\n private get supported(): boolean {\n return 'loading' in this.elementRef.nativeElement;\n }\n\n @HostListener('load')\n onLoad(): void {\n this.background = '';\n this.animation = '';\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiLazyLoadingDirective} from './lazy-loading.directive';\n\n@NgModule({\n declarations: [TuiLazyLoadingDirective],\n exports: [TuiLazyLoadingDirective],\n})\nexport class TuiLazyLoadingModule {}\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-directives-lazy-loading.js","sources":["../../../projects/kit/directives/lazy-loading/lazy-loading.service.ts","../../../projects/kit/directives/lazy-loading/lazy-loading.directive.ts","../../../projects/kit/directives/lazy-loading/lazy-loading.module.ts","../../../projects/kit/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.ts"],"sourcesContent":["import {ChangeDetectorRef, Inject, Injectable, Self} from '@angular/core';\nimport {SafeResourceUrl} from '@angular/platform-browser';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiDestroyService, tuiWatch} from '@taiga-ui/cdk';\nimport {Observable, of, Subject} from 'rxjs';\nimport {catchError, filter, map, switchMap, take, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiLazyLoadingService extends Observable<SafeResourceUrl | string> {\n private readonly src$ = new Subject<SafeResourceUrl | string>();\n\n constructor(\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: Observable<void>,\n @Inject(IntersectionObserverService)\n intersections$: Observable<IntersectionObserverEntry[]>,\n ) {\n super(subscriber =>\n this.src$\n .pipe(\n switchMap(src =>\n intersections$.pipe(\n filter(([{isIntersecting}]) => isIntersecting),\n map(() => src),\n catchError(() => of(src)),\n tuiWatch(cdr),\n take(1),\n ),\n ),\n takeUntil(destroy$),\n )\n .subscribe(subscriber),\n );\n }\n\n next(src: SafeResourceUrl | string): void {\n this.src$.next(src);\n }\n}\n","import {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n} from '@angular/core';\nimport {SafeResourceUrl} from '@angular/platform-browser';\nimport {IntersectionObserverService} from '@ng-web-apis/intersection-observer';\nimport {TuiDestroyService} from '@taiga-ui/cdk';\n\nimport {TuiLazyLoadingService} from './lazy-loading.service';\n\n@Directive({\n selector: 'img[loading=\"lazy\"]',\n providers: [TuiLazyLoadingService, IntersectionObserverService, TuiDestroyService],\n})\nexport class TuiLazyLoadingDirective {\n @Input('src')\n set srcSetter(src: SafeResourceUrl | string) {\n this.src = this.supported ? src : null;\n this.src$.next(src);\n }\n\n @HostBinding('style.animation')\n animation = 'tuiSkeletonVibe ease-in-out 1s infinite alternate';\n\n @HostBinding('style.background')\n background = 'var(--tui-clear-hover)';\n\n @HostBinding('attr.src')\n src: SafeResourceUrl | string | null = null;\n\n constructor(\n @Inject(TuiLazyLoadingService)\n private readonly src$: TuiLazyLoadingService,\n @Inject(ElementRef)\n private readonly el: ElementRef<HTMLImageElement>,\n ) {\n if (!this.supported) {\n this.src$.subscribe(src => {\n this.src = src;\n });\n }\n }\n\n private get supported(): boolean {\n return 'loading' in this.el.nativeElement;\n }\n\n @HostListener('load')\n onLoad(): void {\n this.background = '';\n this.animation = '';\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiLazyLoadingDirective} from './lazy-loading.directive';\n\n@NgModule({\n declarations: [TuiLazyLoadingDirective],\n exports: [TuiLazyLoadingDirective],\n})\nexport class TuiLazyLoadingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -7,13 +7,13 @@ import { tuiDefaultProp } from '@taiga-ui/cdk';
7
7
  * A directive for projecting classes from nested children to host
8
8
  */
9
9
  class TuiProjectClassDirective {
10
- constructor(elementRef) {
11
- this.elementRef = elementRef;
10
+ constructor(el) {
11
+ this.el = el;
12
12
  this.classNames = [];
13
13
  }
14
14
  ngAfterViewChecked() {
15
15
  this.classNames.forEach(className => {
16
- const hostElement = this.elementRef.nativeElement;
16
+ const hostElement = this.el.nativeElement;
17
17
  hostElement.classList.toggle(className, !!hostElement.querySelector(`.${className}`));
18
18
  });
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-project-class.js","sources":["../../../projects/kit/directives/project-class/project-class.directive.ts","../../../projects/kit/directives/project-class/project-class.module.ts","../../../projects/kit/directives/project-class/taiga-ui-kit-directives-project-class.ts"],"sourcesContent":["import {AfterViewChecked, Directive, ElementRef, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n/**\n * A directive for projecting classes from nested children to host\n */\n@Directive({\n selector: '[tuiProjectClass]',\n})\nexport class TuiProjectClassDirective implements AfterViewChecked {\n @Input('tuiProjectClass')\n @tuiDefaultProp()\n classNames: readonly string[] = [];\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n ngAfterViewChecked(): void {\n this.classNames.forEach(className => {\n const hostElement = this.elementRef.nativeElement;\n\n hostElement.classList.toggle(\n className,\n !!hostElement.querySelector(`.${className}`),\n );\n });\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiProjectClassDirective} from './project-class.directive';\n\n@NgModule({\n declarations: [TuiProjectClassDirective],\n exports: [TuiProjectClassDirective],\n})\nexport class TuiProjectClassModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGA;;AAEG;MAIU,wBAAwB,CAAA;AAKjC,IAAA,WAAA,CACyC,UAAmC,EAAA;QAAnC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;QAH5E,IAAU,CAAA,UAAA,GAAsB,EAAE,CAAC;KAI/B;IAEJ,kBAAkB,GAAA;AACd,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,IAAG;AAChC,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;AAElD,YAAA,WAAW,CAAC,SAAS,CAAC,MAAM,CACxB,SAAS,EACT,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA,CAAA,EAAI,SAAS,CAAE,CAAA,CAAC,CAC/C,CAAC;AACN,SAAC,CAAC,CAAC;KACN;;AAlBQ,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,kBAMrB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GANb,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAGjC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACkB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAH1B,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA,CAAA;;0BAOQ,MAAM;2BAAC,UAAU,CAAA;4CAHtB,UAAU,EAAA,CAAA;sBAFT,KAAK;uBAAC,iBAAiB,CAAA;;;MCFf,qBAAqB,CAAA;;mHAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oHAArB,qBAAqB,EAAA,YAAA,EAAA,CAHf,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAC7B,wBAAwB,CAAA,EAAA,CAAA,CAAA;oHAEzB,qBAAqB,EAAA,CAAA,CAAA;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,YAAY,EAAE,CAAC,wBAAwB,CAAC;oBACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;AACtC,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-directives-project-class.js","sources":["../../../projects/kit/directives/project-class/project-class.directive.ts","../../../projects/kit/directives/project-class/project-class.module.ts","../../../projects/kit/directives/project-class/taiga-ui-kit-directives-project-class.ts"],"sourcesContent":["import {AfterViewChecked, Directive, ElementRef, Inject, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\n\n/**\n * A directive for projecting classes from nested children to host\n */\n@Directive({\n selector: '[tuiProjectClass]',\n})\nexport class TuiProjectClassDirective implements AfterViewChecked {\n @Input('tuiProjectClass')\n @tuiDefaultProp()\n classNames: readonly string[] = [];\n\n constructor(@Inject(ElementRef) private readonly el: ElementRef<HTMLElement>) {}\n\n ngAfterViewChecked(): void {\n this.classNames.forEach(className => {\n const hostElement = this.el.nativeElement;\n\n hostElement.classList.toggle(\n className,\n !!hostElement.querySelector(`.${className}`),\n );\n });\n }\n}\n","import {NgModule} from '@angular/core';\n\nimport {TuiProjectClassDirective} from './project-class.directive';\n\n@NgModule({\n declarations: [TuiProjectClassDirective],\n exports: [TuiProjectClassDirective],\n})\nexport class TuiProjectClassModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGA;;AAEG;MAIU,wBAAwB,CAAA;AAKjC,IAAA,WAAA,CAAiD,EAA2B,EAAA;QAA3B,IAAE,CAAA,EAAA,GAAF,EAAE,CAAyB;QAF5E,IAAU,CAAA,UAAA,GAAsB,EAAE,CAAC;KAE6C;IAEhF,kBAAkB,GAAA;AACd,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,IAAG;AAChC,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AAE1C,YAAA,WAAW,CAAC,SAAS,CAAC,MAAM,CACxB,SAAS,EACT,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA,CAAA,EAAI,SAAS,CAAE,CAAA,CAAC,CAC/C,CAAC;AACN,SAAC,CAAC,CAAC;KACN;;AAhBQ,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,kBAKb,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GALrB,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAGjC,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AACkB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,KAAA,CAAA,CAAA,CAAA;4FAH1B,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA,CAAA;;0BAMgB,MAAM;2BAAC,UAAU,CAAA;4CAF9B,UAAU,EAAA,CAAA;sBAFT,KAAK;uBAAC,iBAAiB,CAAA;;;MCFf,qBAAqB,CAAA;;mHAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oHAArB,qBAAqB,EAAA,YAAA,EAAA,CAHf,wBAAwB,CAAA,EAAA,OAAA,EAAA,CAC7B,wBAAwB,CAAA,EAAA,CAAA,CAAA;oHAEzB,qBAAqB,EAAA,CAAA,CAAA;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,YAAY,EAAE,CAAC,wBAAwB,CAAC;oBACxC,OAAO,EAAE,CAAC,wBAAwB,CAAC;AACtC,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
@@ -13,7 +13,7 @@ import * as i3 from 'rxjs';
13
13
  * @internal
14
14
  */
15
15
  class TuiPrimitiveCalendarRangeComponent {
16
- constructor(valueChanges, changeDetectorRef, destroy$) {
16
+ constructor(valueChanges, cdr, destroy$) {
17
17
  this.disabledItemHandler = ALWAYS_FALSE_HANDLER;
18
18
  this.markerHandler = TUI_DEFAULT_MARKER_HANDLER;
19
19
  this.defaultViewedMonthFirst = TuiMonth.currentLocal();
@@ -29,9 +29,7 @@ class TuiPrimitiveCalendarRangeComponent {
29
29
  if (!valueChanges) {
30
30
  return;
31
31
  }
32
- valueChanges
33
- .pipe(tuiWatch(changeDetectorRef), takeUntil(destroy$))
34
- .subscribe(value => {
32
+ valueChanges.pipe(tuiWatch(cdr), takeUntil(destroy$)).subscribe(value => {
35
33
  this.value = value;
36
34
  this.updateViewedMonths();
37
35
  });
@@ -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 Self,\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 @Self() @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 this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n this.userViewedMonthFirst = this.userViewedMonthSecond.append({\n month: -1,\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\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\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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"}
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 Self,\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) cdr: ChangeDetectorRef,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n if (!valueChanges) {\n return;\n }\n\n valueChanges.pipe(tuiWatch(cdr), takeUntil(destroy$)).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 this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\n }\n\n onSectionSecondViewedMonth(month: TuiMonth): void {\n this.userViewedMonthSecond = month;\n\n this.userViewedMonthFirst = this.userViewedMonthSecond.append({\n month: -1,\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\n this.userViewedMonthSecond = this.userViewedMonthFirst.append({month: 1});\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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"}
@@ -3,6 +3,7 @@ import { tuiIsPresent, tuiPure, TUI_DEFAULT_STRINGIFY, TUI_DEFAULT_MATCHER, TUI_
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';
6
+ import { TUI_DATA_LIST_HOST } from '@taiga-ui/core';
6
7
 
7
8
  class AbstractTuiFilterByInput {
8
9
  get query() {
@@ -39,15 +40,16 @@ __decorate([
39
40
  ], AbstractTuiFilterByInput.prototype, "filter", null);
40
41
 
41
42
  class TuiFilterByInputPipe extends AbstractTuiFilterByInput {
42
- constructor(accessor) {
43
+ constructor(accessor, host) {
43
44
  super();
44
45
  this.accessor = accessor;
46
+ this.host = host;
45
47
  }
46
48
  transform(items, matcher = TUI_DEFAULT_MATCHER) {
47
- return this.filter(items, matcher, TUI_DEFAULT_STRINGIFY, this.query);
49
+ return this.filter(items, matcher, this.host.stringify || TUI_DEFAULT_STRINGIFY, this.query);
48
50
  }
49
51
  }
50
- TuiFilterByInputPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }], target: i0.ɵɵFactoryTarget.Pipe });
52
+ TuiFilterByInputPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, deps: [{ token: TUI_FOCUSABLE_ITEM_ACCESSOR }, { token: TUI_DATA_LIST_HOST }], target: i0.ɵɵFactoryTarget.Pipe });
51
53
  TuiFilterByInputPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, name: "tuiFilterByInput", pure: false });
52
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiFilterByInputPipe, decorators: [{
53
55
  type: Pipe,
@@ -58,8 +60,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
58
60
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
59
61
  type: Inject,
60
62
  args: [TUI_FOCUSABLE_ITEM_ACCESSOR]
63
+ }] }, { type: undefined, decorators: [{
64
+ type: Inject,
65
+ args: [TUI_DATA_LIST_HOST]
61
66
  }] }]; } });
62
67
 
68
+ /**
69
+ * @deprecated Use {@link TuiFilterByInputPipe} instead
70
+ */
63
71
  class TuiFilterByInputWithPipe extends AbstractTuiFilterByInput {
64
72
  constructor(accessor) {
65
73
  super();
@@ -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":["import {\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: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> | 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: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): ReadonlyArray<readonly T[]> | 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: ReadonlyArray<readonly T[]> | readonly T[] | null,\n stringify: TuiStringHandler<T>,\n ): ReadonlyArray<readonly T[]> | 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":";;;;;;MAesB,wBAAwB,CAAA;AAG1C,IAAA,IAAc,KAAK,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,sBAAsB;cACpC,IAAI,CAAC,QAAQ,CAAC,sBAA2C,CAAC,KAAK,IAAI,CAAE,CAAA;cACtE,EAAE,CAAC;KACZ;AAGS,IAAA,MAAM,CACZ,KAAwD,EACxD,OAA4B,EAC5B,SAA8B,EAC9B,KAAa,EAAA;QAEb,IAAI,CAAC,KAAK,EAAE;AACR,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QAED,OAAO,SAAS,CAAC,KAAK,CAAC;AACnB,cAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC;AACnD,cAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;KACzD;AAEO,IAAA,UAAU,CACd,KAAmB,EACnB,OAA4B,EAC5B,SAA8B,EAC9B,KAAa,EAAA;AAEb,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAErD,OAAO,YAAY,CAAC,KAAK,CAAC;AACtB,cAAE,KAAK;AACP,cAAE,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;KAC/D;AAEO,IAAA,QAAQ,CACZ,KAAkC,EAClC,OAA4B,EAC5B,SAA8B,EAC9B,KAAa,EAAA;QAEb,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,IACzB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CACtD,CAAC;QAEF,OAAO,YAAY,CAAC,KAAK,CAAC;AACtB,cAAE,KAAK;cACL,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;KAC/E;AAEO,IAAA,QAAQ,CACZ,KAAmB,EACnB,SAA8B,EAC9B,KAAa,EAAA;QAEb,OAAO,KAAK,CAAC,IAAI,CACb,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,KAAK,KAAK,CAAC,iBAAiB,EAAE,CAC5E,CAAC;KACL;AACJ,CAAA;AApDG,UAAA,CAAA;IADC,OAAO;AAcP,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,CAAA;;ACvBC,MAAO,oBACT,SAAQ,wBAAwB,CAAA;AAGhC,IAAA,WAAA,CAEuB,QAAqC,EAAA;AAExD,QAAA,KAAK,EAAE,CAAC;QAFW,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAA6B;KAG3D;AAGD,IAAA,SAAS,CACL,KAAwD,EACxD,OAAA,GAA+B,mBAAmB,EAAA;AAElD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KACzE;;AAjBQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAKjB,2BAA2B,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;gHAL9B,oBAAoB,EAAA,IAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,CAAkB,gBAAA,CAAA;AACxB,oBAAA,IAAI,EAAE,KAAK;AACd,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,2BAA2B,CAAA;;;ACNrC,MAAO,wBACT,SAAQ,wBAAwB,CAAA;AAGhC,IAAA,WAAA,CAEuB,QAAqC,EAAA;AAExD,QAAA,KAAK,EAAE,CAAC;QAFW,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAA6B;KAG3D;IAGD,SAAS,CACL,KAAwD,EACxD,SAA8B,EAAA;AAE9B,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KACzE;;AAjBQ,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,kBAKrB,2BAA2B,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;oHAL9B,wBAAwB,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,CAAsB,oBAAA,CAAA;AAC5B,oBAAA,IAAI,EAAE,KAAK;AACd,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,2BAA2B,CAAA;;;MCV9B,0BAA0B,CAAA;;wHAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,iBAHpB,oBAAoB,EAAE,wBAAwB,CACnD,EAAA,OAAA,EAAA,CAAA,oBAAoB,EAAE,wBAAwB,CAAA,EAAA,CAAA,CAAA;yHAE/C,0BAA0B,EAAA,CAAA,CAAA;4FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;AAC9D,oBAAA,OAAO,EAAE,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;AAC5D,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
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":["import {\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: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T>,\n stringify: TuiStringHandler<T>,\n query: string,\n ): ReadonlyArray<readonly T[]> | 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';\nimport {TUI_DATA_LIST_HOST, TuiDataListHost} from '@taiga-ui/core';\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 @Inject(TUI_DATA_LIST_HOST)\n private readonly host: TuiDataListHost<unknown>,\n ) {\n super();\n }\n\n transform<T>(items: T, matcher?: TuiStringMatcher<ArrayElement<T>>): T;\n transform<T>(\n items: ReadonlyArray<readonly T[]> | readonly T[] | null,\n matcher: TuiStringMatcher<T> = TUI_DEFAULT_MATCHER,\n ): ReadonlyArray<readonly T[]> | readonly T[] | null {\n return this.filter(\n items,\n matcher,\n this.host.stringify || TUI_DEFAULT_STRINGIFY,\n this.query,\n );\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/**\n * @deprecated Use {@link TuiFilterByInputPipe} instead\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: ReadonlyArray<readonly T[]> | readonly T[] | null,\n stringify: TuiStringHandler<T>,\n ): ReadonlyArray<readonly T[]> | 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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"}
@@ -6,8 +6,8 @@ import { TUI_PROMPT } from '@taiga-ui/kit/components';
6
6
  import { defer, of } from 'rxjs';
7
7
 
8
8
  class TuiDialogFormService {
9
- constructor(dialogService) {
10
- this.dialogService = dialogService;
9
+ constructor(dialogs) {
10
+ this.dialogs = dialogs;
11
11
  this.dirty = false;
12
12
  }
13
13
  markAsDirty() {
@@ -18,7 +18,7 @@ class TuiDialogFormService {
18
18
  }
19
19
  withPrompt(options) {
20
20
  return defer(() => this.dirty
21
- ? this.dialogService.open(TUI_PROMPT, Object.assign({ size: `s` }, options))
21
+ ? this.dialogs.open(TUI_PROMPT, Object.assign({ size: `s` }, options))
22
22
  : of(true));
23
23
  }
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-services.js","sources":["../../../projects/kit/services/dialog-form.service.ts","../../../projects/kit/services/taiga-ui-kit-services.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {TuiDialogOptions, TuiDialogService} from '@taiga-ui/core';\nimport {TUI_PROMPT, TuiPromptData} from '@taiga-ui/kit/components';\nimport {defer, Observable, of} from 'rxjs';\n\n@Injectable()\nexport class TuiDialogFormService {\n private dirty = false;\n\n constructor(\n @Inject(TuiDialogService) private readonly dialogService: TuiDialogService,\n ) {}\n\n markAsDirty(): void {\n this.dirty = true;\n }\n\n markAsPristine(): void {\n this.dirty = false;\n }\n\n withPrompt(options: Partial<TuiDialogOptions<TuiPromptData>>): Observable<boolean> {\n return defer(() =>\n this.dirty\n ? this.dialogService.open<boolean>(TUI_PROMPT, {\n size: `s`,\n ...options,\n })\n : of(true),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAMa,oBAAoB,CAAA;AAG7B,IAAA,WAAA,CAC+C,aAA+B,EAAA;QAA/B,IAAa,CAAA,aAAA,GAAb,aAAa,CAAkB;QAHtE,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;KAIlB;IAEJ,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACrB;IAED,cAAc,GAAA;AACV,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACtB;AAED,IAAA,UAAU,CAAC,OAAiD,EAAA;AACxD,QAAA,OAAO,KAAK,CAAC,MACT,IAAI,CAAC,KAAK;AACN,cAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAU,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EACvC,IAAI,EAAE,CAAG,CAAA,CAAA,EAAA,EACN,OAAO,CACZ,CAAA;AACJ,cAAE,EAAE,CAAC,IAAI,CAAC,CACjB,CAAC;KACL;;AAxBQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAIjB,gBAAgB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sHAJnB,oBAAoB,EAAA,CAAA,CAAA;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;;0BAKF,MAAM;2BAAC,gBAAgB,CAAA;;;ACVhC;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-services.js","sources":["../../../projects/kit/services/dialog-form.service.ts","../../../projects/kit/services/taiga-ui-kit-services.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {TuiDialogOptions, TuiDialogService} from '@taiga-ui/core';\nimport {TUI_PROMPT, TuiPromptData} from '@taiga-ui/kit/components';\nimport {defer, Observable, of} from 'rxjs';\n\n@Injectable()\nexport class TuiDialogFormService {\n private dirty = false;\n\n constructor(@Inject(TuiDialogService) private readonly dialogs: TuiDialogService) {}\n\n markAsDirty(): void {\n this.dirty = true;\n }\n\n markAsPristine(): void {\n this.dirty = false;\n }\n\n withPrompt(options: Partial<TuiDialogOptions<TuiPromptData>>): Observable<boolean> {\n return defer(() =>\n this.dirty\n ? this.dialogs.open<boolean>(TUI_PROMPT, {\n size: `s`,\n ...options,\n })\n : of(true),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAMa,oBAAoB,CAAA;AAG7B,IAAA,WAAA,CAAuD,OAAyB,EAAA;QAAzB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAkB;QAFxE,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;KAE8D;IAEpF,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACrB;IAED,cAAc,GAAA;AACV,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACtB;AAED,IAAA,UAAU,CAAC,OAAiD,EAAA;AACxD,QAAA,OAAO,KAAK,CAAC,MACT,IAAI,CAAC,KAAK;AACN,cAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAU,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EACjC,IAAI,EAAE,CAAG,CAAA,CAAA,EAAA,EACN,OAAO,CACZ,CAAA;AACJ,cAAE,EAAE,CAAC,IAAI,CAAC,CACjB,CAAC;KACL;;AAtBQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAGT,gBAAgB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sHAH3B,oBAAoB,EAAA,CAAA,CAAA;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;;0BAIM,MAAM;2BAAC,gBAAgB,CAAA;;;ACTxC;;AAEG;;;;"}
@@ -19,6 +19,7 @@ function tuiDateStreamWithTransformer(transformer) {
19
19
  };
20
20
  }
21
21
 
22
+ // TODO: Refactor to use `AbstractTuiValueTransformer` and add ability to provide it for all controls
22
23
  /**
23
24
  * Control value transformer of TuiDay to custom value format for InputDate* components
24
25
  */
@@ -1 +1 @@
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/input-date-options.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\n/**\n * Stream that emits calendar data change\n */\nexport const TUI_CALENDAR_DATE_STREAM = new InjectionToken<\n Observable<TuiDay | TuiDayRange | null>\n>(`[TUI_CALENDAR_DATE_STREAM]`);\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\n/**\n * Control value transformer of TuiDay to custom value format for InputDate* components\n */\nexport const TUI_DATE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDay | null>\n>(`[TUI_DATE_VALUE_TRANSFORMER]`);\n\n/**\n * Control value transformer for InputDateRange component\n */\nexport const TUI_DATE_RANGE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDayRange | null>\n>(`[TUI_DATE_RANGE_VALUE_TRANSFORMER]`);\n\n/**\n * Control value transformer for InputDateTime component\n */\nexport const TUI_DATE_TIME_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<[TuiDay | null, TuiTime | null]>\n>(`[TUI_DATE_TIME_VALUE_TRANSFORMER]`);\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_PROMPT_WORDS = new InjectionToken(`[TUI_PROMPT_WORDS]`, {\n factory: tuiExtractI18n(`prompt`),\n});\n\nexport const TUI_CANCEL_WORD = new InjectionToken(`[TUI_CANCEL_WORD]`, {\n factory: tuiExtractI18n(`cancel`),\n});\n\nexport const TUI_DONE_WORD = new InjectionToken(`[TUI_DONE_WORD]`, {\n factory: tuiExtractI18n(`done`),\n});\n\nexport const TUI_MORE_WORD = new InjectionToken(`[TUI_MORE_WORD]`, {\n factory: tuiExtractI18n(`more`),\n});\n\nexport const TUI_HIDE_TEXT = new InjectionToken(`[TUI_HIDE_TEXT]`, {\n factory: tuiExtractI18n(`hide`),\n});\n\nexport const TUI_SHOW_ALL_TEXT = new InjectionToken(`[TUI_SHOW_ALL_TEXT]`, {\n factory: tuiExtractI18n(`showAll`),\n});\n\nexport const TUI_OTHER_DATE_TEXT = new InjectionToken(`[TUI_OTHER_DATE_TEXT]`, {\n factory: tuiExtractI18n(`otherDate`),\n});\n\nexport const TUI_CHOOSE_DAY_OR_RANGE_TEXTS = new InjectionToken(\n `[TUI_CHOOSE_DAY_OR_RANGE_TEXTS]`,\n {\n factory: tuiExtractI18n(`mobileCalendarTexts`),\n },\n);\n\nexport const TUI_FROM_TO_TEXTS = new InjectionToken(`[TUI_FROM_TO_TEXTS]`, {\n factory: tuiExtractI18n(`range`),\n});\n\nexport const TUI_PLUS_MINUS_TEXTS = new InjectionToken(`[TUI_PLUS_MINUS_TEXTS]`, {\n factory: tuiExtractI18n(`countTexts`),\n});\n\nexport const TUI_TIME_TEXTS = new InjectionToken(`[TUI_TIME_TEXTS]`, {\n factory: tuiExtractI18n(`time`),\n});\n\nexport const TUI_DATE_TEXTS = new InjectionToken<Observable<Record<TuiDateMode, string>>>(\n `[TUI_DATE_TEXTS]`,\n {\n factory: tuiExtractI18n(`dateTexts`),\n },\n);\n\nexport const TUI_DIGITAL_INFORMATION_UNITS = new InjectionToken(\n `[TUI_DIGITAL_INFORMATION_UNITS]`,\n {\n factory: tuiExtractI18n(`digitalInformationUnits`),\n },\n);\n\nexport const TUI_COPY_TEXTS = new InjectionToken(`[TUI_COPY_TEXTS]`, {\n factory: tuiExtractI18n(`copyTexts`),\n});\n\nexport const TUI_PASSWORD_TEXTS = new InjectionToken(`[TUI_PASSWORD_TEXTS]`, {\n factory: tuiExtractI18n(`passwordTexts`),\n});\n\nexport const TUI_CALENDAR_MONTHS = new InjectionToken(`[TUI_CALENDAR_MONTHS]`, {\n factory: tuiExtractI18n(`shortCalendarMonths`),\n});\n\nexport const TUI_FILE_TEXTS = new InjectionToken(`[TUI_FILE_TEXTS]`, {\n factory: tuiExtractI18n(`fileTexts`),\n});\n\nexport const TUI_PAGINATION_TEXTS = new InjectionToken(`[TUI_PAGINATION_TEXTS]`, {\n factory: tuiExtractI18n(`pagination`),\n});\n\nexport const TUI_INPUT_FILE_TEXTS = new InjectionToken(`[TUI_INPUT_FILE_TEXTS]`, {\n factory: tuiExtractI18n(`inputFileTexts`),\n});\n\nexport const TUI_MULTI_SELECT_TEXTS = new InjectionToken(`[TUI_MULTI_SELECT_TEXTS]`, {\n factory: tuiExtractI18n(`multiSelectTexts`),\n});\n\nexport const TUI_COUNTRIES = new InjectionToken<\n Observable<Record<TuiCountryIsoCode, string>>\n>(`[TUI_COUNTRIES]`, {\n factory: tuiExtractI18n(`countries`),\n});\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TUI_FIRST_DAY, TUI_LAST_DAY, TuiContextWithImplicit, TuiDay} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputDateOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly min: TuiDay;\n readonly max: TuiDay;\n readonly nativePicker: boolean;\n}\n\nexport const TUI_INPUT_DATE_DEFAULT_OPTIONS: TuiInputDateOptions = {\n icon: ({$implicit}) =>\n $implicit === `s` ? `tuiIconCalendar` : `tuiIconCalendarLarge`,\n min: TUI_FIRST_DAY,\n max: TUI_LAST_DAY,\n nativePicker: false,\n};\n\n/**\n * Default parameters for InputDate component\n */\nexport const TUI_INPUT_DATE_OPTIONS = new InjectionToken<TuiInputDateOptions>(\n `[TUI_INPUT_DATE_OPTIONS]`,\n {\n factory: () => TUI_INPUT_DATE_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputDateOptionsProvider: (\n options: Partial<TuiInputDateOptions>,\n) => ValueProvider = (options: Partial<TuiInputDateOptions>) => ({\n provide: TUI_INPUT_DATE_OPTIONS,\n useValue: {...TUI_INPUT_DATE_DEFAULT_OPTIONS, ...options},\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\n/**\n * Default items handlers for components\n */\nexport const TUI_ITEMS_HANDLERS = new InjectionToken<TuiItemsHandlers<unknown>>(\n `[TUI_ITEMS_HANDLERS]`,\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\n/**\n * A component for mobile data picker\n */\nexport const TUI_MOBILE_CALENDAR = new InjectionToken<Type<unknown>>(\n `[TUI_MOBILE_CALENDAR]`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\n/**\n * A function to get localized formatted month\n */\nexport const TUI_MONTH_FORMATTER = new InjectionToken<\n TuiHandler<TuiMonth | null, Observable<string>>\n>(`[TUI_MONTH_FORMATTER]`);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Margin between tabs\n */\nexport const TUI_TAB_MARGIN = new InjectionToken<number>(`[TUI_TAB_MARGIN]`, {\n factory: () => 24,\n});\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n/**\n * Validation errors\n */\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, Observable<PolymorpheusContent> | PolymorpheusContent>\n>(`[TUI_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/input-date-options.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\n/**\n * Stream that emits calendar data change\n */\nexport const TUI_CALENDAR_DATE_STREAM = new InjectionToken<\n Observable<TuiDay | TuiDayRange | null>\n>(`[TUI_CALENDAR_DATE_STREAM]`);\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\n// TODO: Refactor to use `AbstractTuiValueTransformer` and add ability to provide it for all controls\n\n/**\n * Control value transformer of TuiDay to custom value format for InputDate* components\n */\nexport const TUI_DATE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDay | null>\n>(`[TUI_DATE_VALUE_TRANSFORMER]`);\n\n/**\n * Control value transformer for InputDateRange component\n */\nexport const TUI_DATE_RANGE_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<TuiDayRange | null>\n>(`[TUI_DATE_RANGE_VALUE_TRANSFORMER]`);\n\n/**\n * Control value transformer for InputDateTime component\n */\nexport const TUI_DATE_TIME_VALUE_TRANSFORMER = new InjectionToken<\n TuiControlValueTransformer<[TuiDay | null, TuiTime | null]>\n>(`[TUI_DATE_TIME_VALUE_TRANSFORMER]`);\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_PROMPT_WORDS = new InjectionToken(`[TUI_PROMPT_WORDS]`, {\n factory: tuiExtractI18n(`prompt`),\n});\n\nexport const TUI_CANCEL_WORD = new InjectionToken(`[TUI_CANCEL_WORD]`, {\n factory: tuiExtractI18n(`cancel`),\n});\n\nexport const TUI_DONE_WORD = new InjectionToken(`[TUI_DONE_WORD]`, {\n factory: tuiExtractI18n(`done`),\n});\n\nexport const TUI_MORE_WORD = new InjectionToken(`[TUI_MORE_WORD]`, {\n factory: tuiExtractI18n(`more`),\n});\n\nexport const TUI_HIDE_TEXT = new InjectionToken(`[TUI_HIDE_TEXT]`, {\n factory: tuiExtractI18n(`hide`),\n});\n\nexport const TUI_SHOW_ALL_TEXT = new InjectionToken(`[TUI_SHOW_ALL_TEXT]`, {\n factory: tuiExtractI18n(`showAll`),\n});\n\nexport const TUI_OTHER_DATE_TEXT = new InjectionToken(`[TUI_OTHER_DATE_TEXT]`, {\n factory: tuiExtractI18n(`otherDate`),\n});\n\nexport const TUI_CHOOSE_DAY_OR_RANGE_TEXTS = new InjectionToken(\n `[TUI_CHOOSE_DAY_OR_RANGE_TEXTS]`,\n {\n factory: tuiExtractI18n(`mobileCalendarTexts`),\n },\n);\n\nexport const TUI_FROM_TO_TEXTS = new InjectionToken(`[TUI_FROM_TO_TEXTS]`, {\n factory: tuiExtractI18n(`range`),\n});\n\nexport const TUI_PLUS_MINUS_TEXTS = new InjectionToken(`[TUI_PLUS_MINUS_TEXTS]`, {\n factory: tuiExtractI18n(`countTexts`),\n});\n\nexport const TUI_TIME_TEXTS = new InjectionToken(`[TUI_TIME_TEXTS]`, {\n factory: tuiExtractI18n(`time`),\n});\n\nexport const TUI_DATE_TEXTS = new InjectionToken<Observable<Record<TuiDateMode, string>>>(\n `[TUI_DATE_TEXTS]`,\n {\n factory: tuiExtractI18n(`dateTexts`),\n },\n);\n\nexport const TUI_DIGITAL_INFORMATION_UNITS = new InjectionToken(\n `[TUI_DIGITAL_INFORMATION_UNITS]`,\n {\n factory: tuiExtractI18n(`digitalInformationUnits`),\n },\n);\n\nexport const TUI_COPY_TEXTS = new InjectionToken(`[TUI_COPY_TEXTS]`, {\n factory: tuiExtractI18n(`copyTexts`),\n});\n\nexport const TUI_PASSWORD_TEXTS = new InjectionToken(`[TUI_PASSWORD_TEXTS]`, {\n factory: tuiExtractI18n(`passwordTexts`),\n});\n\nexport const TUI_CALENDAR_MONTHS = new InjectionToken(`[TUI_CALENDAR_MONTHS]`, {\n factory: tuiExtractI18n(`shortCalendarMonths`),\n});\n\nexport const TUI_FILE_TEXTS = new InjectionToken(`[TUI_FILE_TEXTS]`, {\n factory: tuiExtractI18n(`fileTexts`),\n});\n\nexport const TUI_PAGINATION_TEXTS = new InjectionToken(`[TUI_PAGINATION_TEXTS]`, {\n factory: tuiExtractI18n(`pagination`),\n});\n\nexport const TUI_INPUT_FILE_TEXTS = new InjectionToken(`[TUI_INPUT_FILE_TEXTS]`, {\n factory: tuiExtractI18n(`inputFileTexts`),\n});\n\nexport const TUI_MULTI_SELECT_TEXTS = new InjectionToken(`[TUI_MULTI_SELECT_TEXTS]`, {\n factory: tuiExtractI18n(`multiSelectTexts`),\n});\n\nexport const TUI_COUNTRIES = new InjectionToken<\n Observable<Record<TuiCountryIsoCode, string>>\n>(`[TUI_COUNTRIES]`, {\n factory: tuiExtractI18n(`countries`),\n});\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TUI_FIRST_DAY, TUI_LAST_DAY, TuiContextWithImplicit, TuiDay} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputDateOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly min: TuiDay;\n readonly max: TuiDay;\n readonly nativePicker: boolean;\n}\n\nexport const TUI_INPUT_DATE_DEFAULT_OPTIONS: TuiInputDateOptions = {\n icon: ({$implicit}) =>\n $implicit === `s` ? `tuiIconCalendar` : `tuiIconCalendarLarge`,\n min: TUI_FIRST_DAY,\n max: TUI_LAST_DAY,\n nativePicker: false,\n};\n\n/**\n * Default parameters for InputDate component\n */\nexport const TUI_INPUT_DATE_OPTIONS = new InjectionToken<TuiInputDateOptions>(\n `[TUI_INPUT_DATE_OPTIONS]`,\n {\n factory: () => TUI_INPUT_DATE_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputDateOptionsProvider: (\n options: Partial<TuiInputDateOptions>,\n) => ValueProvider = (options: Partial<TuiInputDateOptions>) => ({\n provide: TUI_INPUT_DATE_OPTIONS,\n useValue: {...TUI_INPUT_DATE_DEFAULT_OPTIONS, ...options},\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\n/**\n * Default items handlers for components\n */\nexport const TUI_ITEMS_HANDLERS = new InjectionToken<TuiItemsHandlers<unknown>>(\n `[TUI_ITEMS_HANDLERS]`,\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\n/**\n * A component for mobile data picker\n */\nexport const TUI_MOBILE_CALENDAR = new InjectionToken<Type<unknown>>(\n `[TUI_MOBILE_CALENDAR]`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiHandler, TuiMonth} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\n/**\n * A function to get localized formatted month\n */\nexport const TUI_MONTH_FORMATTER = new InjectionToken<\n TuiHandler<TuiMonth | null, Observable<string>>\n>(`[TUI_MONTH_FORMATTER]`);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Margin between tabs\n */\nexport const TUI_TAB_MARGIN = new InjectionToken<number>(`[TUI_TAB_MARGIN]`, {\n factory: () => 24,\n});\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\n/**\n * Validation errors\n */\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<\n Record<string, Observable<PolymorpheusContent> | PolymorpheusContent>\n>(`[TUI_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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"}
@@ -115,7 +115,8 @@ function tuiCreateAutoCorrectedDateTimePipe(configs) {
115
115
  const TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);
116
116
  const FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);
117
117
  function tuiCreateDateMask(mode, separator) {
118
- tuiAssert.assert(separator.length === 1, `Separator should consist of only 1 symbol`);
118
+ ngDevMode &&
119
+ tuiAssert.assert(separator.length === 1, `Separator should consist of only 1 symbol`);
119
120
  switch (mode) {
120
121
  case `YMD`:
121
122
  return [...FOUR_DIGITS, separator, ...TWO_DIGITS, separator, ...TWO_DIGITS];
@@ -127,7 +128,8 @@ function tuiCreateDateMask(mode, separator) {
127
128
  }
128
129
 
129
130
  function tuiCreateDateRangeMask(dateMode, dateSeparator) {
130
- tuiAssert.assert(dateSeparator.length === 1, `Separator should consist of only 1 symbol`);
131
+ ngDevMode &&
132
+ tuiAssert.assert(dateSeparator.length === 1, `Separator should consist of only 1 symbol`);
131
133
  const dateMask = tuiCreateDateMask(dateMode, dateSeparator);
132
134
  return [
133
135
  ...dateMask,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-utils-mask.js","sources":["../../../projects/kit/utils/mask/create-auto-corrected-date-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-range-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-time-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-time-pipe.ts","../../../projects/kit/utils/mask/create-date-mask.ts","../../../projects/kit/utils/mask/create-date-range-mask.ts","../../../projects/kit/utils/mask/create-time-mask.ts","../../../projects/kit/utils/mask/taiga-ui-kit-utils-mask.ts"],"sourcesContent":["import {DATE_FILLER_LENGTH, TuiDateMode, TuiDay} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\nexport interface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDay | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nexport function tuiNormalizeDateValue(\n dateValue: string,\n {value, min, max, dateFormat, dateSeparator}: TuiAutoCorrectedDatePipeConfigs,\n): string {\n return value && value.toString(dateFormat, dateSeparator) === dateValue\n ? dateValue\n : TuiDay.normalizeParse(dateValue, dateFormat)\n .dayLimit(min, max)\n .toString(dateFormat, dateSeparator);\n}\n\nexport function tuiCreateAutoCorrectedDatePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => {\n if (value.length !== DATE_FILLER_LENGTH) {\n return {value};\n }\n\n return {\n value: tuiNormalizeDateValue(value, config),\n };\n };\n}\n","import {\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n RANGE_SEPARATOR_CHAR,\n TuiDateMode,\n TuiDay,\n TuiDayRange,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\ninterface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDayRange | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nfunction parseWithLimit(value: string, config: TuiAutoCorrectedDatePipeConfigs): TuiDay {\n return TuiDay.normalizeParse(\n value.slice(0, DATE_FILLER_LENGTH),\n config.dateFormat,\n ).dayLimit(config.min, config.max);\n}\n\nfunction processRawValue(value: string, config: TuiAutoCorrectedDatePipeConfigs): string {\n const {dateFormat, dateSeparator} = config;\n\n switch (value.length) {\n case DATE_FILLER_LENGTH:\n return parseWithLimit(value, config).toString(dateFormat, dateSeparator);\n case DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length:\n return (\n parseWithLimit(value, config).toString(dateFormat, dateSeparator) +\n RANGE_SEPARATOR_CHAR\n );\n case DATE_RANGE_FILLER_LENGTH:\n return config.value &&\n config.value.toString(dateFormat, dateSeparator) === value\n ? value\n : TuiDayRange.sort(\n parseWithLimit(value.slice(0, DATE_FILLER_LENGTH), config),\n parseWithLimit(\n value.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length),\n config,\n ),\n ).toString(dateFormat, dateSeparator);\n default:\n return value;\n }\n}\n\n/**\n * Normalizes date in formatted string\n *\n * Normalizes when:\n *\n * 1. It is a single date\n * 2. It is a single date and a separator\n * 3. It is two dates and a separator between them\n *\n * In **other** cases, the value does not change.\n *\n * @param config with min and max date\n * @return mask pipe handler that handles `min` and `max`\n */\nexport function tuiCreateAutoCorrectedDateRangePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => ({value: processRawValue(value, config)});\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\n/**\n * Adjusts the entered time by omitting only suitable values for hours and minutes\n * @returns time as a string\n */\nexport function tuiCreateAutoCorrectedTimePipe(\n timeMode: TuiTimeMode = `HH:MM`,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskPipeHandler {\n const timeFormatArray = [`HH`, `MM`, `SS`, `MS`] as const;\n const safeValues = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return conformedValue => {\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n timeFormatArray.forEach(format => {\n const position = timeMode.indexOf(format);\n const maxFirstDigit = parseInt(String(safeValues[format]).slice(0, 1), 10);\n\n if (parseInt(conformedValueArr[position], 10) > maxFirstDigit) {\n conformedValueArr[position + 1] = conformedValueArr[position];\n conformedValueArr[position] = `0`;\n indexesOfPipedChars.push(position);\n }\n });\n\n const isInvalid = timeFormatArray.some(\n format =>\n parseInt(conformedValue.slice(timeMode.indexOf(format), 2), 10) >\n safeValues[format],\n );\n\n return isInvalid\n ? false\n : {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {DATE_FILLER_LENGTH, tuiIsString, TuiTimeMode} from '@taiga-ui/cdk';\nimport {\n TuiTextMaskConfig,\n TuiTextMaskOptions,\n TuiTextMaskPipeHandler,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR} from '@taiga-ui/kit/constants';\n\nimport {\n TuiAutoCorrectedDatePipeConfigs,\n tuiNormalizeDateValue,\n} from './create-auto-corrected-date-pipe';\nimport {tuiCreateAutoCorrectedTimePipe} from './create-auto-corrected-time-pipe';\n\ninterface TuiAutoCorrectedDateTimePipeConfigs extends TuiAutoCorrectedDatePipeConfigs {\n timeMode: TuiTimeMode;\n}\n\nexport function tuiCreateAutoCorrectedDateTimePipe(\n configs: TuiAutoCorrectedDateTimePipeConfigs,\n): TuiTextMaskPipeHandler {\n const timePipe = tuiCreateAutoCorrectedTimePipe(configs.timeMode);\n\n return value => {\n if (value.length < DATE_FILLER_LENGTH) {\n return {value};\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const formattedDate = tuiNormalizeDateValue(date, configs);\n\n if (!time) {\n return {value: formattedDate};\n }\n\n const pipedTime = timePipe(\n time,\n {} as unknown as TuiTextMaskConfig & TuiTextMaskOptions,\n );\n\n if (!pipedTime || tuiIsString(pipedTime)) {\n return false;\n }\n\n return {\n value: `${formattedDate}${DATE_TIME_SEPARATOR}${pipedTime.value}`,\n indexesOfPipedChars: pipedTime.indexesOfPipedChars\n ? pipedTime.indexesOfPipedChars.map(i => i + date.length + 2)\n : undefined,\n };\n };\n}\n","import {tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nconst TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);\nconst FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);\n\nexport function tuiCreateDateMask(mode: TuiDateMode, separator: string): TuiTextMaskList {\n tuiAssert.assert(separator.length === 1, `Separator should consist of only 1 symbol`);\n\n switch (mode) {\n case `YMD`:\n return [...FOUR_DIGITS, separator, ...TWO_DIGITS, separator, ...TWO_DIGITS];\n case `MDY`:\n case `DMY`:\n default:\n return [...TWO_DIGITS, separator, ...TWO_DIGITS, separator, ...FOUR_DIGITS];\n }\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskList} from '@taiga-ui/core';\n\nimport {tuiCreateDateMask} from './create-date-mask';\n\nexport function tuiCreateDateRangeMask(\n dateMode: TuiDateMode,\n dateSeparator: string,\n): TuiTextMaskList {\n tuiAssert.assert(\n dateSeparator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n const dateMask = tuiCreateDateMask(dateMode, dateSeparator);\n\n return [\n ...dateMask,\n CHAR_NO_BREAK_SPACE,\n CHAR_EN_DASH,\n CHAR_NO_BREAK_SPACE,\n ...dateMask,\n ];\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nfunction tuiCreateTimePartMask(\n maxPartValue: number,\n prefix?: string,\n): Array<RegExp | string> {\n const {length} = String(maxPartValue);\n const regExp = new Array(length).fill(TUI_DIGIT_REGEXP);\n\n if (prefix) {\n regExp.unshift(prefix);\n }\n\n return regExp;\n}\n\nexport function tuiCreateTimeMask(\n mode: TuiTimeMode,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskList {\n const {HH, MM, SS, MS} = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return [\n ...tuiCreateTimePartMask(HH),\n ...tuiCreateTimePartMask(MM, `:`),\n ...(mode.includes(`HH:MM:SS`) ? tuiCreateTimePartMask(SS, `:`) : []),\n ...(mode === `HH:MM:SS.MSS` ? tuiCreateTimePartMask(MS, `.`) : []),\n ];\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-utils-mask.js","sources":["../../../projects/kit/utils/mask/create-auto-corrected-date-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-range-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-time-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-time-pipe.ts","../../../projects/kit/utils/mask/create-date-mask.ts","../../../projects/kit/utils/mask/create-date-range-mask.ts","../../../projects/kit/utils/mask/create-time-mask.ts","../../../projects/kit/utils/mask/taiga-ui-kit-utils-mask.ts"],"sourcesContent":["import {DATE_FILLER_LENGTH, TuiDateMode, TuiDay} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\nexport interface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDay | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nexport function tuiNormalizeDateValue(\n dateValue: string,\n {value, min, max, dateFormat, dateSeparator}: TuiAutoCorrectedDatePipeConfigs,\n): string {\n return value && value.toString(dateFormat, dateSeparator) === dateValue\n ? dateValue\n : TuiDay.normalizeParse(dateValue, dateFormat)\n .dayLimit(min, max)\n .toString(dateFormat, dateSeparator);\n}\n\nexport function tuiCreateAutoCorrectedDatePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => {\n if (value.length !== DATE_FILLER_LENGTH) {\n return {value};\n }\n\n return {\n value: tuiNormalizeDateValue(value, config),\n };\n };\n}\n","import {\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n RANGE_SEPARATOR_CHAR,\n TuiDateMode,\n TuiDay,\n TuiDayRange,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\ninterface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDayRange | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nfunction parseWithLimit(value: string, config: TuiAutoCorrectedDatePipeConfigs): TuiDay {\n return TuiDay.normalizeParse(\n value.slice(0, DATE_FILLER_LENGTH),\n config.dateFormat,\n ).dayLimit(config.min, config.max);\n}\n\nfunction processRawValue(value: string, config: TuiAutoCorrectedDatePipeConfigs): string {\n const {dateFormat, dateSeparator} = config;\n\n switch (value.length) {\n case DATE_FILLER_LENGTH:\n return parseWithLimit(value, config).toString(dateFormat, dateSeparator);\n case DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length:\n return (\n parseWithLimit(value, config).toString(dateFormat, dateSeparator) +\n RANGE_SEPARATOR_CHAR\n );\n case DATE_RANGE_FILLER_LENGTH:\n return config.value &&\n config.value.toString(dateFormat, dateSeparator) === value\n ? value\n : TuiDayRange.sort(\n parseWithLimit(value.slice(0, DATE_FILLER_LENGTH), config),\n parseWithLimit(\n value.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length),\n config,\n ),\n ).toString(dateFormat, dateSeparator);\n default:\n return value;\n }\n}\n\n/**\n * Normalizes date in formatted string\n *\n * Normalizes when:\n *\n * 1. It is a single date\n * 2. It is a single date and a separator\n * 3. It is two dates and a separator between them\n *\n * In **other** cases, the value does not change.\n *\n * @param config with min and max date\n * @return mask pipe handler that handles `min` and `max`\n */\nexport function tuiCreateAutoCorrectedDateRangePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => ({value: processRawValue(value, config)});\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\n/**\n * Adjusts the entered time by omitting only suitable values for hours and minutes\n * @returns time as a string\n */\nexport function tuiCreateAutoCorrectedTimePipe(\n timeMode: TuiTimeMode = `HH:MM`,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskPipeHandler {\n const timeFormatArray = [`HH`, `MM`, `SS`, `MS`] as const;\n const safeValues = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return conformedValue => {\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n timeFormatArray.forEach(format => {\n const position = timeMode.indexOf(format);\n const maxFirstDigit = parseInt(String(safeValues[format]).slice(0, 1), 10);\n\n if (parseInt(conformedValueArr[position], 10) > maxFirstDigit) {\n conformedValueArr[position + 1] = conformedValueArr[position];\n conformedValueArr[position] = `0`;\n indexesOfPipedChars.push(position);\n }\n });\n\n const isInvalid = timeFormatArray.some(\n format =>\n parseInt(conformedValue.slice(timeMode.indexOf(format), 2), 10) >\n safeValues[format],\n );\n\n return isInvalid\n ? false\n : {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {DATE_FILLER_LENGTH, tuiIsString, TuiTimeMode} from '@taiga-ui/cdk';\nimport {\n TuiTextMaskConfig,\n TuiTextMaskOptions,\n TuiTextMaskPipeHandler,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR} from '@taiga-ui/kit/constants';\n\nimport {\n TuiAutoCorrectedDatePipeConfigs,\n tuiNormalizeDateValue,\n} from './create-auto-corrected-date-pipe';\nimport {tuiCreateAutoCorrectedTimePipe} from './create-auto-corrected-time-pipe';\n\ninterface TuiAutoCorrectedDateTimePipeConfigs extends TuiAutoCorrectedDatePipeConfigs {\n timeMode: TuiTimeMode;\n}\n\nexport function tuiCreateAutoCorrectedDateTimePipe(\n configs: TuiAutoCorrectedDateTimePipeConfigs,\n): TuiTextMaskPipeHandler {\n const timePipe = tuiCreateAutoCorrectedTimePipe(configs.timeMode);\n\n return value => {\n if (value.length < DATE_FILLER_LENGTH) {\n return {value};\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const formattedDate = tuiNormalizeDateValue(date, configs);\n\n if (!time) {\n return {value: formattedDate};\n }\n\n const pipedTime = timePipe(\n time,\n {} as unknown as TuiTextMaskConfig & TuiTextMaskOptions,\n );\n\n if (!pipedTime || tuiIsString(pipedTime)) {\n return false;\n }\n\n return {\n value: `${formattedDate}${DATE_TIME_SEPARATOR}${pipedTime.value}`,\n indexesOfPipedChars: pipedTime.indexesOfPipedChars\n ? pipedTime.indexesOfPipedChars.map(i => i + date.length + 2)\n : undefined,\n };\n };\n}\n","import {tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nconst TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);\nconst FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);\n\nexport function tuiCreateDateMask(mode: TuiDateMode, separator: string): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n separator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n switch (mode) {\n case `YMD`:\n return [...FOUR_DIGITS, separator, ...TWO_DIGITS, separator, ...TWO_DIGITS];\n case `MDY`:\n case `DMY`:\n default:\n return [...TWO_DIGITS, separator, ...TWO_DIGITS, separator, ...FOUR_DIGITS];\n }\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskList} from '@taiga-ui/core';\n\nimport {tuiCreateDateMask} from './create-date-mask';\n\nexport function tuiCreateDateRangeMask(\n dateMode: TuiDateMode,\n dateSeparator: string,\n): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n dateSeparator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n const dateMask = tuiCreateDateMask(dateMode, dateSeparator);\n\n return [\n ...dateMask,\n CHAR_NO_BREAK_SPACE,\n CHAR_EN_DASH,\n CHAR_NO_BREAK_SPACE,\n ...dateMask,\n ];\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nfunction tuiCreateTimePartMask(\n maxPartValue: number,\n prefix?: string,\n): Array<RegExp | string> {\n const {length} = String(maxPartValue);\n const regExp = new Array(length).fill(TUI_DIGIT_REGEXP);\n\n if (prefix) {\n regExp.unshift(prefix);\n }\n\n return regExp;\n}\n\nexport function tuiCreateTimeMask(\n mode: TuiTimeMode,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskList {\n const {HH, MM, SS, MS} = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return [\n ...tuiCreateTimePartMask(HH),\n ...tuiCreateTimePartMask(MM, `:`),\n ...(mode.includes(`HH:MM:SS`) ? tuiCreateTimePartMask(SS, `:`) : []),\n ...(mode === `HH:MM:SS.MSS` ? tuiCreateTimePartMask(MS, `.`) : []),\n ];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ export declare class TuiPrimitiveCalendarRangeComponent implements OnInit {
18
18
  hoveredItem: TuiDay | null;
19
19
  userViewedMonthFirst: TuiMonth;
20
20
  userViewedMonthSecond: TuiMonth;
21
- constructor(valueChanges: Observable<TuiDayRange | null> | null, changeDetectorRef: ChangeDetectorRef, destroy$: TuiDestroyService);
21
+ constructor(valueChanges: Observable<TuiDayRange | null> | null, cdr: ChangeDetectorRef, destroy$: TuiDestroyService);
22
22
  get cappedUserViewedMonthSecond(): TuiMonth;
23
23
  get cappedUserViewedMonthFirst(): TuiMonth;
24
24
  monthOffset: TuiMapper<TuiMonth, TuiMonth>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/kit",
3
- "version": "3.23.1",
3
+ "version": "3.24.0",
4
4
  "description": "Taiga UI Angular main components kit",
5
5
  "keywords": [
6
6
  "angular",
@@ -25,9 +25,9 @@
25
25
  "@ng-web-apis/common": ">=2.0.0",
26
26
  "@ng-web-apis/mutation-observer": ">=2.0.0",
27
27
  "@ng-web-apis/resize-observer": ">=2.0.0",
28
- "@taiga-ui/cdk": ">=3.23.1",
29
- "@taiga-ui/core": ">=3.23.1",
30
- "@taiga-ui/i18n": ">=3.23.1",
28
+ "@taiga-ui/cdk": ">=3.24.0",
29
+ "@taiga-ui/core": ">=3.24.0",
30
+ "@taiga-ui/i18n": ">=3.24.0",
31
31
  "@tinkoff/ng-polymorpheus": ">=4.0.0",
32
32
  "rxjs": ">=6.0.0"
33
33
  },
@@ -2,6 +2,9 @@ import { PipeTransform } from '@angular/core';
2
2
  import { TuiFocusableElementAccessor, TuiStringHandler } from '@taiga-ui/cdk';
3
3
  import { AbstractTuiFilterByInput, ArrayElement } from './filter-by-input.base';
4
4
  import * as i0 from "@angular/core";
5
+ /**
6
+ * @deprecated Use {@link TuiFilterByInputPipe} instead
7
+ */
5
8
  export declare class TuiFilterByInputWithPipe extends AbstractTuiFilterByInput implements PipeTransform {
6
9
  protected readonly accessor: TuiFocusableElementAccessor;
7
10
  constructor(accessor: TuiFocusableElementAccessor);
@@ -1,10 +1,12 @@
1
1
  import { PipeTransform } from '@angular/core';
2
2
  import { TuiFocusableElementAccessor, TuiStringMatcher } from '@taiga-ui/cdk';
3
+ import { TuiDataListHost } from '@taiga-ui/core';
3
4
  import { AbstractTuiFilterByInput, ArrayElement } from './filter-by-input.base';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class TuiFilterByInputPipe extends AbstractTuiFilterByInput implements PipeTransform {
6
7
  protected readonly accessor: TuiFocusableElementAccessor;
7
- constructor(accessor: TuiFocusableElementAccessor);
8
+ private readonly host;
9
+ constructor(accessor: TuiFocusableElementAccessor, host: TuiDataListHost<unknown>);
8
10
  transform<T>(items: T, matcher?: TuiStringMatcher<ArrayElement<T>>): T;
9
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiFilterByInputPipe, never>;
10
12
  static ɵpipe: i0.ɵɵPipeDeclaration<TuiFilterByInputPipe, "tuiFilterByInput">;
@@ -3,9 +3,9 @@ import { TuiPromptData } from '@taiga-ui/kit/components';
3
3
  import { Observable } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class TuiDialogFormService {
6
- private readonly dialogService;
6
+ private readonly dialogs;
7
7
  private dirty;
8
- constructor(dialogService: TuiDialogService);
8
+ constructor(dialogs: TuiDialogService);
9
9
  markAsDirty(): void;
10
10
  markAsPristine(): void;
11
11
  withPrompt(options: Partial<TuiDialogOptions<TuiPromptData>>): Observable<boolean>;