@vkontakte/vkui 6.7.2 → 6.7.4

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 (296) hide show
  1. package/dist/cjs/components/BaseGallery/BaseGallery.d.ts.map +1 -1
  2. package/dist/cjs/components/BaseGallery/BaseGallery.js +5 -2
  3. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  4. package/dist/cjs/components/BaseGallery/CarouselBase/CarouselBase.d.ts.map +1 -1
  5. package/dist/cjs/components/BaseGallery/CarouselBase/CarouselBase.js +5 -1
  6. package/dist/cjs/components/BaseGallery/CarouselBase/CarouselBase.js.map +1 -1
  7. package/dist/cjs/components/Button/Button.d.ts +1 -0
  8. package/dist/cjs/components/Button/Button.d.ts.map +1 -1
  9. package/dist/cjs/components/Button/Button.js.map +1 -1
  10. package/dist/cjs/components/Calendar/Calendar.d.ts +6 -6
  11. package/dist/cjs/components/Calendar/Calendar.d.ts.map +1 -1
  12. package/dist/cjs/components/Calendar/Calendar.js +25 -5
  13. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  14. package/dist/cjs/components/CalendarDay/CalendarDay.d.ts +4 -1
  15. package/dist/cjs/components/CalendarDay/CalendarDay.d.ts.map +1 -1
  16. package/dist/cjs/components/CalendarDay/CalendarDay.js +5 -3
  17. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  18. package/dist/cjs/components/CalendarDays/CalendarDays.d.ts +6 -3
  19. package/dist/cjs/components/CalendarDays/CalendarDays.d.ts.map +1 -1
  20. package/dist/cjs/components/CalendarDays/CalendarDays.js +5 -3
  21. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  22. package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts +8 -2
  23. package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  24. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +14 -6
  25. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  26. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +8 -4
  27. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  28. package/dist/cjs/components/CalendarRange/CalendarRange.js +13 -8
  29. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  30. package/dist/cjs/components/CalendarTime/CalendarTime.d.ts +9 -2
  31. package/dist/cjs/components/CalendarTime/CalendarTime.d.ts.map +1 -1
  32. package/dist/cjs/components/CalendarTime/CalendarTime.js +10 -5
  33. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  34. package/dist/cjs/components/Clickable/useState.d.ts +1 -1
  35. package/dist/cjs/components/Clickable/useState.d.ts.map +1 -1
  36. package/dist/cjs/components/Clickable/useState.js +12 -19
  37. package/dist/cjs/components/Clickable/useState.js.map +1 -1
  38. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  39. package/dist/cjs/components/CustomSelect/CustomSelect.js +3 -18
  40. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  41. package/dist/cjs/components/DateInput/DateInput.d.ts +12 -3
  42. package/dist/cjs/components/DateInput/DateInput.d.ts.map +1 -1
  43. package/dist/cjs/components/DateInput/DateInput.js +26 -11
  44. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  45. package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +15 -3
  46. package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  47. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +22 -11
  48. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  49. package/dist/cjs/components/FocusTrap/FocusTrap.d.ts +1 -1
  50. package/dist/cjs/components/FocusTrap/FocusTrap.d.ts.map +1 -1
  51. package/dist/cjs/components/FocusTrap/FocusTrap.js +50 -41
  52. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  53. package/dist/cjs/components/FormItem/FormItem.d.ts +0 -2
  54. package/dist/cjs/components/FormItem/FormItem.d.ts.map +1 -1
  55. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  56. package/dist/cjs/components/Gallery/Gallery.d.ts +1 -1
  57. package/dist/cjs/components/Gallery/Gallery.d.ts.map +1 -1
  58. package/dist/cjs/components/Gallery/Gallery.js +12 -3
  59. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  60. package/dist/cjs/components/Gallery/hooks.d.ts +9 -1
  61. package/dist/cjs/components/Gallery/hooks.d.ts.map +1 -1
  62. package/dist/cjs/components/Gallery/hooks.js +43 -25
  63. package/dist/cjs/components/Gallery/hooks.js.map +1 -1
  64. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  65. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +19 -26
  66. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  67. package/dist/cjs/components/Popover/Popover.js +1 -1
  68. package/dist/cjs/components/Popover/Popover.js.map +1 -1
  69. package/dist/cjs/hooks/useDateInput.d.ts +2 -1
  70. package/dist/cjs/hooks/useDateInput.d.ts.map +1 -1
  71. package/dist/cjs/hooks/useDateInput.js +29 -9
  72. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  73. package/dist/cjs/lib/floating/customResizeObserver.d.ts.map +1 -1
  74. package/dist/cjs/lib/floating/customResizeObserver.js +0 -1
  75. package/dist/cjs/lib/floating/customResizeObserver.js.map +1 -1
  76. package/dist/cjs/lib/floating/types/component.d.ts +2 -2
  77. package/dist/cjs/lib/floating/types/component.d.ts.map +1 -1
  78. package/dist/cjs/lib/floating/useFloatingWithInteractions/index.d.ts +1 -0
  79. package/dist/cjs/lib/floating/useFloatingWithInteractions/index.d.ts.map +1 -1
  80. package/dist/cjs/lib/floating/useFloatingWithInteractions/index.js.map +1 -1
  81. package/dist/cjs/lib/floating/useFloatingWithInteractions/types.d.ts +2 -1
  82. package/dist/cjs/lib/floating/useFloatingWithInteractions/types.d.ts.map +1 -1
  83. package/dist/cjs/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
  84. package/dist/cjs/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +14 -1
  85. package/dist/cjs/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  86. package/dist/components/BaseGallery/BaseGallery.d.ts.map +1 -1
  87. package/dist/components/BaseGallery/BaseGallery.js +5 -2
  88. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  89. package/dist/components/BaseGallery/CarouselBase/CarouselBase.d.ts.map +1 -1
  90. package/dist/components/BaseGallery/CarouselBase/CarouselBase.js +5 -1
  91. package/dist/components/BaseGallery/CarouselBase/CarouselBase.js.map +1 -1
  92. package/dist/components/Button/Button.d.ts +1 -0
  93. package/dist/components/Button/Button.d.ts.map +1 -1
  94. package/dist/components/Button/Button.js.map +1 -1
  95. package/dist/components/Calendar/Calendar.d.ts +6 -6
  96. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  97. package/dist/components/Calendar/Calendar.js +25 -5
  98. package/dist/components/Calendar/Calendar.js.map +1 -1
  99. package/dist/components/CalendarDay/CalendarDay.d.ts +4 -1
  100. package/dist/components/CalendarDay/CalendarDay.d.ts.map +1 -1
  101. package/dist/components/CalendarDay/CalendarDay.js +5 -3
  102. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  103. package/dist/components/CalendarDays/CalendarDays.d.ts +6 -3
  104. package/dist/components/CalendarDays/CalendarDays.d.ts.map +1 -1
  105. package/dist/components/CalendarDays/CalendarDays.js +5 -3
  106. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  107. package/dist/components/CalendarHeader/CalendarHeader.d.ts +8 -2
  108. package/dist/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  109. package/dist/components/CalendarHeader/CalendarHeader.js +14 -6
  110. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  111. package/dist/components/CalendarRange/CalendarRange.d.ts +8 -4
  112. package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  113. package/dist/components/CalendarRange/CalendarRange.js +13 -8
  114. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  115. package/dist/components/CalendarTime/CalendarTime.d.ts +9 -2
  116. package/dist/components/CalendarTime/CalendarTime.d.ts.map +1 -1
  117. package/dist/components/CalendarTime/CalendarTime.js +10 -5
  118. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  119. package/dist/components/Clickable/useState.d.ts +1 -1
  120. package/dist/components/Clickable/useState.d.ts.map +1 -1
  121. package/dist/components/Clickable/useState.js +12 -19
  122. package/dist/components/Clickable/useState.js.map +1 -1
  123. package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  124. package/dist/components/CustomSelect/CustomSelect.js +3 -18
  125. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  126. package/dist/components/DateInput/DateInput.d.ts +12 -3
  127. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  128. package/dist/components/DateInput/DateInput.js +26 -11
  129. package/dist/components/DateInput/DateInput.js.map +1 -1
  130. package/dist/components/DateRangeInput/DateRangeInput.d.ts +15 -3
  131. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  132. package/dist/components/DateRangeInput/DateRangeInput.js +22 -11
  133. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  134. package/dist/components/FocusTrap/FocusTrap.d.ts +1 -1
  135. package/dist/components/FocusTrap/FocusTrap.d.ts.map +1 -1
  136. package/dist/components/FocusTrap/FocusTrap.js +51 -42
  137. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  138. package/dist/components/FormItem/FormItem.d.ts +0 -2
  139. package/dist/components/FormItem/FormItem.d.ts.map +1 -1
  140. package/dist/components/FormItem/FormItem.js.map +1 -1
  141. package/dist/components/Gallery/Gallery.d.ts +1 -1
  142. package/dist/components/Gallery/Gallery.d.ts.map +1 -1
  143. package/dist/components/Gallery/Gallery.js +12 -3
  144. package/dist/components/Gallery/Gallery.js.map +1 -1
  145. package/dist/components/Gallery/hooks.d.ts +9 -1
  146. package/dist/components/Gallery/hooks.d.ts.map +1 -1
  147. package/dist/components/Gallery/hooks.js +43 -25
  148. package/dist/components/Gallery/hooks.js.map +1 -1
  149. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  150. package/dist/components/HorizontalScroll/HorizontalScroll.js +20 -27
  151. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  152. package/dist/components/Popover/Popover.js +1 -1
  153. package/dist/components/Popover/Popover.js.map +1 -1
  154. package/dist/components.css +1 -1
  155. package/dist/components.css.map +1 -1
  156. package/dist/components.js.tmp +382 -230
  157. package/dist/cssm/components/BaseGallery/BaseGallery.d.ts.map +1 -1
  158. package/dist/cssm/components/BaseGallery/BaseGallery.js +3 -1
  159. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  160. package/dist/cssm/components/BaseGallery/CarouselBase/CarouselBase.d.ts.map +1 -1
  161. package/dist/cssm/components/BaseGallery/CarouselBase/CarouselBase.js +5 -1
  162. package/dist/cssm/components/BaseGallery/CarouselBase/CarouselBase.js.map +1 -1
  163. package/dist/cssm/components/Button/Button.d.ts +1 -0
  164. package/dist/cssm/components/Button/Button.d.ts.map +1 -1
  165. package/dist/cssm/components/Button/Button.js +1 -0
  166. package/dist/cssm/components/Button/Button.js.map +1 -1
  167. package/dist/cssm/components/Calendar/Calendar.d.ts +6 -6
  168. package/dist/cssm/components/Calendar/Calendar.d.ts.map +1 -1
  169. package/dist/cssm/components/Calendar/Calendar.js +14 -4
  170. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  171. package/dist/cssm/components/CalendarDay/CalendarDay.d.ts +4 -1
  172. package/dist/cssm/components/CalendarDay/CalendarDay.d.ts.map +1 -1
  173. package/dist/cssm/components/CalendarDay/CalendarDay.js +2 -1
  174. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  175. package/dist/cssm/components/CalendarDays/CalendarDays.d.ts +6 -3
  176. package/dist/cssm/components/CalendarDays/CalendarDays.d.ts.map +1 -1
  177. package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -1
  178. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  179. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +8 -2
  180. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  181. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +7 -3
  182. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  183. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +8 -4
  184. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  185. package/dist/cssm/components/CalendarRange/CalendarRange.js +9 -5
  186. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  187. package/dist/cssm/components/CalendarTime/CalendarTime.d.ts +9 -2
  188. package/dist/cssm/components/CalendarTime/CalendarTime.d.ts.map +1 -1
  189. package/dist/cssm/components/CalendarTime/CalendarTime.js +10 -5
  190. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  191. package/dist/cssm/components/CalendarTime/CalendarTime.module.css +4 -0
  192. package/dist/cssm/components/Clickable/useState.d.ts +1 -1
  193. package/dist/cssm/components/Clickable/useState.d.ts.map +1 -1
  194. package/dist/cssm/components/Clickable/useState.js +10 -11
  195. package/dist/cssm/components/Clickable/useState.js.map +1 -1
  196. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  197. package/dist/cssm/components/CustomSelect/CustomSelect.js +3 -18
  198. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  199. package/dist/cssm/components/DateInput/DateInput.d.ts +12 -3
  200. package/dist/cssm/components/DateInput/DateInput.d.ts.map +1 -1
  201. package/dist/cssm/components/DateInput/DateInput.js +18 -9
  202. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  203. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +15 -3
  204. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  205. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +17 -9
  206. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  207. package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +1 -1
  208. package/dist/cssm/components/FocusTrap/FocusTrap.d.ts.map +1 -1
  209. package/dist/cssm/components/FocusTrap/FocusTrap.js +51 -42
  210. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  211. package/dist/cssm/components/FormItem/FormItem.d.ts +0 -2
  212. package/dist/cssm/components/FormItem/FormItem.d.ts.map +1 -1
  213. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  214. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +1 -0
  215. package/dist/cssm/components/Gallery/Gallery.d.ts +1 -1
  216. package/dist/cssm/components/Gallery/Gallery.d.ts.map +1 -1
  217. package/dist/cssm/components/Gallery/Gallery.js +9 -2
  218. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  219. package/dist/cssm/components/Gallery/hooks.d.ts +9 -1
  220. package/dist/cssm/components/Gallery/hooks.d.ts.map +1 -1
  221. package/dist/cssm/components/Gallery/hooks.js +43 -25
  222. package/dist/cssm/components/Gallery/hooks.js.map +1 -1
  223. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  224. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +20 -27
  225. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  226. package/dist/cssm/components/Popover/Popover.js +1 -1
  227. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  228. package/dist/cssm/hooks/useDateInput.d.ts +2 -1
  229. package/dist/cssm/hooks/useDateInput.d.ts.map +1 -1
  230. package/dist/cssm/hooks/useDateInput.js +30 -9
  231. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  232. package/dist/cssm/lib/floating/customResizeObserver.d.ts.map +1 -1
  233. package/dist/cssm/lib/floating/customResizeObserver.js +0 -1
  234. package/dist/cssm/lib/floating/customResizeObserver.js.map +1 -1
  235. package/dist/cssm/lib/floating/types/component.d.ts +2 -2
  236. package/dist/cssm/lib/floating/types/component.d.ts.map +1 -1
  237. package/dist/cssm/lib/floating/types/component.js.map +1 -1
  238. package/dist/cssm/lib/floating/useFloatingWithInteractions/index.d.ts +1 -0
  239. package/dist/cssm/lib/floating/useFloatingWithInteractions/index.d.ts.map +1 -1
  240. package/dist/cssm/lib/floating/useFloatingWithInteractions/index.js.map +1 -1
  241. package/dist/cssm/lib/floating/useFloatingWithInteractions/types.d.ts +2 -1
  242. package/dist/cssm/lib/floating/useFloatingWithInteractions/types.d.ts.map +1 -1
  243. package/dist/cssm/lib/floating/useFloatingWithInteractions/types.js.map +1 -1
  244. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
  245. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +14 -1
  246. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  247. package/dist/hooks/useDateInput.d.ts +2 -1
  248. package/dist/hooks/useDateInput.d.ts.map +1 -1
  249. package/dist/hooks/useDateInput.js +30 -9
  250. package/dist/hooks/useDateInput.js.map +1 -1
  251. package/dist/lib/floating/customResizeObserver.d.ts.map +1 -1
  252. package/dist/lib/floating/customResizeObserver.js +0 -1
  253. package/dist/lib/floating/customResizeObserver.js.map +1 -1
  254. package/dist/lib/floating/types/component.d.ts +2 -2
  255. package/dist/lib/floating/types/component.d.ts.map +1 -1
  256. package/dist/lib/floating/types/component.js.map +1 -1
  257. package/dist/lib/floating/useFloatingWithInteractions/index.d.ts +1 -0
  258. package/dist/lib/floating/useFloatingWithInteractions/index.d.ts.map +1 -1
  259. package/dist/lib/floating/useFloatingWithInteractions/index.js.map +1 -1
  260. package/dist/lib/floating/useFloatingWithInteractions/types.d.ts +2 -1
  261. package/dist/lib/floating/useFloatingWithInteractions/types.d.ts.map +1 -1
  262. package/dist/lib/floating/useFloatingWithInteractions/types.js.map +1 -1
  263. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
  264. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +14 -1
  265. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  266. package/dist/vkui.css +1 -1
  267. package/dist/vkui.css.map +1 -1
  268. package/dist/vkui.js.tmp +382 -230
  269. package/package.json +1 -1
  270. package/src/components/BaseGallery/BaseGallery.tsx +8 -1
  271. package/src/components/BaseGallery/CarouselBase/CarouselBase.tsx +6 -1
  272. package/src/components/Button/Button.tsx +1 -0
  273. package/src/components/Calendar/Calendar.tsx +49 -6
  274. package/src/components/CalendarDay/CalendarDay.tsx +7 -1
  275. package/src/components/CalendarDays/CalendarDays.tsx +9 -1
  276. package/src/components/CalendarHeader/CalendarHeader.tsx +21 -1
  277. package/src/components/CalendarRange/CalendarRange.tsx +24 -3
  278. package/src/components/CalendarTime/CalendarTime.module.css +4 -0
  279. package/src/components/CalendarTime/CalendarTime.tsx +39 -10
  280. package/src/components/Clickable/useState.tsx +30 -27
  281. package/src/components/CustomSelect/CustomSelect.tsx +4 -17
  282. package/src/components/DateInput/DateInput.tsx +32 -3
  283. package/src/components/DateRangeInput/DateRangeInput.tsx +28 -1
  284. package/src/components/FocusTrap/FocusTrap.tsx +75 -45
  285. package/src/components/FormItem/FormItem.tsx +0 -2
  286. package/src/components/FormLayoutGroup/FormLayoutGroup.module.css +1 -0
  287. package/src/components/Gallery/Gallery.tsx +10 -1
  288. package/src/components/Gallery/hooks.ts +49 -33
  289. package/src/components/HorizontalScroll/HorizontalScroll.tsx +23 -28
  290. package/src/components/Popover/Popover.tsx +1 -1
  291. package/src/hooks/useDateInput.ts +23 -6
  292. package/src/lib/floating/customResizeObserver.ts +0 -1
  293. package/src/lib/floating/types/component.ts +2 -1
  294. package/src/lib/floating/useFloatingWithInteractions/index.ts +2 -0
  295. package/src/lib/floating/useFloatingWithInteractions/types.ts +3 -1
  296. package/src/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.ts +15 -3
@@ -7499,30 +7499,6 @@ function useState_object_spread(target) {
7499
7499
  }
7500
7500
  return target;
7501
7501
  }
7502
- function ownKeys(object, enumerableOnly) {
7503
- var keys = Object.keys(object);
7504
- if (Object.getOwnPropertySymbols) {
7505
- var symbols = Object.getOwnPropertySymbols(object);
7506
- if (enumerableOnly) {
7507
- symbols = symbols.filter(function(sym) {
7508
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
7509
- });
7510
- }
7511
- keys.push.apply(keys, symbols);
7512
- }
7513
- return keys;
7514
- }
7515
- function _object_spread_props(target, source) {
7516
- source = source != null ? source : {};
7517
- if (Object.getOwnPropertyDescriptors) {
7518
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
7519
- } else {
7520
- ownKeys(Object(source)).forEach(function(key) {
7521
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
7522
- });
7523
- }
7524
- return target;
7525
- }
7526
7502
  function useState_object_without_properties(source, excluded) {
7527
7503
  if (source == null) return {};
7528
7504
  var target = useState_object_without_properties_loose(source, excluded);
@@ -7575,10 +7551,9 @@ var ACTIVE_DELAY = 70;
7575
7551
  var prevIsHoveredRef = react.useRef(undefined);
7576
7552
  var handleHover = react.useCallback(function(isHover) {
7577
7553
  setHoveredStateLocal(isHover);
7578
- var isHovered = calculateStateValue({
7554
+ var isHovered = hovered !== null && hovered !== void 0 ? hovered : calculateStateValue({
7579
7555
  hasState: hasHover,
7580
7556
  isLocked: lockState,
7581
- stateValueControlled: Boolean(hovered),
7582
7557
  stateValueLocal: isHover
7583
7558
  });
7584
7559
  // проверка сделана чтобы реже вызывать обновление состояния
@@ -7602,10 +7577,9 @@ var ACTIVE_DELAY = 70;
7602
7577
  var onPointerLeave = function() {
7603
7578
  handleHover(false);
7604
7579
  };
7605
- var isHovered = calculateStateValue({
7580
+ var isHovered = hovered !== null && hovered !== void 0 ? hovered : calculateStateValue({
7606
7581
  hasState: hasHover,
7607
7582
  isLocked: lockState,
7608
- stateValueControlled: Boolean(hovered),
7609
7583
  stateValueLocal: hoveredStateLocal
7610
7584
  });
7611
7585
  return {
@@ -7651,10 +7625,9 @@ var ACTIVE_DELAY = 70;
7651
7625
  setActivated(true);
7652
7626
  setActivated(false, activeEffectDelay);
7653
7627
  };
7654
- var isActivated = calculateStateValue({
7628
+ var isActivated = activated !== null && activated !== void 0 ? activated : calculateStateValue({
7655
7629
  hasState: hasActive,
7656
7630
  isLocked: lockStateRef.current,
7657
- stateValueControlled: Boolean(activated),
7658
7631
  stateValueLocal: activatedState
7659
7632
  });
7660
7633
  return {
@@ -7701,13 +7674,8 @@ function useLockRef(setParentStateLockBubbling) {
7701
7674
  }
7702
7675
  /**
7703
7676
  * Управляет состоянием компонента
7704
- */ function useState(_param) {
7705
- var hovered = _param.hovered, hasHover = _param.hasHover, hasActive = _param.hasActive, unlockParentHover = _param.unlockParentHover, restProps = useState_object_without_properties(_param, [
7706
- "hovered",
7707
- "hasHover",
7708
- "hasActive",
7709
- "unlockParentHover"
7710
- ]);
7677
+ */ function useState(param) {
7678
+ var hovered = param.hovered, hasHover = param.hasHover, activated = param.activated, hasActive = param.hasActive, activeEffectDelay = param.activeEffectDelay, unlockParentHover = param.unlockParentHover, hoverClassName = param.hoverClassName, activeClassName = param.activeClassName;
7711
7679
  var _React_useContext = react.useContext(ClickableLockStateContext), _React_useContext_lockHoverStateBubbling = _React_useContext.lockHoverStateBubbling, lockHoverStateBubbling = _React_useContext_lockHoverStateBubbling === void 0 ? functions_noop : _React_useContext_lockHoverStateBubbling, _React_useContext_lockActiveStateBubbling = _React_useContext.lockActiveStateBubbling, lockActiveStateBubbling = _React_useContext_lockActiveStateBubbling === void 0 ? functions_noop : _React_useContext_lockActiveStateBubbling;
7712
7680
  var _useLockState = useState_sliced_to_array(useLockState(unlockParentHover ? functions_noop : lockHoverStateBubbling), 3), lockHoverState = _useLockState[0], setParentStateLockHoverBubbling = _useLockState[1], setLockHoverBubblingImmediate = _useLockState[2];
7713
7681
  var _useLockRef = useState_sliced_to_array(useLockRef(lockActiveStateBubbling), 3), lockActiveStateRef = _useLockRef[0], setParentStateLockActiveBubbling = _useLockRef[1], setLockActiveBubblingImmediate = _useLockRef[2];
@@ -7719,13 +7687,16 @@ function useLockRef(setParentStateLockBubbling) {
7719
7687
  }), isHovered = _useHover.isHovered, hoverEvent = useState_object_without_properties(_useHover, [
7720
7688
  "isHovered"
7721
7689
  ]);
7722
- var _useActive = useActive(_object_spread_props(useState_object_spread({}, restProps), {
7690
+ var _useActive = useActive({
7691
+ activated: activated,
7692
+ hasActive: hasActive,
7693
+ activeEffectDelay: activeEffectDelay,
7723
7694
  lockStateRef: lockActiveStateRef,
7724
7695
  setParentStateLock: setParentStateLockActiveBubbling
7725
- })), isActivated = _useActive.isActivated, activeEvent = useState_object_without_properties(_useActive, [
7696
+ }), isActivated = _useActive.isActivated, activeEvent = useState_object_without_properties(_useActive, [
7726
7697
  "isActivated"
7727
7698
  ]);
7728
- var stateClassName = clsx(isHovered && restProps.hoverClassName, isActivated && restProps.activeClassName);
7699
+ var stateClassName = clsx(isHovered && hoverClassName, isActivated && activeClassName);
7729
7700
  var handlers = mergeCalls(hoverEvent, activeEvent);
7730
7701
  return useState_object_spread({
7731
7702
  stateClassName: stateClassName,
@@ -7735,8 +7706,8 @@ function useLockRef(setParentStateLockBubbling) {
7735
7706
  }
7736
7707
  // Общая функция для определения конечного состояния active/hovered
7737
7708
  function calculateStateValue(param) {
7738
- var hasState = param.hasState, isLocked = param.isLocked, stateValueControlled = param.stateValueControlled, stateValueLocal = param.stateValueLocal;
7739
- return hasState && !isLocked && (stateValueControlled || stateValueLocal);
7709
+ var hasState = param.hasState, isLocked = param.isLocked, stateValueLocal = param.stateValueLocal;
7710
+ return hasState && !isLocked && stateValueLocal;
7740
7711
  }
7741
7712
 
7742
7713
  ;// CONCATENATED MODULE: ./src/components/Clickable/Clickable.module.css
@@ -8552,7 +8523,6 @@ var defaultIframeStyles = {
8552
8523
  key: "observeUsingIframe",
8553
8524
  value: function observeUsingIframe(element) {
8554
8525
  var iframe = element.ownerDocument.createElement('iframe');
8555
- iframe.src = 'javascript:void(0)';
8556
8526
  iframe.ariaHidden = 'true';
8557
8527
  iframe.tabIndex = -1;
8558
8528
  Object.assign(iframe.style, defaultIframeStyles);
@@ -8697,7 +8667,7 @@ function OnboardingTooltipContainer_object_spread(target) {
8697
8667
  }
8698
8668
  return target;
8699
8669
  }
8700
- function OnboardingTooltipContainer_ownKeys(object, enumerableOnly) {
8670
+ function ownKeys(object, enumerableOnly) {
8701
8671
  var keys = Object.keys(object);
8702
8672
  if (Object.getOwnPropertySymbols) {
8703
8673
  var symbols = Object.getOwnPropertySymbols(object);
@@ -8710,12 +8680,12 @@ function OnboardingTooltipContainer_ownKeys(object, enumerableOnly) {
8710
8680
  }
8711
8681
  return keys;
8712
8682
  }
8713
- function OnboardingTooltipContainer_object_spread_props(target, source) {
8683
+ function _object_spread_props(target, source) {
8714
8684
  source = source != null ? source : {};
8715
8685
  if (Object.getOwnPropertyDescriptors) {
8716
8686
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
8717
8687
  } else {
8718
- OnboardingTooltipContainer_ownKeys(Object(source)).forEach(function(key) {
8688
+ ownKeys(Object(source)).forEach(function(key) {
8719
8689
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
8720
8690
  });
8721
8691
  }
@@ -8756,7 +8726,7 @@ var OnboardingTooltipContainer_OnboardingTooltipContainer = /*#__PURE__*/ react.
8756
8726
  "Component"
8757
8727
  ]);
8758
8728
  var dataProps = OnboardingTooltipContainer_define_property({}, OnboardingTooltipContainer_onboardingTooltipContainerAttr, fixed ? 'fixed' : 'true');
8759
- return /*#__PURE__*/ react.createElement(Component, OnboardingTooltipContainer_object_spread_props(OnboardingTooltipContainer_object_spread({}, dataProps, props), {
8729
+ return /*#__PURE__*/ react.createElement(Component, _object_spread_props(OnboardingTooltipContainer_object_spread({}, dataProps, props), {
8760
8730
  ref: ref
8761
8731
  }));
8762
8732
  });
@@ -11297,6 +11267,7 @@ function Button_object_without_properties_loose(source, excluded) {
11297
11267
 
11298
11268
 
11299
11269
 
11270
+
11300
11271
  var stylesSize = {
11301
11272
  s: "vkuiButton--size-s",
11302
11273
  m: "vkuiButton--size-m",
@@ -13501,6 +13472,13 @@ function useFloatingWithInteractions_array_with_holes(arr) {
13501
13472
  function useFloatingWithInteractions_array_without_holes(arr) {
13502
13473
  if (Array.isArray(arr)) return useFloatingWithInteractions_array_like_to_array(arr);
13503
13474
  }
13475
+ function useFloatingWithInteractions_instanceof(left, right) {
13476
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
13477
+ return !!right[Symbol.hasInstance](left);
13478
+ } else {
13479
+ return left instanceof right;
13480
+ }
13481
+ }
13504
13482
  function useFloatingWithInteractions_iterable_to_array(iter) {
13505
13483
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
13506
13484
  }
@@ -13739,8 +13717,20 @@ var whileElementsMounted = function() {
13739
13717
  commitShownLocalState
13740
13718
  ]);
13741
13719
  var handleRestoreFocus = React.useCallback(function() {
13742
- return triggerOnFocus ? blockFocusRef.current : true;
13720
+ var restoreFocus = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
13721
+ if (!restoreFocus) {
13722
+ return false;
13723
+ }
13724
+ if (restoreFocus === true) {
13725
+ return triggerOnFocus ? blockFocusRef.current : true;
13726
+ } else if (restoreFocus === 'anchor-element') {
13727
+ return refs.reference.current;
13728
+ } else if (useFloatingWithInteractions_instanceof(restoreFocus, HTMLElement)) {
13729
+ return restoreFocus;
13730
+ }
13731
+ return false;
13743
13732
  }, [
13733
+ refs.reference,
13744
13734
  triggerOnFocus
13745
13735
  ]);
13746
13736
  var handleEscapeKeyDown = React.useCallback(function() {
@@ -16964,7 +16954,6 @@ function HorizontalScroll_unsupported_iterable_to_array(o, minLen) {
16964
16954
 
16965
16955
 
16966
16956
 
16967
-
16968
16957
  /**
16969
16958
  * timing method
16970
16959
  */ function now() {
@@ -17123,42 +17112,32 @@ function doScroll(param) {
17123
17112
  setCanScrollStart,
17124
17113
  setCanScrollEnd
17125
17114
  ]);
17126
- var scrollEvent = useEventListener('scroll', calculateArrowsVisibility);
17127
- React.useEffect(function addScrollerRefToScrollEvent() {
17128
- if (!scrollerRef.current) {
17129
- return noop;
17130
- }
17131
- scrollEvent.add(scrollerRef.current);
17132
- return scrollEvent.remove;
17133
- }, [
17134
- scrollEvent,
17135
- scrollerRef
17136
- ]);
17137
17115
  React.useEffect(calculateArrowsVisibility, [
17138
17116
  calculateArrowsVisibility,
17139
17117
  children
17140
17118
  ]);
17141
- /**
17142
- * Прокрутка с помощью любого колеса мыши
17143
- */ var onwheel = React.useCallback(function(e) {
17119
+ var _onWheel = React.useCallback(function(e) {
17144
17120
  scrollerRef.current.scrollBy({
17145
17121
  left: e.deltaX + e.deltaY,
17146
17122
  behavior: 'auto'
17147
17123
  });
17148
- e.preventDefault();
17149
17124
  }, [
17150
17125
  scrollerRef
17151
17126
  ]);
17152
- var wheelEvent = useEventListener('wheel', onwheel);
17153
- React.useEffect(function addScrollerRefToWheelEvent() {
17154
- if (!scrollerRef.current || !scrollOnAnyWheel) {
17155
- return noop;
17127
+ /**
17128
+ * Прокрутка с помощью любого колеса мыши
17129
+ */ var onScrollWheel = React.useCallback(function(e) {
17130
+ _onWheel(e);
17131
+ e.preventDefault();
17132
+ }, [
17133
+ _onWheel
17134
+ ]);
17135
+ var onArrowWheel = React.useCallback(function(e) {
17136
+ if (e.deltaX || e.deltaY && scrollOnAnyWheel) {
17137
+ _onWheel(e);
17156
17138
  }
17157
- wheelEvent.add(scrollerRef.current);
17158
- return wheelEvent.remove;
17159
17139
  }, [
17160
- wheelEvent,
17161
- scrollerRef,
17140
+ _onWheel,
17162
17141
  scrollOnAnyWheel
17163
17142
  ]);
17164
17143
  return /*#__PURE__*/ React.createElement(RootComponent, HorizontalScroll_object_spread_props(HorizontalScroll_object_spread({}, restProps), {
@@ -17172,7 +17151,8 @@ function doScroll(param) {
17172
17151
  "aria-hidden": true,
17173
17152
  tabIndex: -1,
17174
17153
  className: classNames("vkuiHorizontalScroll__arrow", "vkuiHorizontalScroll__arrowLeft"),
17175
- onClick: scrollToLeft
17154
+ onClick: scrollToLeft,
17155
+ onWheel: onArrowWheel
17176
17156
  }), showArrows && (hasPointer || hasPointer === undefined) && canScrollRight && /*#__PURE__*/ React.createElement(ScrollArrow, {
17177
17157
  "data-testid": false ? 0 : undefined,
17178
17158
  size: arrowSize,
@@ -17181,10 +17161,13 @@ function doScroll(param) {
17181
17161
  "aria-hidden": true,
17182
17162
  tabIndex: -1,
17183
17163
  className: classNames("vkuiHorizontalScroll__arrow", "vkuiHorizontalScroll__arrowRight"),
17184
- onClick: scrollToRight
17164
+ onClick: scrollToRight,
17165
+ onWheel: onArrowWheel
17185
17166
  }), /*#__PURE__*/ React.createElement("div", {
17186
17167
  className: "vkuiHorizontalScroll__in",
17187
- ref: scrollerRef
17168
+ ref: scrollerRef,
17169
+ onScroll: calculateArrowsVisibility,
17170
+ onWheel: scrollOnAnyWheel ? onScrollWheel : undefined
17188
17171
  }, /*#__PURE__*/ React.createElement("div", {
17189
17172
  className: "vkuiHorizontalScroll__in-wrapper"
17190
17173
  }, children)));
@@ -18236,7 +18219,52 @@ function FocusTrap_unsupported_iterable_to_array(o, minLen) {
18236
18219
 
18237
18220
 
18238
18221
 
18222
+
18239
18223
  var FOCUSABLE_ELEMENTS = FOCUSABLE_ELEMENTS_LIST.join();
18224
+ var useRestoreFocus = function(param) {
18225
+ var restoreFocus = param.restoreFocus, timeout = param.timeout, mount = param.mount, ref = param.ref;
18226
+ var restoreFocusRef = (0,react.useRef)(restoreFocus);
18227
+ restoreFocusRef.current = restoreFocus;
18228
+ var _useState = FocusTrap_sliced_to_array((0,react.useState)(null), 2), restoreFocusTo = _useState[0], setRestoreFocusTo = _useState[1];
18229
+ var restoreFocusImpl = useStableCallback_useStableCallback(function() {
18230
+ var shouldRestoreFocus = typeof restoreFocusRef.current === 'function' ? restoreFocusRef.current() : restoreFocusRef.current;
18231
+ if (!shouldRestoreFocus) {
18232
+ return;
18233
+ }
18234
+ setTimeout(function() {
18235
+ var restoreFocusElement = floating_ui_utils_dom_esm_isHTMLElement(shouldRestoreFocus) && shouldRestoreFocus || floating_ui_utils_dom_esm_isHTMLElement(restoreFocusTo) && restoreFocusTo || null;
18236
+ if (restoreFocusElement) {
18237
+ restoreFocusElement.focus();
18238
+ setRestoreFocusTo(null);
18239
+ }
18240
+ }, timeout);
18241
+ });
18242
+ useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function calculateRestoreFocusTo() {
18243
+ if (!ref.current || !restoreFocusRef.current || !mount) {
18244
+ setRestoreFocusTo(null);
18245
+ return;
18246
+ }
18247
+ setRestoreFocusTo(dom_getActiveElementByAnotherElement(ref.current));
18248
+ }, [
18249
+ ref,
18250
+ mount
18251
+ ]);
18252
+ useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function tryToRestoreFocusOnUnmount() {
18253
+ return function() {
18254
+ restoreFocusImpl();
18255
+ };
18256
+ }, [
18257
+ restoreFocusImpl
18258
+ ]);
18259
+ useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function tryToRestoreFocusWhenFakeUnmount() {
18260
+ if (!mount) {
18261
+ restoreFocusImpl();
18262
+ }
18263
+ }, [
18264
+ mount,
18265
+ restoreFocusImpl
18266
+ ]);
18267
+ };
18240
18268
  /**
18241
18269
  * @see https://vkcom.github.io/VKUI/#/FocusTrap
18242
18270
  */ var FocusTrap_FocusTrap = function(_param) {
@@ -18254,7 +18282,12 @@ var FOCUSABLE_ELEMENTS = FOCUSABLE_ELEMENTS_LIST.join();
18254
18282
  var ref = useExternRef_useExternRef(getRootRef);
18255
18283
  var document = dom_useDOM().document;
18256
18284
  var focusableNodesRef = (0,react.useRef)([]);
18257
- var _useState = FocusTrap_sliced_to_array((0,react.useState)(null), 2), restoreFocusTo = _useState[0], setRestoreFocusTo = _useState[1];
18285
+ useRestoreFocus({
18286
+ restoreFocus: restoreFocus,
18287
+ timeout: timeout,
18288
+ mount: mount,
18289
+ ref: ref
18290
+ });
18258
18291
  var focusNodeByIndex = function(nodeIndex) {
18259
18292
  var element = focusableNodesRef.current[nodeIndex];
18260
18293
  if (element) {
@@ -18326,48 +18359,6 @@ var FOCUSABLE_ELEMENTS = FOCUSABLE_ELEMENTS_LIST.join();
18326
18359
  timeout,
18327
18360
  disabled
18328
18361
  ]);
18329
- var restoreFocusImpl = (0,react.useCallback)(function() {
18330
- var shouldRestoreFocus = typeof restoreFocus === 'function' ? restoreFocus() : restoreFocus;
18331
- if (!restoreFocusTo || !floating_ui_utils_dom_esm_isHTMLElement(restoreFocusTo) || !shouldRestoreFocus) {
18332
- return;
18333
- }
18334
- setTimeout(function() {
18335
- if (restoreFocusTo) {
18336
- restoreFocusTo.focus();
18337
- setRestoreFocusTo(null);
18338
- }
18339
- }, timeout);
18340
- }, [
18341
- restoreFocus,
18342
- restoreFocusTo,
18343
- timeout
18344
- ]);
18345
- useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function calculateRestoreFocusTo() {
18346
- if (!ref.current || !restoreFocus || !mount) {
18347
- setRestoreFocusTo(null);
18348
- return;
18349
- }
18350
- setRestoreFocusTo(dom_getActiveElementByAnotherElement(ref.current));
18351
- }, [
18352
- ref,
18353
- mount,
18354
- restoreFocus
18355
- ]);
18356
- useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function tryToRestoreFocusOnUnmount() {
18357
- return function() {
18358
- return restoreFocusImpl();
18359
- };
18360
- }, [
18361
- restoreFocusImpl
18362
- ]);
18363
- useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function tryToRestoreFocusWhenFakeUnmount() {
18364
- if (!mount) {
18365
- restoreFocusImpl();
18366
- }
18367
- }, [
18368
- mount,
18369
- restoreFocusImpl
18370
- ]);
18371
18362
  useIsomorphicLayoutEffect_useIsomorphicLayoutEffect(function() {
18372
18363
  if (!ref.current) {
18373
18364
  return;
@@ -29385,7 +29376,7 @@ var BaseGallery_BaseGallery = function(_param) {
29385
29376
  };
29386
29377
  var initializeSlides = function() {
29387
29378
  var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
29388
- var _rootRef_current, _viewportRef_current, _layoutState_current_slides_slideIndex, _localSlides_slideIndex;
29379
+ var _rootRef_current, _viewportRef_current, _layoutState_current_slides_slideIndex, _localSlides_slideIndex, _localSlides_slideIndex1;
29389
29380
  var _React_Children_map;
29390
29381
  var localSlides = (_React_Children_map = React.Children.map(children, function(_item, i) {
29391
29382
  var elem = slidesStore.current["slide-".concat(i)];
@@ -29403,6 +29394,9 @@ var BaseGallery_BaseGallery = function(_param) {
29403
29394
  return slide.width + val;
29404
29395
  }, 0);
29405
29396
  var adjustShiftX = localSlides.length <= layoutState.current.slides.length || ((_layoutState_current_slides_slideIndex = layoutState.current.slides[slideIndex]) === null || _layoutState_current_slides_slideIndex === void 0 ? void 0 : _layoutState_current_slides_slideIndex.coordX) !== ((_localSlides_slideIndex = localSlides[slideIndex]) === null || _localSlides_slideIndex === void 0 ? void 0 : _localSlides_slideIndex.coordX);
29397
+ var _localSlides_slideIndex_width;
29398
+ var currentSlideOffsetOnCenterAlignment = (localContainerWidth - ((_localSlides_slideIndex_width = (_localSlides_slideIndex1 = localSlides[slideIndex]) === null || _localSlides_slideIndex1 === void 0 ? void 0 : _localSlides_slideIndex1.width) !== null && _localSlides_slideIndex_width !== void 0 ? _localSlides_slideIndex_width : 0)) / 2;
29399
+ var isFullyVisible = align === 'center' ? localLayerWidth + currentSlideOffsetOnCenterAlignment <= localContainerWidth : localLayerWidth <= localContainerWidth;
29406
29400
  layoutState.current = {
29407
29401
  containerWidth: localContainerWidth,
29408
29402
  viewportOffsetWidth: localViewportOffsetWidth,
@@ -29421,7 +29415,7 @@ var BaseGallery_BaseGallery = function(_param) {
29421
29415
  align: align
29422
29416
  }),
29423
29417
  slides: localSlides,
29424
- isFullyVisible: localLayerWidth <= localContainerWidth
29418
+ isFullyVisible: isFullyVisible
29425
29419
  };
29426
29420
  setShiftState(function(prevState) {
29427
29421
  var _options_animation;
@@ -30008,6 +30002,10 @@ var CarouselBase_CarouselBase = function(_param) {
30008
30002
  width: elem.offsetWidth
30009
30003
  };
30010
30004
  }) || [];
30005
+ if (localSlides.length === 0) {
30006
+ initialized.current = false;
30007
+ return;
30008
+ }
30011
30009
  var containerWidth = rootRef.current.offsetWidth;
30012
30010
  var viewportOffsetWidth = viewportRef.current.offsetWidth;
30013
30011
  var layerWidth = localSlides.reduce(function(val, slide) {
@@ -30215,45 +30213,114 @@ var CarouselBase_CarouselBase = function(_param) {
30215
30213
  };
30216
30214
 
30217
30215
  ;// CONCATENATED MODULE: ./src/components/Gallery/hooks.ts
30216
+ function Gallery_hooks_array_like_to_array(arr, len) {
30217
+ if (len == null || len > arr.length) len = arr.length;
30218
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
30219
+ return arr2;
30220
+ }
30221
+ function Gallery_hooks_array_with_holes(arr) {
30222
+ if (Array.isArray(arr)) return arr;
30223
+ }
30224
+ function Gallery_hooks_iterable_to_array_limit(arr, i) {
30225
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
30226
+ if (_i == null) return;
30227
+ var _arr = [];
30228
+ var _n = true;
30229
+ var _d = false;
30230
+ var _s, _e;
30231
+ try {
30232
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
30233
+ _arr.push(_s.value);
30234
+ if (i && _arr.length === i) break;
30235
+ }
30236
+ } catch (err) {
30237
+ _d = true;
30238
+ _e = err;
30239
+ } finally{
30240
+ try {
30241
+ if (!_n && _i["return"] != null) _i["return"]();
30242
+ } finally{
30243
+ if (_d) throw _e;
30244
+ }
30245
+ }
30246
+ return _arr;
30247
+ }
30248
+ function Gallery_hooks_non_iterable_rest() {
30249
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
30250
+ }
30251
+ function Gallery_hooks_sliced_to_array(arr, i) {
30252
+ return Gallery_hooks_array_with_holes(arr) || Gallery_hooks_iterable_to_array_limit(arr, i) || Gallery_hooks_unsupported_iterable_to_array(arr, i) || Gallery_hooks_non_iterable_rest();
30253
+ }
30254
+ function Gallery_hooks_unsupported_iterable_to_array(o, minLen) {
30255
+ if (!o) return;
30256
+ if (typeof o === "string") return Gallery_hooks_array_like_to_array(o, minLen);
30257
+ var n = Object.prototype.toString.call(o).slice(8, -1);
30258
+ if (n === "Object" && o.constructor) n = o.constructor.name;
30259
+ if (n === "Map" || n === "Set") return Array.from(n);
30260
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Gallery_hooks_array_like_to_array(o, minLen);
30261
+ }
30218
30262
 
30219
30263
 
30220
30264
 
30221
- function hooks_useAutoPlay(timeout, slideIndex, callbackFnProp) {
30265
+ function hooks_useAutoPlay(param) {
30266
+ var timeout = param.timeout, slideIndex = param.slideIndex, onNext = param.onNext;
30222
30267
  var document = useDOM().document;
30223
- var callbackFn = useStableCallback(callbackFnProp);
30268
+ var _React_useState = Gallery_hooks_sliced_to_array(React.useState(false), 2), paused = _React_useState[0], setPaused = _React_useState[1];
30269
+ var timeoutRef = React.useRef(null);
30270
+ var callbackFn = useStableCallback(onNext);
30271
+ var pause = React.useCallback(function() {
30272
+ return setPaused(true);
30273
+ }, []);
30274
+ var resume = React.useCallback(function() {
30275
+ return setPaused(false);
30276
+ }, []);
30277
+ // Выносим функции очистки и старта таймера в отдельные функции
30278
+ var clearAutoPlayTimeout = React.useCallback(function() {
30279
+ if (timeoutRef.current) {
30280
+ clearTimeout(timeoutRef.current);
30281
+ timeoutRef.current = null;
30282
+ }
30283
+ }, []);
30284
+ var startAutoPlayTimeout = React.useCallback(function() {
30285
+ if (!document || !timeout || paused) {
30286
+ return;
30287
+ }
30288
+ if (document.visibilityState === 'visible') {
30289
+ clearAutoPlayTimeout();
30290
+ timeoutRef.current = setTimeout(callbackFn, timeout);
30291
+ } else {
30292
+ clearAutoPlayTimeout();
30293
+ }
30294
+ }, [
30295
+ document,
30296
+ timeout,
30297
+ paused,
30298
+ clearAutoPlayTimeout,
30299
+ callbackFn
30300
+ ]);
30301
+ // Основной эффект для управления автопроигрыванием
30224
30302
  React.useEffect(function initializeAutoPlay() {
30225
- if (!document || !timeout) {
30303
+ if (!document || !timeout || paused) {
30226
30304
  return;
30227
30305
  }
30228
- var timeoutId = null;
30229
- var stop = function() {
30230
- if (timeoutId) {
30231
- clearTimeout(timeoutId);
30232
- timeoutId = null;
30233
- }
30234
- };
30235
- var start = function() {
30236
- switch(document.visibilityState){
30237
- case 'visible':
30238
- stop();
30239
- timeoutId = setTimeout(callbackFn, timeout);
30240
- break;
30241
- case 'hidden':
30242
- stop();
30243
- }
30244
- };
30245
- start();
30246
- document.addEventListener('visibilitychange', start);
30306
+ startAutoPlayTimeout();
30307
+ document.addEventListener('visibilitychange', startAutoPlayTimeout);
30247
30308
  return function() {
30248
- stop();
30249
- document.removeEventListener('visibilitychange', start);
30309
+ clearAutoPlayTimeout();
30310
+ document.removeEventListener('visibilitychange', startAutoPlayTimeout);
30250
30311
  };
30251
30312
  }, [
30252
30313
  document,
30253
30314
  timeout,
30254
30315
  slideIndex,
30255
- callbackFn
30316
+ startAutoPlayTimeout,
30317
+ clearAutoPlayTimeout,
30318
+ paused
30256
30319
  ]);
30320
+ return {
30321
+ resume: resume,
30322
+ pause: pause
30323
+ };
30257
30324
  }
30258
30325
 
30259
30326
  ;// CONCATENATED MODULE: ./src/components/Gallery/Gallery.tsx
@@ -30388,16 +30455,19 @@ function Gallery_unsupported_iterable_to_array(o, minLen) {
30388
30455
 
30389
30456
 
30390
30457
 
30458
+
30391
30459
  /**
30392
30460
  * @see https://vkcom.github.io/VKUI/#/Gallery
30393
30461
  */ var Gallery = function(_param) {
30394
- var _param_initialSlideIndex = _param.initialSlideIndex, initialSlideIndex = _param_initialSlideIndex === void 0 ? 0 : _param_initialSlideIndex, children = _param.children, _param_timeout = _param.timeout, timeout = _param_timeout === void 0 ? 0 : _param_timeout, onChange = _param.onChange, bullets = _param.bullets, looped = _param.looped, props = Gallery_object_without_properties(_param, [
30462
+ var _param_initialSlideIndex = _param.initialSlideIndex, initialSlideIndex = _param_initialSlideIndex === void 0 ? 0 : _param_initialSlideIndex, children = _param.children, _param_timeout = _param.timeout, timeout = _param_timeout === void 0 ? 0 : _param_timeout, onChange = _param.onChange, bullets = _param.bullets, looped = _param.looped, onDragStart = _param.onDragStart, onDragEnd = _param.onDragEnd, props = Gallery_object_without_properties(_param, [
30395
30463
  "initialSlideIndex",
30396
30464
  "children",
30397
30465
  "timeout",
30398
30466
  "onChange",
30399
30467
  "bullets",
30400
- "looped"
30468
+ "looped",
30469
+ "onDragStart",
30470
+ "onDragEnd"
30401
30471
  ]);
30402
30472
  var _React_useState = Gallery_sliced_to_array(React.useState(initialSlideIndex), 2), localSlideIndex = _React_useState[0], setSlideIndex = _React_useState[1];
30403
30473
  var isControlled = typeof props.slideIndex === 'number';
@@ -30423,8 +30493,12 @@ function Gallery_unsupported_iterable_to_array(o, minLen) {
30423
30493
  onChange,
30424
30494
  slideIndex
30425
30495
  ]);
30426
- useAutoPlay(timeout, slideIndex, function() {
30427
- return handleChange((slideIndex + 1) % childCount);
30496
+ var autoPlayControls = useAutoPlay({
30497
+ timeout: timeout,
30498
+ slideIndex: slideIndex,
30499
+ onNext: function() {
30500
+ return handleChange((slideIndex + 1) % childCount);
30501
+ }
30428
30502
  });
30429
30503
  // prevent invalid slideIndex
30430
30504
  // any slide index is invalid with no slides, just keep it as is
@@ -30447,6 +30521,8 @@ function Gallery_unsupported_iterable_to_array(o, minLen) {
30447
30521
  return /*#__PURE__*/ React.createElement(Component, Gallery_object_spread_props(Gallery_object_spread({
30448
30522
  dragDisabled: isControlled && !onChange
30449
30523
  }, props), {
30524
+ onDragStart: callMultiple(onDragStart, autoPlayControls.pause),
30525
+ onDragEnd: callMultiple(onDragEnd, autoPlayControls.resume),
30450
30526
  bullets: childCount > 0 && bullets,
30451
30527
  slideIndex: safeSlideIndex,
30452
30528
  onChange: handleChange
@@ -42465,20 +42541,6 @@ var filter = function(options, inputValue, filterFn) {
42465
42541
  renderOption
42466
42542
  ]);
42467
42543
  var selectInputRef = useExternRef(getSelectInputRef);
42468
- var focusOnInputTimerRef = React.useRef();
42469
- var focusOnInput = React.useCallback(function() {
42470
- clearTimeout(focusOnInputTimerRef.current);
42471
- focusOnInputTimerRef.current = setTimeout(function() {
42472
- selectInputRef.current && selectInputRef.current.focus();
42473
- }, 0);
42474
- }, [
42475
- selectInputRef
42476
- ]);
42477
- useIsomorphicLayoutEffect(function clearFocusOnInputTimer() {
42478
- return function() {
42479
- clearTimeout(focusOnInputTimerRef.current);
42480
- };
42481
- }, []);
42482
42544
  var controlledValueSet = isControlledOutside && props.value !== '';
42483
42545
  var uncontrolledValueSet = !isControlledOutside && nativeSelectValue !== '';
42484
42546
  var clearButtonShown = allowClearButton && !opened && (controlledValueSet || uncontrolledValueSet);
@@ -42491,7 +42553,7 @@ var filter = function(options, inputValue, filterFn) {
42491
42553
  onClick: function clearSelectState() {
42492
42554
  setNativeSelectValue('');
42493
42555
  setInputValue('');
42494
- focusOnInput();
42556
+ selectInputRef.current && selectInputRef.current.focus();
42495
42557
  },
42496
42558
  disabled: restProps.disabled,
42497
42559
  "data-testid": clearButtonTestId
@@ -42502,7 +42564,7 @@ var filter = function(options, inputValue, filterFn) {
42502
42564
  iconProp,
42503
42565
  restProps.disabled,
42504
42566
  clearButtonTestId,
42505
- focusOnInput
42567
+ selectInputRef
42506
42568
  ]);
42507
42569
  var icon = React.useMemo(function() {
42508
42570
  if (iconProp !== undefined) {
@@ -42536,12 +42598,11 @@ var filter = function(options, inputValue, filterFn) {
42536
42598
  selectInputRef.current.click();
42537
42599
  var inputIsNotFocused = document.activeElement !== selectInputRef.current;
42538
42600
  if (inputIsNotFocused) {
42539
- focusOnInput();
42601
+ selectInputRef.current.focus();
42540
42602
  }
42541
42603
  }
42542
42604
  }, [
42543
42605
  document,
42544
- focusOnInput,
42545
42606
  selectInputRef
42546
42607
  ]);
42547
42608
  var preventInputBlurWhenClickInsideFocusedSelectArea = function(e) {
@@ -44236,7 +44297,7 @@ function CalendarDay_object_without_properties_loose(source, excluded) {
44236
44297
 
44237
44298
 
44238
44299
  var CalendarDay_CalendarDay = /*#__PURE__*/ react.memo(function(_param) {
44239
- var day = _param.day, today = _param.today, selected = _param.selected, onChange = _param.onChange, hidden = _param.hidden, disabled = _param.disabled, active = _param.active, selectionStart = _param.selectionStart, selectionEnd = _param.selectionEnd, focused = _param.focused, onEnter = _param.onEnter, onLeave = _param.onLeave, hinted = _param.hinted, hintedSelectionStart = _param.hintedSelectionStart, hintedSelectionEnd = _param.hintedSelectionEnd, sameMonth = _param.sameMonth, size = _param.size, className = _param.className, children = _param.children, renderDayContent = _param.renderDayContent, restProps = CalendarDay_object_without_properties(_param, [
44300
+ var day = _param.day, today = _param.today, selected = _param.selected, onChange = _param.onChange, hidden = _param.hidden, disabled = _param.disabled, active = _param.active, selectionStart = _param.selectionStart, selectionEnd = _param.selectionEnd, focused = _param.focused, onEnter = _param.onEnter, onLeave = _param.onLeave, hinted = _param.hinted, hintedSelectionStart = _param.hintedSelectionStart, hintedSelectionEnd = _param.hintedSelectionEnd, sameMonth = _param.sameMonth, size = _param.size, className = _param.className, children = _param.children, renderDayContent = _param.renderDayContent, testId = _param.testId, restProps = CalendarDay_object_without_properties(_param, [
44240
44301
  "day",
44241
44302
  "today",
44242
44303
  "selected",
@@ -44256,7 +44317,8 @@ var CalendarDay_CalendarDay = /*#__PURE__*/ react.memo(function(_param) {
44256
44317
  "size",
44257
44318
  "className",
44258
44319
  "children",
44259
- "renderDayContent"
44320
+ "renderDayContent",
44321
+ "testId"
44260
44322
  ]);
44261
44323
  var locale = ConfigProviderContext_useConfigProvider().locale;
44262
44324
  var ref = react.useRef(null);
@@ -44324,7 +44386,8 @@ var CalendarDay_CalendarDay = /*#__PURE__*/ react.memo(function(_param) {
44324
44386
  getRootRef: ref,
44325
44387
  focusVisibleMode: active ? 'outside' : 'inside',
44326
44388
  onPointerEnter: handleEnter,
44327
- onPointerLeave: handleLeave
44389
+ onPointerLeave: handleLeave,
44390
+ "data-testid": typeof testId === 'string' ? testId : testId === null || testId === void 0 ? void 0 : testId(day)
44328
44391
  }, restProps), /*#__PURE__*/ react.createElement("div", {
44329
44392
  className: clsx("vkuiCalendarDay__hinted", hinted && "vkuiCalendarDay__hinted--active", hintedSelectionStart && "vkuiCalendarDay__hinted--selection-start", hintedSelectionEnd && "vkuiCalendarDay__hinted--selection-end")
44330
44393
  }, /*#__PURE__*/ react.createElement("div", {
@@ -44428,7 +44491,7 @@ function CalendarDays_object_without_properties_loose(source, excluded) {
44428
44491
 
44429
44492
 
44430
44493
  var CalendarDays_CalendarDays = function(_param) {
44431
- var viewDate = _param.viewDate, value = _param.value, weekStartsOn = _param.weekStartsOn, onDayChange = _param.onDayChange, isDaySelected = _param.isDaySelected, isDayActive = _param.isDayActive, isDaySelectionEnd = _param.isDaySelectionEnd, isDaySelectionStart = _param.isDaySelectionStart, onDayEnter = _param.onDayEnter, onDayLeave = _param.onDayLeave, isDayHinted = _param.isDayHinted, isHintedDaySelectionStart = _param.isHintedDaySelectionStart, isHintedDaySelectionEnd = _param.isHintedDaySelectionEnd, isDayFocused = _param.isDayFocused, isDayDisabled = _param.isDayDisabled, size = _param.size, _param_showNeighboringMonth = _param.showNeighboringMonth, showNeighboringMonth = _param_showNeighboringMonth === void 0 ? false : _param_showNeighboringMonth, dayProps = _param.dayProps, _param_listenDayChangesForUpdate = _param.listenDayChangesForUpdate, listenDayChangesForUpdate = _param_listenDayChangesForUpdate === void 0 ? false : _param_listenDayChangesForUpdate, getRootRef = _param.getRootRef, renderDayContent = _param.renderDayContent, props = CalendarDays_object_without_properties(_param, [
44494
+ var viewDate = _param.viewDate, value = _param.value, weekStartsOn = _param.weekStartsOn, onDayChange = _param.onDayChange, isDaySelected = _param.isDaySelected, isDayActive = _param.isDayActive, isDaySelectionEnd = _param.isDaySelectionEnd, isDaySelectionStart = _param.isDaySelectionStart, onDayEnter = _param.onDayEnter, onDayLeave = _param.onDayLeave, isDayHinted = _param.isDayHinted, isHintedDaySelectionStart = _param.isHintedDaySelectionStart, isHintedDaySelectionEnd = _param.isHintedDaySelectionEnd, isDayFocused = _param.isDayFocused, isDayDisabled = _param.isDayDisabled, size = _param.size, _param_showNeighboringMonth = _param.showNeighboringMonth, showNeighboringMonth = _param_showNeighboringMonth === void 0 ? false : _param_showNeighboringMonth, dayProps = _param.dayProps, _param_listenDayChangesForUpdate = _param.listenDayChangesForUpdate, listenDayChangesForUpdate = _param_listenDayChangesForUpdate === void 0 ? false : _param_listenDayChangesForUpdate, getRootRef = _param.getRootRef, renderDayContent = _param.renderDayContent, dayTestId = _param.dayTestId, props = CalendarDays_object_without_properties(_param, [
44432
44495
  "viewDate",
44433
44496
  "value",
44434
44497
  "weekStartsOn",
@@ -44449,7 +44512,8 @@ var CalendarDays_CalendarDays = function(_param) {
44449
44512
  "dayProps",
44450
44513
  "listenDayChangesForUpdate",
44451
44514
  "getRootRef",
44452
- "renderDayContent"
44515
+ "renderDayContent",
44516
+ "dayTestId"
44453
44517
  ]);
44454
44518
  var locale = useConfigProvider().locale;
44455
44519
  var ref = useExternRef(getRootRef);
@@ -44510,7 +44574,8 @@ var CalendarDays_CalendarDays = function(_param) {
44510
44574
  hinted: isDayHinted === null || isDayHinted === void 0 ? void 0 : isDayHinted(day),
44511
44575
  sameMonth: sameMonth,
44512
44576
  size: size,
44513
- renderDayContent: renderDayContent
44577
+ renderDayContent: renderDayContent,
44578
+ testId: dayTestId
44514
44579
  }, dayProps));
44515
44580
  }));
44516
44581
  }));
@@ -44662,7 +44727,7 @@ var CalendarHeader_CalendarHeader = function(_param) {
44662
44727
  className: "vkuiCalendarHeader__nav-icon--accent",
44663
44728
  width: 30,
44664
44729
  height: 30
44665
- }) : _param_nextMonthIcon, isMonthDisabled = _param.isMonthDisabled, isYearDisabled = _param.isYearDisabled, restProps = CalendarHeader_object_without_properties(_param, [
44730
+ }) : _param_nextMonthIcon, isMonthDisabled = _param.isMonthDisabled, isYearDisabled = _param.isYearDisabled, monthDropdownTestId = _param.monthDropdownTestId, yearDropdownTestId = _param.yearDropdownTestId, prevMonthButtonTestId = _param.prevMonthButtonTestId, nextMonthButtonTestId = _param.nextMonthButtonTestId, restProps = CalendarHeader_object_without_properties(_param, [
44666
44731
  "viewDate",
44667
44732
  "onChange",
44668
44733
  "prevMonthHidden",
@@ -44679,7 +44744,11 @@ var CalendarHeader_CalendarHeader = function(_param) {
44679
44744
  "prevMonthIcon",
44680
44745
  "nextMonthIcon",
44681
44746
  "isMonthDisabled",
44682
- "isYearDisabled"
44747
+ "isYearDisabled",
44748
+ "monthDropdownTestId",
44749
+ "yearDropdownTestId",
44750
+ "prevMonthButtonTestId",
44751
+ "nextMonthButtonTestId"
44683
44752
  ]);
44684
44753
  var locale = useConfigProvider().locale;
44685
44754
  var onMonthsChange = React.useCallback(function(event) {
@@ -44745,7 +44814,8 @@ var CalendarHeader_CalendarHeader = function(_param) {
44745
44814
  sizeX: "regular"
44746
44815
  }, /*#__PURE__*/ React.createElement(Tappable, CalendarHeader_object_spread({
44747
44816
  className: classNames("vkuiCalendarHeader__nav-icon", "vkuiCalendarHeader__nav-icon-prev", prevMonthClassName),
44748
- onClick: onPrevMonth
44817
+ onClick: onPrevMonth,
44818
+ "data-testid": prevMonthButtonTestId
44749
44819
  }, restPrevMonthProps), /*#__PURE__*/ React.createElement(VisuallyHidden, null, prevMonthLabel, ", ", formatter.format(subMonths(viewDate, 1))), prevMonthIcon)), disablePickers ? /*#__PURE__*/ React.createElement(Paragraph, {
44750
44820
  className: classNames("vkuiCalendarHeader__pickers", 'vkuiInternalCalendarHeader__pickers'),
44751
44821
  weight: "2"
@@ -44769,7 +44839,8 @@ var CalendarHeader_CalendarHeader = function(_param) {
44769
44839
  onChange: onMonthsChange,
44770
44840
  forceDropdownPortal: false,
44771
44841
  selectType: "accent",
44772
- "aria-label": changeMonthLabel
44842
+ "aria-label": changeMonthLabel,
44843
+ "data-testid": typeof monthDropdownTestId === 'string' ? monthDropdownTestId : monthDropdownTestId === null || monthDropdownTestId === void 0 ? void 0 : monthDropdownTestId(currentMonth)
44773
44844
  }), /*#__PURE__*/ React.createElement(CustomSelect, {
44774
44845
  className: classNames("vkuiCalendarHeader__picker", 'vkuiInternalCalendarHeader__picker'),
44775
44846
  value: currentYear,
@@ -44780,12 +44851,14 @@ var CalendarHeader_CalendarHeader = function(_param) {
44780
44851
  onChange: onYearChange,
44781
44852
  forceDropdownPortal: false,
44782
44853
  selectType: "accent",
44783
- "aria-label": changeYearLabel
44854
+ "aria-label": changeYearLabel,
44855
+ "data-testid": yearDropdownTestId
44784
44856
  }))), !nextMonthHidden && /*#__PURE__*/ React.createElement(AdaptivityProvider, {
44785
44857
  sizeX: "regular"
44786
44858
  }, /*#__PURE__*/ React.createElement(Tappable, CalendarHeader_object_spread({
44787
44859
  className: classNames("vkuiCalendarHeader__nav-icon", "vkuiCalendarHeader__nav-icon-next", nextMonthClassName),
44788
- onClick: onNextMonth
44860
+ onClick: onNextMonth,
44861
+ "data-testid": nextMonthButtonTestId
44789
44862
  }, restNextMonthProps), /*#__PURE__*/ React.createElement(VisuallyHidden, null, nextMonthLabel, ", ", formatter.format(addMonths(viewDate, 1))), nextMonthIcon)));
44790
44863
  };
44791
44864
 
@@ -44851,6 +44924,7 @@ function CalendarTime_object_spread_props(target, source) {
44851
44924
 
44852
44925
 
44853
44926
 
44927
+
44854
44928
  var hours = [];
44855
44929
  for(var i = 0; i < 24; i += 1){
44856
44930
  hours.push({
@@ -44866,7 +44940,7 @@ for(var i1 = 0; i1 < 60; i1 += 1){
44866
44940
  });
44867
44941
  }
44868
44942
  var CalendarTime_CalendarTime = function(param) {
44869
- var value = param.value, _param_doneButtonText = param.doneButtonText, doneButtonText = _param_doneButtonText === void 0 ? 'Готово' : _param_doneButtonText, onChange = param.onChange, onClose = param.onClose, changeHoursLabel = param.changeHoursLabel, changeMinutesLabel = param.changeMinutesLabel, isDayDisabled = param.isDayDisabled;
44943
+ var value = param.value, onChange = param.onChange, onClose = param.onClose, changeHoursLabel = param.changeHoursLabel, changeMinutesLabel = param.changeMinutesLabel, isDayDisabled = param.isDayDisabled, _param_doneButtonText = param.doneButtonText, doneButtonText = _param_doneButtonText === void 0 ? 'Готово' : _param_doneButtonText, _param_doneButtonDisabled = param.doneButtonDisabled, doneButtonDisabled = _param_doneButtonDisabled === void 0 ? false : _param_doneButtonDisabled, _param_doneButtonShow = param.doneButtonShow, doneButtonShow = _param_doneButtonShow === void 0 ? true : _param_doneButtonShow, minutesTestId = param.minutesTestId, hoursTestId = param.hoursTestId, doneButtonTestId = param.doneButtonTestId;
44870
44944
  var localHours = isDayDisabled ? hours.map(function(hour) {
44871
44945
  return CalendarTime_object_spread_props(CalendarTime_object_spread({}, hour), {
44872
44946
  disabled: isDayDisabled(setHours(value, hour.value), true)
@@ -44890,7 +44964,7 @@ var CalendarTime_CalendarTime = function(param) {
44890
44964
  value
44891
44965
  ]);
44892
44966
  return /*#__PURE__*/ React.createElement("div", {
44893
- className: "vkuiCalendarTime"
44967
+ className: classNames("vkuiCalendarTime", !doneButtonShow && "vkuiCalendarTime__withoutDone")
44894
44968
  }, /*#__PURE__*/ React.createElement("div", {
44895
44969
  className: "vkuiCalendarTime__picker"
44896
44970
  }, /*#__PURE__*/ React.createElement(AdaptivityProvider, {
@@ -44900,7 +44974,8 @@ var CalendarTime_CalendarTime = function(param) {
44900
44974
  options: localHours,
44901
44975
  onChange: onHoursChange,
44902
44976
  forceDropdownPortal: false,
44903
- "aria-label": changeHoursLabel
44977
+ "aria-label": changeHoursLabel,
44978
+ "data-testid": hoursTestId
44904
44979
  }))), /*#__PURE__*/ React.createElement("div", {
44905
44980
  className: "vkuiCalendarTime__divider"
44906
44981
  }, ":"), /*#__PURE__*/ React.createElement("div", {
@@ -44912,15 +44987,18 @@ var CalendarTime_CalendarTime = function(param) {
44912
44987
  options: localMinutes,
44913
44988
  onChange: onMinutesChange,
44914
44989
  forceDropdownPortal: false,
44915
- "aria-label": changeMinutesLabel
44916
- }))), /*#__PURE__*/ React.createElement("div", {
44990
+ "aria-label": changeMinutesLabel,
44991
+ "data-testid": minutesTestId
44992
+ }))), doneButtonShow && /*#__PURE__*/ React.createElement("div", {
44917
44993
  className: "vkuiCalendarTime__button"
44918
44994
  }, /*#__PURE__*/ React.createElement(AdaptivityProvider, {
44919
44995
  sizeY: "compact"
44920
44996
  }, /*#__PURE__*/ React.createElement(Button, {
44921
44997
  mode: "secondary",
44922
44998
  onClick: onClose,
44923
- size: "l"
44999
+ size: "l",
45000
+ disabled: doneButtonDisabled,
45001
+ "data-testid": doneButtonTestId
44924
45002
  }, doneButtonText))));
44925
45003
  };
44926
45004
 
@@ -45023,7 +45101,7 @@ var Calendar_warn = warnOnce('Calendar');
45023
45101
  /**
45024
45102
  * @see https://vkcom.github.io/VKUI/#/Calendar
45025
45103
  */ var Calendar_Calendar = function(_param) {
45026
- var value = _param.value, onChange = _param.onChange, disablePast = _param.disablePast, disableFuture = _param.disableFuture, shouldDisableDate = _param.shouldDisableDate, onClose = _param.onClose, _param_enableTime = _param.enableTime, enableTime = _param_enableTime === void 0 ? false : _param_enableTime, doneButtonText = _param.doneButtonText, _param_weekStartsOn = _param.weekStartsOn, weekStartsOn = _param_weekStartsOn === void 0 ? 1 : _param_weekStartsOn, disablePickers = _param.disablePickers, _param_changeHoursLabel = _param.changeHoursLabel, changeHoursLabel = _param_changeHoursLabel === void 0 ? 'Изменить час' : _param_changeHoursLabel, _param_changeMinutesLabel = _param.changeMinutesLabel, changeMinutesLabel = _param_changeMinutesLabel === void 0 ? 'Изменить минуту' : _param_changeMinutesLabel, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, showNeighboringMonth = _param.showNeighboringMonth, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_size = _param.size, size = _param_size === void 0 ? 'm' : _param_size, externalViewDate = _param.viewDate, onHeaderChange = _param.onHeaderChange, onNextMonth = _param.onNextMonth, onPrevMonth = _param.onPrevMonth, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, prevMonthProps = _param.prevMonthProps, nextMonthProps = _param.nextMonthProps, dayProps = _param.dayProps, listenDayChangesForUpdate = _param.listenDayChangesForUpdate, renderDayContent = _param.renderDayContent, minDateTime = _param.minDateTime, maxDateTime = _param.maxDateTime, props = Calendar_object_without_properties(_param, [
45104
+ var value = _param.value, onChange = _param.onChange, disablePast = _param.disablePast, disableFuture = _param.disableFuture, shouldDisableDate = _param.shouldDisableDate, onClose = _param.onClose, _param_enableTime = _param.enableTime, enableTime = _param_enableTime === void 0 ? false : _param_enableTime, doneButtonText = _param.doneButtonText, doneButtonDisabled = _param.doneButtonDisabled, doneButtonShow = _param.doneButtonShow, _param_weekStartsOn = _param.weekStartsOn, weekStartsOn = _param_weekStartsOn === void 0 ? 1 : _param_weekStartsOn, disablePickers = _param.disablePickers, _param_changeHoursLabel = _param.changeHoursLabel, changeHoursLabel = _param_changeHoursLabel === void 0 ? 'Изменить час' : _param_changeHoursLabel, _param_changeMinutesLabel = _param.changeMinutesLabel, changeMinutesLabel = _param_changeMinutesLabel === void 0 ? 'Изменить минуту' : _param_changeMinutesLabel, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, showNeighboringMonth = _param.showNeighboringMonth, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_size = _param.size, size = _param_size === void 0 ? 'm' : _param_size, externalViewDate = _param.viewDate, onHeaderChange = _param.onHeaderChange, onNextMonth = _param.onNextMonth, onPrevMonth = _param.onPrevMonth, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, prevMonthProps = _param.prevMonthProps, nextMonthProps = _param.nextMonthProps, dayProps = _param.dayProps, listenDayChangesForUpdate = _param.listenDayChangesForUpdate, renderDayContent = _param.renderDayContent, minDateTime = _param.minDateTime, maxDateTime = _param.maxDateTime, minutesTestId = _param.minutesTestId, hoursTestId = _param.hoursTestId, doneButtonTestId = _param.doneButtonTestId, prevMonthButtonTestId = _param.prevMonthButtonTestId, nextMonthButtonTestId = _param.nextMonthButtonTestId, monthDropdownTestId = _param.monthDropdownTestId, yearDropdownTestId = _param.yearDropdownTestId, dayTestId = _param.dayTestId, props = Calendar_object_without_properties(_param, [
45027
45105
  "value",
45028
45106
  "onChange",
45029
45107
  "disablePast",
@@ -45032,6 +45110,8 @@ var Calendar_warn = warnOnce('Calendar');
45032
45110
  "onClose",
45033
45111
  "enableTime",
45034
45112
  "doneButtonText",
45113
+ "doneButtonDisabled",
45114
+ "doneButtonShow",
45035
45115
  "weekStartsOn",
45036
45116
  "disablePickers",
45037
45117
  "changeHoursLabel",
@@ -45055,7 +45135,15 @@ var Calendar_warn = warnOnce('Calendar');
45055
45135
  "listenDayChangesForUpdate",
45056
45136
  "renderDayContent",
45057
45137
  "minDateTime",
45058
- "maxDateTime"
45138
+ "maxDateTime",
45139
+ "minutesTestId",
45140
+ "hoursTestId",
45141
+ "doneButtonTestId",
45142
+ "prevMonthButtonTestId",
45143
+ "nextMonthButtonTestId",
45144
+ "monthDropdownTestId",
45145
+ "yearDropdownTestId",
45146
+ "dayTestId"
45059
45147
  ]);
45060
45148
  var _useCalendar = useCalendar({
45061
45149
  value: value,
@@ -45136,7 +45224,11 @@ var Calendar_warn = warnOnce('Calendar');
45136
45224
  prevMonthProps: prevMonthProps,
45137
45225
  nextMonthProps: nextMonthProps,
45138
45226
  isMonthDisabled: isMonthDisabled,
45139
- isYearDisabled: isYearDisabled
45227
+ isYearDisabled: isYearDisabled,
45228
+ nextMonthButtonTestId: nextMonthButtonTestId,
45229
+ prevMonthButtonTestId: prevMonthButtonTestId,
45230
+ monthDropdownTestId: monthDropdownTestId,
45231
+ yearDropdownTestId: yearDropdownTestId
45140
45232
  }), /*#__PURE__*/ React.createElement(CalendarDays, {
45141
45233
  viewDate: externalViewDate || viewDate,
45142
45234
  value: value,
@@ -45155,7 +45247,8 @@ var Calendar_warn = warnOnce('Calendar');
45155
45247
  size: size,
45156
45248
  dayProps: dayProps,
45157
45249
  listenDayChangesForUpdate: listenDayChangesForUpdate,
45158
- renderDayContent: renderDayContent
45250
+ renderDayContent: renderDayContent,
45251
+ dayTestId: dayTestId
45159
45252
  }), enableTime && value && size !== 's' && /*#__PURE__*/ React.createElement("div", {
45160
45253
  className: "vkuiCalendar__time"
45161
45254
  }, /*#__PURE__*/ React.createElement(CalendarTime, {
@@ -45163,9 +45256,14 @@ var Calendar_warn = warnOnce('Calendar');
45163
45256
  onChange: onChange,
45164
45257
  onClose: onClose,
45165
45258
  doneButtonText: doneButtonText,
45259
+ doneButtonDisabled: doneButtonDisabled,
45260
+ doneButtonShow: doneButtonShow,
45166
45261
  changeHoursLabel: changeHoursLabel,
45167
45262
  changeMinutesLabel: changeMinutesLabel,
45168
- isDayDisabled: minDateTime || maxDateTime ? isDayDisabled : undefined
45263
+ isDayDisabled: minDateTime || maxDateTime ? isDayDisabled : undefined,
45264
+ minutesTestId: minutesTestId,
45265
+ hoursTestId: hoursTestId,
45266
+ doneButtonTestId: doneButtonTestId
45169
45267
  })));
45170
45268
  };
45171
45269
 
@@ -45318,7 +45416,7 @@ var getIsDaySelected = function(day, value) {
45318
45416
  /**
45319
45417
  * @see https://vkcom.github.io/VKUI/#/CalendarRange
45320
45418
  */ var CalendarRange_CalendarRange = function(_param) {
45321
- var value = _param.value, onChange = _param.onChange, disablePast = _param.disablePast, disableFuture = _param.disableFuture, shouldDisableDate = _param.shouldDisableDate, onClose = _param.onClose, _param_weekStartsOn = _param.weekStartsOn, weekStartsOn = _param_weekStartsOn === void 0 ? 1 : _param_weekStartsOn, disablePickers = _param.disablePickers, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, listenDayChangesForUpdate = _param.listenDayChangesForUpdate, renderDayContent = _param.renderDayContent, props = CalendarRange_object_without_properties(_param, [
45419
+ var value = _param.value, onChange = _param.onChange, disablePast = _param.disablePast, disableFuture = _param.disableFuture, shouldDisableDate = _param.shouldDisableDate, onClose = _param.onClose, _param_weekStartsOn = _param.weekStartsOn, weekStartsOn = _param_weekStartsOn === void 0 ? 1 : _param_weekStartsOn, disablePickers = _param.disablePickers, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, listenDayChangesForUpdate = _param.listenDayChangesForUpdate, renderDayContent = _param.renderDayContent, dayTestId = _param.dayTestId, leftPartHeaderTestsData = _param.leftPartHeaderTestsData, rightPartHeaderTestsData = _param.rightPartHeaderTestsData, props = CalendarRange_object_without_properties(_param, [
45322
45420
  "value",
45323
45421
  "onChange",
45324
45422
  "disablePast",
@@ -45335,7 +45433,10 @@ var getIsDaySelected = function(day, value) {
45335
45433
  "prevMonthIcon",
45336
45434
  "nextMonthIcon",
45337
45435
  "listenDayChangesForUpdate",
45338
- "renderDayContent"
45436
+ "renderDayContent",
45437
+ "dayTestId",
45438
+ "leftPartHeaderTestsData",
45439
+ "rightPartHeaderTestsData"
45339
45440
  ]);
45340
45441
  var _useCalendar = useCalendar({
45341
45442
  value: value,
@@ -45457,7 +45558,7 @@ var getIsDaySelected = function(day, value) {
45457
45558
  baseClassName: "vkuiCalendarRange"
45458
45559
  }), /*#__PURE__*/ React.createElement("div", {
45459
45560
  className: "vkuiCalendarRange__inner"
45460
- }, /*#__PURE__*/ React.createElement(CalendarHeader, {
45561
+ }, /*#__PURE__*/ React.createElement(CalendarHeader, CalendarRange_object_spread({
45461
45562
  viewDate: viewDate,
45462
45563
  onChange: setViewDate,
45463
45564
  nextMonthHidden: true,
@@ -45471,7 +45572,7 @@ var getIsDaySelected = function(day, value) {
45471
45572
  prevMonthIcon: prevMonthIcon,
45472
45573
  isMonthDisabled: isMonthDisabled,
45473
45574
  isYearDisabled: isYearDisabled
45474
- }), /*#__PURE__*/ React.createElement(CalendarDays, {
45575
+ }, leftPartHeaderTestsData)), /*#__PURE__*/ React.createElement(CalendarDays, {
45475
45576
  viewDate: viewDate,
45476
45577
  value: value,
45477
45578
  weekStartsOn: weekStartsOn,
@@ -45490,10 +45591,11 @@ var getIsDaySelected = function(day, value) {
45490
45591
  isDayDisabled: isDayDisabled,
45491
45592
  listenDayChangesForUpdate: listenDayChangesForUpdate,
45492
45593
  renderDayContent: renderDayContent,
45493
- "aria-label": changeDayLabel
45594
+ "aria-label": changeDayLabel,
45595
+ dayTestId: dayTestId
45494
45596
  })), /*#__PURE__*/ React.createElement("div", {
45495
45597
  className: "vkuiCalendarRange__inner"
45496
- }, /*#__PURE__*/ React.createElement(CalendarHeader, {
45598
+ }, /*#__PURE__*/ React.createElement(CalendarHeader, CalendarRange_object_spread({
45497
45599
  viewDate: secondViewDate,
45498
45600
  onChange: onRightPartViewDateChange,
45499
45601
  prevMonthHidden: true,
@@ -45507,7 +45609,7 @@ var getIsDaySelected = function(day, value) {
45507
45609
  nextMonthIcon: nextMonthIcon,
45508
45610
  isMonthDisabled: isMonthDisabled,
45509
45611
  isYearDisabled: isYearDisabled
45510
- }), /*#__PURE__*/ React.createElement(CalendarDays, {
45612
+ }, rightPartHeaderTestsData)), /*#__PURE__*/ React.createElement(CalendarDays, {
45511
45613
  viewDate: secondViewDate,
45512
45614
  value: value,
45513
45615
  weekStartsOn: weekStartsOn,
@@ -45528,7 +45630,8 @@ var getIsDaySelected = function(day, value) {
45528
45630
  listenDayChangesForUpdate: listenDayChangesForUpdate,
45529
45631
  renderDayContent: renderDayContent,
45530
45632
  tabIndex: 0,
45531
- onBlur: resetSelectedDay
45633
+ onBlur: resetSelectedDay,
45634
+ dayTestId: dayTestId
45532
45635
  })));
45533
45636
  };
45534
45637
 
@@ -45595,8 +45698,9 @@ function useDateInput_unsupported_iterable_to_array(o, minLen) {
45595
45698
 
45596
45699
 
45597
45700
 
45701
+
45598
45702
  function useDateInput_useDateInput(param) {
45599
- var maxElement = param.maxElement, refs = param.refs, autoFocus = param.autoFocus, disabled = param.disabled, elementsConfig = param.elementsConfig, onChange = param.onChange, onInternalValueChange = param.onInternalValueChange, getInternalValue = param.getInternalValue, value = param.value;
45703
+ var maxElement = param.maxElement, refs = param.refs, autoFocus = param.autoFocus, disabled = param.disabled, elementsConfig = param.elementsConfig, onChange = param.onChange, onInternalValueChange = param.onInternalValueChange, getInternalValue = param.getInternalValue, value = param.value, onCalendarOpenChanged = param.onCalendarOpenChanged;
45600
45704
  var document = useDOM().document;
45601
45705
  var _useBooleanState = useBooleanState(false), open = _useBooleanState.value, openCalendar = _useBooleanState.setTrue, closeCalendar = _useBooleanState.setFalse;
45602
45706
  var rootRef = React.useRef(null);
@@ -45604,20 +45708,40 @@ function useDateInput_useDateInput(param) {
45604
45708
  var _React_useState = useDateInput_sliced_to_array(React.useState([]), 2), internalValue = _React_useState[0], setInternalValue = _React_useState[1];
45605
45709
  var _React_useState1 = useDateInput_sliced_to_array(React.useState(null), 2), focusedElement = _React_useState1[0], setFocusedElement = _React_useState1[1];
45606
45710
  var window = useDOM().window;
45711
+ var _onCalendarClose = useCallback(function() {
45712
+ if (open) {
45713
+ closeCalendar();
45714
+ onCalendarOpenChanged === null || onCalendarOpenChanged === void 0 ? void 0 : onCalendarOpenChanged(false);
45715
+ }
45716
+ }, [
45717
+ closeCalendar,
45718
+ onCalendarOpenChanged,
45719
+ open
45720
+ ]);
45721
+ var _onCalendarOpen = useCallback(function() {
45722
+ if (!open) {
45723
+ openCalendar();
45724
+ onCalendarOpenChanged === null || onCalendarOpenChanged === void 0 ? void 0 : onCalendarOpenChanged(true);
45725
+ }
45726
+ }, [
45727
+ onCalendarOpenChanged,
45728
+ open,
45729
+ openCalendar
45730
+ ]);
45607
45731
  var removeFocusFromField = React.useCallback(function() {
45608
45732
  if (focusedElement !== null) {
45609
45733
  var _window_getSelection;
45610
45734
  setFocusedElement(null);
45611
- closeCalendar();
45735
+ _onCalendarClose();
45612
45736
  (_window_getSelection = window.getSelection()) === null || _window_getSelection === void 0 ? void 0 : _window_getSelection.removeAllRanges();
45613
45737
  setInternalValue(getInternalValue(value));
45614
45738
  }
45615
45739
  }, [
45616
45740
  focusedElement,
45617
- closeCalendar,
45741
+ _onCalendarClose,
45742
+ window,
45618
45743
  getInternalValue,
45619
- value,
45620
- window
45744
+ value
45621
45745
  ]);
45622
45746
  var handleClickOutside = React.useCallback(function(e) {
45623
45747
  var _rootRef_current, _calendarRef_current;
@@ -45655,7 +45779,7 @@ function useDateInput_useDateInput(param) {
45655
45779
  var element = refs[focusedElement].current;
45656
45780
  if (element) {
45657
45781
  element.focus();
45658
- openCalendar();
45782
+ _onCalendarOpen();
45659
45783
  range.selectNodeContents(element);
45660
45784
  var selection = window.getSelection();
45661
45785
  selection === null || selection === void 0 ? void 0 : selection.removeAllRanges();
@@ -45664,7 +45788,7 @@ function useDateInput_useDateInput(param) {
45664
45788
  }, [
45665
45789
  disabled,
45666
45790
  focusedElement,
45667
- openCalendar,
45791
+ _onCalendarOpen,
45668
45792
  refs,
45669
45793
  window
45670
45794
  ]);
@@ -45737,8 +45861,8 @@ function useDateInput_useDateInput(param) {
45737
45861
  rootRef: rootRef,
45738
45862
  calendarRef: calendarRef,
45739
45863
  open: open,
45740
- openCalendar: openCalendar,
45741
- closeCalendar: closeCalendar,
45864
+ openCalendar: _onCalendarOpen,
45865
+ closeCalendar: _onCalendarClose,
45742
45866
  internalValue: internalValue,
45743
45867
  focusedElement: focusedElement,
45744
45868
  setFocusedElement: setFocusedElement,
@@ -46190,6 +46314,7 @@ function DateInput_object_without_properties_loose(source, excluded) {
46190
46314
 
46191
46315
 
46192
46316
 
46317
+
46193
46318
  // Reorder css
46194
46319
 
46195
46320
  var DateInput_sizeYClassNames = {
@@ -46245,7 +46370,7 @@ var getInternalValue = function(value) {
46245
46370
  /**
46246
46371
  * @see https://vkcom.github.io/VKUI/#/DateInput
46247
46372
  */ var DateInput = function(_param) {
46248
- var enableTime = _param.enableTime, shouldDisableDate = _param.shouldDisableDate, disableFuture = _param.disableFuture, disablePast = _param.disablePast, minDateTime = _param.minDateTime, maxDateTime = _param.maxDateTime, value = _param.value, onChange = _param.onChange, _param_calendarPlacement = _param.calendarPlacement, calendarPlacement = _param_calendarPlacement === void 0 ? 'bottom-start' : _param_calendarPlacement, style = _param.style, className = _param.className, doneButtonText = _param.doneButtonText, _param_closeOnChange = _param.closeOnChange, closeOnChange = _param_closeOnChange === void 0 ? true : _param_closeOnChange, disablePickers = _param.disablePickers, getRootRef = _param.getRootRef, name = _param.name, autoFocus = _param.autoFocus, disabled = _param.disabled, onClick = _param.onClick, onFocus = _param.onFocus, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, showNeighboringMonth = _param.showNeighboringMonth, size = _param.size, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_changeHoursLabel = _param.changeHoursLabel, changeHoursLabel = _param_changeHoursLabel === void 0 ? 'Изменить час' : _param_changeHoursLabel, _param_changeMinutesLabel = _param.changeMinutesLabel, changeMinutesLabel = _param_changeMinutesLabel === void 0 ? 'Изменить минуту' : _param_changeMinutesLabel, _param_clearFieldLabel = _param.clearFieldLabel, clearFieldLabel = _param_clearFieldLabel === void 0 ? 'Очистить поле' : _param_clearFieldLabel, _param_showCalendarLabel = _param.showCalendarLabel, showCalendarLabel = _param_showCalendarLabel === void 0 ? 'Показать календарь' : _param_showCalendarLabel, viewDate = _param.viewDate, onHeaderChange = _param.onHeaderChange, onNextMonth = _param.onNextMonth, onPrevMonth = _param.onPrevMonth, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, _param_disableCalendar = _param.disableCalendar, disableCalendar = _param_disableCalendar === void 0 ? false : _param_disableCalendar, renderDayContent = _param.renderDayContent, props = DateInput_object_without_properties(_param, [
46373
+ var enableTime = _param.enableTime, shouldDisableDate = _param.shouldDisableDate, disableFuture = _param.disableFuture, disablePast = _param.disablePast, minDateTime = _param.minDateTime, maxDateTime = _param.maxDateTime, value = _param.value, onChange = _param.onChange, _param_calendarPlacement = _param.calendarPlacement, calendarPlacement = _param_calendarPlacement === void 0 ? 'bottom-start' : _param_calendarPlacement, style = _param.style, className = _param.className, doneButtonText = _param.doneButtonText, _param_closeOnChange = _param.closeOnChange, closeOnChange = _param_closeOnChange === void 0 ? true : _param_closeOnChange, disablePickers = _param.disablePickers, getRootRef = _param.getRootRef, name = _param.name, autoFocus = _param.autoFocus, disabled = _param.disabled, onClick = _param.onClick, onFocus = _param.onFocus, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, showNeighboringMonth = _param.showNeighboringMonth, size = _param.size, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_changeHoursLabel = _param.changeHoursLabel, changeHoursLabel = _param_changeHoursLabel === void 0 ? 'Изменить час' : _param_changeHoursLabel, _param_changeMinutesLabel = _param.changeMinutesLabel, changeMinutesLabel = _param_changeMinutesLabel === void 0 ? 'Изменить минуту' : _param_changeMinutesLabel, _param_clearFieldLabel = _param.clearFieldLabel, clearFieldLabel = _param_clearFieldLabel === void 0 ? 'Очистить поле' : _param_clearFieldLabel, _param_showCalendarLabel = _param.showCalendarLabel, showCalendarLabel = _param_showCalendarLabel === void 0 ? 'Показать календарь' : _param_showCalendarLabel, viewDate = _param.viewDate, onHeaderChange = _param.onHeaderChange, onNextMonth = _param.onNextMonth, onPrevMonth = _param.onPrevMonth, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, _param_disableCalendar = _param.disableCalendar, disableCalendar = _param_disableCalendar === void 0 ? false : _param_disableCalendar, renderDayContent = _param.renderDayContent, onCalendarOpenChanged = _param.onCalendarOpenChanged, calendarTestsProps = _param.calendarTestsProps, dayFieldTestId = _param.dayFieldTestId, monthFieldTestId = _param.monthFieldTestId, yearFieldTestId = _param.yearFieldTestId, hourFieldTestId = _param.hourFieldTestId, minuteFieldTestId = _param.minuteFieldTestId, props = DateInput_object_without_properties(_param, [
46249
46374
  "enableTime",
46250
46375
  "shouldDisableDate",
46251
46376
  "disableFuture",
@@ -46284,7 +46409,14 @@ var getInternalValue = function(value) {
46284
46409
  "prevMonthIcon",
46285
46410
  "nextMonthIcon",
46286
46411
  "disableCalendar",
46287
- "renderDayContent"
46412
+ "renderDayContent",
46413
+ "onCalendarOpenChanged",
46414
+ "calendarTestsProps",
46415
+ "dayFieldTestId",
46416
+ "monthFieldTestId",
46417
+ "yearFieldTestId",
46418
+ "hourFieldTestId",
46419
+ "minuteFieldTestId"
46288
46420
  ]);
46289
46421
  var daysRef = React.useRef(null);
46290
46422
  var monthsRef = React.useRef(null);
@@ -46305,7 +46437,8 @@ var getInternalValue = function(value) {
46305
46437
  mask += ' HH:mm';
46306
46438
  }
46307
46439
  if (isMatch(formattedValue, mask)) {
46308
- onChange === null || onChange === void 0 ? void 0 : onChange(parse(formattedValue, mask, value !== null && value !== void 0 ? value : new Date()));
46440
+ var now = new Date();
46441
+ onChange === null || onChange === void 0 ? void 0 : onChange(parse(formattedValue, mask, value !== null && value !== void 0 ? value : enableTime ? startOfMinute(now) : startOfDay(now)));
46309
46442
  }
46310
46443
  }, [
46311
46444
  enableTime,
@@ -46337,7 +46470,8 @@ var getInternalValue = function(value) {
46337
46470
  onChange: onChange,
46338
46471
  onInternalValueChange: onInternalValueChange,
46339
46472
  getInternalValue: getInternalValue,
46340
- value: value
46473
+ value: value,
46474
+ onCalendarOpenChanged: onCalendarOpenChanged
46341
46475
  }), rootRef = _useDateInput.rootRef, calendarRef = _useDateInput.calendarRef, open = _useDateInput.open, openCalendar = _useDateInput.openCalendar, internalValue = _useDateInput.internalValue, handleKeyDown = _useDateInput.handleKeyDown, setFocusedElement = _useDateInput.setFocusedElement, handleFieldEnter = _useDateInput.handleFieldEnter, clear = _useDateInput.clear, removeFocusFromField = _useDateInput.removeFocusFromField;
46342
46476
  var _useAdaptivity = useAdaptivity(), _useAdaptivity_sizeY = _useAdaptivity.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? 'none' : _useAdaptivity_sizeY;
46343
46477
  var handleRootRef = useExternRef(rootRef, getRootRef);
@@ -46385,21 +46519,24 @@ var getInternalValue = function(value) {
46385
46519
  index: 0,
46386
46520
  onElementSelect: setFocusedElement,
46387
46521
  value: internalValue[0],
46388
- label: changeDayLabel
46522
+ label: changeDayLabel,
46523
+ "data-testid": dayFieldTestId
46389
46524
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46390
46525
  length: 2,
46391
46526
  getRootRef: monthsRef,
46392
46527
  index: 1,
46393
46528
  onElementSelect: setFocusedElement,
46394
46529
  value: internalValue[1],
46395
- label: changeMonthLabel
46530
+ label: changeMonthLabel,
46531
+ "data-testid": monthFieldTestId
46396
46532
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46397
46533
  length: 4,
46398
46534
  getRootRef: yearsRef,
46399
46535
  index: 2,
46400
46536
  onElementSelect: setFocusedElement,
46401
46537
  value: internalValue[2],
46402
- label: changeYearLabel
46538
+ label: changeYearLabel,
46539
+ "data-testid": yearFieldTestId
46403
46540
  }), enableTime && /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement(InputLikeDivider, {
46404
46541
  className: "vkuiDateInput__input--time-divider"
46405
46542
  }, ' '), /*#__PURE__*/ React.createElement(InputLike, {
@@ -46408,20 +46545,22 @@ var getInternalValue = function(value) {
46408
46545
  index: 3,
46409
46546
  onElementSelect: setFocusedElement,
46410
46547
  value: internalValue[3],
46411
- label: changeHoursLabel
46548
+ label: changeHoursLabel,
46549
+ "data-testid": hourFieldTestId
46412
46550
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, ":"), /*#__PURE__*/ React.createElement(InputLike, {
46413
46551
  length: 2,
46414
46552
  getRootRef: minutesRef,
46415
46553
  index: 4,
46416
46554
  onElementSelect: setFocusedElement,
46417
46555
  value: internalValue[4],
46418
- label: changeMinutesLabel
46556
+ label: changeMinutesLabel,
46557
+ "data-testid": minuteFieldTestId
46419
46558
  }))), open && !disableCalendar && /*#__PURE__*/ React.createElement(Popper, {
46420
46559
  targetRef: rootRef,
46421
46560
  offsetByMainAxis: 8,
46422
46561
  placement: calendarPlacement,
46423
46562
  autoUpdateOnTargetResize: true
46424
- }, /*#__PURE__*/ React.createElement(Calendar, {
46563
+ }, /*#__PURE__*/ React.createElement(Calendar, DateInput_object_spread({
46425
46564
  value: value,
46426
46565
  onChange: onCalendarChange,
46427
46566
  enableTime: enableTime,
@@ -46450,7 +46589,7 @@ var getInternalValue = function(value) {
46450
46589
  nextMonthIcon: nextMonthIcon,
46451
46590
  minDateTime: minDateTime,
46452
46591
  maxDateTime: maxDateTime
46453
- })));
46592
+ }, calendarTestsProps))));
46454
46593
  };
46455
46594
 
46456
46595
  ;// CONCATENATED MODULE: ./src/components/DateRangeInput/DateRangeInput.module.css
@@ -46585,7 +46724,7 @@ var DateRangeInput_getInternalValue = function(value) {
46585
46724
  /**
46586
46725
  * @see https://vkcom.github.io/VKUI/#/DateRangeInput
46587
46726
  */ var DateRangeInput = function(_param) {
46588
- var shouldDisableDate = _param.shouldDisableDate, disableFuture = _param.disableFuture, disablePast = _param.disablePast, value = _param.value, onChange = _param.onChange, _param_calendarPlacement = _param.calendarPlacement, calendarPlacement = _param_calendarPlacement === void 0 ? 'bottom-start' : _param_calendarPlacement, style = _param.style, className = _param.className, _param_closeOnChange = _param.closeOnChange, closeOnChange = _param_closeOnChange === void 0 ? true : _param_closeOnChange, disablePickers = _param.disablePickers, getRootRef = _param.getRootRef, name = _param.name, autoFocus = _param.autoFocus, disabled = _param.disabled, onClick = _param.onClick, onFocus = _param.onFocus, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeStartDayLabel = _param.changeStartDayLabel, changeStartDayLabel = _param_changeStartDayLabel === void 0 ? 'Изменить день начала' : _param_changeStartDayLabel, _param_changeStartMonthLabel = _param.changeStartMonthLabel, changeStartMonthLabel = _param_changeStartMonthLabel === void 0 ? 'Изменить месяц начала' : _param_changeStartMonthLabel, _param_changeStartYearLabel = _param.changeStartYearLabel, changeStartYearLabel = _param_changeStartYearLabel === void 0 ? 'Изменить год начала' : _param_changeStartYearLabel, _param_changeEndDayLabel = _param.changeEndDayLabel, changeEndDayLabel = _param_changeEndDayLabel === void 0 ? 'Изменить день окончания' : _param_changeEndDayLabel, _param_changeEndMonthLabel = _param.changeEndMonthLabel, changeEndMonthLabel = _param_changeEndMonthLabel === void 0 ? 'Изменить месяц окончания' : _param_changeEndMonthLabel, _param_changeEndYearLabel = _param.changeEndYearLabel, changeEndYearLabel = _param_changeEndYearLabel === void 0 ? 'Изменить год окончания' : _param_changeEndYearLabel, _param_clearFieldLabel = _param.clearFieldLabel, clearFieldLabel = _param_clearFieldLabel === void 0 ? 'Очистить поле' : _param_clearFieldLabel, _param_showCalendarLabel = _param.showCalendarLabel, showCalendarLabel = _param_showCalendarLabel === void 0 ? 'Показать календарь' : _param_showCalendarLabel, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, _param_disableCalendar = _param.disableCalendar, disableCalendar = _param_disableCalendar === void 0 ? false : _param_disableCalendar, renderDayContent = _param.renderDayContent, props = DateRangeInput_object_without_properties(_param, [
46727
+ var shouldDisableDate = _param.shouldDisableDate, disableFuture = _param.disableFuture, disablePast = _param.disablePast, value = _param.value, onChange = _param.onChange, _param_calendarPlacement = _param.calendarPlacement, calendarPlacement = _param_calendarPlacement === void 0 ? 'bottom-start' : _param_calendarPlacement, style = _param.style, className = _param.className, _param_closeOnChange = _param.closeOnChange, closeOnChange = _param_closeOnChange === void 0 ? true : _param_closeOnChange, disablePickers = _param.disablePickers, getRootRef = _param.getRootRef, name = _param.name, autoFocus = _param.autoFocus, disabled = _param.disabled, onClick = _param.onClick, onFocus = _param.onFocus, _param_prevMonthLabel = _param.prevMonthLabel, prevMonthLabel = _param_prevMonthLabel === void 0 ? 'Предыдущий месяц' : _param_prevMonthLabel, _param_nextMonthLabel = _param.nextMonthLabel, nextMonthLabel = _param_nextMonthLabel === void 0 ? 'Следующий месяц' : _param_nextMonthLabel, _param_changeDayLabel = _param.changeDayLabel, changeDayLabel = _param_changeDayLabel === void 0 ? 'Изменить день' : _param_changeDayLabel, _param_changeMonthLabel = _param.changeMonthLabel, changeMonthLabel = _param_changeMonthLabel === void 0 ? 'Изменить месяц' : _param_changeMonthLabel, _param_changeYearLabel = _param.changeYearLabel, changeYearLabel = _param_changeYearLabel === void 0 ? 'Изменить год' : _param_changeYearLabel, _param_changeStartDayLabel = _param.changeStartDayLabel, changeStartDayLabel = _param_changeStartDayLabel === void 0 ? 'Изменить день начала' : _param_changeStartDayLabel, _param_changeStartMonthLabel = _param.changeStartMonthLabel, changeStartMonthLabel = _param_changeStartMonthLabel === void 0 ? 'Изменить месяц начала' : _param_changeStartMonthLabel, _param_changeStartYearLabel = _param.changeStartYearLabel, changeStartYearLabel = _param_changeStartYearLabel === void 0 ? 'Изменить год начала' : _param_changeStartYearLabel, _param_changeEndDayLabel = _param.changeEndDayLabel, changeEndDayLabel = _param_changeEndDayLabel === void 0 ? 'Изменить день окончания' : _param_changeEndDayLabel, _param_changeEndMonthLabel = _param.changeEndMonthLabel, changeEndMonthLabel = _param_changeEndMonthLabel === void 0 ? 'Изменить месяц окончания' : _param_changeEndMonthLabel, _param_changeEndYearLabel = _param.changeEndYearLabel, changeEndYearLabel = _param_changeEndYearLabel === void 0 ? 'Изменить год окончания' : _param_changeEndYearLabel, _param_clearFieldLabel = _param.clearFieldLabel, clearFieldLabel = _param_clearFieldLabel === void 0 ? 'Очистить поле' : _param_clearFieldLabel, _param_showCalendarLabel = _param.showCalendarLabel, showCalendarLabel = _param_showCalendarLabel === void 0 ? 'Показать календарь' : _param_showCalendarLabel, prevMonthIcon = _param.prevMonthIcon, nextMonthIcon = _param.nextMonthIcon, _param_disableCalendar = _param.disableCalendar, disableCalendar = _param_disableCalendar === void 0 ? false : _param_disableCalendar, onCalendarOpenChanged = _param.onCalendarOpenChanged, renderDayContent = _param.renderDayContent, calendarTestsProps = _param.calendarTestsProps, startDateTestsProps = _param.startDateTestsProps, endDateTestsProps = _param.endDateTestsProps, props = DateRangeInput_object_without_properties(_param, [
46589
46728
  "shouldDisableDate",
46590
46729
  "disableFuture",
46591
46730
  "disablePast",
@@ -46618,7 +46757,11 @@ var DateRangeInput_getInternalValue = function(value) {
46618
46757
  "prevMonthIcon",
46619
46758
  "nextMonthIcon",
46620
46759
  "disableCalendar",
46621
- "renderDayContent"
46760
+ "onCalendarOpenChanged",
46761
+ "renderDayContent",
46762
+ "calendarTestsProps",
46763
+ "startDateTestsProps",
46764
+ "endDateTestsProps"
46622
46765
  ]);
46623
46766
  var daysStartRef = React.useRef(null);
46624
46767
  var monthsStartRef = React.useRef(null);
@@ -46691,7 +46834,8 @@ var DateRangeInput_getInternalValue = function(value) {
46691
46834
  onChange: onChange,
46692
46835
  onInternalValueChange: onInternalValueChange,
46693
46836
  getInternalValue: DateRangeInput_getInternalValue,
46694
- value: value
46837
+ value: value,
46838
+ onCalendarOpenChanged: onCalendarOpenChanged
46695
46839
  }), rootRef = _useDateInput.rootRef, calendarRef = _useDateInput.calendarRef, open = _useDateInput.open, openCalendar = _useDateInput.openCalendar, closeCalendar = _useDateInput.closeCalendar, internalValue = _useDateInput.internalValue, handleKeyDown = _useDateInput.handleKeyDown, setFocusedElement = _useDateInput.setFocusedElement, handleFieldEnter = _useDateInput.handleFieldEnter, clear = _useDateInput.clear, removeFocusFromField = _useDateInput.removeFocusFromField;
46696
46840
  var _useAdaptivity = useAdaptivity(), _useAdaptivity_sizeY = _useAdaptivity.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? 'none' : _useAdaptivity_sizeY;
46697
46841
  var handleRootRef = useExternRef(rootRef, getRootRef);
@@ -46733,47 +46877,53 @@ var DateRangeInput_getInternalValue = function(value) {
46733
46877
  index: 0,
46734
46878
  onElementSelect: setFocusedElement,
46735
46879
  value: internalValue[0],
46736
- label: changeStartDayLabel
46880
+ label: changeStartDayLabel,
46881
+ "data-testid": startDateTestsProps === null || startDateTestsProps === void 0 ? void 0 : startDateTestsProps.day
46737
46882
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46738
46883
  length: 2,
46739
46884
  getRootRef: monthsStartRef,
46740
46885
  index: 1,
46741
46886
  onElementSelect: setFocusedElement,
46742
46887
  value: internalValue[1],
46743
- label: changeStartMonthLabel
46888
+ label: changeStartMonthLabel,
46889
+ "data-testid": startDateTestsProps === null || startDateTestsProps === void 0 ? void 0 : startDateTestsProps.month
46744
46890
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46745
46891
  length: 4,
46746
46892
  getRootRef: yearsStartRef,
46747
46893
  index: 2,
46748
46894
  onElementSelect: setFocusedElement,
46749
46895
  value: internalValue[2],
46750
- label: changeStartYearLabel
46896
+ label: changeStartYearLabel,
46897
+ "data-testid": startDateTestsProps === null || startDateTestsProps === void 0 ? void 0 : startDateTestsProps.year
46751
46898
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, ' — '), /*#__PURE__*/ React.createElement(InputLike, {
46752
46899
  length: 2,
46753
46900
  getRootRef: daysEndRef,
46754
46901
  index: 3,
46755
46902
  onElementSelect: setFocusedElement,
46756
46903
  value: internalValue[3],
46757
- label: changeEndDayLabel
46904
+ label: changeEndDayLabel,
46905
+ "data-testid": endDateTestsProps === null || endDateTestsProps === void 0 ? void 0 : endDateTestsProps.day
46758
46906
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46759
46907
  length: 2,
46760
46908
  getRootRef: monthsEndRef,
46761
46909
  index: 4,
46762
46910
  onElementSelect: setFocusedElement,
46763
46911
  value: internalValue[4],
46764
- label: changeEndMonthLabel
46912
+ label: changeEndMonthLabel,
46913
+ "data-testid": endDateTestsProps === null || endDateTestsProps === void 0 ? void 0 : endDateTestsProps.month
46765
46914
  }), /*#__PURE__*/ React.createElement(InputLikeDivider, null, "."), /*#__PURE__*/ React.createElement(InputLike, {
46766
46915
  length: 4,
46767
46916
  getRootRef: yearsEndRef,
46768
46917
  index: 5,
46769
46918
  onElementSelect: setFocusedElement,
46770
46919
  value: internalValue[5],
46771
- label: changeEndYearLabel
46920
+ label: changeEndYearLabel,
46921
+ "data-testid": endDateTestsProps === null || endDateTestsProps === void 0 ? void 0 : endDateTestsProps.year
46772
46922
  })), open && !disableCalendar && /*#__PURE__*/ React.createElement(Popper, {
46773
46923
  targetRef: rootRef,
46774
46924
  offsetByMainAxis: 8,
46775
46925
  placement: calendarPlacement
46776
- }, /*#__PURE__*/ React.createElement(CalendarRange, {
46926
+ }, /*#__PURE__*/ React.createElement(CalendarRange, DateRangeInput_object_spread({
46777
46927
  value: value,
46778
46928
  onChange: onCalendarChange,
46779
46929
  disablePast: disablePast,
@@ -46790,7 +46940,7 @@ var DateRangeInput_getInternalValue = function(value) {
46790
46940
  prevMonthIcon: prevMonthIcon,
46791
46941
  nextMonthIcon: nextMonthIcon,
46792
46942
  renderDayContent: renderDayContent
46793
- })));
46943
+ }, calendarTestsProps))));
46794
46944
  };
46795
46945
 
46796
46946
  ;// CONCATENATED MODULE: ./src/components/Skeleton/Skeleton.module.css
@@ -47900,7 +48050,9 @@ function Popover_unsupported_iterable_to_array(o, minLen) {
47900
48050
  mount: !hidden,
47901
48051
  disabled: hidden,
47902
48052
  autoFocus: disableInteractive ? false : autoFocus,
47903
- restoreFocus: restoreFocus ? onRestoreFocus : false,
48053
+ restoreFocus: restoreFocus ? function() {
48054
+ return onRestoreFocus(restoreFocus);
48055
+ } : false,
47904
48056
  onClose: onEscapeKeyDown
47905
48057
  }), arrow, typeof content === 'function' ? content({
47906
48058
  onClose: onClose