@taiga-ui/kit 2.20.0 → 2.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 (572) hide show
  1. package/README.md +7 -3
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -6
  3. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
  5. package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-action.umd.js +2 -2
  7. package/bundles/taiga-ui-kit-components-action.umd.min.js +1 -1
  8. package/bundles/taiga-ui-kit-components-avatar.umd.js +1 -1
  9. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-avatar.umd.min.js +1 -1
  11. package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-badge.umd.js +2 -2
  13. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-badge.umd.min.js +1 -1
  15. package/bundles/taiga-ui-kit-components-badge.umd.min.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  17. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js +1 -1
  18. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +2 -2
  19. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
  21. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  23. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
  25. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +1 -1
  27. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js +1 -1
  29. package/bundles/taiga-ui-kit-components-calendar-range.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-combo-box.umd.js +13 -4
  31. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
  35. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  37. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  39. package/bundles/taiga-ui-kit-components-filter.umd.min.js +1 -1
  40. package/bundles/taiga-ui-kit-components-input-copy.umd.js +2 -2
  41. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
  42. package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-count.umd.js +7 -2
  44. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-count.umd.min.js +2 -2
  46. package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +2 -2
  48. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  49. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +2 -2
  51. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
  52. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-date.umd.js +2 -2
  54. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
  56. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-file.umd.js +4 -4
  58. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
  60. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-inline.umd.js +1 -1
  62. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js +1 -1
  63. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
  64. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
  65. package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
  67. package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
  68. package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input-number.umd.js +8 -2
  70. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
  72. package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-input-password.umd.js +3 -2
  74. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
  76. package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +1 -1
  78. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  80. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
  82. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
  83. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  84. package/bundles/taiga-ui-kit-components-input-range.umd.js +2 -2
  85. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  86. package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
  87. package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
  88. package/bundles/taiga-ui-kit-components-input-slider.umd.js +2 -2
  89. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  90. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
  91. package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
  92. package/bundles/taiga-ui-kit-components-input-tag.umd.js +2 -2
  93. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  94. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +2 -2
  95. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  96. package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
  97. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  98. package/bundles/taiga-ui-kit-components-input-time.umd.min.js +1 -1
  99. package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
  100. package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
  101. package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
  102. package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +1 -1
  104. package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js +1 -1
  105. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +16 -12
  106. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js +2 -2
  108. package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-multi-select.umd.js +18 -45
  110. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +2 -2
  112. package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
  114. package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
  115. package/bundles/taiga-ui-kit-components-progress.umd.js +54 -18
  116. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  117. package/bundles/taiga-ui-kit-components-progress.umd.min.js +2 -2
  118. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  119. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +1 -1
  120. package/bundles/taiga-ui-kit-components-radio-labeled.umd.min.js +1 -1
  121. package/bundles/taiga-ui-kit-components-range.umd.js +2 -2
  122. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
  124. package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
  125. package/bundles/taiga-ui-kit-components-select-option.umd.js +23 -14
  126. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-components-select-option.umd.min.js +2 -2
  128. package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
  129. package/bundles/taiga-ui-kit-components-select.umd.js +9 -3
  130. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-components-select.umd.min.js +2 -2
  132. package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
  133. package/bundles/taiga-ui-kit-components-slider.umd.js +2 -2
  134. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  135. package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
  136. package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
  137. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
  138. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +1 -1
  139. package/bundles/taiga-ui-kit-components-tabs.umd.js +3 -3
  140. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  142. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  143. package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
  144. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-components-tag.umd.min.js +2 -2
  146. package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
  147. package/bundles/taiga-ui-kit-components-text-area.umd.js +19 -2
  148. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  149. package/bundles/taiga-ui-kit-components-text-area.umd.min.js +2 -2
  150. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  151. package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
  152. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  153. package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
  154. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  155. package/bundles/taiga-ui-kit-components-tree.umd.js +653 -0
  156. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -0
  157. package/bundles/taiga-ui-kit-components-tree.umd.min.js +16 -0
  158. package/bundles/taiga-ui-kit-components-tree.umd.min.js.map +1 -0
  159. package/bundles/taiga-ui-kit-components.umd.js +12 -4
  160. package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
  161. package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
  162. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +1 -1
  163. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  164. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js +1 -1
  165. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
  166. package/bundles/taiga-ui-kit-utils-format.umd.js +0 -2
  167. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  168. package/bundles/taiga-ui-kit-utils-format.umd.min.js.map +1 -1
  169. package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
  170. package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
  171. package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
  172. package/components/badge/taiga-ui-kit-components-badge.metadata.json +1 -1
  173. package/components/badged-content/taiga-ui-kit-components-badged-content.metadata.json +1 -1
  174. package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
  175. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  176. package/components/calendar-range/taiga-ui-kit-components-calendar-range.metadata.json +1 -1
  177. package/components/combo-box/combo-box.component.d.ts +3 -3
  178. package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
  179. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  180. package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
  181. package/components/index.d.ts +1 -0
  182. package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
  183. package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
  184. package/components/input-count/input-count.component.d.ts +1 -0
  185. package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
  186. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  187. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  188. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  189. package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
  190. package/components/input-inline/taiga-ui-kit-components-input-inline.metadata.json +1 -1
  191. package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
  192. package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
  193. package/components/input-number/input-number.component.d.ts +1 -0
  194. package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
  195. package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
  196. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  197. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  198. package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
  199. package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
  200. package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
  201. package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
  202. package/components/line-clamp/taiga-ui-kit-components-line-clamp.metadata.json +1 -1
  203. package/components/multi-select/index.d.ts +0 -1
  204. package/components/multi-select/multi-select.component.d.ts +6 -5
  205. package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
  206. package/components/multi-select-option/multi-select-option.component.d.ts +1 -1
  207. package/components/multi-select-option/taiga-ui-kit-components-multi-select-option.metadata.json +1 -1
  208. package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
  209. package/components/progress/index.d.ts +2 -0
  210. package/components/progress/pipes/abstract-color-segments.d.ts +9 -0
  211. package/components/progress/pipes/progress-color-segments-async.pipe.d.ts +5 -0
  212. package/components/progress/pipes/progress-color-segments.pipe.d.ts +7 -6
  213. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  214. package/components/radio-labeled/taiga-ui-kit-components-radio-labeled.metadata.json +1 -1
  215. package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
  216. package/components/select/select.component.d.ts +1 -1
  217. package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
  218. package/components/select-option/select-option.component.d.ts +4 -2
  219. package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
  220. package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
  221. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  222. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  223. package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
  224. package/components/taiga-ui-kit-components.metadata.json +1 -1
  225. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  226. package/components/text-area/text-area.component.d.ts +2 -0
  227. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  228. package/components/tree/components/tree/tree.component.d.ts +10 -0
  229. package/components/tree/components/tree-item/tree-item.component.d.ts +17 -0
  230. package/components/tree/components/tree-item/tree-item.providers.d.ts +3 -0
  231. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +9 -0
  232. package/components/tree/directives/tree-children.directive.d.ts +5 -0
  233. package/components/tree/directives/tree-controller.directive.d.ts +13 -0
  234. package/components/tree/directives/tree-item-controller.directive.d.ts +8 -0
  235. package/components/tree/directives/tree-node.directive.d.ts +10 -0
  236. package/components/tree/index.d.ts +13 -0
  237. package/components/tree/misc/tree.constants.d.ts +5 -0
  238. package/components/tree/misc/tree.interfaces.d.ts +22 -0
  239. package/components/tree/misc/tree.service.d.ts +12 -0
  240. package/components/tree/misc/tree.tokens.d.ts +11 -0
  241. package/components/tree/package.json +13 -0
  242. package/components/tree/taiga-ui-kit-components-tree.d.ts +4 -0
  243. package/components/tree/taiga-ui-kit-components-tree.metadata.json +1 -0
  244. package/components/tree/tree.module.d.ts +2 -0
  245. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -6
  246. package/esm2015/components/accordion/accordion.component.js +1 -1
  247. package/esm2015/components/action/action.component.js +2 -2
  248. package/esm2015/components/avatar/avatar.component.js +2 -2
  249. package/esm2015/components/badge/badge.component.js +3 -3
  250. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  251. package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  252. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
  253. package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
  254. package/esm2015/components/calendar-range/calendar-range.component.js +2 -2
  255. package/esm2015/components/combo-box/combo-box.component.js +10 -5
  256. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  257. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  258. package/esm2015/components/filter/filter.component.js +1 -1
  259. package/esm2015/components/index.js +2 -1
  260. package/esm2015/components/input/input.component.js +1 -1
  261. package/esm2015/components/input-copy/input-copy.component.js +2 -2
  262. package/esm2015/components/input-count/input-count.component.js +8 -3
  263. package/esm2015/components/input-date/input-date.component.js +3 -3
  264. package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
  265. package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
  266. package/esm2015/components/input-file/file/file.component.js +3 -3
  267. package/esm2015/components/input-file/input-file.component.js +3 -3
  268. package/esm2015/components/input-inline/input-inline.component.js +1 -1
  269. package/esm2015/components/input-month/input-month.component.js +1 -1
  270. package/esm2015/components/input-month-range/input-month-range.component.js +1 -1
  271. package/esm2015/components/input-number/input-number.component.js +9 -3
  272. package/esm2015/components/input-password/input-password.component.js +3 -3
  273. package/esm2015/components/input-password/input-password.module.js +3 -1
  274. package/esm2015/components/input-phone/input-phone.component.js +2 -2
  275. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  276. package/esm2015/components/input-range/input-range.component.js +3 -3
  277. package/esm2015/components/input-slider/input-slider.component.js +3 -3
  278. package/esm2015/components/input-tag/input-tag.component.js +3 -3
  279. package/esm2015/components/input-time/input-time.component.js +3 -3
  280. package/esm2015/components/line-clamp/line-clamp.component.js +1 -1
  281. package/esm2015/components/multi-select/index.js +1 -2
  282. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  283. package/esm2015/components/multi-select/multi-select.component.js +12 -20
  284. package/esm2015/components/multi-select/multi-select.module.js +1 -3
  285. package/esm2015/components/multi-select-option/multi-select-option.component.js +8 -10
  286. package/esm2015/components/pagination/pagination.component.js +1 -1
  287. package/esm2015/components/progress/index.js +3 -1
  288. package/esm2015/components/progress/pipes/abstract-color-segments.js +32 -0
  289. package/esm2015/components/progress/pipes/progress-color-segments-async.pipe.js +15 -0
  290. package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +12 -28
  291. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  292. package/esm2015/components/progress/progress-label/progress-label.component.js +1 -1
  293. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  294. package/esm2015/components/progress/progress.module.js +4 -1
  295. package/esm2015/components/radio-labeled/radio-labeled.component.js +1 -1
  296. package/esm2015/components/range/range.component.js +3 -3
  297. package/esm2015/components/select/select.component.js +6 -4
  298. package/esm2015/components/select-option/select-option.component.js +20 -12
  299. package/esm2015/components/slider/slider.component.js +3 -3
  300. package/esm2015/components/stepper/step/step.component.js +1 -1
  301. package/esm2015/components/tabs/tabs/tabs.component.js +1 -1
  302. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  303. package/esm2015/components/tag/tag.component.js +3 -3
  304. package/esm2015/components/text-area/text-area.component.js +10 -4
  305. package/esm2015/components/text-area/text-area.module.js +5 -2
  306. package/esm2015/components/toggle/toggle.component.js +2 -2
  307. package/esm2015/components/tree/components/tree/tree.component.js +44 -0
  308. package/esm2015/components/tree/components/tree-item/tree-item.component.js +58 -0
  309. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +18 -0
  310. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +41 -0
  311. package/esm2015/components/tree/directives/tree-children.directive.js +23 -0
  312. package/esm2015/components/tree/directives/tree-controller.directive.js +62 -0
  313. package/esm2015/components/tree/directives/tree-item-controller.directive.js +36 -0
  314. package/esm2015/components/tree/directives/tree-node.directive.js +35 -0
  315. package/esm2015/components/tree/index.js +13 -0
  316. package/esm2015/components/tree/misc/tree.constants.js +9 -0
  317. package/esm2015/components/tree/misc/tree.interfaces.js +1 -0
  318. package/esm2015/components/tree/misc/tree.service.js +40 -0
  319. package/esm2015/components/tree/misc/tree.tokens.js +17 -0
  320. package/esm2015/components/tree/taiga-ui-kit-components-tree.js +5 -0
  321. package/esm2015/components/tree/tree.module.js +38 -0
  322. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  323. package/esm2015/types/status.js +1 -1
  324. package/esm2015/utils/format/string-hash-to-hsl.js +1 -3
  325. package/esm5/components/accordion/accordion-item/accordion-item.component.js +5 -6
  326. package/esm5/components/accordion/accordion.component.js +1 -1
  327. package/esm5/components/action/action.component.js +2 -2
  328. package/esm5/components/avatar/avatar.component.js +2 -2
  329. package/esm5/components/badge/badge.component.js +3 -3
  330. package/esm5/components/badged-content/badged-content.component.js +1 -1
  331. package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +1 -1
  332. package/esm5/components/breadcrumbs/breadcrumbs.component.js +2 -2
  333. package/esm5/components/calendar-month/calendar-month.component.js +2 -2
  334. package/esm5/components/calendar-range/calendar-range.component.js +2 -2
  335. package/esm5/components/combo-box/combo-box.component.js +14 -5
  336. package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
  337. package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
  338. package/esm5/components/filter/filter.component.js +1 -1
  339. package/esm5/components/index.js +2 -1
  340. package/esm5/components/input/input.component.js +1 -1
  341. package/esm5/components/input-copy/input-copy.component.js +2 -2
  342. package/esm5/components/input-count/input-count.component.js +8 -3
  343. package/esm5/components/input-date/input-date.component.js +3 -3
  344. package/esm5/components/input-date-range/input-date-range.component.js +2 -2
  345. package/esm5/components/input-date-time/input-date-time.component.js +2 -2
  346. package/esm5/components/input-file/file/file.component.js +3 -3
  347. package/esm5/components/input-file/input-file.component.js +3 -3
  348. package/esm5/components/input-inline/input-inline.component.js +1 -1
  349. package/esm5/components/input-month/input-month.component.js +1 -1
  350. package/esm5/components/input-month-range/input-month-range.component.js +1 -1
  351. package/esm5/components/input-number/input-number.component.js +9 -3
  352. package/esm5/components/input-password/input-password.component.js +3 -3
  353. package/esm5/components/input-password/input-password.module.js +3 -1
  354. package/esm5/components/input-phone/input-phone.component.js +2 -2
  355. package/esm5/components/input-phone-international/input-phone-international.component.js +2 -2
  356. package/esm5/components/input-range/input-range.component.js +3 -3
  357. package/esm5/components/input-slider/input-slider.component.js +3 -3
  358. package/esm5/components/input-tag/input-tag.component.js +3 -3
  359. package/esm5/components/input-time/input-time.component.js +3 -3
  360. package/esm5/components/line-clamp/line-clamp.component.js +1 -1
  361. package/esm5/components/multi-select/index.js +1 -2
  362. package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +10 -4
  363. package/esm5/components/multi-select/multi-select.component.js +12 -24
  364. package/esm5/components/multi-select/multi-select.module.js +1 -3
  365. package/esm5/components/multi-select-option/multi-select-option.component.js +14 -11
  366. package/esm5/components/pagination/pagination.component.js +1 -1
  367. package/esm5/components/progress/index.js +3 -1
  368. package/esm5/components/progress/pipes/abstract-color-segments.js +35 -0
  369. package/esm5/components/progress/pipes/progress-color-segments-async.pipe.js +21 -0
  370. package/esm5/components/progress/pipes/progress-color-segments.pipe.js +16 -30
  371. package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
  372. package/esm5/components/progress/progress-label/progress-label.component.js +1 -1
  373. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
  374. package/esm5/components/progress/progress.module.js +4 -1
  375. package/esm5/components/radio-labeled/radio-labeled.component.js +1 -1
  376. package/esm5/components/range/range.component.js +3 -3
  377. package/esm5/components/select/select.component.js +10 -4
  378. package/esm5/components/select-option/select-option.component.js +24 -14
  379. package/esm5/components/slider/slider.component.js +3 -3
  380. package/esm5/components/stepper/step/step.component.js +1 -1
  381. package/esm5/components/tabs/tabs/tabs.component.js +1 -1
  382. package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +3 -3
  383. package/esm5/components/tag/tag.component.js +3 -3
  384. package/esm5/components/text-area/text-area.component.js +18 -4
  385. package/esm5/components/text-area/text-area.module.js +5 -2
  386. package/esm5/components/toggle/toggle.component.js +2 -2
  387. package/esm5/components/tree/components/tree/tree.component.js +53 -0
  388. package/esm5/components/tree/components/tree-item/tree-item.component.js +68 -0
  389. package/esm5/components/tree/components/tree-item/tree-item.providers.js +18 -0
  390. package/esm5/components/tree/components/tree-item-content/tree-item-content.component.js +50 -0
  391. package/esm5/components/tree/directives/tree-children.directive.js +25 -0
  392. package/esm5/components/tree/directives/tree-controller.directive.js +64 -0
  393. package/esm5/components/tree/directives/tree-item-controller.directive.js +38 -0
  394. package/esm5/components/tree/directives/tree-node.directive.js +40 -0
  395. package/esm5/components/tree/index.js +13 -0
  396. package/esm5/components/tree/misc/tree.constants.js +9 -0
  397. package/esm5/components/tree/misc/tree.interfaces.js +1 -0
  398. package/esm5/components/tree/misc/tree.service.js +44 -0
  399. package/esm5/components/tree/misc/tree.tokens.js +17 -0
  400. package/esm5/components/tree/taiga-ui-kit-components-tree.js +5 -0
  401. package/esm5/components/tree/tree.module.js +41 -0
  402. package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +2 -2
  403. package/esm5/types/status.js +1 -1
  404. package/esm5/utils/format/string-hash-to-hsl.js +1 -3
  405. package/fesm2015/taiga-ui-kit-components-accordion.js +5 -6
  406. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  407. package/fesm2015/taiga-ui-kit-components-action.js +2 -2
  408. package/fesm2015/taiga-ui-kit-components-avatar.js +1 -1
  409. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  410. package/fesm2015/taiga-ui-kit-components-badge.js +2 -2
  411. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  412. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  413. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +2 -2
  414. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  415. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  416. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  417. package/fesm2015/taiga-ui-kit-components-calendar-range.js +1 -1
  418. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  419. package/fesm2015/taiga-ui-kit-components-combo-box.js +9 -4
  420. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  421. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  422. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  423. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  424. package/fesm2015/taiga-ui-kit-components-input-copy.js +2 -2
  425. package/fesm2015/taiga-ui-kit-components-input-count.js +7 -2
  426. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  427. package/fesm2015/taiga-ui-kit-components-input-date-range.js +2 -2
  428. package/fesm2015/taiga-ui-kit-components-input-date-time.js +2 -2
  429. package/fesm2015/taiga-ui-kit-components-input-date.js +2 -2
  430. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  431. package/fesm2015/taiga-ui-kit-components-input-file.js +4 -4
  432. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  433. package/fesm2015/taiga-ui-kit-components-input-inline.js +1 -1
  434. package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
  435. package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
  436. package/fesm2015/taiga-ui-kit-components-input-number.js +8 -2
  437. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  438. package/fesm2015/taiga-ui-kit-components-input-password.js +4 -3
  439. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  440. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +1 -1
  441. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  442. package/fesm2015/taiga-ui-kit-components-input-phone.js +2 -2
  443. package/fesm2015/taiga-ui-kit-components-input-range.js +2 -2
  444. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  445. package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
  446. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  447. package/fesm2015/taiga-ui-kit-components-input-tag.js +2 -2
  448. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  449. package/fesm2015/taiga-ui-kit-components-input-time.js +2 -2
  450. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-components-input.js +1 -1
  452. package/fesm2015/taiga-ui-kit-components-line-clamp.js +1 -1
  453. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +7 -9
  454. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-components-multi-select.js +21 -40
  456. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
  458. package/fesm2015/taiga-ui-kit-components-progress.js +39 -14
  459. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  460. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +1 -1
  461. package/fesm2015/taiga-ui-kit-components-range.js +2 -2
  462. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  463. package/fesm2015/taiga-ui-kit-components-select-option.js +19 -11
  464. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  465. package/fesm2015/taiga-ui-kit-components-select.js +5 -3
  466. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  467. package/fesm2015/taiga-ui-kit-components-slider.js +2 -2
  468. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
  470. package/fesm2015/taiga-ui-kit-components-tabs.js +3 -3
  471. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  472. package/fesm2015/taiga-ui-kit-components-tag.js +2 -2
  473. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  474. package/fesm2015/taiga-ui-kit-components-text-area.js +12 -3
  475. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  476. package/fesm2015/taiga-ui-kit-components-toggle.js +1 -1
  477. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  478. package/fesm2015/taiga-ui-kit-components-tree.js +371 -0
  479. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -0
  480. package/fesm2015/taiga-ui-kit-components.js +1 -0
  481. package/fesm2015/taiga-ui-kit-components.js.map +1 -1
  482. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  483. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  484. package/fesm2015/taiga-ui-kit-utils-format.js +0 -2
  485. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  486. package/fesm5/taiga-ui-kit-components-accordion.js +5 -6
  487. package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
  488. package/fesm5/taiga-ui-kit-components-action.js +2 -2
  489. package/fesm5/taiga-ui-kit-components-avatar.js +1 -1
  490. package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
  491. package/fesm5/taiga-ui-kit-components-badge.js +2 -2
  492. package/fesm5/taiga-ui-kit-components-badge.js.map +1 -1
  493. package/fesm5/taiga-ui-kit-components-badged-content.js +1 -1
  494. package/fesm5/taiga-ui-kit-components-breadcrumbs.js +2 -2
  495. package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  496. package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
  497. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  498. package/fesm5/taiga-ui-kit-components-calendar-range.js +1 -1
  499. package/fesm5/taiga-ui-kit-components-calendar-range.js.map +1 -1
  500. package/fesm5/taiga-ui-kit-components-combo-box.js +13 -4
  501. package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
  502. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
  503. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  504. package/fesm5/taiga-ui-kit-components-filter.js +1 -1
  505. package/fesm5/taiga-ui-kit-components-input-copy.js +2 -2
  506. package/fesm5/taiga-ui-kit-components-input-count.js +7 -2
  507. package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
  508. package/fesm5/taiga-ui-kit-components-input-date-range.js +2 -2
  509. package/fesm5/taiga-ui-kit-components-input-date-time.js +2 -2
  510. package/fesm5/taiga-ui-kit-components-input-date.js +2 -2
  511. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  512. package/fesm5/taiga-ui-kit-components-input-file.js +4 -4
  513. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  514. package/fesm5/taiga-ui-kit-components-input-inline.js +1 -1
  515. package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
  516. package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
  517. package/fesm5/taiga-ui-kit-components-input-number.js +8 -2
  518. package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
  519. package/fesm5/taiga-ui-kit-components-input-password.js +4 -3
  520. package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
  521. package/fesm5/taiga-ui-kit-components-input-phone-international.js +1 -1
  522. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  523. package/fesm5/taiga-ui-kit-components-input-phone.js +2 -2
  524. package/fesm5/taiga-ui-kit-components-input-range.js +2 -2
  525. package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
  526. package/fesm5/taiga-ui-kit-components-input-slider.js +2 -2
  527. package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
  528. package/fesm5/taiga-ui-kit-components-input-tag.js +2 -2
  529. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  530. package/fesm5/taiga-ui-kit-components-input-time.js +2 -2
  531. package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
  532. package/fesm5/taiga-ui-kit-components-input.js +1 -1
  533. package/fesm5/taiga-ui-kit-components-line-clamp.js +1 -1
  534. package/fesm5/taiga-ui-kit-components-multi-select-option.js +13 -10
  535. package/fesm5/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  536. package/fesm5/taiga-ui-kit-components-multi-select.js +21 -47
  537. package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
  538. package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
  539. package/fesm5/taiga-ui-kit-components-progress.js +53 -17
  540. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  541. package/fesm5/taiga-ui-kit-components-radio-labeled.js +1 -1
  542. package/fesm5/taiga-ui-kit-components-range.js +2 -2
  543. package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
  544. package/fesm5/taiga-ui-kit-components-select-option.js +23 -13
  545. package/fesm5/taiga-ui-kit-components-select-option.js.map +1 -1
  546. package/fesm5/taiga-ui-kit-components-select.js +9 -3
  547. package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
  548. package/fesm5/taiga-ui-kit-components-slider.js +2 -2
  549. package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
  550. package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
  551. package/fesm5/taiga-ui-kit-components-tabs.js +3 -3
  552. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  553. package/fesm5/taiga-ui-kit-components-tag.js +2 -2
  554. package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
  555. package/fesm5/taiga-ui-kit-components-text-area.js +20 -3
  556. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  557. package/fesm5/taiga-ui-kit-components-toggle.js +1 -1
  558. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  559. package/fesm5/taiga-ui-kit-components-tree.js +417 -0
  560. package/fesm5/taiga-ui-kit-components-tree.js.map +1 -0
  561. package/fesm5/taiga-ui-kit-components.js +1 -0
  562. package/fesm5/taiga-ui-kit-components.js.map +1 -1
  563. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js +1 -1
  564. package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  565. package/fesm5/taiga-ui-kit-utils-format.js +0 -2
  566. package/fesm5/taiga-ui-kit-utils-format.js.map +1 -1
  567. package/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.metadata.json +1 -1
  568. package/package.json +5 -5
  569. package/types/status.d.ts +1 -1
  570. package/components/multi-select/multi-select-group/multi-select-group-reset.directive.d.ts +0 -3
  571. package/esm2015/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -20
  572. package/esm5/components/multi-select/multi-select-group/multi-select-group-reset.directive.js +0 -23
@@ -530,7 +530,7 @@
530
530
  TuiInputDateRangeComponent = TuiInputDateRangeComponent_1 = __decorate([
531
531
  core.Component({
532
532
  selector: 'tui-input-date-range',
533
- template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n *tuiLet=\"dateFiller$ | async as dateFiller\"\n automation-id=\"tui-input-date-range__textfield\"\n class=\"textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n [pseudoFocused]=\"innerPseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoPressed]=\"pseudoPressed\"\n [invalid]=\"computedInvalid\"\n [tuiTextfieldExampleText]=\"computedExampleText\"\n [nativeId]=\"nativeId\"\n [filler]=\"getComputedRangeFiller(dateFiller)\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"computedMobile ? iconContent : calendarIcon\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"computedMask\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id=\"tui-input-date-range__icon\"\n [class.icon]=\"!computedDisabled\"\n [src]=\"calendarIcon\"\n (click)=\"onMobileClick()\"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar-range\n [defaultViewedMonth]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [items]=\"items\"\n [min]=\"min\"\n [max]=\"max\"\n [markerHandler]=\"markerHandler\"\n [minLength]=\"minLength\"\n [maxLength]=\"maxLength\"\n [value]=\"value\"\n (valueChange)=\"onRangeChange($event)\"\n ></tui-calendar-range>\n </ng-template>\n</tui-hosted-dropdown>\n",
533
+ template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n *tuiLet=\"dateFiller$ | async as dateFiller\"\n automation-id=\"tui-input-date-range__textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n class=\"textfield\"\n [pseudoFocused]=\"innerPseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoPressed]=\"pseudoPressed\"\n [invalid]=\"computedInvalid\"\n [tuiTextfieldExampleText]=\"computedExampleText\"\n [nativeId]=\"nativeId\"\n [filler]=\"getComputedRangeFiller(dateFiller)\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"computedMobile ? iconContent : calendarIcon\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"computedMask\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id=\"tui-input-date-range__icon\"\n [class.icon]=\"!computedDisabled\"\n [src]=\"calendarIcon\"\n (click)=\"onMobileClick()\"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar-range\n [defaultViewedMonth]=\"defaultViewedMonth\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [items]=\"items\"\n [min]=\"min\"\n [max]=\"max\"\n [markerHandler]=\"markerHandler\"\n [minLength]=\"minLength\"\n [maxLength]=\"maxLength\"\n [value]=\"value\"\n (valueChange)=\"onRangeChange($event)\"\n ></tui-calendar-range>\n </ng-template>\n</tui-hosted-dropdown>\n",
534
534
  providers: [
535
535
  {
536
536
  provide: cdk.TUI_FOCUSABLE_ITEM_ACCESSOR,
@@ -543,7 +543,7 @@
543
543
  },
544
544
  providers.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,
545
545
  ],
546
- styles: [":host{display:block;border-radius:var(--tui-radius-m)}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit}.icon{pointer-events:auto}"]
546
+ styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{pointer-events:auto}"]
547
547
  }),
548
548
  __param(0, core.Optional()),
549
549
  __param(0, core.Self()),
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var y=function(e,t){return(y=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function v(e,t,n,i){var o,a=arguments.length,r=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(r=(a<3?o(r):a>3?o(t,n,r):o(t,n))||r);return a>3&&r&&Object.defineProperty(t,n,r),r}function T(e,t){return function(n,i){t(n,i,e)}}var I=s.TuiReplayControlValueChangesFactory,b=function(e){function s(t,n,r,u,s,p,d,g,m,f){var h=e.call(this,t,n)||this;return h.injector=r,h.isMobile=u,h.dialogService=s,h.mobileCalendar=p,h.textfieldSize=d,h.textfieldExampleText=g,h.dateFormat=m,h.dateTexts$=f,h.disabledItemHandler=i.ALWAYS_FALSE_HANDLER,h.markerHandler=o.TUI_DEFAULT_MARKER_HANDLER,h.defaultViewedMonth=i.TuiMonth.currentLocal(),h.items=[],h.min=i.TUI_FIRST_DAY,h.max=i.TUI_LAST_DAY,h.minLength=null,h.maxLength=null,h.open=!1,h.maxLengthMapper=a.MAX_DAY_RANGE_LENGTH_MAPPER,h.dateFiller$=h.dateTexts$.pipe(c.pluck(h.dateFormat)),h.textMaskOptions={mask:a.TUI_DATE_RANGE_MASK,pipe:l.tuiCreateAutoCorrectedDateRangePipe(h),guide:!1},h}var g;return function(e,t){function n(){this.constructor=e}y(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(s,e),g=s,Object.defineProperty(s.prototype,"nativeFocusableElement",{get:function(){return this.textfield?this.textfield.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"focused",{get:function(){return!!this.textfield&&this.textfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedMobile",{get:function(){return this.isMobile&&!!this.mobileCalendar},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarIcon",{get:function(){return o.sizeBigger(this.textfieldSize.size)?"tuiIconCalendarLarge":"tuiIconCalendar"},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"canOpen",{get:function(){return!this.computedDisabled&&!this.readOnly&&!this.computedMobile},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedExampleText",{get:function(){return this.items.length?this.textfieldExampleText.exampleText:""},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedMask",{get:function(){return this.activePeriod?a.EMPTY_MASK:this.textMaskOptions},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"activePeriod",{get:function(){var e=this;return this.items.find((function(t){return i.nullableSame(e.value,t.range,(function(t,n){return t.from.daySame(n.from.dayLimit(e.min,e.max))&&t.to.daySame(n.to.dayLimit(e.min,e.max))}))}))||null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedValue",{get:function(){var e=this.value,t=this.nativeValue,n=this.activePeriod;return n?String(n):e?e.formattedDayRange:t},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"innerPseudoFocused",{get:function(){return!1!==this.pseudoFocused&&(!(!this.open&&!this.computedFocused)||null)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.nativeFocusableElement&&(this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),s.prototype.getComputedRangeFiller=function(e){return this.activePeriod?"":this.getDateRangeFiller(e)},s.prototype.onMobileClick=function(){var e=this;this.mobileCalendar?this.dialogService.open(new p.PolymorpheusComponent(this.mobileCalendar,this.injector),{size:"fullscreen",closeable:!1,data:{single:!1,min:this.maxLengthMapper(this.min,this.value,this.maxLength,!0),max:this.maxLengthMapper(this.max,this.value,this.maxLength,!1),disabledItemHandler:this.disabledItemHandler}}).pipe(c.takeUntil(this.destroy$)).subscribe((function(t){e.updateValue(t)})):this.toggle()},s.prototype.onClick=function(){this.isMobile||this.toggle()},s.prototype.onOpenChange=function(e){this.open=e},s.prototype.onValueChange=function(e){if(this.control&&this.control.updateValueAndValidity({emitEvent:!1}),e.length===i.DATE_RANGE_FILLER_LENGTH){var t=i.TuiDayRange.normalizeParse(e);this.updateValue(this.minLength||this.maxLength?this.clampValue(t):t)}else this.updateValue(null)},s.prototype.onRangeChange=function(e){this.toggle(),this.focusInput(),e||(this.nativeValue=""),i.nullableSame(this.value,e,(function(e,t){return e.daySame(t)}))||this.updateValue(e)},s.prototype.onItemSelect=function(e){this.toggle(),this.focusInput(),"string"==typeof e?null!==this.activePeriod&&(this.updateValue(null),this.nativeValue=""):this.updateValue(e.range.dayLimit(this.min,this.max))},s.prototype.onHovered=function(e){this.updateHovered(e)},s.prototype.onPressed=function(e){this.updatePressed(e)},s.prototype.onActiveZone=function(e){this.updateFocused(e),e||this.itemSelected||this.nativeValue.length!==i.DATE_FILLER_LENGTH&&this.nativeValue.length!==i.DATE_FILLER_LENGTH+i.RANGE_SEPARATOR_CHAR.length||this.updateValue(i.TuiDayRange.normalizeParse(this.nativeValue))},s.prototype.writeValue=function(t){e.prototype.writeValue.call(this,t),this.nativeValue=t?this.computedValue:""},Object.defineProperty(s.prototype,"itemSelected",{get:function(){var e=this;return-1!==this.items.findIndex((function(t){return String(t)===e.nativeValue}))},enumerable:!0,configurable:!0}),s.prototype.toggle=function(){this.open=!this.open},s.prototype.focusInput=function(e){void 0===e&&(e=!1),this.nativeFocusableElement&&i.setNativeFocused(this.nativeFocusableElement,!0,e)},s.prototype.clampValue=function(e){var t=this.minLength&&e.from.append(this.minLength).dayAfter(e.to)?new i.TuiDayRange(e.from,e.from.append(this.minLength).append({day:-1})):e,n=this.maxLength?t.from.append(this.maxLength).append({day:-1}):this.max;return t.to.dayAfter(n)?new i.TuiDayRange(t.from,n):t},s.prototype.getDateRangeFiller=function(e){return""+e+i.RANGE_SEPARATOR_CHAR+e},s.ctorParameters=function(){return[{type:n.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[n.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:t.Injector,decorators:[{type:t.Inject,args:[t.Injector]}]},{type:Boolean,decorators:[{type:t.Inject,args:[i.TUI_IS_MOBILE]}]},{type:o.TuiDialogService,decorators:[{type:t.Inject,args:[o.TuiDialogService]}]},{type:t.Type,decorators:[{type:t.Optional},{type:t.Inject,args:[u.TUI_MOBILE_CALENDAR]}]},{type:o.TuiTextfieldSizeDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_SIZE]}]},{type:o.TuiTextfieldExampleTextDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_EXAMPLE_TEXT]}]},{type:void 0,decorators:[{type:t.Inject,args:[i.TUI_DATE_FORMAT]}]},{type:d.Observable,decorators:[{type:t.Inject,args:[u.TUI_DATE_TEXTS]}]}]},v([t.Input(),i.tuiDefaultProp()],s.prototype,"disabledItemHandler",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"markerHandler",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"defaultViewedMonth",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"items",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"min",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"max",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"minLength",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"maxLength",void 0),v([t.ViewChild(o.TuiPrimitiveTextfieldComponent)],s.prototype,"textfield",void 0),v([t.HostListener("click")],s.prototype,"onClick",null),s=g=v([t.Component({selector:"tui-input-date-range",template:'<tui-hosted-dropdown\n class="hosted"\n [canOpen]="canOpen"\n [content]="dropdown"\n [open]="open && canOpen"\n (openChange)="onOpenChange($event)"\n (tuiActiveZoneChange)="onActiveZone($event)"\n>\n <tui-primitive-textfield\n *tuiLet="dateFiller$ | async as dateFiller"\n automation-id="tui-input-date-range__textfield"\n class="textfield"\n tuiValueAccessor\n tuiTextfieldInputMode="numeric"\n [pseudoFocused]="innerPseudoFocused"\n [pseudoHovered]="pseudoHovered"\n [pseudoPressed]="pseudoPressed"\n [invalid]="computedInvalid"\n [tuiTextfieldExampleText]="computedExampleText"\n [nativeId]="nativeId"\n [filler]="getComputedRangeFiller(dateFiller)"\n [readOnly]="readOnly"\n [iconContent]="computedMobile ? iconContent : calendarIcon"\n [disabled]="computedDisabled"\n [textMask]="computedMask"\n [value]="computedValue"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (pressedChange)="onPressed($event)"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id="tui-input-date-range__icon"\n [class.icon]="!computedDisabled"\n [src]="calendarIcon"\n (click)="onMobileClick()"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar-range\n [defaultViewedMonth]="defaultViewedMonth"\n [disabledItemHandler]="disabledItemHandler"\n [items]="items"\n [min]="min"\n [max]="max"\n [markerHandler]="markerHandler"\n [minLength]="minLength"\n [maxLength]="maxLength"\n [value]="value"\n (valueChange)="onRangeChange($event)"\n ></tui-calendar-range>\n </ng-template>\n</tui-hosted-dropdown>\n',providers:[{provide:i.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return g}))},{provide:u.TUI_CALENDAR_DATA_STREAM,deps:[[new t.Optional,new t.Self,n.NgControl]],useFactory:I},r.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER],styles:[":host{display:block;border-radius:var(--tui-radius-m)}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit}.icon{pointer-events:auto}"]}),T(0,t.Optional()),T(0,t.Self()),T(0,t.Inject(n.NgControl)),T(1,t.Inject(t.ChangeDetectorRef)),T(2,t.Inject(t.Injector)),T(3,t.Inject(i.TUI_IS_MOBILE)),T(4,t.Inject(o.TuiDialogService)),T(5,t.Optional()),T(5,t.Inject(u.TUI_MOBILE_CALENDAR)),T(6,t.Inject(o.TUI_TEXTFIELD_SIZE)),T(7,t.Inject(o.TUI_TEXTFIELD_EXAMPLE_TEXT)),T(8,t.Inject(i.TUI_DATE_FORMAT)),T(9,t.Inject(u.TUI_DATE_TEXTS))],s)}(i.AbstractTuiNullableControl),_=function(){function e(){}return e=v([t.NgModule({imports:[g.CommonModule,h.TextMaskModule,i.TuiActiveZoneModule,i.TuiLetModule,p.PolymorpheusModule,o.TuiPrimitiveTextfieldModule,o.TuiTextfieldControllerModule,o.TuiHostedDropdownModule,o.TuiSvgModule,m.TuiCalendarRangeModule,f.TuiValueAccessorModule],declarations:[b],exports:[b]})],e)}();e.RANGE_STREAM_FACTORY=I,e.TuiInputDateRangeComponent=b,e.TuiInputDateRangeModule=_,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var y=function(e,t){return(y=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function v(e,t,n,i){var o,a=arguments.length,r=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,n,i);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(r=(a<3?o(r):a>3?o(t,n,r):o(t,n))||r);return a>3&&r&&Object.defineProperty(t,n,r),r}function T(e,t){return function(n,i){t(n,i,e)}}var I=s.TuiReplayControlValueChangesFactory,b=function(e){function s(t,n,r,u,s,p,d,g,m,f){var h=e.call(this,t,n)||this;return h.injector=r,h.isMobile=u,h.dialogService=s,h.mobileCalendar=p,h.textfieldSize=d,h.textfieldExampleText=g,h.dateFormat=m,h.dateTexts$=f,h.disabledItemHandler=i.ALWAYS_FALSE_HANDLER,h.markerHandler=o.TUI_DEFAULT_MARKER_HANDLER,h.defaultViewedMonth=i.TuiMonth.currentLocal(),h.items=[],h.min=i.TUI_FIRST_DAY,h.max=i.TUI_LAST_DAY,h.minLength=null,h.maxLength=null,h.open=!1,h.maxLengthMapper=a.MAX_DAY_RANGE_LENGTH_MAPPER,h.dateFiller$=h.dateTexts$.pipe(c.pluck(h.dateFormat)),h.textMaskOptions={mask:a.TUI_DATE_RANGE_MASK,pipe:l.tuiCreateAutoCorrectedDateRangePipe(h),guide:!1},h}var g;return function(e,t){function n(){this.constructor=e}y(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(s,e),g=s,Object.defineProperty(s.prototype,"nativeFocusableElement",{get:function(){return this.textfield?this.textfield.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"focused",{get:function(){return!!this.textfield&&this.textfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedMobile",{get:function(){return this.isMobile&&!!this.mobileCalendar},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarIcon",{get:function(){return o.sizeBigger(this.textfieldSize.size)?"tuiIconCalendarLarge":"tuiIconCalendar"},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"canOpen",{get:function(){return!this.computedDisabled&&!this.readOnly&&!this.computedMobile},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedExampleText",{get:function(){return this.items.length?this.textfieldExampleText.exampleText:""},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedMask",{get:function(){return this.activePeriod?a.EMPTY_MASK:this.textMaskOptions},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"activePeriod",{get:function(){var e=this;return this.items.find((function(t){return i.nullableSame(e.value,t.range,(function(t,n){return t.from.daySame(n.from.dayLimit(e.min,e.max))&&t.to.daySame(n.to.dayLimit(e.min,e.max))}))}))||null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedValue",{get:function(){var e=this.value,t=this.nativeValue,n=this.activePeriod;return n?String(n):e?e.formattedDayRange:t},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"innerPseudoFocused",{get:function(){return!1!==this.pseudoFocused&&(!(!this.open&&!this.computedFocused)||null)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.nativeFocusableElement&&(this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),s.prototype.getComputedRangeFiller=function(e){return this.activePeriod?"":this.getDateRangeFiller(e)},s.prototype.onMobileClick=function(){var e=this;this.mobileCalendar?this.dialogService.open(new p.PolymorpheusComponent(this.mobileCalendar,this.injector),{size:"fullscreen",closeable:!1,data:{single:!1,min:this.maxLengthMapper(this.min,this.value,this.maxLength,!0),max:this.maxLengthMapper(this.max,this.value,this.maxLength,!1),disabledItemHandler:this.disabledItemHandler}}).pipe(c.takeUntil(this.destroy$)).subscribe((function(t){e.updateValue(t)})):this.toggle()},s.prototype.onClick=function(){this.isMobile||this.toggle()},s.prototype.onOpenChange=function(e){this.open=e},s.prototype.onValueChange=function(e){if(this.control&&this.control.updateValueAndValidity({emitEvent:!1}),e.length===i.DATE_RANGE_FILLER_LENGTH){var t=i.TuiDayRange.normalizeParse(e);this.updateValue(this.minLength||this.maxLength?this.clampValue(t):t)}else this.updateValue(null)},s.prototype.onRangeChange=function(e){this.toggle(),this.focusInput(),e||(this.nativeValue=""),i.nullableSame(this.value,e,(function(e,t){return e.daySame(t)}))||this.updateValue(e)},s.prototype.onItemSelect=function(e){this.toggle(),this.focusInput(),"string"==typeof e?null!==this.activePeriod&&(this.updateValue(null),this.nativeValue=""):this.updateValue(e.range.dayLimit(this.min,this.max))},s.prototype.onHovered=function(e){this.updateHovered(e)},s.prototype.onPressed=function(e){this.updatePressed(e)},s.prototype.onActiveZone=function(e){this.updateFocused(e),e||this.itemSelected||this.nativeValue.length!==i.DATE_FILLER_LENGTH&&this.nativeValue.length!==i.DATE_FILLER_LENGTH+i.RANGE_SEPARATOR_CHAR.length||this.updateValue(i.TuiDayRange.normalizeParse(this.nativeValue))},s.prototype.writeValue=function(t){e.prototype.writeValue.call(this,t),this.nativeValue=t?this.computedValue:""},Object.defineProperty(s.prototype,"itemSelected",{get:function(){var e=this;return-1!==this.items.findIndex((function(t){return String(t)===e.nativeValue}))},enumerable:!0,configurable:!0}),s.prototype.toggle=function(){this.open=!this.open},s.prototype.focusInput=function(e){void 0===e&&(e=!1),this.nativeFocusableElement&&i.setNativeFocused(this.nativeFocusableElement,!0,e)},s.prototype.clampValue=function(e){var t=this.minLength&&e.from.append(this.minLength).dayAfter(e.to)?new i.TuiDayRange(e.from,e.from.append(this.minLength).append({day:-1})):e,n=this.maxLength?t.from.append(this.maxLength).append({day:-1}):this.max;return t.to.dayAfter(n)?new i.TuiDayRange(t.from,n):t},s.prototype.getDateRangeFiller=function(e){return""+e+i.RANGE_SEPARATOR_CHAR+e},s.ctorParameters=function(){return[{type:n.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[n.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:t.Injector,decorators:[{type:t.Inject,args:[t.Injector]}]},{type:Boolean,decorators:[{type:t.Inject,args:[i.TUI_IS_MOBILE]}]},{type:o.TuiDialogService,decorators:[{type:t.Inject,args:[o.TuiDialogService]}]},{type:t.Type,decorators:[{type:t.Optional},{type:t.Inject,args:[u.TUI_MOBILE_CALENDAR]}]},{type:o.TuiTextfieldSizeDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_SIZE]}]},{type:o.TuiTextfieldExampleTextDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_EXAMPLE_TEXT]}]},{type:void 0,decorators:[{type:t.Inject,args:[i.TUI_DATE_FORMAT]}]},{type:d.Observable,decorators:[{type:t.Inject,args:[u.TUI_DATE_TEXTS]}]}]},v([t.Input(),i.tuiDefaultProp()],s.prototype,"disabledItemHandler",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"markerHandler",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"defaultViewedMonth",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"items",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"min",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"max",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"minLength",void 0),v([t.Input(),i.tuiDefaultProp()],s.prototype,"maxLength",void 0),v([t.ViewChild(o.TuiPrimitiveTextfieldComponent)],s.prototype,"textfield",void 0),v([t.HostListener("click")],s.prototype,"onClick",null),s=g=v([t.Component({selector:"tui-input-date-range",template:'<tui-hosted-dropdown\n class="hosted"\n [canOpen]="canOpen"\n [content]="dropdown"\n [open]="open && canOpen"\n (openChange)="onOpenChange($event)"\n (tuiActiveZoneChange)="onActiveZone($event)"\n>\n <tui-primitive-textfield\n *tuiLet="dateFiller$ | async as dateFiller"\n automation-id="tui-input-date-range__textfield"\n tuiValueAccessor\n tuiTextfieldInputMode="numeric"\n class="textfield"\n [pseudoFocused]="innerPseudoFocused"\n [pseudoHovered]="pseudoHovered"\n [pseudoPressed]="pseudoPressed"\n [invalid]="computedInvalid"\n [tuiTextfieldExampleText]="computedExampleText"\n [nativeId]="nativeId"\n [filler]="getComputedRangeFiller(dateFiller)"\n [readOnly]="readOnly"\n [iconContent]="computedMobile ? iconContent : calendarIcon"\n [disabled]="computedDisabled"\n [textMask]="computedMask"\n [value]="computedValue"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (pressedChange)="onPressed($event)"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id="tui-input-date-range__icon"\n [class.icon]="!computedDisabled"\n [src]="calendarIcon"\n (click)="onMobileClick()"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown>\n <tui-calendar-range\n [defaultViewedMonth]="defaultViewedMonth"\n [disabledItemHandler]="disabledItemHandler"\n [items]="items"\n [min]="min"\n [max]="max"\n [markerHandler]="markerHandler"\n [minLength]="minLength"\n [maxLength]="maxLength"\n [value]="value"\n (valueChange)="onRangeChange($event)"\n ></tui-calendar-range>\n </ng-template>\n</tui-hosted-dropdown>\n',providers:[{provide:i.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return g}))},{provide:u.TUI_CALENDAR_DATA_STREAM,deps:[[new t.Optional,new t.Self,n.NgControl]],useFactory:I},r.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER],styles:[":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{pointer-events:auto}"]}),T(0,t.Optional()),T(0,t.Self()),T(0,t.Inject(n.NgControl)),T(1,t.Inject(t.ChangeDetectorRef)),T(2,t.Inject(t.Injector)),T(3,t.Inject(i.TUI_IS_MOBILE)),T(4,t.Inject(o.TuiDialogService)),T(5,t.Optional()),T(5,t.Inject(u.TUI_MOBILE_CALENDAR)),T(6,t.Inject(o.TUI_TEXTFIELD_SIZE)),T(7,t.Inject(o.TUI_TEXTFIELD_EXAMPLE_TEXT)),T(8,t.Inject(i.TUI_DATE_FORMAT)),T(9,t.Inject(u.TUI_DATE_TEXTS))],s)}(i.AbstractTuiNullableControl),_=function(){function e(){}return e=v([t.NgModule({imports:[g.CommonModule,h.TextMaskModule,i.TuiActiveZoneModule,i.TuiLetModule,p.PolymorpheusModule,o.TuiPrimitiveTextfieldModule,o.TuiTextfieldControllerModule,o.TuiHostedDropdownModule,o.TuiSvgModule,m.TuiCalendarRangeModule,f.TuiValueAccessorModule],declarations:[b],exports:[b]})],e)}();e.RANGE_STREAM_FACTORY=I,e.TuiInputDateRangeComponent=b,e.TuiInputDateRangeModule=_,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-input-date-range.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-date-range/input-date-range.component.ts","ng://@taiga-ui/kit/components/input-date-range/input-date-range.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","RANGE_STREAM_FACTORY","TuiReplayControlValueChangesFactory","TuiInputDateRangeComponent","control","changeDetectorRef","injector","isMobile","dialogService","mobileCalendar","textfieldSize","textfieldExampleText","dateFormat","dateTexts$","_this","_super","call","this","disabledItemHandler","ALWAYS_FALSE_HANDLER","markerHandler","TUI_DEFAULT_MARKER_HANDLER","defaultViewedMonth","TuiMonth","currentLocal","items","min","TUI_FIRST_DAY","max","TUI_LAST_DAY","minLength","maxLength","open","maxLengthMapper","MAX_DAY_RANGE_LENGTH_MAPPER","dateFiller$","pipe","pluck","textMaskOptions","mask","TUI_DATE_RANGE_MASK","tuiCreateAutoCorrectedDateRangePipe","guide","__","constructor","prototype","create","__extends","textfield","nativeFocusableElement","focused","sizeBigger","size","computedDisabled","readOnly","computedMobile","exampleText","activePeriod","EMPTY_MASK","find","item","nullableSame","value","range","a","from","daySame","dayLimit","to","nativeValue","String","formattedDayRange","pseudoFocused","computedFocused","getComputedRangeFiller","dateFiller","getDateRangeFiller","onMobileClick","PolymorpheusComponent","closeable","data","single","takeUntil","destroy$","subscribe","updateValue","toggle","onClick","onOpenChange","onValueChange","updateValueAndValidity","emitEvent","DATE_RANGE_FILLER_LENGTH","parsedValue","TuiDayRange","normalizeParse","clampValue","onRangeChange","focusInput","onItemSelect","onHovered","hovered","updateHovered","onPressed","pressed","updatePressed","onActiveZone","updateFocused","itemSelected","DATE_FILLER_LENGTH","RANGE_SEPARATOR_CHAR","writeValue","computedValue","findIndex","preventScroll","setNativeFocused","clampedBottom","append","dayAfter","day","availableMax","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","Injector","TUI_IS_MOBILE","TuiDialogService","Type","TUI_MOBILE_CALENDAR","TuiTextfieldSizeDirective","TUI_TEXTFIELD_SIZE","TuiTextfieldExampleTextDirective","TUI_TEXTFIELD_EXAMPLE_TEXT","TUI_DATE_FORMAT","Observable","TUI_DATE_TEXTS","Input","tuiDefaultProp","ViewChild","TuiPrimitiveTextfieldComponent","HostListener","TuiInputDateRangeComponent_1","Component","selector","template","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_CALENDAR_DATA_STREAM","deps","useFactory","LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER","AbstractTuiNullableControl","TuiInputDateRangeModule","NgModule","imports","CommonModule","TextMaskModule","TuiActiveZoneModule","TuiLetModule","PolymorpheusModule","TuiPrimitiveTextfieldModule","TuiTextfieldControllerModule","TuiHostedDropdownModule","TuiSvgModule","TuiCalendarRangeModule","TuiValueAccessorModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n Inject,\n Injector,\n Input,\n Optional,\n Self,\n Type,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n nullableSame,\n RANGE_SEPARATOR_CHAR,\n setNativeFocused,\n TUI_DATE_FORMAT,\n TUI_FIRST_DAY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDateMode,\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMapper,\n TuiMonth,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_DEFAULT_MARKER_HANDLER,\n TUI_TEXTFIELD_EXAMPLE_TEXT,\n TUI_TEXTFIELD_SIZE,\n TuiDialogService,\n TuiMarkerHandler,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldExampleTextDirective,\n TuiTextfieldSizeDirective,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiDayRangePeriod} from '@taiga-ui/kit/classes';\nimport {\n EMPTY_MASK,\n MAX_DAY_RANGE_LENGTH_MAPPER,\n TUI_DATE_RANGE_MASK,\n} from '@taiga-ui/kit/constants';\nimport {LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_CALENDAR_DATA_STREAM,\n TUI_DATE_TEXTS,\n TUI_MOBILE_CALENDAR,\n} from '@taiga-ui/kit/tokens';\nimport {tuiCreateAutoCorrectedDateRangePipe} from '@taiga-ui/kit/utils/mask';\nimport {TuiReplayControlValueChangesFactory} from '@taiga-ui/kit/utils/miscellaneous';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {pluck, takeUntil} from 'rxjs/operators';\n\n// TODO: remove in ivy compilation\nexport const RANGE_STREAM_FACTORY = TuiReplayControlValueChangesFactory;\n\n@Component({\n selector: 'tui-input-date-range',\n templateUrl: './input-date-range.template.html',\n styleUrls: ['./input-date-range.style.less'],\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputDateRangeComponent),\n },\n {\n provide: TUI_CALENDAR_DATA_STREAM,\n deps: [[new Optional(), new Self(), NgControl]],\n useFactory: RANGE_STREAM_FACTORY,\n },\n LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputDateRangeComponent\n extends AbstractTuiNullableControl<TuiDayRange>\n implements TuiWithOptionalMinMax<TuiDay>, TuiFocusableElementAccessor\n{\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 defaultViewedMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<TuiDayRangePeriod> = [];\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 minLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n maxLength: TuiDayLike | null = null;\n\n open = false;\n\n readonly maxLengthMapper: TuiMapper<TuiDay, TuiDay> = MAX_DAY_RANGE_LENGTH_MAPPER;\n readonly dateFiller$ = this.dateTexts$.pipe(pluck(this.dateFormat));\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly textMaskOptions: TuiTextMaskOptions = {\n mask: TUI_DATE_RANGE_MASK,\n pipe: tuiCreateAutoCorrectedDateRangePipe(this),\n guide: false,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(Injector) private readonly injector: Injector,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TuiDialogService) private readonly dialogService: TuiDialogService,\n @Optional()\n @Inject(TUI_MOBILE_CALENDAR)\n private readonly mobileCalendar: Type<any> | null,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_TEXTFIELD_EXAMPLE_TEXT)\n private readonly textfieldExampleText: TuiTextfieldExampleTextDirective,\n @Inject(TUI_DATE_FORMAT) readonly dateFormat: TuiDateMode,\n @Inject(TUI_DATE_TEXTS)\n readonly dateTexts$: Observable<Record<TuiDateMode, string>>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get computedMobile(): boolean {\n return this.isMobile && !!this.mobileCalendar;\n }\n\n get calendarIcon(): string {\n return sizeBigger(this.textfieldSize.size)\n ? 'tuiIconCalendarLarge'\n : 'tuiIconCalendar';\n }\n\n get canOpen(): boolean {\n return !this.computedDisabled && !this.readOnly && !this.computedMobile;\n }\n\n get computedExampleText(): string {\n return this.items.length ? this.textfieldExampleText.exampleText : '';\n }\n\n get computedMask(): TuiTextMaskOptions {\n return this.activePeriod ? EMPTY_MASK : this.textMaskOptions;\n }\n\n get activePeriod(): TuiDayRangePeriod | null {\n return (\n this.items.find(item =>\n nullableSame(\n this.value,\n item.range,\n (a, b) =>\n a.from.daySame(b.from.dayLimit(this.min, this.max)) &&\n a.to.daySame(b.to.dayLimit(this.min, this.max)),\n ),\n ) || null\n );\n }\n\n get computedValue(): string {\n const {value, nativeValue, activePeriod} = this;\n\n if (activePeriod) {\n return String(activePeriod);\n }\n\n return value ? value.formattedDayRange : nativeValue;\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocused === false) {\n return false;\n }\n\n if (this.open || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n getComputedRangeFiller(dateFiller: string): string {\n return this.activePeriod ? '' : this.getDateRangeFiller(dateFiller);\n }\n\n onMobileClick() {\n if (!this.mobileCalendar) {\n this.toggle();\n\n return;\n }\n\n this.dialogService\n .open<TuiDayRange>(\n new PolymorpheusComponent(this.mobileCalendar, this.injector),\n {\n size: 'fullscreen',\n closeable: false,\n data: {\n single: false,\n min: this.maxLengthMapper(\n this.min,\n this.value,\n this.maxLength,\n true,\n ),\n max: this.maxLengthMapper(\n this.max,\n this.value,\n this.maxLength,\n false,\n ),\n disabledItemHandler: this.disabledItemHandler,\n },\n },\n )\n .pipe(takeUntil(this.destroy$))\n .subscribe(value => {\n this.updateValue(value);\n });\n }\n\n @HostListener('click')\n onClick() {\n if (!this.isMobile) {\n this.toggle();\n }\n }\n\n onOpenChange(open: boolean) {\n this.open = open;\n }\n\n onValueChange(value: string) {\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n if (value.length !== DATE_RANGE_FILLER_LENGTH) {\n this.updateValue(null);\n\n return;\n }\n\n const parsedValue = TuiDayRange.normalizeParse(value);\n\n this.updateValue(\n !this.minLength && !this.maxLength\n ? parsedValue\n : this.clampValue(parsedValue),\n );\n }\n\n onRangeChange(range: TuiDayRange | null) {\n this.toggle();\n this.focusInput();\n\n if (!range) {\n this.nativeValue = '';\n }\n\n if (!nullableSame<TuiDayRange>(this.value, range, (a, b) => a.daySame(b))) {\n this.updateValue(range);\n }\n }\n\n onItemSelect(item: string | TuiDayRangePeriod) {\n this.toggle();\n this.focusInput();\n\n if (typeof item !== 'string') {\n this.updateValue(item.range.dayLimit(this.min, this.max));\n\n return;\n }\n\n if (this.activePeriod !== null) {\n this.updateValue(null);\n this.nativeValue = '';\n }\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onActiveZone(focused: boolean) {\n this.updateFocused(focused);\n\n if (\n !focused &&\n !this.itemSelected &&\n (this.nativeValue.length === DATE_FILLER_LENGTH ||\n this.nativeValue.length ===\n DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length)\n ) {\n this.updateValue(TuiDayRange.normalizeParse(this.nativeValue));\n }\n }\n\n writeValue(value: TuiDayRange | null) {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n private get itemSelected(): boolean {\n return this.items.findIndex(item => String(item) === this.nativeValue) !== -1;\n }\n\n private toggle() {\n this.open = !this.open;\n }\n\n private focusInput(preventScroll: boolean = false) {\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement, true, preventScroll);\n }\n }\n\n private clampValue(value: TuiDayRange): TuiDayRange {\n const clampedBottom =\n this.minLength && value.from.append(this.minLength).dayAfter(value.to)\n ? new TuiDayRange(\n value.from,\n value.from.append(this.minLength).append({day: -1}),\n )\n : value;\n\n const availableMax = this.maxLength\n ? clampedBottom.from.append(this.maxLength).append({day: -1})\n : this.max;\n\n return clampedBottom.to.dayAfter(availableMax)\n ? new TuiDayRange(clampedBottom.from, availableMax)\n : clampedBottom;\n }\n\n private getDateRangeFiller(dateFiller: string): string {\n return `${dateFiller}${RANGE_SEPARATOR_CHAR}${dateFiller}`;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarRangeModule} from '@taiga-ui/kit/components/calendar-range';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskModule} from 'angular2-text-mask';\nimport {TuiInputDateRangeComponent} from './input-date-range.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiActiveZoneModule,\n TuiLetModule,\n PolymorpheusModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiCalendarRangeModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputDateRangeComponent],\n exports: [TuiInputDateRangeComponent],\n})\nexport class TuiInputDateRangeModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-date-range/input-date-range.component.ts","ng://@taiga-ui/kit/components/input-date-range/input-date-range.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","RANGE_STREAM_FACTORY","TuiReplayControlValueChangesFactory","TuiInputDateRangeComponent","control","changeDetectorRef","injector","isMobile","dialogService","mobileCalendar","textfieldSize","textfieldExampleText","dateFormat","dateTexts$","_this","_super","call","this","disabledItemHandler","ALWAYS_FALSE_HANDLER","markerHandler","TUI_DEFAULT_MARKER_HANDLER","defaultViewedMonth","TuiMonth","currentLocal","items","min","TUI_FIRST_DAY","max","TUI_LAST_DAY","minLength","maxLength","open","maxLengthMapper","MAX_DAY_RANGE_LENGTH_MAPPER","dateFiller$","pipe","pluck","textMaskOptions","mask","TUI_DATE_RANGE_MASK","tuiCreateAutoCorrectedDateRangePipe","guide","__","constructor","prototype","create","__extends","textfield","nativeFocusableElement","focused","sizeBigger","size","computedDisabled","readOnly","computedMobile","exampleText","activePeriod","EMPTY_MASK","find","item","nullableSame","value","range","a","from","daySame","dayLimit","to","nativeValue","String","formattedDayRange","pseudoFocused","computedFocused","getComputedRangeFiller","dateFiller","getDateRangeFiller","onMobileClick","PolymorpheusComponent","closeable","data","single","takeUntil","destroy$","subscribe","updateValue","toggle","onClick","onOpenChange","onValueChange","updateValueAndValidity","emitEvent","DATE_RANGE_FILLER_LENGTH","parsedValue","TuiDayRange","normalizeParse","clampValue","onRangeChange","focusInput","onItemSelect","onHovered","hovered","updateHovered","onPressed","pressed","updatePressed","onActiveZone","updateFocused","itemSelected","DATE_FILLER_LENGTH","RANGE_SEPARATOR_CHAR","writeValue","computedValue","findIndex","preventScroll","setNativeFocused","clampedBottom","append","dayAfter","day","availableMax","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","Injector","TUI_IS_MOBILE","TuiDialogService","Type","TUI_MOBILE_CALENDAR","TuiTextfieldSizeDirective","TUI_TEXTFIELD_SIZE","TuiTextfieldExampleTextDirective","TUI_TEXTFIELD_EXAMPLE_TEXT","TUI_DATE_FORMAT","Observable","TUI_DATE_TEXTS","Input","tuiDefaultProp","ViewChild","TuiPrimitiveTextfieldComponent","HostListener","TuiInputDateRangeComponent_1","Component","selector","template","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_CALENDAR_DATA_STREAM","deps","useFactory","LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER","AbstractTuiNullableControl","TuiInputDateRangeModule","NgModule","imports","CommonModule","TextMaskModule","TuiActiveZoneModule","TuiLetModule","PolymorpheusModule","TuiPrimitiveTextfieldModule","TuiTextfieldControllerModule","TuiHostedDropdownModule","TuiSvgModule","TuiCalendarRangeModule","TuiValueAccessorModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n Inject,\n Injector,\n Input,\n Optional,\n Self,\n Type,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n nullableSame,\n RANGE_SEPARATOR_CHAR,\n setNativeFocused,\n TUI_DATE_FORMAT,\n TUI_FIRST_DAY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_IS_MOBILE,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDateMode,\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMapper,\n TuiMonth,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_DEFAULT_MARKER_HANDLER,\n TUI_TEXTFIELD_EXAMPLE_TEXT,\n TUI_TEXTFIELD_SIZE,\n TuiDialogService,\n TuiMarkerHandler,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldExampleTextDirective,\n TuiTextfieldSizeDirective,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TuiDayRangePeriod} from '@taiga-ui/kit/classes';\nimport {\n EMPTY_MASK,\n MAX_DAY_RANGE_LENGTH_MAPPER,\n TUI_DATE_RANGE_MASK,\n} from '@taiga-ui/kit/constants';\nimport {LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_CALENDAR_DATA_STREAM,\n TUI_DATE_TEXTS,\n TUI_MOBILE_CALENDAR,\n} from '@taiga-ui/kit/tokens';\nimport {tuiCreateAutoCorrectedDateRangePipe} from '@taiga-ui/kit/utils/mask';\nimport {TuiReplayControlValueChangesFactory} from '@taiga-ui/kit/utils/miscellaneous';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {pluck, takeUntil} from 'rxjs/operators';\n\n// TODO: remove in ivy compilation\nexport const RANGE_STREAM_FACTORY = TuiReplayControlValueChangesFactory;\n\n@Component({\n selector: 'tui-input-date-range',\n templateUrl: './input-date-range.template.html',\n styleUrls: ['./input-date-range.style.less'],\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputDateRangeComponent),\n },\n {\n provide: TUI_CALENDAR_DATA_STREAM,\n deps: [[new Optional(), new Self(), NgControl]],\n useFactory: RANGE_STREAM_FACTORY,\n },\n LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputDateRangeComponent\n extends AbstractTuiNullableControl<TuiDayRange>\n implements TuiWithOptionalMinMax<TuiDay>, TuiFocusableElementAccessor\n{\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 defaultViewedMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<TuiDayRangePeriod> = [];\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 minLength: TuiDayLike | null = null;\n\n @Input()\n @tuiDefaultProp()\n maxLength: TuiDayLike | null = null;\n\n open = false;\n\n readonly maxLengthMapper: TuiMapper<TuiDay, TuiDay> = MAX_DAY_RANGE_LENGTH_MAPPER;\n readonly dateFiller$ = this.dateTexts$.pipe(pluck(this.dateFormat));\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly textMaskOptions: TuiTextMaskOptions = {\n mask: TUI_DATE_RANGE_MASK,\n pipe: tuiCreateAutoCorrectedDateRangePipe(this),\n guide: false,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(Injector) private readonly injector: Injector,\n @Inject(TUI_IS_MOBILE) private readonly isMobile: boolean,\n @Inject(TuiDialogService) private readonly dialogService: TuiDialogService,\n @Optional()\n @Inject(TUI_MOBILE_CALENDAR)\n private readonly mobileCalendar: Type<any> | null,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_TEXTFIELD_EXAMPLE_TEXT)\n private readonly textfieldExampleText: TuiTextfieldExampleTextDirective,\n @Inject(TUI_DATE_FORMAT) readonly dateFormat: TuiDateMode,\n @Inject(TUI_DATE_TEXTS)\n readonly dateTexts$: Observable<Record<TuiDateMode, string>>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get computedMobile(): boolean {\n return this.isMobile && !!this.mobileCalendar;\n }\n\n get calendarIcon(): string {\n return sizeBigger(this.textfieldSize.size)\n ? 'tuiIconCalendarLarge'\n : 'tuiIconCalendar';\n }\n\n get canOpen(): boolean {\n return !this.computedDisabled && !this.readOnly && !this.computedMobile;\n }\n\n get computedExampleText(): string {\n return this.items.length ? this.textfieldExampleText.exampleText : '';\n }\n\n get computedMask(): TuiTextMaskOptions {\n return this.activePeriod ? EMPTY_MASK : this.textMaskOptions;\n }\n\n get activePeriod(): TuiDayRangePeriod | null {\n return (\n this.items.find(item =>\n nullableSame(\n this.value,\n item.range,\n (a, b) =>\n a.from.daySame(b.from.dayLimit(this.min, this.max)) &&\n a.to.daySame(b.to.dayLimit(this.min, this.max)),\n ),\n ) || null\n );\n }\n\n get computedValue(): string {\n const {value, nativeValue, activePeriod} = this;\n\n if (activePeriod) {\n return String(activePeriod);\n }\n\n return value ? value.formattedDayRange : nativeValue;\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocused === false) {\n return false;\n }\n\n if (this.open || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n getComputedRangeFiller(dateFiller: string): string {\n return this.activePeriod ? '' : this.getDateRangeFiller(dateFiller);\n }\n\n onMobileClick() {\n if (!this.mobileCalendar) {\n this.toggle();\n\n return;\n }\n\n this.dialogService\n .open<TuiDayRange>(\n new PolymorpheusComponent(this.mobileCalendar, this.injector),\n {\n size: 'fullscreen',\n closeable: false,\n data: {\n single: false,\n min: this.maxLengthMapper(\n this.min,\n this.value,\n this.maxLength,\n true,\n ),\n max: this.maxLengthMapper(\n this.max,\n this.value,\n this.maxLength,\n false,\n ),\n disabledItemHandler: this.disabledItemHandler,\n },\n },\n )\n .pipe(takeUntil(this.destroy$))\n .subscribe(value => {\n this.updateValue(value);\n });\n }\n\n @HostListener('click')\n onClick() {\n if (!this.isMobile) {\n this.toggle();\n }\n }\n\n onOpenChange(open: boolean) {\n this.open = open;\n }\n\n onValueChange(value: string) {\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n if (value.length !== DATE_RANGE_FILLER_LENGTH) {\n this.updateValue(null);\n\n return;\n }\n\n const parsedValue = TuiDayRange.normalizeParse(value);\n\n this.updateValue(\n !this.minLength && !this.maxLength\n ? parsedValue\n : this.clampValue(parsedValue),\n );\n }\n\n onRangeChange(range: TuiDayRange | null) {\n this.toggle();\n this.focusInput();\n\n if (!range) {\n this.nativeValue = '';\n }\n\n if (!nullableSame<TuiDayRange>(this.value, range, (a, b) => a.daySame(b))) {\n this.updateValue(range);\n }\n }\n\n onItemSelect(item: string | TuiDayRangePeriod) {\n this.toggle();\n this.focusInput();\n\n if (typeof item !== 'string') {\n this.updateValue(item.range.dayLimit(this.min, this.max));\n\n return;\n }\n\n if (this.activePeriod !== null) {\n this.updateValue(null);\n this.nativeValue = '';\n }\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onPressed(pressed: boolean) {\n this.updatePressed(pressed);\n }\n\n onActiveZone(focused: boolean) {\n this.updateFocused(focused);\n\n if (\n !focused &&\n !this.itemSelected &&\n (this.nativeValue.length === DATE_FILLER_LENGTH ||\n this.nativeValue.length ===\n DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length)\n ) {\n this.updateValue(TuiDayRange.normalizeParse(this.nativeValue));\n }\n }\n\n writeValue(value: TuiDayRange | null) {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n private get itemSelected(): boolean {\n return this.items.findIndex(item => String(item) === this.nativeValue) !== -1;\n }\n\n private toggle() {\n this.open = !this.open;\n }\n\n private focusInput(preventScroll: boolean = false) {\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement, true, preventScroll);\n }\n }\n\n private clampValue(value: TuiDayRange): TuiDayRange {\n const clampedBottom =\n this.minLength && value.from.append(this.minLength).dayAfter(value.to)\n ? new TuiDayRange(\n value.from,\n value.from.append(this.minLength).append({day: -1}),\n )\n : value;\n\n const availableMax = this.maxLength\n ? clampedBottom.from.append(this.maxLength).append({day: -1})\n : this.max;\n\n return clampedBottom.to.dayAfter(availableMax)\n ? new TuiDayRange(clampedBottom.from, availableMax)\n : clampedBottom;\n }\n\n private getDateRangeFiller(dateFiller: string): string {\n return `${dateFiller}${RANGE_SEPARATOR_CHAR}${dateFiller}`;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarRangeModule} from '@taiga-ui/kit/components/calendar-range';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskModule} from 'angular2-text-mask';\nimport {TuiInputDateRangeComponent} from './input-date-range.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiActiveZoneModule,\n TuiLetModule,\n PolymorpheusModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiCalendarRangeModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputDateRangeComponent],\n exports: [TuiInputDateRangeComponent],\n})\nexport class TuiInputDateRangeModule {}\n"]}
@@ -485,7 +485,7 @@
485
485
  TuiInputDateTimeComponent = TuiInputDateTimeComponent_1 = __decorate([
486
486
  core.Component({
487
487
  selector: 'tui-input-date-time',
488
- template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n class=\"textfield\"\n automation-id=\"tui-input-date-time__textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [filler]=\"filler$ | async\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"calendarIcon\"\n [disabled]=\"disabled\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown=\"polymorpheus\" polymorpheus>\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date-time__calendar\"\n [min]=\"calendarMinDay\"\n [max]=\"calendarMaxDay\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"calendarValue\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n",
488
+ template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-input-date-time__textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n class=\"textfield\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [filler]=\"filler$ | async\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"calendarIcon\"\n [disabled]=\"disabled\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown=\"polymorpheus\" polymorpheus>\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date-time__calendar\"\n [min]=\"calendarMinDay\"\n [max]=\"calendarMaxDay\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"calendarValue\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n",
489
489
  changeDetection: core.ChangeDetectionStrategy.OnPush,
490
490
  providers: [
491
491
  {
@@ -499,7 +499,7 @@
499
499
  },
500
500
  providers.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,
501
501
  ],
502
- styles: [":host{display:block;border-radius:var(--tui-radius-m)}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit}.icon{position:relative;cursor:pointer}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}"]
502
+ styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{position:relative;cursor:pointer}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}"]
503
503
  }),
504
504
  __param(0, core.Optional()),
505
505
  __param(0, core.Self()),
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)};function y(e,t,i,n){var o,a=arguments.length,r=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(r=(a<3?o(r):a>3?o(t,i,r):o(t,i))||r);return a>3&&r&&Object.defineProperty(t,i,r),r}function T(e,t){return function(i,n){t(i,n,e)}}function v(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,a=i.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)r.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return r}function b(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(v(arguments[t]));return e}var M=s.TuiReplayControlValueChangesFactory,A=function(e){function s(t,i,o,a,r,u){var l=e.call(this,t,i)||this;return l.textfieldSize=o,l.dateFormat=a,l.timeTexts$=r,l.dateTexts$=u,l.min=n.TUI_FIRST_DAY,l.max=n.TUI_LAST_DAY,l.disabledItemHandler=n.ALWAYS_FALSE_HANDLER,l.defaultActiveYearMonth=n.TuiMonth.currentLocal(),l.timeMode="HH:MM",l.open=!1,l.filler$=c.combineLatest([l.dateTexts$.pipe(p.pluck(l.dateFormat)),l.timeTexts$.pipe(p.pluck(l.timeMode))]).pipe(p.map((function(e){return l.getDateTimeString.apply(l,b(e))}))),l.month=null,l}var d;return function(e,t){function i(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}(s,e),d=s,Object.defineProperty(s.prototype,"fillerLength",{get:function(){return n.DATE_FILLER_LENGTH+a.DATE_TIME_SEPARATOR.length+this.timeMode.length},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"textMaskOptions",{get:function(){return this.calculateMask(this.value[0],this.calendarMinDay,this.calendarMaxDay,this.timeMode)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeFocusableElement",{get:function(){return this.textfield?this.textfield.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"focused",{get:function(){return!!this.textfield&&this.textfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarIcon",{get:function(){return o.sizeBigger(this.textfieldSize.size)?"tuiIconCalendarLarge":"tuiIconCalendar"},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedValue",{get:function(){var e=this.value,t=this.nativeValue,i=this.timeMode,o=v(e,2),a=o[0],r=o[1],u=t.length>n.DATE_FILLER_LENGTH;return!a||!r&&u?t:this.getDateTimeString(a,r,i)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarValue",{get:function(){return this.value[0]},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarMinDay",{get:function(){return Array.isArray(this.min)?this.min[0]:this.min},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarMaxDay",{get:function(){return Array.isArray(this.max)?this.max[0]:this.max},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedActiveYearMonth",{get:function(){return this.month||this.value[0]||this.defaultActiveYearMonth},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.nativeFocusableElement&&(this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"canOpen",{get:function(){return!this.computedDisabled&&!this.readOnly},enumerable:!0,configurable:!0}),s.prototype.onClick=function(){this.open=!this.open},s.prototype.onValueChange=function(e){if(e.length<n.DATE_FILLER_LENGTH)this.updateValue([null,null]);else{var t=v(e.split(a.DATE_TIME_SEPARATOR),2),i=t[0],o=t[1],r=n.TuiDay.normalizeParse(i),u=o&&o.length===this.timeMode.length?this.clampTime(n.TuiTime.fromString(o),r):null;this.open=!1,this.updateValue([r,u])}},s.prototype.onDayClick=function(e){var t=this.value[1]&&this.clampTime(this.value[1],e);this.updateValue([e,t]),this.updateNativeValue(e),this.open=!1},s.prototype.onHovered=function(e){this.updateHovered(e)},s.prototype.onMonthChange=function(e){this.month=e},s.prototype.onOpenChange=function(e){this.open=e},s.prototype.onFocused=function(e){var t=this;if(this.updateFocused(e),!(e||null===this.value[0]||null!==this.value[1]||this.nativeValue.length<=this.fillerLength+a.DATE_TIME_SEPARATOR.length||"HH:MM"===this.timeMode)){var i=v(this.nativeValue.split(a.DATE_TIME_SEPARATOR),2)[1];if(i){var o=n.TuiTime.fromString(i);this.updateValue([this.value[0],o]),setTimeout((function(){(t.nativeValue.endsWith(".")||t.nativeValue.endsWith(":"))&&(t.nativeValue=t.nativeValue.slice(0,-1))}))}}},s.prototype.setDisabledState=function(){e.prototype.setDisabledState.call(this),this.open=!1},s.prototype.writeValue=function(t){e.prototype.writeValue.call(this,t),this.nativeValue=t&&(t[0]||t[1])?this.computedValue:""},s.prototype.getFallbackValue=function(){return[null,null]},s.prototype.valueIdenticalComparator=function(e,t){return n.nullableSame(e[0],t[0],(function(e,t){return e.daySame(t)}))&&n.nullableSame(e[1],t[1],(function(e,t){return e.toString()===t.toString()}))},s.prototype.updateNativeValue=function(e){var t=this.nativeValue.split(a.DATE_TIME_SEPARATOR)[1]||"";this.nativeValue=this.getDateTimeString(e,t)},s.prototype.clampTime=function(e,t){var i=e.toAbsoluteMilliseconds(),o=Array.isArray(this.min)&&t.daySame(this.calendarMinDay)?this.min[1].toAbsoluteMilliseconds():-1/0,a=Array.isArray(this.max)&&t.daySame(this.calendarMaxDay)?this.max[1].toAbsoluteMilliseconds():1/0;return n.TuiTime.fromAbsoluteMilliseconds(n.clamp(i,o,a))},s.prototype.calculateMask=function(e,t,i,n){return{mask:b(a.TUI_DATE_MASK,[","," "],l.tuiCreateTimeMask(n)),pipe:l.tuiCreateAutoCorrectedDateTimePipe({value:e,min:t,max:i},n),guide:!1}},s.prototype.getDateTimeString=function(e,t,i){void 0===i&&(i="HH:MM");var o=e instanceof n.TuiDay?e.toString():e,r=t instanceof n.TuiTime?t.toString(i):t||"";return""+o+a.DATE_TIME_SEPARATOR+r},s.ctorParameters=function(){return[{type:i.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[i.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:o.TuiTextfieldSizeDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_SIZE]}]},{type:void 0,decorators:[{type:t.Inject,args:[n.TUI_DATE_FORMAT]}]},{type:c.Observable,decorators:[{type:t.Inject,args:[u.TUI_TIME_TEXTS]}]},{type:c.Observable,decorators:[{type:t.Inject,args:[u.TUI_DATE_TEXTS]}]}]},y([t.Input(),n.tuiDefaultProp()],s.prototype,"min",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"max",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"disabledItemHandler",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"defaultActiveYearMonth",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"timeMode",void 0),y([t.ViewChild(o.TuiPrimitiveTextfieldComponent)],s.prototype,"textfield",void 0),y([t.HostListener("click")],s.prototype,"onClick",null),y([n.tuiPure],s.prototype,"calculateMask",null),y([n.tuiPure],s.prototype,"getDateTimeString",null),s=d=y([t.Component({selector:"tui-input-date-time",template:'<tui-hosted-dropdown\n class="hosted"\n [canOpen]="canOpen"\n [content]="dropdown"\n [open]="open && canOpen"\n (openChange)="onOpenChange($event)"\n>\n <tui-primitive-textfield\n class="textfield"\n automation-id="tui-input-date-time__textfield"\n tuiValueAccessor\n tuiTextfieldInputMode="numeric"\n [pseudoFocused]="pseudoFocused"\n [pseudoHovered]="pseudoHovered"\n [invalid]="computedInvalid"\n [filler]="filler$ | async"\n [nativeId]="nativeId"\n [readOnly]="readOnly"\n [iconContent]="calendarIcon"\n [disabled]="disabled"\n [textMask]="textMaskOptions"\n [value]="computedValue"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (focusedChange)="onFocused($event)"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown="polymorpheus" polymorpheus>\n <tui-calendar\n tuiPreventDefault="mousedown"\n automation-id="tui-input-date-time__calendar"\n [min]="calendarMinDay"\n [max]="calendarMaxDay"\n [disabledItemHandler]="disabledItemHandler"\n [month]="computedActiveYearMonth"\n [value]="calendarValue"\n (dayClick)="onDayClick($event)"\n (monthChange)="onMonthChange($event)"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:n.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return d}))},{provide:u.TUI_CALENDAR_DATA_STREAM,deps:[[new t.Optional,new t.Self,i.NgControl]],useFactory:M},r.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER],styles:[":host{display:block;border-radius:var(--tui-radius-m)}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit}.icon{position:relative;cursor:pointer}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}"]}),T(0,t.Optional()),T(0,t.Self()),T(0,t.Inject(i.NgControl)),T(1,t.Inject(t.ChangeDetectorRef)),T(2,t.Inject(o.TUI_TEXTFIELD_SIZE)),T(3,t.Inject(n.TUI_DATE_FORMAT)),T(4,t.Inject(u.TUI_TIME_TEXTS)),T(5,t.Inject(u.TUI_DATE_TEXTS))],s)}(n.AbstractTuiControl),_=function(){function e(){}return e=y([t.NgModule({imports:[d.CommonModule,h.TextMaskModule,m.PolymorpheusModule,n.TuiPreventDefaultModule,o.TuiCalendarModule,o.TuiSvgModule,o.TuiLinkModule,o.TuiHostedDropdownModule,o.TuiPrimitiveTextfieldModule,f.TuiValueAccessorModule,o.TuiTextfieldControllerModule],declarations:[A],exports:[A]})],e)}();e.TIME_STREAM_FACTORY=M,e.TuiInputDateTimeComponent=A,e.TuiInputDateTimeModule=_,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)};function y(e,t,i,n){var o,a=arguments.length,r=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var u=e.length-1;u>=0;u--)(o=e[u])&&(r=(a<3?o(r):a>3?o(t,i,r):o(t,i))||r);return a>3&&r&&Object.defineProperty(t,i,r),r}function T(e,t){return function(i,n){t(i,n,e)}}function v(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,o,a=i.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)r.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(i=a.return)&&i.call(a)}finally{if(o)throw o.error}}return r}function b(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(v(arguments[t]));return e}var M=s.TuiReplayControlValueChangesFactory,A=function(e){function s(t,i,o,a,r,u){var l=e.call(this,t,i)||this;return l.textfieldSize=o,l.dateFormat=a,l.timeTexts$=r,l.dateTexts$=u,l.min=n.TUI_FIRST_DAY,l.max=n.TUI_LAST_DAY,l.disabledItemHandler=n.ALWAYS_FALSE_HANDLER,l.defaultActiveYearMonth=n.TuiMonth.currentLocal(),l.timeMode="HH:MM",l.open=!1,l.filler$=c.combineLatest([l.dateTexts$.pipe(p.pluck(l.dateFormat)),l.timeTexts$.pipe(p.pluck(l.timeMode))]).pipe(p.map((function(e){return l.getDateTimeString.apply(l,b(e))}))),l.month=null,l}var d;return function(e,t){function i(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}(s,e),d=s,Object.defineProperty(s.prototype,"fillerLength",{get:function(){return n.DATE_FILLER_LENGTH+a.DATE_TIME_SEPARATOR.length+this.timeMode.length},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"textMaskOptions",{get:function(){return this.calculateMask(this.value[0],this.calendarMinDay,this.calendarMaxDay,this.timeMode)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeFocusableElement",{get:function(){return this.textfield?this.textfield.nativeFocusableElement:null},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"focused",{get:function(){return!!this.textfield&&this.textfield.focused},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarIcon",{get:function(){return o.sizeBigger(this.textfieldSize.size)?"tuiIconCalendarLarge":"tuiIconCalendar"},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedValue",{get:function(){var e=this.value,t=this.nativeValue,i=this.timeMode,o=v(e,2),a=o[0],r=o[1],u=t.length>n.DATE_FILLER_LENGTH;return!a||!r&&u?t:this.getDateTimeString(a,r,i)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarValue",{get:function(){return this.value[0]},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarMinDay",{get:function(){return Array.isArray(this.min)?this.min[0]:this.min},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"calendarMaxDay",{get:function(){return Array.isArray(this.max)?this.max[0]:this.max},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"computedActiveYearMonth",{get:function(){return this.month||this.value[0]||this.defaultActiveYearMonth},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"nativeValue",{get:function(){return this.nativeFocusableElement?this.nativeFocusableElement.value:""},set:function(e){this.nativeFocusableElement&&(this.nativeFocusableElement.value=e)},enumerable:!0,configurable:!0}),Object.defineProperty(s.prototype,"canOpen",{get:function(){return!this.computedDisabled&&!this.readOnly},enumerable:!0,configurable:!0}),s.prototype.onClick=function(){this.open=!this.open},s.prototype.onValueChange=function(e){if(e.length<n.DATE_FILLER_LENGTH)this.updateValue([null,null]);else{var t=v(e.split(a.DATE_TIME_SEPARATOR),2),i=t[0],o=t[1],r=n.TuiDay.normalizeParse(i),u=o&&o.length===this.timeMode.length?this.clampTime(n.TuiTime.fromString(o),r):null;this.open=!1,this.updateValue([r,u])}},s.prototype.onDayClick=function(e){var t=this.value[1]&&this.clampTime(this.value[1],e);this.updateValue([e,t]),this.updateNativeValue(e),this.open=!1},s.prototype.onHovered=function(e){this.updateHovered(e)},s.prototype.onMonthChange=function(e){this.month=e},s.prototype.onOpenChange=function(e){this.open=e},s.prototype.onFocused=function(e){var t=this;if(this.updateFocused(e),!(e||null===this.value[0]||null!==this.value[1]||this.nativeValue.length<=this.fillerLength+a.DATE_TIME_SEPARATOR.length||"HH:MM"===this.timeMode)){var i=v(this.nativeValue.split(a.DATE_TIME_SEPARATOR),2)[1];if(i){var o=n.TuiTime.fromString(i);this.updateValue([this.value[0],o]),setTimeout((function(){(t.nativeValue.endsWith(".")||t.nativeValue.endsWith(":"))&&(t.nativeValue=t.nativeValue.slice(0,-1))}))}}},s.prototype.setDisabledState=function(){e.prototype.setDisabledState.call(this),this.open=!1},s.prototype.writeValue=function(t){e.prototype.writeValue.call(this,t),this.nativeValue=t&&(t[0]||t[1])?this.computedValue:""},s.prototype.getFallbackValue=function(){return[null,null]},s.prototype.valueIdenticalComparator=function(e,t){return n.nullableSame(e[0],t[0],(function(e,t){return e.daySame(t)}))&&n.nullableSame(e[1],t[1],(function(e,t){return e.toString()===t.toString()}))},s.prototype.updateNativeValue=function(e){var t=this.nativeValue.split(a.DATE_TIME_SEPARATOR)[1]||"";this.nativeValue=this.getDateTimeString(e,t)},s.prototype.clampTime=function(e,t){var i=e.toAbsoluteMilliseconds(),o=Array.isArray(this.min)&&t.daySame(this.calendarMinDay)?this.min[1].toAbsoluteMilliseconds():-1/0,a=Array.isArray(this.max)&&t.daySame(this.calendarMaxDay)?this.max[1].toAbsoluteMilliseconds():1/0;return n.TuiTime.fromAbsoluteMilliseconds(n.clamp(i,o,a))},s.prototype.calculateMask=function(e,t,i,n){return{mask:b(a.TUI_DATE_MASK,[","," "],l.tuiCreateTimeMask(n)),pipe:l.tuiCreateAutoCorrectedDateTimePipe({value:e,min:t,max:i},n),guide:!1}},s.prototype.getDateTimeString=function(e,t,i){void 0===i&&(i="HH:MM");var o=e instanceof n.TuiDay?e.toString():e,r=t instanceof n.TuiTime?t.toString(i):t||"";return""+o+a.DATE_TIME_SEPARATOR+r},s.ctorParameters=function(){return[{type:i.NgControl,decorators:[{type:t.Optional},{type:t.Self},{type:t.Inject,args:[i.NgControl]}]},{type:t.ChangeDetectorRef,decorators:[{type:t.Inject,args:[t.ChangeDetectorRef]}]},{type:o.TuiTextfieldSizeDirective,decorators:[{type:t.Inject,args:[o.TUI_TEXTFIELD_SIZE]}]},{type:void 0,decorators:[{type:t.Inject,args:[n.TUI_DATE_FORMAT]}]},{type:c.Observable,decorators:[{type:t.Inject,args:[u.TUI_TIME_TEXTS]}]},{type:c.Observable,decorators:[{type:t.Inject,args:[u.TUI_DATE_TEXTS]}]}]},y([t.Input(),n.tuiDefaultProp()],s.prototype,"min",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"max",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"disabledItemHandler",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"defaultActiveYearMonth",void 0),y([t.Input(),n.tuiDefaultProp()],s.prototype,"timeMode",void 0),y([t.ViewChild(o.TuiPrimitiveTextfieldComponent)],s.prototype,"textfield",void 0),y([t.HostListener("click")],s.prototype,"onClick",null),y([n.tuiPure],s.prototype,"calculateMask",null),y([n.tuiPure],s.prototype,"getDateTimeString",null),s=d=y([t.Component({selector:"tui-input-date-time",template:'<tui-hosted-dropdown\n class="hosted"\n [canOpen]="canOpen"\n [content]="dropdown"\n [open]="open && canOpen"\n (openChange)="onOpenChange($event)"\n>\n <tui-primitive-textfield\n automation-id="tui-input-date-time__textfield"\n tuiValueAccessor\n tuiTextfieldInputMode="numeric"\n class="textfield"\n [pseudoFocused]="pseudoFocused"\n [pseudoHovered]="pseudoHovered"\n [invalid]="computedInvalid"\n [filler]="filler$ | async"\n [nativeId]="nativeId"\n [readOnly]="readOnly"\n [iconContent]="calendarIcon"\n [disabled]="disabled"\n [textMask]="textMaskOptions"\n [value]="computedValue"\n (valueChange)="onValueChange($event)"\n (hoveredChange)="onHovered($event)"\n (focusedChange)="onFocused($event)"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown="polymorpheus" polymorpheus>\n <tui-calendar\n tuiPreventDefault="mousedown"\n automation-id="tui-input-date-time__calendar"\n [min]="calendarMinDay"\n [max]="calendarMaxDay"\n [disabledItemHandler]="disabledItemHandler"\n [month]="computedActiveYearMonth"\n [value]="calendarValue"\n (dayClick)="onDayClick($event)"\n (monthChange)="onMonthChange($event)"\n ></tui-calendar>\n </ng-template>\n</tui-hosted-dropdown>\n',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:n.TUI_FOCUSABLE_ITEM_ACCESSOR,useExisting:t.forwardRef((function(){return d}))},{provide:u.TUI_CALENDAR_DATA_STREAM,deps:[[new t.Optional,new t.Self,i.NgControl]],useFactory:M},r.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER],styles:[":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{position:relative;cursor:pointer}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}"]}),T(0,t.Optional()),T(0,t.Self()),T(0,t.Inject(i.NgControl)),T(1,t.Inject(t.ChangeDetectorRef)),T(2,t.Inject(o.TUI_TEXTFIELD_SIZE)),T(3,t.Inject(n.TUI_DATE_FORMAT)),T(4,t.Inject(u.TUI_TIME_TEXTS)),T(5,t.Inject(u.TUI_DATE_TEXTS))],s)}(n.AbstractTuiControl),_=function(){function e(){}return e=y([t.NgModule({imports:[d.CommonModule,h.TextMaskModule,m.PolymorpheusModule,n.TuiPreventDefaultModule,o.TuiCalendarModule,o.TuiSvgModule,o.TuiLinkModule,o.TuiHostedDropdownModule,o.TuiPrimitiveTextfieldModule,f.TuiValueAccessorModule,o.TuiTextfieldControllerModule],declarations:[A],exports:[A]})],e)}();e.TIME_STREAM_FACTORY=M,e.TuiInputDateTimeComponent=A,e.TuiInputDateTimeModule=_,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=taiga-ui-kit-components-input-date-time.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-date-time/input-date-time.component.ts","ng://@taiga-ui/kit/components/input-date-time/input-date-time.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TIME_STREAM_FACTORY","TuiReplayControlValueChangesFactory","TuiInputDateTimeComponent","control","changeDetectorRef","textfieldSize","dateFormat","timeTexts$","dateTexts$","_this","_super","this","min","TUI_FIRST_DAY","max","TUI_LAST_DAY","disabledItemHandler","ALWAYS_FALSE_HANDLER","defaultActiveYearMonth","TuiMonth","currentLocal","timeMode","open","filler$","combineLatest","pipe","pluck","map","fillers","getDateTimeString","apply","month","__","constructor","prototype","create","__extends","DATE_FILLER_LENGTH","DATE_TIME_SEPARATOR","calculateMask","calendarMinDay","calendarMaxDay","textfield","nativeFocusableElement","focused","sizeBigger","size","nativeValue","_b","date","time","hasTimeInputChars","isArray","computedDisabled","readOnly","onClick","onValueChange","updateValue","_a","split","constants","parsedDate","TuiDay","normalizeParse","parsedTime","clampTime","TuiTime","fromString","onDayClick","day","modifiedTime","updateNativeValue","onHovered","hovered","updateHovered","onMonthChange","onOpenChange","onFocused","updateFocused","fillerLength","setTimeout","endsWith","slice","setDisabledState","writeValue","computedValue","getFallbackValue","valueIdenticalComparator","oldValue","newValue","nullableSame","a","daySame","toString","ms","toAbsoluteMilliseconds","Infinity","fromAbsoluteMilliseconds","clamp","mask","TUI_DATE_MASK","tuiCreateTimeMask","tuiCreateAutoCorrectedDateTimePipe","guide","dateString","timeString","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","TuiTextfieldSizeDirective","TUI_TEXTFIELD_SIZE","TUI_DATE_FORMAT","Observable","TUI_TIME_TEXTS","TUI_DATE_TEXTS","Input","tuiDefaultProp","ViewChild","TuiPrimitiveTextfieldComponent","HostListener","tuiPure","TuiInputDateTimeComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_CALENDAR_DATA_STREAM","deps","useFactory","LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER","AbstractTuiControl","TuiInputDateTimeModule","NgModule","imports","CommonModule","TextMaskModule","PolymorpheusModule","TuiPreventDefaultModule","TuiCalendarModule","TuiSvgModule","TuiLinkModule","TuiHostedDropdownModule","TuiPrimitiveTextfieldModule","TuiValueAccessorModule","TuiTextfieldControllerModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n ALWAYS_FALSE_HANDLER,\n clamp,\n DATE_FILLER_LENGTH,\n nullableSame,\n TUI_DATE_FORMAT,\n TUI_FIRST_DAY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDateMode,\n TuiDay,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMonth,\n tuiPure,\n TuiTime,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldSizeDirective,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR, TUI_DATE_MASK} from '@taiga-ui/kit/constants';\nimport {LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_CALENDAR_DATA_STREAM,\n TUI_DATE_TEXTS,\n TUI_TIME_TEXTS,\n} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedDateTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {TuiReplayControlValueChangesFactory} from '@taiga-ui/kit/utils/miscellaneous';\nimport {combineLatest, Observable} from 'rxjs';\nimport {map, pluck} from 'rxjs/operators';\n\n// TODO: remove in ivy compilation\nexport const TIME_STREAM_FACTORY = TuiReplayControlValueChangesFactory;\n\n// @dynamic\n@Component({\n selector: 'tui-input-date-time',\n templateUrl: './input-date-time.template.html',\n styleUrls: ['./input-date-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputDateTimeComponent),\n },\n {\n provide: TUI_CALENDAR_DATA_STREAM,\n deps: [[new Optional(), new Self(), NgControl]],\n useFactory: TIME_STREAM_FACTORY,\n },\n LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputDateTimeComponent\n extends AbstractTuiControl<[TuiDay | null, TuiTime | null]>\n implements\n TuiWithOptionalMinMax<TuiDay | [TuiDay, TuiTime]>,\n TuiFocusableElementAccessor\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 disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultActiveYearMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n timeMode: TuiTimeMode = 'HH:MM';\n\n open = false;\n readonly filler$ = combineLatest([\n this.dateTexts$.pipe(pluck(this.dateFormat)),\n this.timeTexts$.pipe(pluck(this.timeMode)),\n ]).pipe(map(fillers => this.getDateTimeString(...fillers)));\n\n private month: TuiMonth | null = null;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_DATE_FORMAT) readonly dateFormat: TuiDateMode,\n @Inject(TUI_TIME_TEXTS)\n readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_DATE_TEXTS)\n readonly dateTexts$: Observable<Record<TuiDateMode, string>>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get fillerLength(): number {\n return DATE_FILLER_LENGTH + DATE_TIME_SEPARATOR.length + this.timeMode.length;\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(\n this.value[0],\n this.calendarMinDay,\n this.calendarMaxDay,\n this.timeMode,\n );\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): string {\n return sizeBigger(this.textfieldSize.size)\n ? 'tuiIconCalendarLarge'\n : 'tuiIconCalendar';\n }\n\n get computedValue(): string {\n const {value, nativeValue, timeMode} = this;\n const [date, time] = value;\n const hasTimeInputChars = nativeValue.length > DATE_FILLER_LENGTH;\n\n if (!date || (!time && hasTimeInputChars)) {\n return nativeValue;\n }\n\n return this.getDateTimeString(date, time, timeMode);\n }\n\n get calendarValue(): TuiDay | null {\n return this.value[0];\n }\n\n get calendarMinDay(): TuiDay {\n return Array.isArray(this.min) ? this.min[0] : this.min;\n }\n\n get calendarMaxDay(): TuiDay {\n return Array.isArray(this.max) ? this.max[0] : this.max;\n }\n\n get computedActiveYearMonth(): TuiMonth {\n return this.month || this.value[0] || this.defaultActiveYearMonth;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n get canOpen(): boolean {\n return !this.computedDisabled && !this.readOnly;\n }\n\n @HostListener('click')\n onClick() {\n this.open = !this.open;\n }\n\n onValueChange(value: string) {\n if (value.length < DATE_FILLER_LENGTH) {\n this.updateValue([null, null]);\n\n return;\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const parsedDate = TuiDay.normalizeParse(date);\n const parsedTime =\n time && time.length === this.timeMode.length\n ? this.clampTime(TuiTime.fromString(time), parsedDate)\n : null;\n\n this.open = false;\n this.updateValue([parsedDate, parsedTime]);\n }\n\n onDayClick(day: TuiDay) {\n const modifiedTime = this.value[1] && this.clampTime(this.value[1], day);\n\n this.updateValue([day, modifiedTime]);\n this.updateNativeValue(day);\n this.open = false;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onMonthChange(month: TuiMonth) {\n this.month = month;\n }\n\n onOpenChange(open: boolean) {\n this.open = open;\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value[0] === null ||\n this.value[1] !== null ||\n this.nativeValue.length <= this.fillerLength + DATE_TIME_SEPARATOR.length ||\n this.timeMode === 'HH:MM'\n ) {\n return;\n }\n\n const [, time] = this.nativeValue.split(DATE_TIME_SEPARATOR);\n\n if (!time) {\n return;\n }\n\n const parsedTime = TuiTime.fromString(time);\n\n this.updateValue([this.value[0], parsedTime]);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n setDisabledState() {\n super.setDisabledState();\n this.open = false;\n }\n\n writeValue(value: [TuiDay | null, TuiTime | null] | null) {\n super.writeValue(value);\n\n this.nativeValue = value && (value[0] || value[1]) ? this.computedValue : '';\n }\n\n protected getFallbackValue(): [TuiDay | null, TuiTime | null] {\n return [null, null];\n }\n\n protected valueIdenticalComparator(\n oldValue: [TuiDay | null, TuiTime | null],\n newValue: [TuiDay | null, TuiTime | null],\n ): boolean {\n return (\n nullableSame(oldValue[0], newValue[0], (a, b) => a.daySame(b)) &&\n nullableSame(\n oldValue[1],\n newValue[1],\n (a, b) => a.toString() === b.toString(),\n )\n );\n }\n\n private updateNativeValue(day: TuiDay) {\n const time = this.nativeValue.split(DATE_TIME_SEPARATOR)[1] || '';\n\n this.nativeValue = this.getDateTimeString(day, time);\n }\n\n private clampTime(time: TuiTime, day: TuiDay): TuiTime {\n const ms = time.toAbsoluteMilliseconds();\n const min =\n Array.isArray(this.min) && day.daySame(this.calendarMinDay)\n ? this.min[1].toAbsoluteMilliseconds()\n : -Infinity;\n const max =\n Array.isArray(this.max) && day.daySame(this.calendarMaxDay)\n ? this.max[1].toAbsoluteMilliseconds()\n : Infinity;\n\n return TuiTime.fromAbsoluteMilliseconds(clamp(ms, min, max));\n }\n\n @tuiPure\n private calculateMask(\n day: TuiDay | null,\n min: TuiDay,\n max: TuiDay,\n timeMode: TuiTimeMode,\n ): TuiTextMaskOptions {\n return {\n mask: [...TUI_DATE_MASK, ',', ' ', ...tuiCreateTimeMask(timeMode)],\n pipe: tuiCreateAutoCorrectedDateTimePipe({value: day, min, max}, timeMode),\n guide: false,\n };\n }\n\n @tuiPure\n private getDateTimeString(\n date: TuiDay | string,\n time: TuiTime | string | null,\n timeMode: TuiTimeMode = 'HH:MM',\n ): string {\n const dateString = date instanceof TuiDay ? date.toString() : date;\n const timeString = time instanceof TuiTime ? time.toString(timeMode) : time || '';\n\n return `${dateString}${DATE_TIME_SEPARATOR}${timeString}`;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiCalendarModule,\n TuiHostedDropdownModule,\n TuiLinkModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskModule} from 'angular2-text-mask';\nimport {TuiInputDateTimeComponent} from './input-date-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n PolymorpheusModule,\n TuiPreventDefaultModule,\n TuiCalendarModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputDateTimeComponent],\n exports: [TuiInputDateTimeComponent],\n})\nexport class TuiInputDateTimeModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@taiga-ui/kit/components/input-date-time/input-date-time.component.ts","ng://@taiga-ui/kit/components/input-date-time/input-date-time.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","__spread","concat","TIME_STREAM_FACTORY","TuiReplayControlValueChangesFactory","TuiInputDateTimeComponent","control","changeDetectorRef","textfieldSize","dateFormat","timeTexts$","dateTexts$","_this","_super","this","min","TUI_FIRST_DAY","max","TUI_LAST_DAY","disabledItemHandler","ALWAYS_FALSE_HANDLER","defaultActiveYearMonth","TuiMonth","currentLocal","timeMode","open","filler$","combineLatest","pipe","pluck","map","fillers","getDateTimeString","apply","month","__","constructor","prototype","create","__extends","DATE_FILLER_LENGTH","DATE_TIME_SEPARATOR","calculateMask","calendarMinDay","calendarMaxDay","textfield","nativeFocusableElement","focused","sizeBigger","size","nativeValue","_b","date","time","hasTimeInputChars","isArray","computedDisabled","readOnly","onClick","onValueChange","updateValue","_a","split","constants","parsedDate","TuiDay","normalizeParse","parsedTime","clampTime","TuiTime","fromString","onDayClick","day","modifiedTime","updateNativeValue","onHovered","hovered","updateHovered","onMonthChange","onOpenChange","onFocused","updateFocused","fillerLength","setTimeout","endsWith","slice","setDisabledState","writeValue","computedValue","getFallbackValue","valueIdenticalComparator","oldValue","newValue","nullableSame","a","daySame","toString","ms","toAbsoluteMilliseconds","Infinity","fromAbsoluteMilliseconds","clamp","mask","TUI_DATE_MASK","tuiCreateTimeMask","tuiCreateAutoCorrectedDateTimePipe","guide","dateString","timeString","NgControl","type","Optional","Self","Inject","args","ChangeDetectorRef","TuiTextfieldSizeDirective","TUI_TEXTFIELD_SIZE","TUI_DATE_FORMAT","Observable","TUI_TIME_TEXTS","TUI_DATE_TEXTS","Input","tuiDefaultProp","ViewChild","TuiPrimitiveTextfieldComponent","HostListener","tuiPure","TuiInputDateTimeComponent_1","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","providers","provide","TUI_FOCUSABLE_ITEM_ACCESSOR","useExisting","forwardRef","TUI_CALENDAR_DATA_STREAM","deps","useFactory","LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER","AbstractTuiControl","TuiInputDateTimeModule","NgModule","imports","CommonModule","TextMaskModule","PolymorpheusModule","TuiPreventDefaultModule","TuiCalendarModule","TuiSvgModule","TuiLinkModule","TuiHostedDropdownModule","TuiPrimitiveTextfieldModule","TuiValueAccessorModule","TuiTextfieldControllerModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n ALWAYS_FALSE_HANDLER,\n clamp,\n DATE_FILLER_LENGTH,\n nullableSame,\n TUI_DATE_FORMAT,\n TUI_FIRST_DAY,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDateMode,\n TuiDay,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMonth,\n tuiPure,\n TuiTime,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n sizeBigger,\n TUI_TEXTFIELD_SIZE,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldSizeDirective,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR, TUI_DATE_MASK} from '@taiga-ui/kit/constants';\nimport {LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {\n TUI_CALENDAR_DATA_STREAM,\n TUI_DATE_TEXTS,\n TUI_TIME_TEXTS,\n} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedDateTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {TuiReplayControlValueChangesFactory} from '@taiga-ui/kit/utils/miscellaneous';\nimport {combineLatest, Observable} from 'rxjs';\nimport {map, pluck} from 'rxjs/operators';\n\n// TODO: remove in ivy compilation\nexport const TIME_STREAM_FACTORY = TuiReplayControlValueChangesFactory;\n\n// @dynamic\n@Component({\n selector: 'tui-input-date-time',\n templateUrl: './input-date-time.template.html',\n styleUrls: ['./input-date-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputDateTimeComponent),\n },\n {\n provide: TUI_CALENDAR_DATA_STREAM,\n deps: [[new Optional(), new Self(), NgControl]],\n useFactory: TIME_STREAM_FACTORY,\n },\n LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\n})\nexport class TuiInputDateTimeComponent\n extends AbstractTuiControl<[TuiDay | null, TuiTime | null]>\n implements\n TuiWithOptionalMinMax<TuiDay | [TuiDay, TuiTime]>,\n TuiFocusableElementAccessor\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 disabledItemHandler: TuiBooleanHandler<TuiDay> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n defaultActiveYearMonth = TuiMonth.currentLocal();\n\n @Input()\n @tuiDefaultProp()\n timeMode: TuiTimeMode = 'HH:MM';\n\n open = false;\n readonly filler$ = combineLatest([\n this.dateTexts$.pipe(pluck(this.dateFormat)),\n this.timeTexts$.pipe(pluck(this.timeMode)),\n ]).pipe(map(fillers => this.getDateTimeString(...fillers)));\n\n private month: TuiMonth | null = null;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TEXTFIELD_SIZE)\n private readonly textfieldSize: TuiTextfieldSizeDirective,\n @Inject(TUI_DATE_FORMAT) readonly dateFormat: TuiDateMode,\n @Inject(TUI_TIME_TEXTS)\n readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_DATE_TEXTS)\n readonly dateTexts$: Observable<Record<TuiDateMode, string>>,\n ) {\n super(control, changeDetectorRef);\n }\n\n get fillerLength(): number {\n return DATE_FILLER_LENGTH + DATE_TIME_SEPARATOR.length + this.timeMode.length;\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(\n this.value[0],\n this.calendarMinDay,\n this.calendarMaxDay,\n this.timeMode,\n );\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): string {\n return sizeBigger(this.textfieldSize.size)\n ? 'tuiIconCalendarLarge'\n : 'tuiIconCalendar';\n }\n\n get computedValue(): string {\n const {value, nativeValue, timeMode} = this;\n const [date, time] = value;\n const hasTimeInputChars = nativeValue.length > DATE_FILLER_LENGTH;\n\n if (!date || (!time && hasTimeInputChars)) {\n return nativeValue;\n }\n\n return this.getDateTimeString(date, time, timeMode);\n }\n\n get calendarValue(): TuiDay | null {\n return this.value[0];\n }\n\n get calendarMinDay(): TuiDay {\n return Array.isArray(this.min) ? this.min[0] : this.min;\n }\n\n get calendarMaxDay(): TuiDay {\n return Array.isArray(this.max) ? this.max[0] : this.max;\n }\n\n get computedActiveYearMonth(): TuiMonth {\n return this.month || this.value[0] || this.defaultActiveYearMonth;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n get canOpen(): boolean {\n return !this.computedDisabled && !this.readOnly;\n }\n\n @HostListener('click')\n onClick() {\n this.open = !this.open;\n }\n\n onValueChange(value: string) {\n if (value.length < DATE_FILLER_LENGTH) {\n this.updateValue([null, null]);\n\n return;\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const parsedDate = TuiDay.normalizeParse(date);\n const parsedTime =\n time && time.length === this.timeMode.length\n ? this.clampTime(TuiTime.fromString(time), parsedDate)\n : null;\n\n this.open = false;\n this.updateValue([parsedDate, parsedTime]);\n }\n\n onDayClick(day: TuiDay) {\n const modifiedTime = this.value[1] && this.clampTime(this.value[1], day);\n\n this.updateValue([day, modifiedTime]);\n this.updateNativeValue(day);\n this.open = false;\n }\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n onMonthChange(month: TuiMonth) {\n this.month = month;\n }\n\n onOpenChange(open: boolean) {\n this.open = open;\n }\n\n onFocused(focused: boolean) {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value[0] === null ||\n this.value[1] !== null ||\n this.nativeValue.length <= this.fillerLength + DATE_TIME_SEPARATOR.length ||\n this.timeMode === 'HH:MM'\n ) {\n return;\n }\n\n const [, time] = this.nativeValue.split(DATE_TIME_SEPARATOR);\n\n if (!time) {\n return;\n }\n\n const parsedTime = TuiTime.fromString(time);\n\n this.updateValue([this.value[0], parsedTime]);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n setDisabledState() {\n super.setDisabledState();\n this.open = false;\n }\n\n writeValue(value: [TuiDay | null, TuiTime | null] | null) {\n super.writeValue(value);\n\n this.nativeValue = value && (value[0] || value[1]) ? this.computedValue : '';\n }\n\n protected getFallbackValue(): [TuiDay | null, TuiTime | null] {\n return [null, null];\n }\n\n protected valueIdenticalComparator(\n oldValue: [TuiDay | null, TuiTime | null],\n newValue: [TuiDay | null, TuiTime | null],\n ): boolean {\n return (\n nullableSame(oldValue[0], newValue[0], (a, b) => a.daySame(b)) &&\n nullableSame(\n oldValue[1],\n newValue[1],\n (a, b) => a.toString() === b.toString(),\n )\n );\n }\n\n private updateNativeValue(day: TuiDay) {\n const time = this.nativeValue.split(DATE_TIME_SEPARATOR)[1] || '';\n\n this.nativeValue = this.getDateTimeString(day, time);\n }\n\n private clampTime(time: TuiTime, day: TuiDay): TuiTime {\n const ms = time.toAbsoluteMilliseconds();\n const min =\n Array.isArray(this.min) && day.daySame(this.calendarMinDay)\n ? this.min[1].toAbsoluteMilliseconds()\n : -Infinity;\n const max =\n Array.isArray(this.max) && day.daySame(this.calendarMaxDay)\n ? this.max[1].toAbsoluteMilliseconds()\n : Infinity;\n\n return TuiTime.fromAbsoluteMilliseconds(clamp(ms, min, max));\n }\n\n @tuiPure\n private calculateMask(\n day: TuiDay | null,\n min: TuiDay,\n max: TuiDay,\n timeMode: TuiTimeMode,\n ): TuiTextMaskOptions {\n return {\n mask: [...TUI_DATE_MASK, ',', ' ', ...tuiCreateTimeMask(timeMode)],\n pipe: tuiCreateAutoCorrectedDateTimePipe({value: day, min, max}, timeMode),\n guide: false,\n };\n }\n\n @tuiPure\n private getDateTimeString(\n date: TuiDay | string,\n time: TuiTime | string | null,\n timeMode: TuiTimeMode = 'HH:MM',\n ): string {\n const dateString = date instanceof TuiDay ? date.toString() : date;\n const timeString = time instanceof TuiTime ? time.toString(timeMode) : time || '';\n\n return `${dateString}${DATE_TIME_SEPARATOR}${timeString}`;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiCalendarModule,\n TuiHostedDropdownModule,\n TuiLinkModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TextMaskModule} from 'angular2-text-mask';\nimport {TuiInputDateTimeComponent} from './input-date-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n PolymorpheusModule,\n TuiPreventDefaultModule,\n TuiCalendarModule,\n TuiSvgModule,\n TuiLinkModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputDateTimeComponent],\n exports: [TuiInputDateTimeComponent],\n})\nexport class TuiInputDateTimeModule {}\n"]}
@@ -447,7 +447,7 @@
447
447
  TuiInputDateComponent = TuiInputDateComponent_1 = __decorate([
448
448
  core.Component({
449
449
  selector: 'tui-input-date',
450
- template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n *tuiLet=\"filler$ | async as filler\"\n automation-id=\"tui-input-date-range__textfield\"\n class=\"textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [filler]=\"getComputedFiller(filler)\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [focusable]=\"computedFocusable\"\n [iconContent]=\"computedMobile ? iconContent : calendarIcon\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"computedMask\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id=\"tui-input-date-range__icon\"\n [class.icon]=\"!computedDisabled\"\n [src]=\"calendarIcon\"\n (click)=\"onMobileClick()\"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown=\"polymorpheus\" polymorpheus>\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date__calendar\"\n [min]=\"min\"\n [max]=\"max\"\n [markerHandler]=\"markerHandler\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n <div\n *ngIf=\"items.length === 1\"\n tuiPreventDefault=\"mousedown\"\n class=\"button\"\n >\n <button tuiLink type=\"button\" (click)=\"onDayClick(items[0].day)\">\n {{items[0]}}\n </button>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n",
450
+ template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdown\"\n [open]=\"open && canOpen\"\n (openChange)=\"onOpenChange($event)\"\n>\n <tui-primitive-textfield\n *tuiLet=\"filler$ | async as filler\"\n automation-id=\"tui-input-date-range__textfield\"\n tuiValueAccessor\n tuiTextfieldInputMode=\"numeric\"\n class=\"textfield\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [invalid]=\"computedInvalid\"\n [filler]=\"getComputedFiller(filler)\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [focusable]=\"computedFocusable\"\n [iconContent]=\"computedMobile ? iconContent : calendarIcon\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"computedMask\"\n [value]=\"computedValue\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #iconContent>\n <tui-svg\n automation-id=\"tui-input-date-range__icon\"\n [class.icon]=\"!computedDisabled\"\n [src]=\"calendarIcon\"\n (click)=\"onMobileClick()\"\n ></tui-svg>\n </ng-template>\n\n <ng-template #dropdown=\"polymorpheus\" polymorpheus>\n <tui-calendar\n tuiPreventDefault=\"mousedown\"\n automation-id=\"tui-input-date__calendar\"\n [min]=\"min\"\n [max]=\"max\"\n [markerHandler]=\"markerHandler\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [month]=\"computedActiveYearMonth\"\n [value]=\"value\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n ></tui-calendar>\n <div\n *ngIf=\"items.length === 1\"\n tuiPreventDefault=\"mousedown\"\n class=\"button\"\n >\n <button tuiLink type=\"button\" (click)=\"onDayClick(items[0].day)\">\n {{ items[0] }}\n </button>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n",
451
451
  changeDetection: core.ChangeDetectionStrategy.OnPush,
452
452
  providers: [
453
453
  {
@@ -461,7 +461,7 @@
461
461
  },
462
462
  providers.LEFT_ALIGNED_DROPDOWN_CONTROLLER_PROVIDER,
463
463
  ],
464
- styles: [":host{display:block;border-radius:var(--tui-radius-m)}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit}.icon{pointer-events:auto}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}.button button{flex:1;text-align:center}"]
464
+ styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}.icon{pointer-events:auto}.button{display:flex;height:2.75rem;justify-content:center;box-shadow:inset 0 1px var(--tui-base-03)}.button button{flex:1;text-align:center}"]
465
465
  }),
466
466
  __param(0, core.Optional()),
467
467
  __param(0, core.Self()),