@taiga-ui/kit 2.16.2 → 2.19.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 (239) hide show
  1. package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
  2. package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
  5. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js +1 -1
  6. package/bundles/taiga-ui-kit-components-badged-content.umd.min.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +2 -2
  8. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
  10. package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +5 -1
  12. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
  14. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +3 -0
  16. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
  18. package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-input-file.umd.js +4 -1
  24. package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
  26. package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-input-inline.umd.js +1 -1
  28. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-input-inline.umd.min.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +1 -1
  31. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +1 -1
  33. package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -5
  37. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
  39. package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-progress.umd.js +136 -9
  41. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  42. package/bundles/taiga-ui-kit-components-progress.umd.min.js +2 -2
  43. package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
  44. package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -4
  45. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-stepper.umd.min.js +1 -1
  47. package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components-tabs.umd.js +1 -4
  49. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  50. package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
  51. package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
  52. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
  56. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -1
  57. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-kit-enums.umd.js +85 -8
  59. package/bundles/taiga-ui-kit-enums.umd.js.map +1 -1
  60. package/bundles/taiga-ui-kit-enums.umd.min.js +1 -1
  61. package/bundles/taiga-ui-kit-enums.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-kit-pipes-stringify-content.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-pipes-stringify-content.umd.min.js.map +1 -1
  64. package/bundles/taiga-ui-kit-pipes-stringify.umd.js +258 -0
  65. package/bundles/taiga-ui-kit-pipes-stringify.umd.js.map +1 -0
  66. package/bundles/taiga-ui-kit-pipes-stringify.umd.min.js +16 -0
  67. package/bundles/taiga-ui-kit-pipes-stringify.umd.min.js.map +1 -0
  68. package/bundles/taiga-ui-kit-pipes.umd.js +12 -4
  69. package/bundles/taiga-ui-kit-pipes.umd.js.map +1 -1
  70. package/bundles/taiga-ui-kit-pipes.umd.min.js +1 -1
  71. package/components/badged-content/taiga-ui-kit-components-badged-content.metadata.json +1 -1
  72. package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
  73. package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
  74. package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
  75. package/components/input-date-range/input-date-range.component.d.ts +1 -1
  76. package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
  77. package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
  78. package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
  79. package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
  80. package/components/progress/index.d.ts +2 -0
  81. package/components/progress/progress-circle/progress-circle.component.d.ts +15 -0
  82. package/components/progress/progress-segmented/progress-segmented.component.d.ts +10 -0
  83. package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
  84. package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
  85. package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
  86. package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
  87. package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
  88. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.metadata.json +1 -1
  89. package/esm2015/abstract/slider/slider.js +1 -1
  90. package/esm2015/components/badged-content/badged-content.component.js +1 -1
  91. package/esm2015/components/calendar-month/calendar-month.component.js +3 -3
  92. package/esm2015/components/data-list-wrapper/data-list-wrapper.module.js +7 -3
  93. package/esm2015/components/input-date/input-date.component.js +1 -1
  94. package/esm2015/components/input-date-range/input-date-range.component.js +4 -1
  95. package/esm2015/components/input-date-time/input-date-time.component.js +1 -1
  96. package/esm2015/components/input-file/input-file.component.js +5 -2
  97. package/esm2015/components/input-inline/input-inline.module.js +2 -2
  98. package/esm2015/components/input-phone/input-phone.component.js +1 -1
  99. package/esm2015/components/input-phone-international/input-phone-international.component.js +2 -2
  100. package/esm2015/components/input-tag/input-tag.component.js +6 -6
  101. package/esm2015/components/progress/index.js +3 -1
  102. package/esm2015/components/progress/progress-circle/progress-circle.component.js +69 -0
  103. package/esm2015/components/progress/progress-label/progress-label.component.js +3 -3
  104. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +48 -0
  105. package/esm2015/components/progress/progress.module.js +11 -4
  106. package/esm2015/components/stepper/stepper.component.js +2 -5
  107. package/esm2015/components/tabs/tabs/tabs.component.js +2 -5
  108. package/esm2015/components/text-area/text-area.component.js +1 -1
  109. package/esm2015/components/toggle/toggle.component.js +1 -1
  110. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +1 -1
  111. package/esm2015/enums/borders.js +9 -1
  112. package/esm2015/enums/dropdown-position.js +10 -1
  113. package/esm2015/enums/file-state.js +11 -1
  114. package/esm2015/enums/marker-icon-mode.js +15 -1
  115. package/esm2015/enums/status.js +13 -1
  116. package/esm2015/enums/step-state.js +10 -1
  117. package/esm2015/enums/text-align.js +10 -1
  118. package/esm2015/pipes/index.js +2 -1
  119. package/esm2015/pipes/stringify/index.js +3 -0
  120. package/esm2015/pipes/stringify/stringify.module.js +13 -0
  121. package/esm2015/pipes/stringify/stringify.pipe.js +14 -0
  122. package/esm2015/pipes/stringify/taiga-ui-kit-pipes-stringify.js +5 -0
  123. package/esm2015/pipes/stringify-content/stringify-content.pipe.js +1 -1
  124. package/esm5/abstract/slider/slider.js +1 -1
  125. package/esm5/components/badged-content/badged-content.component.js +1 -1
  126. package/esm5/components/calendar-month/calendar-month.component.js +3 -3
  127. package/esm5/components/data-list-wrapper/data-list-wrapper.module.js +7 -3
  128. package/esm5/components/input-date/input-date.component.js +1 -1
  129. package/esm5/components/input-date-range/input-date-range.component.js +4 -1
  130. package/esm5/components/input-date-time/input-date-time.component.js +1 -1
  131. package/esm5/components/input-file/input-file.component.js +5 -2
  132. package/esm5/components/input-inline/input-inline.module.js +2 -2
  133. package/esm5/components/input-phone/input-phone.component.js +1 -1
  134. package/esm5/components/input-phone-international/input-phone-international.component.js +2 -2
  135. package/esm5/components/input-tag/input-tag.component.js +6 -6
  136. package/esm5/components/progress/index.js +3 -1
  137. package/esm5/components/progress/progress-circle/progress-circle.component.js +78 -0
  138. package/esm5/components/progress/progress-label/progress-label.component.js +3 -3
  139. package/esm5/components/progress/progress-segmented/progress-segmented.component.js +50 -0
  140. package/esm5/components/progress/progress.module.js +11 -4
  141. package/esm5/components/stepper/stepper.component.js +2 -5
  142. package/esm5/components/tabs/tabs/tabs.component.js +2 -5
  143. package/esm5/components/text-area/text-area.component.js +1 -1
  144. package/esm5/components/toggle/toggle.component.js +1 -1
  145. package/esm5/directives/dropdown-context/dropdown-context.directive.js +1 -1
  146. package/esm5/enums/borders.js +9 -1
  147. package/esm5/enums/dropdown-position.js +10 -1
  148. package/esm5/enums/file-state.js +11 -1
  149. package/esm5/enums/marker-icon-mode.js +15 -1
  150. package/esm5/enums/status.js +13 -1
  151. package/esm5/enums/step-state.js +10 -1
  152. package/esm5/enums/text-align.js +10 -1
  153. package/esm5/pipes/index.js +2 -1
  154. package/esm5/pipes/stringify/index.js +3 -0
  155. package/esm5/pipes/stringify/stringify.module.js +16 -0
  156. package/esm5/pipes/stringify/stringify.pipe.js +17 -0
  157. package/esm5/pipes/stringify/taiga-ui-kit-pipes-stringify.js +5 -0
  158. package/esm5/pipes/stringify-content/stringify-content.pipe.js +1 -1
  159. package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
  160. package/fesm2015/taiga-ui-kit-components-badged-content.js +1 -1
  161. package/fesm2015/taiga-ui-kit-components-calendar-month.js +2 -2
  162. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  163. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +6 -2
  164. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  165. package/fesm2015/taiga-ui-kit-components-input-date-range.js +3 -0
  166. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  167. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  168. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  169. package/fesm2015/taiga-ui-kit-components-input-file.js +4 -1
  170. package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
  171. package/fesm2015/taiga-ui-kit-components-input-inline.js +1 -1
  172. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  173. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +1 -1
  174. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  175. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  176. package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -5
  177. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  178. package/fesm2015/taiga-ui-kit-components-progress.js +121 -9
  179. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  180. package/fesm2015/taiga-ui-kit-components-stepper.js +1 -4
  181. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  182. package/fesm2015/taiga-ui-kit-components-tabs.js +1 -4
  183. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  184. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  185. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  186. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  187. package/fesm2015/taiga-ui-kit-enums.js +80 -0
  188. package/fesm2015/taiga-ui-kit-enums.js.map +1 -1
  189. package/fesm2015/taiga-ui-kit-pipes-stringify-content.js.map +1 -1
  190. package/fesm2015/taiga-ui-kit-pipes-stringify.js +29 -0
  191. package/fesm2015/taiga-ui-kit-pipes-stringify.js.map +1 -0
  192. package/fesm2015/taiga-ui-kit-pipes.js +1 -0
  193. package/fesm2015/taiga-ui-kit-pipes.js.map +1 -1
  194. package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
  195. package/fesm5/taiga-ui-kit-components-badged-content.js +1 -1
  196. package/fesm5/taiga-ui-kit-components-calendar-month.js +2 -2
  197. package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
  198. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +6 -2
  199. package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  200. package/fesm5/taiga-ui-kit-components-input-date-range.js +3 -0
  201. package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
  202. package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
  203. package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
  204. package/fesm5/taiga-ui-kit-components-input-file.js +4 -1
  205. package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
  206. package/fesm5/taiga-ui-kit-components-input-inline.js +1 -1
  207. package/fesm5/taiga-ui-kit-components-input-inline.js.map +1 -1
  208. package/fesm5/taiga-ui-kit-components-input-phone-international.js +1 -1
  209. package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  210. package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
  211. package/fesm5/taiga-ui-kit-components-input-tag.js +5 -5
  212. package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
  213. package/fesm5/taiga-ui-kit-components-progress.js +132 -9
  214. package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
  215. package/fesm5/taiga-ui-kit-components-stepper.js +1 -4
  216. package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
  217. package/fesm5/taiga-ui-kit-components-tabs.js +1 -4
  218. package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
  219. package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
  220. package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
  221. package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -1
  222. package/fesm5/taiga-ui-kit-enums.js +80 -0
  223. package/fesm5/taiga-ui-kit-enums.js.map +1 -1
  224. package/fesm5/taiga-ui-kit-pipes-stringify-content.js.map +1 -1
  225. package/fesm5/taiga-ui-kit-pipes-stringify.js +35 -0
  226. package/fesm5/taiga-ui-kit-pipes-stringify.js.map +1 -0
  227. package/fesm5/taiga-ui-kit-pipes.js +1 -0
  228. package/fesm5/taiga-ui-kit-pipes.js.map +1 -1
  229. package/package.json +4 -4
  230. package/pipes/index.d.ts +1 -0
  231. package/pipes/stringify/index.d.ts +2 -0
  232. package/pipes/stringify/package.json +13 -0
  233. package/pipes/stringify/stringify.module.d.ts +2 -0
  234. package/pipes/stringify/stringify.pipe.d.ts +5 -0
  235. package/pipes/stringify/taiga-ui-kit-pipes-stringify.d.ts +4 -0
  236. package/pipes/stringify/taiga-ui-kit-pipes-stringify.metadata.json +1 -0
  237. package/pipes/stringify-content/stringify-content.pipe.d.ts +1 -2
  238. package/pipes/stringify-content/taiga-ui-kit-pipes-stringify-content.metadata.json +1 -1
  239. package/pipes/taiga-ui-kit-pipes.metadata.json +1 -1
@@ -1 +1,13 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9lbnVtcy8iLCJzb3VyY2VzIjpbInN0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Ugam9pbiB0eXBlIHtAbGluayBUdWlTdGF0dXNUfVxuICovXG5leHBvcnQgY29uc3QgZW51bSBUdWlTdGF0dXMge1xuICAgIERlZmF1bHQgPSAnZGVmYXVsdCcsXG4gICAgUHJpbWFyeSA9ICdwcmltYXJ5JyxcbiAgICBDdXN0b20gPSAnY3VzdG9tJyxcbiAgICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxuICAgIEVycm9yID0gJ2Vycm9yJyxcbiAgICBXYXJuaW5nID0gJ3dhcm5pbmcnLFxufVxuIl19
1
+ /**
2
+ * @deprecated use join type {@link TuiStatusT}
3
+ */
4
+ export var TuiStatus;
5
+ (function (TuiStatus) {
6
+ TuiStatus["Default"] = "default";
7
+ TuiStatus["Primary"] = "primary";
8
+ TuiStatus["Custom"] = "custom";
9
+ TuiStatus["Success"] = "success";
10
+ TuiStatus["Error"] = "error";
11
+ TuiStatus["Warning"] = "warning";
12
+ })(TuiStatus || (TuiStatus = {}));
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9lbnVtcy8iLCJzb3VyY2VzIjpbInN0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFrQixTQU9qQjtBQVBELFdBQWtCLFNBQVM7SUFDdkIsZ0NBQW1CLENBQUE7SUFDbkIsZ0NBQW1CLENBQUE7SUFDbkIsOEJBQWlCLENBQUE7SUFDakIsZ0NBQW1CLENBQUE7SUFDbkIsNEJBQWUsQ0FBQTtJQUNmLGdDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFQaUIsU0FBUyxLQUFULFNBQVMsUUFPMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXByZWNhdGVkIHVzZSBqb2luIHR5cGUge0BsaW5rIFR1aVN0YXR1c1R9XG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIFR1aVN0YXR1cyB7XG4gICAgRGVmYXVsdCA9ICdkZWZhdWx0JyxcbiAgICBQcmltYXJ5ID0gJ3ByaW1hcnknLFxuICAgIEN1c3RvbSA9ICdjdXN0b20nLFxuICAgIFN1Y2Nlc3MgPSAnc3VjY2VzcycsXG4gICAgRXJyb3IgPSAnZXJyb3InLFxuICAgIFdhcm5pbmcgPSAnd2FybmluZycsXG59XG4iXX0=
@@ -1 +1,10 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvZW51bXMvIiwic291cmNlcyI6WyJzdGVwLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXByZWNhdGVkIHVzZSBzdHJpbmcgdmFsdWVzXG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIFR1aVN0ZXBTdGF0ZSB7XG4gICAgTm9ybWFsID0gJ25vcm1hbCcsXG4gICAgRXJyb3IgPSAnZXJyb3InLFxuICAgIFBhc3MgPSAncGFzcycsXG59XG4iXX0=
1
+ /**
2
+ * @deprecated use string values
3
+ */
4
+ export var TuiStepState;
5
+ (function (TuiStepState) {
6
+ TuiStepState["Normal"] = "normal";
7
+ TuiStepState["Error"] = "error";
8
+ TuiStepState["Pass"] = "pass";
9
+ })(TuiStepState || (TuiStepState = {}));
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvZW51bXMvIiwic291cmNlcyI6WyJzdGVwLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQWtCLFlBSWpCO0FBSkQsV0FBa0IsWUFBWTtJQUMxQixpQ0FBaUIsQ0FBQTtJQUNqQiwrQkFBZSxDQUFBO0lBQ2YsNkJBQWEsQ0FBQTtBQUNqQixDQUFDLEVBSmlCLFlBQVksS0FBWixZQUFZLFFBSTdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Ugc3RyaW5nIHZhbHVlc1xuICovXG5leHBvcnQgY29uc3QgZW51bSBUdWlTdGVwU3RhdGUge1xuICAgIE5vcm1hbCA9ICdub3JtYWwnLFxuICAgIEVycm9yID0gJ2Vycm9yJyxcbiAgICBQYXNzID0gJ3Bhc3MnLFxufVxuIl19
@@ -1 +1,10 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hbGlnbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvZW51bXMvIiwic291cmNlcyI6WyJ0ZXh0LWFsaWduLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXByZWNhdGVkIHVzZSBzdHJpbmcgdmFsdWVzXG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIFR1aVRleHRBbGlnbiB7XG4gICAgTGVmdCA9ICdsZWZ0JyxcbiAgICBDZW50ZXIgPSAnY2VudGVyJyxcbiAgICBSaWdodCA9ICdyaWdodCcsXG59XG4iXX0=
1
+ /**
2
+ * @deprecated use string values
3
+ */
4
+ export var TuiTextAlign;
5
+ (function (TuiTextAlign) {
6
+ TuiTextAlign["Left"] = "left";
7
+ TuiTextAlign["Center"] = "center";
8
+ TuiTextAlign["Right"] = "right";
9
+ })(TuiTextAlign || (TuiTextAlign = {}));
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hbGlnbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvZW51bXMvIiwic291cmNlcyI6WyJ0ZXh0LWFsaWduLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQWtCLFlBSWpCO0FBSkQsV0FBa0IsWUFBWTtJQUMxQiw2QkFBYSxDQUFBO0lBQ2IsaUNBQWlCLENBQUE7SUFDakIsK0JBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSmlCLFlBQVksS0FBWixZQUFZLFFBSTdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Ugc3RyaW5nIHZhbHVlc1xuICovXG5leHBvcnQgY29uc3QgZW51bSBUdWlUZXh0QWxpZ24ge1xuICAgIExlZnQgPSAnbGVmdCcsXG4gICAgQ2VudGVyID0gJ2NlbnRlcicsXG4gICAgUmlnaHQgPSAncmlnaHQnLFxufVxuIl19
@@ -1,3 +1,4 @@
1
1
  export * from '@taiga-ui/kit/pipes/filter-by-input';
2
+ export * from '@taiga-ui/kit/pipes/stringify';
2
3
  export * from '@taiga-ui/kit/pipes/stringify-content';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L3BpcGVzLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9waXBlcy9maWx0ZXItYnktaW5wdXQnO1xuZXhwb3J0ICogZnJvbSAnQHRhaWdhLXVpL2tpdC9waXBlcy9zdHJpbmdpZnktY29udGVudCc7XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L3BpcGVzLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsdUNBQXVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L3BpcGVzL2ZpbHRlci1ieS1pbnB1dCc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L3BpcGVzL3N0cmluZ2lmeSc7XG5leHBvcnQgKiBmcm9tICdAdGFpZ2EtdWkva2l0L3BpcGVzL3N0cmluZ2lmeS1jb250ZW50JztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './stringify.module';
2
+ export * from './stringify.pipe';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L3BpcGVzL3N0cmluZ2lmeS8iLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3RyaW5naWZ5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0cmluZ2lmeS5waXBlJztcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ import { __decorate } from "tslib";
2
+ import { NgModule } from '@angular/core';
3
+ import { TuiStringifyPipe } from './stringify.pipe';
4
+ var TuiStringifyPipeModule = /** @class */ (function () {
5
+ function TuiStringifyPipeModule() {
6
+ }
7
+ TuiStringifyPipeModule = __decorate([
8
+ NgModule({
9
+ declarations: [TuiStringifyPipe],
10
+ exports: [TuiStringifyPipe],
11
+ })
12
+ ], TuiStringifyPipeModule);
13
+ return TuiStringifyPipeModule;
14
+ }());
15
+ export { TuiStringifyPipeModule };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvcGlwZXMvc3RyaW5naWZ5LyIsInNvdXJjZXMiOlsic3RyaW5naWZ5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQU1sRDtJQUFBO0lBQXFDLENBQUM7SUFBekIsc0JBQXNCO1FBSmxDLFFBQVEsQ0FBQztZQUNOLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO1lBQ2hDLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO1NBQzlCLENBQUM7T0FDVyxzQkFBc0IsQ0FBRztJQUFELDZCQUFDO0NBQUEsQUFBdEMsSUFBc0M7U0FBekIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aVN0cmluZ2lmeVBpcGV9IGZyb20gJy4vc3RyaW5naWZ5LnBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1R1aVN0cmluZ2lmeVBpcGVdLFxuICAgIGV4cG9ydHM6IFtUdWlTdHJpbmdpZnlQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpU3RyaW5naWZ5UGlwZU1vZHVsZSB7fVxuIl19
@@ -0,0 +1,17 @@
1
+ import { __decorate } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ var TuiStringifyPipe = /** @class */ (function () {
4
+ function TuiStringifyPipe() {
5
+ }
6
+ TuiStringifyPipe.prototype.transform = function (key) {
7
+ return function (value) { var _a; return String((_a = value[key]) !== null && _a !== void 0 ? _a : ''); };
8
+ };
9
+ TuiStringifyPipe = __decorate([
10
+ Pipe({
11
+ name: 'tuiStringify',
12
+ })
13
+ ], TuiStringifyPipe);
14
+ return TuiStringifyPipe;
15
+ }());
16
+ export { TuiStringifyPipe };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5LnBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L3BpcGVzL3N0cmluZ2lmeS8iLCJzb3VyY2VzIjpbInN0cmluZ2lmeS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQU1sRDtJQUFBO0lBTUEsQ0FBQztJQUxVLG9DQUFTLEdBQWhCLFVBQ0ksR0FBTTtRQUVOLE9BQU8sVUFBQSxLQUFLLFlBQUksT0FBQSxNQUFNLE9BQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxtQ0FBSSxFQUFFLENBQUMsQ0FBQSxFQUFBLENBQUM7SUFDN0MsQ0FBQztJQUxRLGdCQUFnQjtRQUg1QixJQUFJLENBQUM7WUFDRixJQUFJLEVBQUUsY0FBYztTQUN2QixDQUFDO09BQ1csZ0JBQWdCLENBTTVCO0lBQUQsdUJBQUM7Q0FBQSxBQU5ELElBTUM7U0FOWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICd0dWlTdHJpbmdpZnknLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdHJpbmdpZnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHVibGljIHRyYW5zZm9ybTxLIGV4dGVuZHMgc3RyaW5nPihcbiAgICAgICAga2V5OiBLLFxuICAgICk6IFR1aVN0cmluZ0hhbmRsZXI8UmVhZG9ubHk8UmVjb3JkPEssIHVua25vd24+ICYgUmVjb3JkPGFueSwgYW55Pj4+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlID0+IFN0cmluZyh2YWx1ZVtrZXldID8/ICcnKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LXBpcGVzLXN0cmluZ2lmeS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvcGlwZXMvc3RyaW5naWZ5LyIsInNvdXJjZXMiOlsidGFpZ2EtdWkta2l0LXBpcGVzLXN0cmluZ2lmeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -17,4 +17,4 @@ var TuiStringifyContentPipe = /** @class */ (function () {
17
17
  return TuiStringifyContentPipe;
18
18
  }());
19
19
  export { TuiStringifyContentPipe };
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5LWNvbnRlbnQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvcGlwZXMvc3RyaW5naWZ5LWNvbnRlbnQvIiwic291cmNlcyI6WyJzdHJpbmdpZnktY29udGVudC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQVFsRDtJQUFBO0lBTUEsQ0FBQztJQUxHLDJDQUFTLEdBQVQsVUFDSSxTQUE4QjtRQUU5QixPQUFPLFVBQUMsRUFBVztnQkFBVix3QkFBUztZQUFNLE9BQUEsU0FBUyxDQUFDLFNBQVMsQ0FBQztRQUFwQixDQUFvQixDQUFDO0lBQ2pELENBQUM7SUFMUSx1QkFBdUI7UUFIbkMsSUFBSSxDQUFDO1lBQ0YsSUFBSSxFQUFFLHFCQUFxQjtTQUM5QixDQUFDO09BQ1csdUJBQXVCLENBTW5DO0lBQUQsOEJBQUM7Q0FBQSxBQU5ELElBTUM7U0FOWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpVmFsdWVDb250ZW50Q29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3R1aVN0cmluZ2lmeUNvbnRlbnQnLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdHJpbmdpZnlDb250ZW50UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybTxUPihcbiAgICAgICAgc3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFQ+LFxuICAgICk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpVmFsdWVDb250ZW50Q29udGV4dDxUPj4ge1xuICAgICAgICByZXR1cm4gKHskaW1wbGljaXR9KSA9PiBzdHJpbmdpZnkoJGltcGxpY2l0KTtcbiAgICB9XG59XG4iXX0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5LWNvbnRlbnQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvcGlwZXMvc3RyaW5naWZ5LWNvbnRlbnQvIiwic291cmNlcyI6WyJzdHJpbmdpZnktY29udGVudC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQU9sRDtJQUFBO0lBTUEsQ0FBQztJQUxHLDJDQUFTLEdBQVQsVUFDSSxTQUE4QjtRQUU5QixPQUFPLFVBQUMsRUFBVztnQkFBVix3QkFBUztZQUFNLE9BQUEsU0FBUyxDQUFDLFNBQVMsQ0FBQztRQUFwQixDQUFvQixDQUFDO0lBQ2pELENBQUM7SUFMUSx1QkFBdUI7UUFIbkMsSUFBSSxDQUFDO1lBQ0YsSUFBSSxFQUFFLHFCQUFxQjtTQUM5QixDQUFDO09BQ1csdUJBQXVCLENBTW5DO0lBQUQsOEJBQUM7Q0FBQSxBQU5ELElBTUM7U0FOWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlTdHJpbmdIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpVmFsdWVDb250ZW50Q29udGV4dH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3R1aVN0cmluZ2lmeUNvbnRlbnQnLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTdHJpbmdpZnlDb250ZW50UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybTxUPihcbiAgICAgICAgc3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFQ+LFxuICAgICk6IFR1aVN0cmluZ0hhbmRsZXI8VHVpVmFsdWVDb250ZW50Q29udGV4dDxUPj4ge1xuICAgICAgICByZXR1cm4gKHskaW1wbGljaXR9KSA9PiBzdHJpbmdpZnkoJGltcGxpY2l0KTtcbiAgICB9XG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-abstract.js","sources":["ng://@taiga-ui/kit/abstract/input-slider.ts","ng://@taiga-ui/kit/abstract/slider/slider.ts","ng://@taiga-ui/kit/abstract/taiga-ui-kit-abstract.ts"],"sourcesContent":["import {Directive, HostBinding, Input} from '@angular/core';\nimport {\n AbstractTuiControl,\n clamp,\n round,\n tuiDefaultProp,\n TuiInputModeT,\n TuiMapper,\n} from '@taiga-ui/cdk';\nimport {\n maskedNumberStringToNumber,\n NumberFormatSettings,\n TuiBrightness,\n tuiCreateAutoCorrectedNumberPipe,\n tuiCreateNumberMask,\n TuiModeDirective,\n TuiPluralize,\n tuiPluralizeToICU,\n TuiSizeL,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\n\nexport function quantumAssertion(quantum: number): boolean {\n return quantum > 0;\n}\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class AbstractTuiInputSlider<T>\n extends AbstractTuiControl<T>\n implements TuiWithOptionalMinMax<number> {\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n minLabel = '';\n\n @Input()\n @tuiDefaultProp()\n maxLabel = '';\n\n // TODO: remove setter in v3.0:\n @Input()\n @tuiDefaultProp()\n set pluralize(pluralize: TuiPluralize | Record<string, string> | null) {\n this.pluralizeMap = Array.isArray(pluralize)\n ? tuiPluralizeToICU(pluralize)\n : pluralize;\n }\n\n @Input()\n @tuiDefaultProp()\n segmentsPluralize: TuiPluralize | null = null;\n\n @Input()\n @tuiDefaultProp()\n segments = 0;\n\n @Input()\n @tuiDefaultProp()\n steps = 0;\n\n @Input()\n @tuiDefaultProp(quantumAssertion, 'Quantum must be positive')\n quantum = 1;\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n size: TuiSizeL = 'l';\n\n mask: TuiMapper<number, TuiTextMaskOptions> = (quantum: number, min: number) => ({\n mask: tuiCreateNumberMask({\n allowNegative: min < 0,\n allowDecimal: !Number.isInteger(quantum),\n decimalSymbol: this.numberFormat.decimalSeparator,\n thousandSymbol: this.numberFormat.thousandSeparator,\n }),\n pipe: tuiCreateAutoCorrectedNumberPipe(\n 0,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n ),\n guide: false,\n });\n\n pluralizeMap: Record<string, string> | null = null;\n\n protected abstract readonly modeDirective: TuiModeDirective | null;\n\n protected abstract readonly numberFormat: NumberFormatSettings;\n\n @HostBinding('class._segmented')\n get segmented(): boolean {\n return this.segments > 0;\n }\n\n get hasPlaceholder(): boolean {\n return this.size === 'l';\n }\n\n get inputMode(): TuiInputModeT {\n return Number.isInteger(this.quantum) ? 'numeric' : 'decimal';\n }\n\n get length(): number {\n return this.max - this.min;\n }\n\n get computedSteps(): number {\n return this.steps || this.length / this.quantum;\n }\n\n get step(): number {\n return this.length / this.computedSteps;\n }\n\n @HostBinding('attr.data-mode')\n get hostMode(): TuiBrightness | null {\n return this.modeDirective && this.modeDirective.mode;\n }\n\n abstract get showMinLabel(): boolean;\n\n abstract get showMaxLabel(): boolean;\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n protected valueGuard(value: number): number {\n return this.quantum\n ? clamp(\n round(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n ),\n this.min,\n this.max,\n )\n : clamp(value, this.min, this.max);\n }\n\n protected capInputValue(value: string, max: number = this.max): number | null {\n const capped = Math.min(\n maskedNumberStringToNumber(\n value,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n ),\n max,\n );\n\n if (this.min < 0 && capped < this.min) {\n return this.min;\n }\n\n return isNaN(capped) || capped < this.min ? null : capped;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n clamp,\n nonNegativeFiniteAssertion,\n quantize,\n round,\n setNativeFocused,\n tuiDefaultProp,\n TuiEventWith,\n TuiNativeFocusableElement,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {\n TuiPluralize,\n tuiPluralizeToICU,\n TuiSizeS,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\nimport {Observable, race, Subject} from 'rxjs';\nimport {map, switchMap, takeUntil} from 'rxjs/operators';\n\nexport const SLIDER_KEYBOARD_STEP = 0.05;\nexport const DOT_WIDTH: {[key: string]: number} = {\n s: 8,\n m: 16,\n};\n\n/**\n * @awful TODO: refactor\n * @internal\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiSlider<T>\n extends AbstractTuiControl<T>\n implements TuiWithOptionalMinMax<number>\n{\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n segments = 0;\n\n @Input()\n @tuiDefaultProp()\n steps = 0;\n\n @Input()\n @tuiDefaultProp(nonNegativeFiniteAssertion, 'Quantum must be a non-negative number')\n quantum = 0;\n\n // TODO: remove setter in v3.0:\n @Input()\n @tuiDefaultProp()\n set pluralize(pluralize: TuiPluralize | Record<string, string> | null) {\n this.pluralizeMap = Array.isArray(pluralize)\n ? tuiPluralizeToICU(pluralize)\n : pluralize;\n }\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS = 'm';\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n focusVisibleLeft = false;\n\n focusVisibleRight = false;\n\n pluralizeMap: Record<string, string> | null = null;\n\n @ViewChild('dotLeft')\n protected dotLeft?: ElementRef<TuiNativeFocusableElement>;\n\n @ViewChild('dotRight')\n protected dotRight?: ElementRef<TuiNativeFocusableElement>;\n\n // @bad TODO: handle pointer events instead of mouse and touch events\n private pointerDown$ = new Subject<\n TuiEventWith<MouseEvent | TouchEvent, HTMLElement>\n >();\n\n protected constructor(\n ngControl: NgControl | null,\n changeDetectorRef: ChangeDetectorRef,\n private readonly documentRef: Document,\n @Inject(TUI_FROM_TO_TEXTS)\n readonly fromToTexts$: Observable<[string, string]>,\n ) {\n super(ngControl, changeDetectorRef);\n }\n\n @HostBinding('class._segmented')\n get segmented(): boolean {\n return this.segments > 0;\n }\n\n get discrete(): boolean {\n return this.steps > 0;\n }\n\n get length(): number {\n return this.max - this.min;\n }\n\n get computedStep(): number {\n if (this.steps) {\n return 1 / this.steps;\n }\n\n return this.quantum ? this.quantum / this.length : SLIDER_KEYBOARD_STEP;\n }\n\n get isLeftFocusable(): boolean {\n return !this.disabled && this.focusable && this.right !== 100;\n }\n\n get isRightFocusable(): boolean {\n return !this.disabled && this.focusable && this.left !== 100;\n }\n\n abstract get left(): number;\n\n abstract get right(): number;\n\n ngOnInit() {\n super.ngOnInit();\n\n const mouseMoves$ = typedFromEvent(this.documentRef, 'mousemove');\n const mouseUps$ = typedFromEvent(this.documentRef, 'mouseup');\n const touchMoves$ = typedFromEvent(this.documentRef, 'touchmove');\n const touchEnds$ = typedFromEvent(this.documentRef, 'touchend');\n let isPointerDownRight: boolean;\n\n this.pointerDown$\n .pipe(\n map((event: MouseEvent | TouchEvent) => {\n const rect = (\n event.currentTarget as HTMLElement\n ).getBoundingClientRect();\n const clientX =\n event instanceof MouseEvent\n ? event.clientX\n : event.touches[0].clientX;\n const fraction = clamp(\n this.getFractionFromEvents(rect, clientX),\n 0,\n 1,\n );\n const deltaLeft = fraction * 100 - this.left;\n const deltaRight = fraction * 100 - 100 + this.right;\n\n isPointerDownRight =\n Math.abs(deltaLeft) > Math.abs(deltaRight) ||\n deltaRight > 0 ||\n (this.left === 0 && this.right === 100);\n\n const calibratedFraction = clamp(\n this.getCalibratedFractionFromEvents(\n rect,\n clientX,\n isPointerDownRight,\n ),\n 0,\n 1,\n );\n const value = this.getValueFromFraction(\n this.fractionGuard(calibratedFraction),\n );\n\n this.processValue(value, isPointerDownRight);\n this.processFocus(isPointerDownRight);\n\n return rect;\n }),\n switchMap(rect =>\n race([touchMoves$, mouseMoves$]).pipe(\n map((event: any) =>\n this.getCalibratedFractionFromEvents(\n rect,\n event instanceof MouseEvent\n ? event.clientX\n : event.touches[0].clientX,\n isPointerDownRight,\n ),\n ),\n takeUntil(race([mouseUps$, touchEnds$])),\n ),\n ),\n map(fraction => this.fractionGuard(fraction)),\n )\n .subscribe(fraction => {\n this.processValue(\n this.getValueFromFraction(fraction),\n isPointerDownRight,\n );\n });\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n this.pointerDown$.complete();\n }\n\n onMouseDown(event: TuiEventWith<MouseEvent, HTMLElement>) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n this.pointerDown$.next(event);\n }\n\n onTouchStart(event: TuiEventWith<TouchEvent, HTMLElement>) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n this.pointerDown$.next(event);\n }\n\n decrement(right: boolean) {\n this.processStep(false, right);\n }\n\n increment(right: boolean) {\n this.processStep(true, right);\n }\n\n getSegmentLabel(segment: number): number {\n return round(this.getValueFromFraction(segment / this.segments), 2);\n }\n\n getSegmentPrefix(segment: number, texts: [string, string]): string {\n if (this.segments !== 1) {\n return '';\n }\n\n if (segment === 0) {\n return `${texts[0]} `;\n }\n\n return `${texts[1]} `;\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n }\n\n onLeftFocusVisible(focusVisible: boolean) {\n this.focusVisibleLeft = focusVisible;\n }\n\n onRightFocusVisible(focusVisible: boolean) {\n this.focusVisibleRight = focusVisible;\n }\n\n protected abstract processValue(value: number, right?: boolean): void;\n\n protected abstract processStep(increment: boolean, right?: boolean): void;\n\n protected getFractionFromValue(value: number): number {\n const fraction = (value - this.min) / this.length;\n\n return this.keySteps !== null\n ? this.fractionValueKeyStepConverter(value, false)\n : clamp(Number.isFinite(fraction) ? fraction : 1, 0, 1);\n }\n\n protected getValueFromFraction(fraction: number): number {\n return this.keySteps !== null\n ? this.fractionValueKeyStepConverter(fraction, true)\n : round(\n this.fractionGuard(fraction) * this.length + this.min,\n TUI_FLOATING_PRECISION,\n );\n }\n\n protected getCalibratedFractionFromEvents(\n rect: ClientRect,\n clientX: number,\n _: boolean,\n ): number {\n return this.getFractionFromEvents(rect, clientX);\n }\n\n protected valueGuard(value: number): number {\n return this.quantum\n ? clamp(\n round(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n ),\n this.min,\n this.max,\n )\n : clamp(value, this.min, this.max);\n }\n\n private processFocus(right: boolean) {\n if (!this.focusable || !this.dotRight || !this.dotLeft) {\n return;\n }\n\n if (right) {\n setNativeFocused(this.dotRight.nativeElement);\n } else {\n setNativeFocused(this.dotLeft.nativeElement);\n }\n }\n\n /**\n * Function for converting the fullness of the slider to a value and vice versa\n * taking into account the steps of linear dependence.\n *\n * @param value passed value\n * @param isFraction translation is carried out from fullness to value\n */\n private fractionValueKeyStepConverter(value: number, isFraction: boolean): number {\n const steps = [[0, this.min]].concat(this.keySteps as TuiKeySteps, [\n [100, this.max],\n ]);\n\n let prevFraction = 0;\n let nextFraction = 100;\n let prevValue = this.min;\n let nextValue = this.max;\n\n for (let i = 1; i < steps.length; i++) {\n if (\n (isFraction && steps[i][0] / 100 > value) ||\n (!isFraction && steps[i][1] > value)\n ) {\n prevFraction = steps[i - 1][0] || 0;\n nextFraction = steps[i][0];\n prevValue = steps[i - 1][1];\n nextValue = steps[i][1];\n break;\n }\n }\n\n const deltaFraction = nextFraction - prevFraction;\n const deltaValue = nextValue - prevValue;\n\n return isFraction\n ? round(\n ((value * 100 - prevFraction) / deltaFraction) * deltaValue + prevValue,\n TUI_FLOATING_PRECISION,\n )\n : clamp(\n ((value - prevValue) / deltaValue) * deltaFraction + prevFraction,\n 0,\n 100,\n ) / 100;\n }\n\n private fractionGuard(fraction: number): number {\n return this.discrete\n ? clamp(quantize(fraction, 1 / this.steps), 0, 1)\n : clamp(fraction, 0, 1);\n }\n\n private getFractionFromEvents(rect: ClientRect, clientX: number): number {\n const value = clientX - rect.left - DOT_WIDTH[this.size] / 2;\n const total = rect.width - DOT_WIDTH[this.size];\n\n return round(value / total, TUI_FLOATING_PRECISION);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-abstract.js","sources":["ng://@taiga-ui/kit/abstract/input-slider.ts","ng://@taiga-ui/kit/abstract/slider/slider.ts","ng://@taiga-ui/kit/abstract/taiga-ui-kit-abstract.ts"],"sourcesContent":["import {Directive, HostBinding, Input} from '@angular/core';\nimport {\n AbstractTuiControl,\n clamp,\n round,\n tuiDefaultProp,\n TuiInputModeT,\n TuiMapper,\n} from '@taiga-ui/cdk';\nimport {\n maskedNumberStringToNumber,\n NumberFormatSettings,\n TuiBrightness,\n tuiCreateAutoCorrectedNumberPipe,\n tuiCreateNumberMask,\n TuiModeDirective,\n TuiPluralize,\n tuiPluralizeToICU,\n TuiSizeL,\n TuiTextMaskOptions,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\n\nexport function quantumAssertion(quantum: number): boolean {\n return quantum > 0;\n}\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class AbstractTuiInputSlider<T>\n extends AbstractTuiControl<T>\n implements TuiWithOptionalMinMax<number> {\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n minLabel = '';\n\n @Input()\n @tuiDefaultProp()\n maxLabel = '';\n\n // TODO: remove setter in v3.0:\n @Input()\n @tuiDefaultProp()\n set pluralize(pluralize: TuiPluralize | Record<string, string> | null) {\n this.pluralizeMap = Array.isArray(pluralize)\n ? tuiPluralizeToICU(pluralize)\n : pluralize;\n }\n\n @Input()\n @tuiDefaultProp()\n segmentsPluralize: TuiPluralize | null = null;\n\n @Input()\n @tuiDefaultProp()\n segments = 0;\n\n @Input()\n @tuiDefaultProp()\n steps = 0;\n\n @Input()\n @tuiDefaultProp(quantumAssertion, 'Quantum must be positive')\n quantum = 1;\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n size: TuiSizeL = 'l';\n\n mask: TuiMapper<number, TuiTextMaskOptions> = (quantum: number, min: number) => ({\n mask: tuiCreateNumberMask({\n allowNegative: min < 0,\n allowDecimal: !Number.isInteger(quantum),\n decimalSymbol: this.numberFormat.decimalSeparator,\n thousandSymbol: this.numberFormat.thousandSeparator,\n }),\n pipe: tuiCreateAutoCorrectedNumberPipe(\n 0,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n ),\n guide: false,\n });\n\n pluralizeMap: Record<string, string> | null = null;\n\n protected abstract readonly modeDirective: TuiModeDirective | null;\n\n protected abstract readonly numberFormat: NumberFormatSettings;\n\n @HostBinding('class._segmented')\n get segmented(): boolean {\n return this.segments > 0;\n }\n\n get hasPlaceholder(): boolean {\n return this.size === 'l';\n }\n\n get inputMode(): TuiInputModeT {\n return Number.isInteger(this.quantum) ? 'numeric' : 'decimal';\n }\n\n get length(): number {\n return this.max - this.min;\n }\n\n get computedSteps(): number {\n return this.steps || this.length / this.quantum;\n }\n\n get step(): number {\n return this.length / this.computedSteps;\n }\n\n @HostBinding('attr.data-mode')\n get hostMode(): TuiBrightness | null {\n return this.modeDirective && this.modeDirective.mode;\n }\n\n abstract get showMinLabel(): boolean;\n\n abstract get showMaxLabel(): boolean;\n\n onHovered(hovered: boolean) {\n this.updateHovered(hovered);\n }\n\n protected valueGuard(value: number): number {\n return this.quantum\n ? clamp(\n round(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n ),\n this.min,\n this.max,\n )\n : clamp(value, this.min, this.max);\n }\n\n protected capInputValue(value: string, max: number = this.max): number | null {\n const capped = Math.min(\n maskedNumberStringToNumber(\n value,\n this.numberFormat.decimalSeparator,\n this.numberFormat.thousandSeparator,\n ),\n max,\n );\n\n if (this.min < 0 && capped < this.min) {\n return this.min;\n }\n\n return isNaN(capped) || capped < this.min ? null : capped;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n clamp,\n nonNegativeFiniteAssertion,\n quantize,\n round,\n setNativeFocused,\n tuiDefaultProp,\n TuiEventWith,\n TuiNativeFocusableElement,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {\n TuiPluralize,\n tuiPluralizeToICU,\n TuiSizeS,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {TuiKeySteps} from '@taiga-ui/kit/types';\nimport {Observable, race, Subject} from 'rxjs';\nimport {map, switchMap, takeUntil} from 'rxjs/operators';\n\nexport const SLIDER_KEYBOARD_STEP = 0.05;\nexport const DOT_WIDTH: {[key: string]: number} = {\n s: 8,\n m: 16,\n};\n\n/**\n * @awful TODO: refactor\n * @internal\n * @dynamic\n */\n@Directive()\nexport abstract class AbstractTuiSlider<T>\n extends AbstractTuiControl<T>\n implements TuiWithOptionalMinMax<number> {\n @Input()\n @tuiDefaultProp()\n min = 0;\n\n @Input()\n @tuiDefaultProp()\n max = Infinity;\n\n @Input()\n @tuiDefaultProp()\n segments = 0;\n\n @Input()\n @tuiDefaultProp()\n steps = 0;\n\n @Input()\n @tuiDefaultProp(nonNegativeFiniteAssertion, 'Quantum must be a non-negative number')\n quantum = 0;\n\n // TODO: remove setter in v3.0:\n @Input()\n @tuiDefaultProp()\n set pluralize(pluralize: TuiPluralize | Record<string, string> | null) {\n this.pluralizeMap = Array.isArray(pluralize)\n ? tuiPluralizeToICU(pluralize)\n : pluralize;\n }\n\n @Input()\n @HostBinding('attr.data-tui-host-size')\n @tuiDefaultProp()\n size: TuiSizeS = 'm';\n\n @Input()\n @tuiDefaultProp()\n keySteps: TuiKeySteps | null = null;\n\n focusVisibleLeft = false;\n\n focusVisibleRight = false;\n\n pluralizeMap: Record<string, string> | null = null;\n\n @ViewChild('dotLeft')\n protected dotLeft?: ElementRef<TuiNativeFocusableElement>;\n\n @ViewChild('dotRight')\n protected dotRight?: ElementRef<TuiNativeFocusableElement>;\n\n // @bad TODO: handle pointer events instead of mouse and touch events\n private pointerDown$ = new Subject<\n TuiEventWith<MouseEvent | TouchEvent, HTMLElement>\n >();\n\n protected constructor(\n ngControl: NgControl | null,\n changeDetectorRef: ChangeDetectorRef,\n private readonly documentRef: Document,\n @Inject(TUI_FROM_TO_TEXTS)\n readonly fromToTexts$: Observable<[string, string]>,\n ) {\n super(ngControl, changeDetectorRef);\n }\n\n @HostBinding('class._segmented')\n get segmented(): boolean {\n return this.segments > 0;\n }\n\n get discrete(): boolean {\n return this.steps > 0;\n }\n\n get length(): number {\n return this.max - this.min;\n }\n\n get computedStep(): number {\n if (this.steps) {\n return 1 / this.steps;\n }\n\n return this.quantum ? this.quantum / this.length : SLIDER_KEYBOARD_STEP;\n }\n\n get isLeftFocusable(): boolean {\n return !this.disabled && this.focusable && this.right !== 100;\n }\n\n get isRightFocusable(): boolean {\n return !this.disabled && this.focusable && this.left !== 100;\n }\n\n abstract get left(): number;\n\n abstract get right(): number;\n\n ngOnInit() {\n super.ngOnInit();\n\n const mouseMoves$ = typedFromEvent(this.documentRef, 'mousemove');\n const mouseUps$ = typedFromEvent(this.documentRef, 'mouseup');\n const touchMoves$ = typedFromEvent(this.documentRef, 'touchmove');\n const touchEnds$ = typedFromEvent(this.documentRef, 'touchend');\n let isPointerDownRight: boolean;\n\n this.pointerDown$\n .pipe(\n map((event: MouseEvent | TouchEvent) => {\n const rect = (event.currentTarget as HTMLElement).getBoundingClientRect();\n const clientX =\n event instanceof MouseEvent\n ? event.clientX\n : event.touches[0].clientX;\n const fraction = clamp(\n this.getFractionFromEvents(rect, clientX),\n 0,\n 1,\n );\n const deltaLeft = fraction * 100 - this.left;\n const deltaRight = fraction * 100 - 100 + this.right;\n\n isPointerDownRight =\n Math.abs(deltaLeft) > Math.abs(deltaRight) ||\n deltaRight > 0 ||\n (this.left === 0 && this.right === 100);\n\n const calibratedFraction = clamp(\n this.getCalibratedFractionFromEvents(\n rect,\n clientX,\n isPointerDownRight,\n ),\n 0,\n 1,\n );\n const value = this.getValueFromFraction(\n this.fractionGuard(calibratedFraction),\n );\n\n this.processValue(value, isPointerDownRight);\n this.processFocus(isPointerDownRight);\n\n return rect;\n }),\n switchMap(rect =>\n race([touchMoves$, mouseMoves$]).pipe(\n map((event: any) =>\n this.getCalibratedFractionFromEvents(\n rect,\n event instanceof MouseEvent\n ? event.clientX\n : event.touches[0].clientX,\n isPointerDownRight,\n ),\n ),\n takeUntil(race([mouseUps$, touchEnds$])),\n ),\n ),\n map(fraction => this.fractionGuard(fraction)),\n )\n .subscribe(fraction => {\n this.processValue(\n this.getValueFromFraction(fraction),\n isPointerDownRight,\n );\n });\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n this.pointerDown$.complete();\n }\n\n onMouseDown(event: TuiEventWith<MouseEvent, HTMLElement>) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n this.pointerDown$.next(event);\n }\n\n onTouchStart(event: TuiEventWith<TouchEvent, HTMLElement>) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n this.pointerDown$.next(event);\n }\n\n decrement(right: boolean) {\n this.processStep(false, right);\n }\n\n increment(right: boolean) {\n this.processStep(true, right);\n }\n\n getSegmentLabel(segment: number): number {\n return round(this.getValueFromFraction(segment / this.segments), 2);\n }\n\n getSegmentPrefix(segment: number, texts: [string, string]): string {\n if (this.segments !== 1) {\n return '';\n }\n\n if (segment === 0) {\n return `${texts[0]} `;\n }\n\n return `${texts[1]} `;\n }\n\n onActiveZone(active: boolean) {\n this.updateFocused(active);\n }\n\n onLeftFocusVisible(focusVisible: boolean) {\n this.focusVisibleLeft = focusVisible;\n }\n\n onRightFocusVisible(focusVisible: boolean) {\n this.focusVisibleRight = focusVisible;\n }\n\n protected abstract processValue(value: number, right?: boolean): void;\n\n protected abstract processStep(increment: boolean, right?: boolean): void;\n\n protected getFractionFromValue(value: number): number {\n const fraction = (value - this.min) / this.length;\n\n return this.keySteps !== null\n ? this.fractionValueKeyStepConverter(value, false)\n : clamp(Number.isFinite(fraction) ? fraction : 1, 0, 1);\n }\n\n protected getValueFromFraction(fraction: number): number {\n return this.keySteps !== null\n ? this.fractionValueKeyStepConverter(fraction, true)\n : round(\n this.fractionGuard(fraction) * this.length + this.min,\n TUI_FLOATING_PRECISION,\n );\n }\n\n protected getCalibratedFractionFromEvents(\n rect: ClientRect,\n clientX: number,\n _: boolean,\n ): number {\n return this.getFractionFromEvents(rect, clientX);\n }\n\n protected valueGuard(value: number): number {\n return this.quantum\n ? clamp(\n round(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n ),\n this.min,\n this.max,\n )\n : clamp(value, this.min, this.max);\n }\n\n private processFocus(right: boolean) {\n if (!this.focusable || !this.dotRight || !this.dotLeft) {\n return;\n }\n\n if (right) {\n setNativeFocused(this.dotRight.nativeElement);\n } else {\n setNativeFocused(this.dotLeft.nativeElement);\n }\n }\n\n /**\n * Function for converting the fullness of the slider to a value and vice versa\n * taking into account the steps of linear dependence.\n *\n * @param value passed value\n * @param isFraction translation is carried out from fullness to value\n */\n private fractionValueKeyStepConverter(value: number, isFraction: boolean): number {\n const steps = [[0, this.min]].concat(this.keySteps as TuiKeySteps, [\n [100, this.max],\n ]);\n\n let prevFraction = 0;\n let nextFraction = 100;\n let prevValue = this.min;\n let nextValue = this.max;\n\n for (let i = 1; i < steps.length; i++) {\n if (\n (isFraction && steps[i][0] / 100 > value) ||\n (!isFraction && steps[i][1] > value)\n ) {\n prevFraction = steps[i - 1][0] || 0;\n nextFraction = steps[i][0];\n prevValue = steps[i - 1][1];\n nextValue = steps[i][1];\n break;\n }\n }\n\n const deltaFraction = nextFraction - prevFraction;\n const deltaValue = nextValue - prevValue;\n\n return isFraction\n ? round(\n ((value * 100 - prevFraction) / deltaFraction) * deltaValue + prevValue,\n TUI_FLOATING_PRECISION,\n )\n : clamp(\n ((value - prevValue) / deltaValue) * deltaFraction + prevFraction,\n 0,\n 100,\n ) / 100;\n }\n\n private fractionGuard(fraction: number): number {\n return this.discrete\n ? clamp(quantize(fraction, 1 / this.steps), 0, 1)\n : clamp(fraction, 0, 1);\n }\n\n private getFractionFromEvents(rect: ClientRect, clientX: number): number {\n const value = clientX - rect.left - DOT_WIDTH[this.size] / 2;\n const total = rect.width - DOT_WIDTH[this.size];\n\n return round(value / total, TUI_FLOATING_PRECISION);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -88,7 +88,7 @@ TuiBadgedContentComponent = __decorate([
88
88
  selector: 'tui-badged-content',
89
89
  changeDetection: ChangeDetectionStrategy.OnPush,
90
90
  template: "<ng-content></ng-content>\n\n<div\n *ngIf=\"topNotification\"\n class=\"notification notification_top\"\n [style.background]=\"topNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"bottomNotification\"\n class=\"notification notification_bottom\"\n [style.background]=\"bottomNotification\"\n [style.boxShadow]=\"boxShadow\"\n></div>\n\n<div\n *ngIf=\"contentTop\"\n polymorpheus-outlet\n class=\"content content_top\"\n [style.boxShadow]=\"boxShadow\"\n [content]=\"contentTop\"\n>\n <ng-template let-content>\n <tui-badge\n *ngIf=\"contentIsNumber(content) && !badgeHidden\"\n [status]=\"getStatus(colorTop)\"\n [style.backgroundColor]=\"colorTop\"\n [size]=\"badgeSize\"\n [value]=\"contentTop\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"icon\"\n [style.color]=\"colorTop\"\n [src]=\"content\"\n ></tui-svg>\n </ng-template>\n</div>\n\n<div\n polymorpheus-outlet\n *ngIf=\"contentBottom && sizeBig\"\n class=\"content content_bottom\"\n [style.boxShadow]=\"boxShadow\"\n [content]=\"contentBottom\"\n>\n <ng-template let-content>\n <tui-badge\n *ngIf=\"contentIsNumber(content)\"\n [status]=\"getStatus(colorBottom)\"\n [style.backgroundColor]=\"colorBottom\"\n [size]=\"badgeSize\"\n [value]=\"contentBottom\"\n ></tui-badge>\n <tui-svg\n *ngIf=\"contentIsString(content)\"\n class=\"icon\"\n [style.color]=\"colorBottom\"\n [src]=\"content\"\n ></tui-svg>\n </ng-template>\n</div>\n",
91
- styles: [":host{position:relative;display:inline-block;color:var(--tui-base-01)}.notification{position:absolute;border-radius:100%;box-shadow:0 0 0 2px currentColor}.notification:not([data-tui-background]){background-color:currentColor}:host[data-tui-host-size='m']:not(._rounded) .notification_top,:host[data-tui-host-size='s']:not(._rounded) .notification_top,:host[data-tui-host-size=xs]:not(._rounded) .notification_top{top:-.125rem;right:-.125rem}:host[data-tui-host-size='l']:not(._rounded) .notification_top,:host[data-tui-host-size=xl]:not(._rounded) .notification_top{top:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl]:not(._rounded) .notification_top{top:-.5rem;right:-.5rem}:host[data-tui-host-size=xs]._rounded .notification_top{top:0;right:0}:host[data-tui-host-size='s']._rounded .notification_top{top:.0625rem;right:.0625rem}:host[data-tui-host-size='m']._rounded .notification_top{top:.1875rem;right:.1875rem}:host[data-tui-host-size='l']._rounded .notification_top{top:.25rem;right:.25rem}:host[data-tui-host-size=xl]._rounded .notification_top{top:.375rem;right:.375rem}:host[data-tui-host-size=xxl]._rounded .notification_top{top:.5rem;right:.5rem}:host[data-tui-host-size='m']:not(._rounded) .notification_bottom{bottom:-.125rem;right:-.125rem}:host[data-tui-host-size='l']:not(._rounded) .notification_bottom,:host[data-tui-host-size=xl]:not(._rounded) .notification_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl]:not(._rounded) .notification_bottom{bottom:-.5rem;right:-.5rem}:host[data-tui-host-size='m']._rounded .notification_bottom{bottom:.1875rem;right:.1875rem}:host[data-tui-host-size='l']._rounded .notification_bottom{bottom:.25rem;right:.25rem}:host[data-tui-host-size=xl]._rounded .notification_bottom{bottom:.375rem;right:.375rem}:host[data-tui-host-size=xxl]._rounded .notification_bottom{bottom:.5rem;right:.5rem}:host[data-tui-host-size='m'] .notification,:host[data-tui-host-size='s'] .notification,:host[data-tui-host-size=xs] .notification{width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .notification{width:.75rem;height:.75rem}:host[data-tui-host-size=xl] .notification{width:1rem;height:1rem}:host[data-tui-host-size=xxl] .notification{width:1.5rem;height:1.5rem}.icon[data-tui-color=normal],.notification[data-tui-color=normal]{color:var(--tui-base-06)}.icon[data-tui-color=onDark],.notification[data-tui-color=onDark]{color:var(--tui-secondary)}.icon[data-tui-color=gray],.notification[data-tui-color=gray]{color:var(--tui-base-03)}.icon[data-tui-color=warning],.notification[data-tui-color=warning]{color:var(--tui-primary)}.icon[data-tui-color=secondary],.notification[data-tui-color=secondary]{color:var(--tui-info-fill)}.icon[data-tui-color=highlight],.icon[data-tui-color=white],.notification[data-tui-color=highlight],.notification[data-tui-color=white]{color:var(--tui-base-01)}.icon[data-tui-color=transparent-dark],.notification[data-tui-color=transparent-dark]{color:var(--tui-clear)}.icon[data-tui-color=transparent-light],.notification[data-tui-color=transparent-light]{color:var(--tui-clear-inverse)}:host[data-tui-host-size='m'] .icon,:host[data-tui-host-size='s'] .icon{width:1.5rem;height:1.5rem;margin:-.125rem}:host[data-tui-host-size='l'] .icon,:host[data-tui-host-size=xl] .icon{transform:scale(1.2)}:host[data-tui-host-size=xxl] .icon{transform:scale(1.6)}.content{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:6.25rem;overflow:hidden;background-color:currentColor;box-shadow:0 0 0 2px currentColor}:host[data-tui-host-size='l'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size=xxl][data-tui-host-top]:not(._rounded) .content_top{right:-.5rem;top:-.5rem}:host[data-tui-host-size=xl][data-tui-host-top]:not(._rounded) .content_top{right:-.375rem;top:-.375rem}:host[data-tui-host-size='m'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size='s'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size=xs][data-tui-host-top]:not(._rounded) .content_top{right:-.25rem;top:-.25rem}:host[data-tui-host-size=xxl][data-tui-host-top]._rounded .content_top{right:.25rem;top:.25rem}:host[data-tui-host-size=xl][data-tui-host-top]._rounded .content_top{right:.125rem;top:.125rem}:host[data-tui-host-size='l'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size='m'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size='s'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size=xs][data-tui-host-top]._rounded .content_top{right:-.25rem;top:-.25rem}:host[data-tui-host-size='l'][data-tui-host-bottom]:not(._rounded) .content_bottom,:host[data-tui-host-size=xxl][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.5rem;right:-.5rem}:host[data-tui-host-size=xl][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.375rem;right:-.375rem}:host[data-tui-host-size='m'][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl][data-tui-host-bottom]._rounded .content_bottom{bottom:.25rem;right:.25rem}:host[data-tui-host-size=xl][data-tui-host-bottom]._rounded .content_bottom{bottom:.125rem;right:.125rem}:host[data-tui-host-size='l'][data-tui-host-bottom]._rounded .content_bottom,:host[data-tui-host-size='m'][data-tui-host-bottom]._rounded .content_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl] .content{height:2rem;min-width:2rem}:host[data-tui-host-size='l'] .content,:host[data-tui-host-size=xl] .content{height:1.5rem;min-width:1.5rem}:host[data-tui-host-size='m'] .content,:host[data-tui-host-size='s'] .content{height:1.25rem;min-width:1.25rem}:host[data-tui-host-size=xs] .content{height:1rem;min-width:1rem}"]
91
+ styles: [":host{position:relative;display:inline-block;color:var(--tui-base-01)}.notification{position:absolute;border-radius:100%;box-shadow:0 0 0 2px currentColor}.notification:not([data-tui-background]){background-color:currentColor}:host[data-tui-host-size='m']:not(._rounded) .notification_top,:host[data-tui-host-size='s']:not(._rounded) .notification_top,:host[data-tui-host-size=xs]:not(._rounded) .notification_top{top:-.125rem;right:-.125rem}:host[data-tui-host-size='l']:not(._rounded) .notification_top,:host[data-tui-host-size=xl]:not(._rounded) .notification_top{top:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl]:not(._rounded) .notification_top{top:-.5rem;right:-.5rem}:host[data-tui-host-size=xs]._rounded .notification_top{top:0;right:0}:host[data-tui-host-size='s']._rounded .notification_top{top:.0625rem;right:.0625rem}:host[data-tui-host-size='m']._rounded .notification_top{top:.1875rem;right:.1875rem}:host[data-tui-host-size='l']._rounded .notification_top{top:.25rem;right:.25rem}:host[data-tui-host-size=xl]._rounded .notification_top{top:.375rem;right:.375rem}:host[data-tui-host-size=xxl]._rounded .notification_top{top:.5rem;right:.5rem}:host[data-tui-host-size='m']:not(._rounded) .notification_bottom{bottom:-.125rem;right:-.125rem}:host[data-tui-host-size='l']:not(._rounded) .notification_bottom,:host[data-tui-host-size=xl]:not(._rounded) .notification_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl]:not(._rounded) .notification_bottom{bottom:-.5rem;right:-.5rem}:host[data-tui-host-size='m']._rounded .notification_bottom{bottom:.1875rem;right:.1875rem}:host[data-tui-host-size='l']._rounded .notification_bottom{bottom:.25rem;right:.25rem}:host[data-tui-host-size=xl]._rounded .notification_bottom{bottom:.375rem;right:.375rem}:host[data-tui-host-size=xxl]._rounded .notification_bottom{bottom:.5rem;right:.5rem}:host[data-tui-host-size='m'] .notification,:host[data-tui-host-size='s'] .notification,:host[data-tui-host-size=xs] .notification{width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .notification{width:.75rem;height:.75rem}:host[data-tui-host-size=xl] .notification{width:1rem;height:1rem}:host[data-tui-host-size=xxl] .notification{width:1.5rem;height:1.5rem}.icon[data-tui-color=normal],.notification[data-tui-color=normal]{color:var(--tui-base-06)}.icon[data-tui-color=onDark],.notification[data-tui-color=onDark]{color:var(--tui-secondary)}.icon[data-tui-color=gray],.notification[data-tui-color=gray]{color:var(--tui-base-03)}.icon[data-tui-color=warning],.notification[data-tui-color=warning]{color:var(--tui-primary)}.icon[data-tui-color=secondary],.notification[data-tui-color=secondary]{color:var(--tui-info-fill)}.icon[data-tui-color=highlight],.icon[data-tui-color=white],.notification[data-tui-color=highlight],.notification[data-tui-color=white]{color:var(--tui-base-01)}.icon[data-tui-color=transparent-dark],.notification[data-tui-color=transparent-dark]{color:var(--tui-clear)}.icon[data-tui-color=transparent-light],.notification[data-tui-color=transparent-light]{color:var(--tui-clear-inverse)}.icon{color:var(--tui-success-fill)}:host[data-tui-host-size='m'] .icon,:host[data-tui-host-size='s'] .icon{width:1.5rem;height:1.5rem;margin:-.125rem}:host[data-tui-host-size='l'] .icon,:host[data-tui-host-size=xl] .icon{transform:scale(1.2)}:host[data-tui-host-size=xxl] .icon{transform:scale(1.6)}.content{position:absolute;display:flex;align-items:center;justify-content:center;border-radius:6.25rem;overflow:hidden;background-color:currentColor;box-shadow:0 0 0 2px currentColor}:host[data-tui-host-size='l'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size=xxl][data-tui-host-top]:not(._rounded) .content_top{right:-.5rem;top:-.5rem}:host[data-tui-host-size=xl][data-tui-host-top]:not(._rounded) .content_top{right:-.375rem;top:-.375rem}:host[data-tui-host-size='m'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size='s'][data-tui-host-top]:not(._rounded) .content_top,:host[data-tui-host-size=xs][data-tui-host-top]:not(._rounded) .content_top{right:-.25rem;top:-.25rem}:host[data-tui-host-size=xxl][data-tui-host-top]._rounded .content_top{right:.25rem;top:.25rem}:host[data-tui-host-size=xl][data-tui-host-top]._rounded .content_top{right:.125rem;top:.125rem}:host[data-tui-host-size='l'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size='m'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size='s'][data-tui-host-top]._rounded .content_top,:host[data-tui-host-size=xs][data-tui-host-top]._rounded .content_top{right:-.25rem;top:-.25rem}:host[data-tui-host-size='l'][data-tui-host-bottom]:not(._rounded) .content_bottom,:host[data-tui-host-size=xxl][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.5rem;right:-.5rem}:host[data-tui-host-size=xl][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.375rem;right:-.375rem}:host[data-tui-host-size='m'][data-tui-host-bottom]:not(._rounded) .content_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl][data-tui-host-bottom]._rounded .content_bottom{bottom:.25rem;right:.25rem}:host[data-tui-host-size=xl][data-tui-host-bottom]._rounded .content_bottom{bottom:.125rem;right:.125rem}:host[data-tui-host-size='l'][data-tui-host-bottom]._rounded .content_bottom,:host[data-tui-host-size='m'][data-tui-host-bottom]._rounded .content_bottom{bottom:-.25rem;right:-.25rem}:host[data-tui-host-size=xxl] .content{height:2rem;min-width:2rem}:host[data-tui-host-size='l'] .content,:host[data-tui-host-size=xl] .content{height:1.5rem;min-width:1.5rem}:host[data-tui-host-size='m'] .content,:host[data-tui-host-size='s'] .content{height:1.25rem;min-width:1.25rem}:host[data-tui-host-size=xs] .content{height:1rem;min-width:1rem}"]
92
92
  })
93
93
  ], TuiBadgedContentComponent);
94
94
 
@@ -188,9 +188,9 @@ __decorate([
188
188
  TuiCalendarMonthComponent = __decorate([
189
189
  Component({
190
190
  selector: 'tui-calendar-month',
191
- template: "<tui-scrollbar *ngIf=\"isYearPickerShown; else monthSelect\" class=\"scrollbar\">\n <tui-primitive-year-picker\n [min]=\"min\"\n [max]=\"max\"\n [initialItem]=\"year\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button tuiLink [tuiFocusable]=\"false\" (click)=\"onYearClick()\">\n {{year.formattedYear}}\n </button>\n </tui-primitive-spin-button>\n <div class=\"row\">\n <ng-container\n *ngFor=\"let month of (months$ | async); let index = index\"\n >\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"cell\"\n [class.cell_today]=\"isItemToday(item)\"\n [class.cell_interval]=\"isItemInsideRange(item)\"\n [attr.data-tui-element-range]=\"getItemRange(item)\"\n [attr.data-tui-element-state]=\"getItemState(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"item\">{{month}}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n",
191
+ template: "<tui-scrollbar *ngIf=\"isYearPickerShown; else monthSelect\" class=\"t-scrollbar\">\n <tui-primitive-year-picker\n [min]=\"min\"\n [max]=\"max\"\n [initialItem]=\"year\"\n [value]=\"value\"\n (yearClick)=\"onPickerYearClick($event)\"\n ></tui-primitive-year-picker>\n</tui-scrollbar>\n<ng-template #monthSelect>\n <tui-primitive-spin-button\n [focusable]=\"false\"\n [leftDisabled]=\"previousYearDisabled\"\n [rightDisabled]=\"nextYearDisabled\"\n (leftClick)=\"onPreviousYear()\"\n (rightClick)=\"onNextYear()\"\n >\n <button tuiLink [tuiFocusable]=\"false\" (click)=\"onYearClick()\">\n {{year.formattedYear}}\n </button>\n </tui-primitive-spin-button>\n <div class=\"t-row\">\n <ng-container\n *ngFor=\"let month of (months$ | async); let index = index\"\n >\n <div\n *tuiLet=\"getTuiMonth(index, year.year) as item\"\n class=\"t-cell\"\n [class.t-cell_today]=\"isItemToday(item)\"\n [class.t-cell_interval]=\"isItemInsideRange(item)\"\n [attr.data-tui-element-range]=\"getItemRange(item)\"\n [attr.data-tui-element-state]=\"getItemState(item)\"\n (tuiHoveredChange)=\"onItemHovered($event, item)\"\n (tuiPressedChange)=\"onItemHovered($event, item)\"\n (click)=\"onItemClick(item)\"\n >\n <div class=\"t-item\">{{month}}</div>\n </div>\n </ng-container>\n </div>\n</ng-template>\n",
192
192
  changeDetection: ChangeDetectionStrategy.OnPush,
193
- styles: [":host{font:var(--tui-font-text-m)}.row{position:relative;z-index:0;display:flex;justify-content:space-between;height:2.25rem}.item{position:relative;flex:1;line-height:2rem;border-radius:var(--tui-radius-m)}.item:after,.item:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.cell{position:relative;display:flex;align-items:center;justify-content:center;width:3.6875rem;text-align:center;outline:0;cursor:pointer;background-clip:content-box;box-sizing:border-box;border:2px solid transparent;box-sizing:content-box}.cell:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.cell_today:after{position:absolute;left:50%;transform:translate(-50%,0);content:'';bottom:.3125rem;height:.125rem;width:.75rem;border-radius:.375rem;background-color:var(--tui-text-02)}.cell_interval:before{background:var(--tui-base-02)}:host._single .cell_interval:before{background:var(--tui-secondary-hover)}.cell_interval:not(:last-child):before{right:-3.6875rem}.cell_interval:last-child:first-child:before{right:0}.cell_interval:first-child>.item{border-top-left-radius:var(--tui-radius-m);border-bottom-left-radius:var(--tui-radius-m)}.cell_interval:last-child>.item{border-top-right-radius:var(--tui-radius-m);border-bottom-right-radius:var(--tui-radius-m)}.cell_interval>.item{border-radius:0}.cell[data-tui-element-range]:after{background-color:var(--tui-primary-text)}.cell[data-tui-element-range]>.item{color:var(--tui-primary-text)}.cell[data-tui-element-range]>.item:after,.cell[data-tui-element-range]>.item:before{background-color:var(--tui-primary)}.cell[data-tui-element-range][data-tui-element-state=hovered]>.item:after,.cell[data-tui-element-range][data-tui-element-state=hovered]>.item:before{background-color:var(--tui-primary-hover)}.cell[data-tui-element-range][data-tui-element-state=pressed]>.item:after,.cell[data-tui-element-range][data-tui-element-state=pressed]>.item:before{background-color:var(--tui-primary-active)}.cell[data-tui-element-range=end]>.item:before{left:.25rem}.cell[data-tui-element-range=end]>.item:after{left:-2rem;right:100%;transform:translateX(1.4375rem) scaleY(.6) scaleX(.4) rotate(45deg)}.cell[data-tui-element-range=start]>.item:before{right:.25rem}.cell[data-tui-element-range=start]>.item:after{left:100%;right:-2rem;transform:translateX(-1.4375rem) scaleY(.6) scaleX(.4) rotate(45deg)}.cell[data-tui-element-state=disabled]{pointer-events:none}.cell[data-tui-element-state=disabled]>.item{opacity:.36}.cell[data-tui-element-state=hovered]:hover:not([data-tui-element-range])>.item{background-color:var(--tui-secondary-hover)}.cell[data-tui-element-state=pressed]:hover:not([data-tui-element-range])>.item{background-color:var(--tui-secondary-active)}:host{display:block;height:13.625rem;width:15.75rem;padding:1.125rem;box-sizing:content-box}.row{flex-wrap:wrap;margin-top:1.4375rem}.cell:nth-child(n+5){margin-top:1.75rem}.cell_interval:nth-child(4n):before{right:0}.scrollbar{height:inherit;width:inherit}"]
193
+ styles: [":host{font:var(--tui-font-text-m)}.t-row{position:relative;z-index:0;display:flex;justify-content:space-between;height:2.25rem}.t-item{position:relative;flex:1;line-height:2rem;border-radius:var(--tui-radius-m)}.t-item:after,.t-item:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-cell{position:relative;display:flex;align-items:center;justify-content:center;width:3.6875rem;text-align:center;outline:0;cursor:pointer;background-clip:content-box;box-sizing:border-box;border:2px solid transparent;box-sizing:content-box}.t-cell:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;border-radius:var(--tui-radius-m)}.t-cell_today:after{position:absolute;left:50%;transform:translate(-50%,0);content:'';bottom:.3125rem;height:.125rem;width:.75rem;border-radius:.375rem;background-color:var(--tui-text-02)}.t-cell_interval:before{background:var(--tui-base-02)}:host._single .t-cell_interval:before{background:var(--tui-secondary-hover)}.t-cell_interval:not(:last-child):before{right:-3.6875rem}.t-cell_interval:last-child:first-child:before{right:0}.t-cell_interval:first-child>.t-item{border-top-left-radius:var(--tui-radius-m);border-bottom-left-radius:var(--tui-radius-m)}.t-cell_interval:last-child>.t-item{border-top-right-radius:var(--tui-radius-m);border-bottom-right-radius:var(--tui-radius-m)}.t-cell_interval>.t-item{border-radius:0}.t-cell[data-tui-element-range]:after{background-color:var(--tui-primary-text)}.t-cell[data-tui-element-range]>.t-item{color:var(--tui-primary-text)}.t-cell[data-tui-element-range]>.t-item:after,.t-cell[data-tui-element-range]>.t-item:before{background-color:var(--tui-primary)}.t-cell[data-tui-element-range][data-tui-element-state=hovered]>.t-item:after,.t-cell[data-tui-element-range][data-tui-element-state=hovered]>.t-item:before{background-color:var(--tui-primary-hover)}.t-cell[data-tui-element-range][data-tui-element-state=pressed]>.t-item:after,.t-cell[data-tui-element-range][data-tui-element-state=pressed]>.t-item:before{background-color:var(--tui-primary-active)}.t-cell[data-tui-element-range=end]>.t-item:before{left:.25rem}.t-cell[data-tui-element-range=end]>.t-item:after{left:-2rem;right:100%;transform:translateX(1.4375rem) scaleY(.6) scaleX(.4) rotate(45deg)}.t-cell[data-tui-element-range=start]>.t-item:before{right:.25rem}.t-cell[data-tui-element-range=start]>.t-item:after{left:100%;right:-2rem;transform:translateX(-1.4375rem) scaleY(.6) scaleX(.4) rotate(45deg)}.t-cell[data-tui-element-state=disabled]{pointer-events:none}.t-cell[data-tui-element-state=disabled]>.t-item{opacity:.36}.t-cell[data-tui-element-state=hovered]:hover:not([data-tui-element-range])>.t-item{background-color:var(--tui-secondary-hover)}.t-cell[data-tui-element-state=pressed]:hover:not([data-tui-element-range])>.t-item{background-color:var(--tui-secondary-active)}:host{display:block;height:13.625rem;width:15.75rem;padding:1.125rem;box-sizing:content-box}.t-row{flex-wrap:wrap;margin-top:1.4375rem}.t-cell:nth-child(n+5){margin-top:1.75rem}.t-cell_interval:nth-child(4n):before{right:0}.t-scrollbar{height:inherit;width:inherit}"]
194
194
  }),
195
195
  __param(0, Inject(TUI_CALENDAR_MONTHS))
196
196
  ], TuiCalendarMonthComponent);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-calendar-month.js","sources":["ng://@taiga-ui/kit/components/calendar-month/calendar-month.component.ts","ng://@taiga-ui/kit/components/calendar-month/calendar-month.module.ts","ng://@taiga-ui/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n nullableSame,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n tuiPure,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState, TuiWithOptionalMinMax} from '@taiga-ui/core';\nimport {TuiMonthContext} from '@taiga-ui/kit/interfaces';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\nimport {TuiBooleanHandlerWithContext} from '@taiga-ui/kit/types';\nimport {Observable} from 'rxjs';\n\nconst TODAY = TuiDay.currentLocal();\n\n// @dynamic\n@Component({\n selector: 'tui-calendar-month',\n templateUrl: './calendar-month.template.html',\n styleUrls: ['./calendar-month.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiCalendarMonthComponent implements TuiWithOptionalMinMax<TuiMonth> {\n @Input()\n @tuiDefaultProp()\n value: TuiMonthRange | TuiMonth | null = null;\n\n @Input()\n @tuiDefaultProp()\n year: TuiYear = TODAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandlerWithContext<\n TuiMonth,\n TuiMonthContext\n > = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n @Output()\n readonly yearChange = new EventEmitter<TuiYear>();\n\n isYearPickerShown = false;\n\n hoveredItem: TuiMonth | null = null;\n pressedItem: TuiMonth | null = null;\n\n constructor(\n @Inject(TUI_CALENDAR_MONTHS) readonly months$: Observable<readonly string[]>,\n ) {}\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiMonth || this.value.isSingleMonth)\n );\n }\n\n get previousYearDisabled(): boolean {\n return this.year.yearSameOrBefore(this.min);\n }\n\n get nextYearDisabled(): boolean {\n return this.year.yearSameOrAfter(this.max);\n }\n\n getItemState(item: TuiMonth): TuiInteractiveState | null {\n const {disabledItemHandlerWithMinMax, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandlerWithMinMax(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem !== null && pressedItem.monthSame(item)) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem !== null && hoveredItem.monthSame(item)) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: TuiMonth): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiMonth) {\n return value.monthSame(item) ? TuiRangeState.Single : null;\n }\n\n const theFirstOfRange = value.from.monthSame(item) && !value.isSingleMonth;\n const hoveredItemAfterFrom =\n hoveredItem !== null &&\n hoveredItem.monthAfter(value.from) &&\n value.from.monthSame(item) &&\n value.isSingleMonth;\n const hoveredItemIsCandidatToBeFrom =\n hoveredItem !== null &&\n hoveredItem.monthSame(item) &&\n hoveredItem.monthBefore(value.from) &&\n value.isSingleMonth;\n\n if (theFirstOfRange || hoveredItemAfterFrom || hoveredItemIsCandidatToBeFrom) {\n return TuiRangeState.Start;\n }\n\n const theLastOfRange = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemBeforeTo = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemIsCandidatToBeTo =\n hoveredItem !== null &&\n hoveredItem.monthSame(item) &&\n hoveredItem.monthAfter(value.from) &&\n value.isSingleMonth;\n\n if (theLastOfRange || hoveredItemBeforeTo || hoveredItemIsCandidatToBeTo) {\n return TuiRangeState.End;\n }\n\n return value.isSingleMonth && value.from.monthSame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n isItemInsideRange(month: TuiMonth): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiMonth) {\n return false;\n }\n\n if (!value.isSingleMonth) {\n return value.from.monthSameOrBefore(month) && value.to.monthAfter(month);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiMonthRange.sort(value.from, hoveredItem);\n\n return range.from.monthSameOrBefore(month) && range.to.monthAfter(month);\n }\n\n onPickerYearClick(year: TuiYear) {\n this.isYearPickerShown = false;\n\n if (this.year.yearSame(year)) {\n return;\n }\n\n this.year = year;\n this.yearChange.emit(year);\n }\n\n onItemClick(month: TuiMonth) {\n if (this.disabledItemHandlerWithMinMax(month)) {\n return;\n }\n\n this.monthClick.emit(month);\n }\n\n onYearClick() {\n this.isYearPickerShown = true;\n }\n\n onNextYear() {\n this.year = this.year.append({year: 1});\n }\n\n onPreviousYear() {\n this.year = this.year.append({year: -1});\n }\n\n onItemHovered(hovered: boolean, item: TuiMonth) {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n onItemPressed(pressed: boolean, item: TuiMonth) {\n this.updatePressedItem(pressed ? item : null);\n }\n\n private get disabledItemHandlerWithMinMax(): TuiBooleanHandler<TuiMonth> {\n return this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler,\n this.value,\n this.min,\n this.max,\n );\n }\n\n private updateHoveredItem(month: TuiMonth | null) {\n if (nullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updatePressedItem(item: TuiMonth | null) {\n this.pressedItem = item;\n }\n\n @tuiPure\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext>,\n value: TuiMonth | TuiMonthRange | null,\n min: TuiMonth,\n max: TuiMonth,\n ): TuiBooleanHandler<TuiMonth> {\n return item =>\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item, {value});\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiFocusableModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiLinkModule,\n TuiPrimitiveSpinButtonModule,\n TuiPrimitiveYearPickerModule,\n TuiScrollbarModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarMonthComponent} from './calendar-month.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiPrimitiveYearPickerModule,\n TuiPrimitiveSpinButtonModule,\n TuiScrollbarModule,\n TuiLinkModule,\n TuiLetModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusableModule,\n ],\n declarations: [TuiCalendarMonthComponent],\n exports: [TuiCalendarMonthComponent],\n})\nexport class TuiCalendarMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-calendar-month.js","sources":["ng://@taiga-ui/kit/components/calendar-month/calendar-month.component.ts","ng://@taiga-ui/kit/components/calendar-month/calendar-month.module.ts","ng://@taiga-ui/kit/components/calendar-month/taiga-ui-kit-components-calendar-month.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n nullableSame,\n TUI_FIRST_DAY,\n TUI_LAST_DAY,\n TuiBooleanHandler,\n TuiDay,\n tuiDefaultProp,\n TuiMonth,\n TuiMonthRange,\n tuiPure,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {TuiInteractiveState, TuiRangeState, TuiWithOptionalMinMax} from '@taiga-ui/core';\nimport {TuiMonthContext} from '@taiga-ui/kit/interfaces';\nimport {TUI_CALENDAR_MONTHS} from '@taiga-ui/kit/tokens';\nimport {TuiBooleanHandlerWithContext} from '@taiga-ui/kit/types';\nimport {Observable} from 'rxjs';\n\nconst TODAY = TuiDay.currentLocal();\n\n// @dynamic\n@Component({\n selector: 'tui-calendar-month',\n templateUrl: './calendar-month.template.html',\n styleUrls: ['./calendar-month.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiCalendarMonthComponent implements TuiWithOptionalMinMax<TuiMonth> {\n @Input()\n @tuiDefaultProp()\n value: TuiMonthRange | TuiMonth | null = null;\n\n @Input()\n @tuiDefaultProp()\n year: TuiYear = TODAY;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandlerWithContext<\n TuiMonth,\n TuiMonthContext\n > = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n min: TuiMonth = TUI_FIRST_DAY;\n\n @Input()\n @tuiDefaultProp()\n max: TuiMonth = TUI_LAST_DAY;\n\n @Output()\n readonly monthClick = new EventEmitter<TuiMonth>();\n\n @Output()\n readonly hoveredItemChange = new EventEmitter<TuiMonth | null>();\n\n @Output()\n readonly yearChange = new EventEmitter<TuiYear>();\n\n isYearPickerShown = false;\n\n hoveredItem: TuiMonth | null = null;\n pressedItem: TuiMonth | null = null;\n\n constructor(\n @Inject(TUI_CALENDAR_MONTHS) readonly months$: Observable<readonly string[]>,\n ) {}\n\n @HostBinding('class._single')\n get isSingle(): boolean {\n return (\n this.value !== null &&\n (this.value instanceof TuiMonth || this.value.isSingleMonth)\n );\n }\n\n get previousYearDisabled(): boolean {\n return this.year.yearSameOrBefore(this.min);\n }\n\n get nextYearDisabled(): boolean {\n return this.year.yearSameOrAfter(this.max);\n }\n\n getItemState(item: TuiMonth): TuiInteractiveState | null {\n const {disabledItemHandlerWithMinMax, pressedItem, hoveredItem} = this;\n\n if (disabledItemHandlerWithMinMax(item)) {\n return TuiInteractiveState.Disabled;\n }\n\n if (pressedItem !== null && pressedItem.monthSame(item)) {\n return TuiInteractiveState.Pressed;\n }\n\n if (hoveredItem !== null && hoveredItem.monthSame(item)) {\n return TuiInteractiveState.Hovered;\n }\n\n return null;\n }\n\n getItemRange(item: TuiMonth): TuiRangeState | null {\n const {value, hoveredItem} = this;\n\n if (value === null) {\n return null;\n }\n\n if (value instanceof TuiMonth) {\n return value.monthSame(item) ? TuiRangeState.Single : null;\n }\n\n const theFirstOfRange = value.from.monthSame(item) && !value.isSingleMonth;\n const hoveredItemAfterFrom =\n hoveredItem !== null &&\n hoveredItem.monthAfter(value.from) &&\n value.from.monthSame(item) &&\n value.isSingleMonth;\n const hoveredItemIsCandidatToBeFrom =\n hoveredItem !== null &&\n hoveredItem.monthSame(item) &&\n hoveredItem.monthBefore(value.from) &&\n value.isSingleMonth;\n\n if (theFirstOfRange || hoveredItemAfterFrom || hoveredItemIsCandidatToBeFrom) {\n return TuiRangeState.Start;\n }\n\n const theLastOfRange = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemBeforeTo = value.to.monthSame(item) && !value.isSingleMonth;\n const hoveredItemIsCandidatToBeTo =\n hoveredItem !== null &&\n hoveredItem.monthSame(item) &&\n hoveredItem.monthAfter(value.from) &&\n value.isSingleMonth;\n\n if (theLastOfRange || hoveredItemBeforeTo || hoveredItemIsCandidatToBeTo) {\n return TuiRangeState.End;\n }\n\n return value.isSingleMonth && value.from.monthSame(item)\n ? TuiRangeState.Single\n : null;\n }\n\n getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth {\n return new TuiMonth(yearNumber, monthNumber);\n }\n\n isItemToday(item: TuiMonth): boolean {\n return TODAY.monthSame(item);\n }\n\n isItemInsideRange(month: TuiMonth): boolean {\n const {value, hoveredItem} = this;\n\n if (value === null || value instanceof TuiMonth) {\n return false;\n }\n\n if (!value.isSingleMonth) {\n return value.from.monthSameOrBefore(month) && value.to.monthAfter(month);\n }\n\n if (hoveredItem === null) {\n return false;\n }\n\n const range = TuiMonthRange.sort(value.from, hoveredItem);\n\n return range.from.monthSameOrBefore(month) && range.to.monthAfter(month);\n }\n\n onPickerYearClick(year: TuiYear) {\n this.isYearPickerShown = false;\n\n if (this.year.yearSame(year)) {\n return;\n }\n\n this.year = year;\n this.yearChange.emit(year);\n }\n\n onItemClick(month: TuiMonth) {\n if (this.disabledItemHandlerWithMinMax(month)) {\n return;\n }\n\n this.monthClick.emit(month);\n }\n\n onYearClick() {\n this.isYearPickerShown = true;\n }\n\n onNextYear() {\n this.year = this.year.append({year: 1});\n }\n\n onPreviousYear() {\n this.year = this.year.append({year: -1});\n }\n\n onItemHovered(hovered: boolean, item: TuiMonth) {\n this.updateHoveredItem(hovered ? item : null);\n }\n\n onItemPressed(pressed: boolean, item: TuiMonth) {\n this.updatePressedItem(pressed ? item : null);\n }\n\n private get disabledItemHandlerWithMinMax(): TuiBooleanHandler<TuiMonth> {\n return this.calculateDisabledItemHandlerWithMinMax(\n this.disabledItemHandler,\n this.value,\n this.min,\n this.max,\n );\n }\n\n private updateHoveredItem(month: TuiMonth | null) {\n if (nullableSame(this.hoveredItem, month, (a, b) => a.monthSame(b))) {\n return;\n }\n\n this.hoveredItem = month;\n this.hoveredItemChange.emit(month);\n }\n\n private updatePressedItem(item: TuiMonth | null) {\n this.pressedItem = item;\n }\n\n @tuiPure\n private calculateDisabledItemHandlerWithMinMax(\n disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext>,\n value: TuiMonth | TuiMonthRange | null,\n min: TuiMonth,\n max: TuiMonth,\n ): TuiBooleanHandler<TuiMonth> {\n return item =>\n item.monthBefore(min) ||\n item.monthAfter(max) ||\n disabledItemHandler(item, {value});\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiFocusableModule,\n TuiHoveredModule,\n TuiLetModule,\n TuiPressedModule,\n} from '@taiga-ui/cdk';\nimport {\n TuiLinkModule,\n TuiPrimitiveSpinButtonModule,\n TuiPrimitiveYearPickerModule,\n TuiScrollbarModule,\n} from '@taiga-ui/core';\nimport {TuiCalendarMonthComponent} from './calendar-month.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiPrimitiveYearPickerModule,\n TuiPrimitiveSpinButtonModule,\n TuiScrollbarModule,\n TuiLinkModule,\n TuiLetModule,\n TuiHoveredModule,\n TuiPressedModule,\n TuiFocusableModule,\n ],\n declarations: [TuiCalendarMonthComponent],\n exports: [TuiCalendarMonthComponent],\n})\nexport class TuiCalendarMonthModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import { Input, ViewChildren, forwardRef, Component, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
  import { ALWAYS_FALSE_HANDLER, TUI_DEFAULT_STRINGIFY, EMPTY_QUERY, isNativeFocused, isPresent, tuiDefaultProp, TuiElementModule } from '@taiga-ui/cdk';
4
- import { TuiOptionComponent, TUI_DATA_LIST_ACCESSOR, TuiDataListModule, TuiLoaderModule } from '@taiga-ui/core';
4
+ import { TuiOptionComponent, TUI_DATA_LIST_ACCESSOR, TuiDataListModule, TuiLoaderModule, TuiDataListDirective } from '@taiga-ui/core';
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
7
7
 
@@ -107,7 +107,11 @@ TuiDataListWrapperModule = __decorate([
107
107
  TuiLoaderModule,
108
108
  ],
109
109
  declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],
110
- exports: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],
110
+ exports: [
111
+ TuiDataListWrapperComponent,
112
+ TuiDataListGroupWrapperComponent,
113
+ TuiDataListDirective,
114
+ ],
111
115
  })
112
116
  ], TuiDataListWrapperModule);
113
117
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["ng://@taiga-ui/kit/components/data-list-wrapper/data-list-wrapper.component.ts","ng://@taiga-ui/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","ng://@taiga-ui/kit/components/data-list-wrapper/data-list-wrapper.module.ts","ng://@taiga-ui/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n EMPTY_QUERY,\n isNativeFocused,\n isPresent,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n TuiDataListAccessor,\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListWrapperComponent),\n },\n ],\n})\nexport class TuiDataListWrapperComponent<T> implements TuiDataListAccessor<T> {\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<ReadonlyArray<T>> | ReadonlyArray<T> | null = [];\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n TUI_DEFAULT_STRINGIFY($implicit);\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: isNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): ReadonlyArray<T> {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, forwardRef, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_ACCESSOR, TuiDataListAccessor} from '@taiga-ui/core';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListGroupWrapperComponent),\n },\n ],\n})\nexport class TuiDataListGroupWrapperComponent<T>\n extends TuiDataListWrapperComponent<T>\n implements TuiDataListAccessor<T> {\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<ReadonlyArray<T>> | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;IAwCa,2BAA2B,mCAAxC,MAAa,2BAA2B;IAAxC;QAGI,UAAK,GAA8D,EAAE,CAAC;QAItE,wBAAmB,GAAyB,oBAAoB,CAAC;QAIjE,iBAAY,GAAwB,EAAE,CAAC;QAIvC,gBAAW,GAAmD,CAAC,EAAC,SAAS,EAAC,KACtE,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAIrC,SAAI,GAAyB,GAAG,CAAC;QAGhB,YAAO,GAAqC,WAAW,CAAC;KAgB5E;IAdG,UAAU,CACN,SAAY,EACZ,EAAC,aAAa,EAA0B;QAExC,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,aAAa,CAAC,EAAC,CAAC;KAC9D;IAED,UAAU,CAAC,kBAA2B,KAAK;QACvC,OAAO,IAAI,CAAC,OAAO;aACd,OAAO,EAAE;aACT,MAAM,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAK,eAAe,IAAI,CAAC,QAAQ,CAAC;aACpD,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,KAAK,KAAK,CAAC;aACvB,MAAM,CAAC,SAAS,CAAC,CAAC;KAC1B;EACJ;AApCG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;0DACqD;AAItE;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;wEACgD;AAIjE;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;iEACsB;AAIvC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gEAEoB;AAIrC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;yDACgB;AAGjC;IADC,YAAY,CAAC,UAAU,CAAC,MAAM,kBAAkB,CAAC,CAAC;4DACsB;AAvBhE,2BAA2B;IAZvC,SAAS,CAAC;QACP,QAAQ,EAAE,qCAAqC;QAC/C,4wBAAgD;QAEhD,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,sBAAsB;gBAC/B,WAAW,EAAE,UAAU,CAAC,MAAM,6BAA2B,CAAC;aAC7D;SACJ;;KACJ,CAAC;GACW,2BAA2B,CAuCvC;;;IC9DY,gCAAgC,wCAA7C,MAAa,gCACT,SAAQ,2BAA8B;IAD1C;;QAKI,UAAK,GAA2C,EAAE,CAAC;QAInD,WAAM,GAAsB,EAAE,CAAC;KAClC;EAAA;AALG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;+DACkC;AAInD;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gEACc;AATtB,gCAAgC;IAZ5C,SAAS,CAAC;QACP,QAAQ,EAAE,+BAA+B;QACzC,s5BAAsD;QAEtD,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,sBAAsB;gBAC/B,WAAW,EAAE,UAAU,CAAC,MAAM,kCAAgC,CAAC;aAClE;SACJ;;KACJ,CAAC;GACW,gCAAgC,CAU5C;;ICRY,wBAAwB,GAArC,MAAa,wBAAwB;EAAG;AAA3B,wBAAwB;IAXpC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,gBAAgB;YAChB,iBAAiB;YACjB,eAAe;SAClB;QACD,YAAY,EAAE,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;QAC7E,OAAO,EAAE,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;KAC3E,CAAC;GACW,wBAAwB,CAAG;;ACnBxC;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-data-list-wrapper.js","sources":["ng://@taiga-ui/kit/components/data-list-wrapper/data-list-wrapper.component.ts","ng://@taiga-ui/kit/components/data-list-wrapper/data-list-group-wrapper.component.ts","ng://@taiga-ui/kit/components/data-list-wrapper/data-list-wrapper.module.ts","ng://@taiga-ui/kit/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n ViewChildren,\n} from '@angular/core';\nimport {\n ALWAYS_FALSE_HANDLER,\n EMPTY_QUERY,\n isNativeFocused,\n isPresent,\n TUI_DEFAULT_STRINGIFY,\n TuiBooleanHandler,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DATA_LIST_ACCESSOR,\n TuiDataListAccessor,\n TuiOptionComponent,\n TuiSizeL,\n TuiSizeXS,\n TuiValueContentContext,\n} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-data-list-wrapper:not([labels])',\n templateUrl: './data-list-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListWrapperComponent),\n },\n ],\n})\nexport class TuiDataListWrapperComponent<T> implements TuiDataListAccessor<T> {\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<ReadonlyArray<T>> | ReadonlyArray<T> | null = [];\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<T> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n emptyContent: PolymorpheusContent = '';\n\n @Input()\n @tuiDefaultProp()\n itemContent: PolymorpheusContent<TuiValueContentContext<T>> = ({$implicit}) =>\n TUI_DEFAULT_STRINGIFY($implicit);\n\n @Input()\n @tuiDefaultProp()\n size: TuiSizeXS | TuiSizeL = 'm';\n\n @ViewChildren(forwardRef(() => TuiOptionComponent))\n private readonly options: QueryList<TuiOptionComponent<T>> = EMPTY_QUERY;\n\n getContext(\n $implicit: T,\n {nativeElement}: ElementRef<HTMLElement>,\n ): TuiValueContentContext<T> {\n return {$implicit, active: isNativeFocused(nativeElement)};\n }\n\n getOptions(includeDisabled: boolean = false): ReadonlyArray<T> {\n return this.options\n .toArray()\n .filter(({disabled}) => includeDisabled || !disabled)\n .map(({value}) => value)\n .filter(isPresent);\n }\n}\n","import {ChangeDetectionStrategy, Component, forwardRef, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_ACCESSOR, TuiDataListAccessor} from '@taiga-ui/core';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@Component({\n selector: 'tui-data-list-wrapper[labels]',\n templateUrl: './data-list-group-wrapper.template.html',\n styleUrls: ['./data-list-wrapper.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting: forwardRef(() => TuiDataListGroupWrapperComponent),\n },\n ],\n})\nexport class TuiDataListGroupWrapperComponent<T>\n extends TuiDataListWrapperComponent<T>\n implements TuiDataListAccessor<T> {\n @Input()\n @tuiDefaultProp()\n items: ReadonlyArray<ReadonlyArray<T>> | null = [];\n\n @Input()\n @tuiDefaultProp()\n labels: readonly string[] = [];\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiElementModule} from '@taiga-ui/cdk';\nimport {TuiDataListDirective, TuiDataListModule, TuiLoaderModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiDataListGroupWrapperComponent} from './data-list-group-wrapper.component';\nimport {TuiDataListWrapperComponent} from './data-list-wrapper.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiElementModule,\n TuiDataListModule,\n TuiLoaderModule,\n ],\n declarations: [TuiDataListWrapperComponent, TuiDataListGroupWrapperComponent],\n exports: [\n TuiDataListWrapperComponent,\n TuiDataListGroupWrapperComponent,\n TuiDataListDirective,\n ],\n})\nexport class TuiDataListWrapperModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;IAwCa,2BAA2B,mCAAxC,MAAa,2BAA2B;IAAxC;QAGI,UAAK,GAA8D,EAAE,CAAC;QAItE,wBAAmB,GAAyB,oBAAoB,CAAC;QAIjE,iBAAY,GAAwB,EAAE,CAAC;QAIvC,gBAAW,GAAmD,CAAC,EAAC,SAAS,EAAC,KACtE,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAIrC,SAAI,GAAyB,GAAG,CAAC;QAGhB,YAAO,GAAqC,WAAW,CAAC;KAgB5E;IAdG,UAAU,CACN,SAAY,EACZ,EAAC,aAAa,EAA0B;QAExC,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,aAAa,CAAC,EAAC,CAAC;KAC9D;IAED,UAAU,CAAC,kBAA2B,KAAK;QACvC,OAAO,IAAI,CAAC,OAAO;aACd,OAAO,EAAE;aACT,MAAM,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAK,eAAe,IAAI,CAAC,QAAQ,CAAC;aACpD,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,KAAK,KAAK,CAAC;aACvB,MAAM,CAAC,SAAS,CAAC,CAAC;KAC1B;EACJ;AApCG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;0DACqD;AAItE;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;wEACgD;AAIjE;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;iEACsB;AAIvC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gEAEoB;AAIrC;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;yDACgB;AAGjC;IADC,YAAY,CAAC,UAAU,CAAC,MAAM,kBAAkB,CAAC,CAAC;4DACsB;AAvBhE,2BAA2B;IAZvC,SAAS,CAAC;QACP,QAAQ,EAAE,qCAAqC;QAC/C,4wBAAgD;QAEhD,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,sBAAsB;gBAC/B,WAAW,EAAE,UAAU,CAAC,MAAM,6BAA2B,CAAC;aAC7D;SACJ;;KACJ,CAAC;GACW,2BAA2B,CAuCvC;;;IC9DY,gCAAgC,wCAA7C,MAAa,gCACT,SAAQ,2BAA8B;IAD1C;;QAKI,UAAK,GAA2C,EAAE,CAAC;QAInD,WAAM,GAAsB,EAAE,CAAC;KAClC;EAAA;AALG;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;+DACkC;AAInD;IAFC,KAAK,EAAE;IACP,cAAc,EAAE;gEACc;AATtB,gCAAgC;IAZ5C,SAAS,CAAC;QACP,QAAQ,EAAE,+BAA+B;QACzC,s5BAAsD;QAEtD,eAAe,EAAE,uBAAuB,CAAC,MAAM;QAC/C,SAAS,EAAE;YACP;gBACI,OAAO,EAAE,sBAAsB;gBAC/B,WAAW,EAAE,UAAU,CAAC,MAAM,kCAAgC,CAAC;aAClE;SACJ;;KACJ,CAAC;GACW,gCAAgC,CAU5C;;ICJY,wBAAwB,GAArC,MAAa,wBAAwB;EAAG;AAA3B,wBAAwB;IAfpC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,kBAAkB;YAClB,gBAAgB;YAChB,iBAAiB;YACjB,eAAe;SAClB;QACD,YAAY,EAAE,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;QAC7E,OAAO,EAAE;YACL,2BAA2B;YAC3B,gCAAgC;YAChC,oBAAoB;SACvB;KACJ,CAAC;GACW,wBAAwB,CAAG;;ACvBxC;;;;;;"}
@@ -147,6 +147,9 @@ let TuiInputDateRangeComponent = TuiInputDateRangeComponent_1 = class TuiInputDa
147
147
  onRangeChange(range) {
148
148
  this.toggle();
149
149
  this.focusInput();
150
+ if (!range) {
151
+ this.nativeValue = '';
152
+ }
150
153
  if (!nullableSame(this.value, range, (a, b) => a.daySame(b))) {
151
154
  this.updateValue(range);
152
155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-date-range.js","sources":["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","ng://@taiga-ui/kit/components/input-date-range/taiga-ui-kit-components-input-date-range.ts"],"sourcesContent":["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) {\n this.toggle();\n this.focusInput();\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-input-date-range.js","sources":["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","ng://@taiga-ui/kit/components/input-date-range/taiga-ui-kit-components-input-date-range.ts"],"sourcesContent":["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 @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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}