@vkontakte/vkui 7.5.4 → 7.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/dist/components/Calendar/Calendar.js +6 -6
  2. package/dist/components/Calendar/Calendar.js.map +1 -1
  3. package/dist/components/CalendarDays/CalendarDays.js +3 -3
  4. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  5. package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  6. package/dist/components/CalendarRange/CalendarRange.js +16 -14
  7. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  8. package/dist/components/CalendarRange/utils.d.ts.map +1 -1
  9. package/dist/components/CalendarRange/utils.js +6 -5
  10. package/dist/components/CalendarRange/utils.js.map +1 -1
  11. package/dist/components/Cell/Cell.d.ts.map +1 -1
  12. package/dist/components/Cell/Cell.js +6 -3
  13. package/dist/components/Cell/Cell.js.map +1 -1
  14. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts +5 -3
  15. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts.map +1 -1
  16. package/dist/components/Checkbox/Checkbox.d.ts +4 -0
  17. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
  18. package/dist/components/Checkbox/Checkbox.js +4 -2
  19. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  20. package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts +1 -1
  21. package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts.map +1 -1
  22. package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.js +6 -3
  23. package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.js.map +1 -1
  24. package/dist/components/ChipsInputBase/Chip/Chip.d.ts +41 -2
  25. package/dist/components/ChipsInputBase/Chip/Chip.d.ts.map +1 -1
  26. package/dist/components/ChipsInputBase/Chip/Chip.js +7 -2
  27. package/dist/components/ChipsInputBase/Chip/Chip.js.map +1 -1
  28. package/dist/components/ChipsInputBase/types.d.ts +2 -35
  29. package/dist/components/ChipsInputBase/types.d.ts.map +1 -1
  30. package/dist/components/ChipsInputBase/types.js.map +1 -1
  31. package/dist/components/ContentBadge/ContentBadge.d.ts +1 -1
  32. package/dist/components/ContentBadge/ContentBadge.d.ts.map +1 -1
  33. package/dist/components/ContentBadge/ContentBadge.js +15 -9
  34. package/dist/components/ContentBadge/ContentBadge.js.map +1 -1
  35. package/dist/components/ContentCard/ContentCard.d.ts +1 -1
  36. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -1
  37. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  38. package/dist/components/CustomSelect/CustomSelect.d.ts +16 -27
  39. package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  40. package/dist/components/CustomSelect/CustomSelect.js +161 -428
  41. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  42. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.d.ts +3 -1
  43. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.d.ts.map +1 -1
  44. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.js +25 -5
  45. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.js.map +1 -1
  46. package/dist/components/CustomSelect/helpers.d.ts +12 -0
  47. package/dist/components/CustomSelect/helpers.d.ts.map +1 -0
  48. package/dist/components/CustomSelect/helpers.js +63 -0
  49. package/dist/components/CustomSelect/helpers.js.map +1 -0
  50. package/dist/components/CustomSelect/hooks/useAfterItems.d.ts +11 -0
  51. package/dist/components/CustomSelect/hooks/useAfterItems.d.ts.map +1 -0
  52. package/dist/components/CustomSelect/hooks/useAfterItems.js +57 -0
  53. package/dist/components/CustomSelect/hooks/useAfterItems.js.map +1 -0
  54. package/dist/components/CustomSelect/hooks/useDropdownOpenedController.d.ts +13 -0
  55. package/dist/components/CustomSelect/hooks/useDropdownOpenedController.d.ts.map +1 -0
  56. package/dist/components/CustomSelect/hooks/useDropdownOpenedController.js +60 -0
  57. package/dist/components/CustomSelect/hooks/useDropdownOpenedController.js.map +1 -0
  58. package/dist/components/CustomSelect/hooks/useFocusedOptionController.d.ts +20 -0
  59. package/dist/components/CustomSelect/hooks/useFocusedOptionController.d.ts.map +1 -0
  60. package/dist/components/CustomSelect/hooks/useFocusedOptionController.js +52 -0
  61. package/dist/components/CustomSelect/hooks/useFocusedOptionController.js.map +1 -0
  62. package/dist/components/CustomSelect/hooks/useInputKeyboardController.d.ts +13 -0
  63. package/dist/components/CustomSelect/hooks/useInputKeyboardController.d.ts.map +1 -0
  64. package/dist/components/CustomSelect/hooks/useInputKeyboardController.js +78 -0
  65. package/dist/components/CustomSelect/hooks/useInputKeyboardController.js.map +1 -0
  66. package/dist/components/CustomSelect/hooks/useInputValueController.d.ts +15 -0
  67. package/dist/components/CustomSelect/hooks/useInputValueController.d.ts.map +1 -0
  68. package/dist/components/CustomSelect/hooks/useInputValueController.js +43 -0
  69. package/dist/components/CustomSelect/hooks/useInputValueController.js.map +1 -0
  70. package/dist/components/CustomSelect/hooks/useScrollListController.d.ts +9 -0
  71. package/dist/components/CustomSelect/hooks/useScrollListController.d.ts.map +1 -0
  72. package/dist/components/CustomSelect/hooks/useScrollListController.js +37 -0
  73. package/dist/components/CustomSelect/hooks/useScrollListController.js.map +1 -0
  74. package/dist/components/CustomSelect/hooks/useSelectedOptionController.d.ts +18 -0
  75. package/dist/components/CustomSelect/hooks/useSelectedOptionController.d.ts.map +1 -0
  76. package/dist/components/CustomSelect/hooks/useSelectedOptionController.js +81 -0
  77. package/dist/components/CustomSelect/hooks/useSelectedOptionController.js.map +1 -0
  78. package/dist/components/CustomSelect/types.d.ts +33 -0
  79. package/dist/components/CustomSelect/types.d.ts.map +1 -0
  80. package/dist/components/CustomSelect/types.js +3 -0
  81. package/dist/components/CustomSelect/types.js.map +1 -0
  82. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts.map +1 -1
  83. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -0
  84. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  85. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  86. package/dist/components/DateInput/DateInput.js +3 -2
  87. package/dist/components/DateInput/DateInput.js.map +1 -1
  88. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  89. package/dist/components/DateRangeInput/DateRangeInput.js +4 -4
  90. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  91. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +1 -1
  92. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  93. package/dist/components/MiniInfoCell/MiniInfoCell.d.ts +3 -2
  94. package/dist/components/MiniInfoCell/MiniInfoCell.d.ts.map +1 -1
  95. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  96. package/dist/components/ModalCard/ModalCard.d.ts +1 -1
  97. package/dist/components/ModalCard/ModalCard.d.ts.map +1 -1
  98. package/dist/components/ModalCard/ModalCard.js +4 -2
  99. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  100. package/dist/components/ModalCard/ModalCardInternal.d.ts +1 -1
  101. package/dist/components/ModalCard/ModalCardInternal.d.ts.map +1 -1
  102. package/dist/components/ModalCard/ModalCardInternal.js +5 -3
  103. package/dist/components/ModalCard/ModalCardInternal.js.map +1 -1
  104. package/dist/components/ModalCard/types.d.ts +8 -0
  105. package/dist/components/ModalCard/types.d.ts.map +1 -1
  106. package/dist/components/ModalCard/types.js.map +1 -1
  107. package/dist/components/ModalOutlet/ModalOutlet.d.ts +2 -1
  108. package/dist/components/ModalOutlet/ModalOutlet.d.ts.map +1 -1
  109. package/dist/components/ModalOutlet/ModalOutlet.js +4 -3
  110. package/dist/components/ModalOutlet/ModalOutlet.js.map +1 -1
  111. package/dist/components/ModalPage/ModalPage.d.ts +1 -1
  112. package/dist/components/ModalPage/ModalPage.d.ts.map +1 -1
  113. package/dist/components/ModalPage/ModalPage.js +3 -1
  114. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  115. package/dist/components/ModalPage/ModalPageInternal.d.ts +1 -1
  116. package/dist/components/ModalPage/ModalPageInternal.d.ts.map +1 -1
  117. package/dist/components/ModalPage/ModalPageInternal.js +5 -3
  118. package/dist/components/ModalPage/ModalPageInternal.js.map +1 -1
  119. package/dist/components/ModalPage/types.d.ts +8 -0
  120. package/dist/components/ModalPage/types.d.ts.map +1 -1
  121. package/dist/components/ModalPage/types.js.map +1 -1
  122. package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
  123. package/dist/components/ModalRoot/ModalRoot.d.ts.map +1 -1
  124. package/dist/components/ModalRoot/ModalRoot.js +4 -2
  125. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  126. package/dist/components/ModalRoot/types.d.ts +6 -0
  127. package/dist/components/ModalRoot/types.d.ts.map +1 -1
  128. package/dist/components/ModalRoot/types.js.map +1 -1
  129. package/dist/components/ModalRoot/useModalManager.d.ts +3 -1
  130. package/dist/components/ModalRoot/useModalManager.d.ts.map +1 -1
  131. package/dist/components/ModalRoot/useModalManager.js +2 -1
  132. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  133. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts +2 -2
  134. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
  135. package/dist/components/OnboardingTooltip/OnboardingTooltip.js +4 -2
  136. package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  137. package/dist/components/Popover/Popover.d.ts +1 -1
  138. package/dist/components/Popover/Popover.d.ts.map +1 -1
  139. package/dist/components/Popover/Popover.js.map +1 -1
  140. package/dist/components/Popover/usePopover.d.ts +1 -1
  141. package/dist/components/Popover/usePopover.d.ts.map +1 -1
  142. package/dist/components/Popover/usePopover.js +3 -1
  143. package/dist/components/Popover/usePopover.js.map +1 -1
  144. package/dist/components/Popper/Popper.d.ts +2 -2
  145. package/dist/components/Popper/Popper.d.ts.map +1 -1
  146. package/dist/components/Popper/Popper.js +3 -1
  147. package/dist/components/Popper/Popper.js.map +1 -1
  148. package/dist/components/Select/Select.d.ts +2 -1
  149. package/dist/components/Select/Select.d.ts.map +1 -1
  150. package/dist/components/Select/Select.js +5 -2
  151. package/dist/components/Select/Select.js.map +1 -1
  152. package/dist/components/SelectionControl/SelectionControl.d.ts +5 -1
  153. package/dist/components/SelectionControl/SelectionControl.d.ts.map +1 -1
  154. package/dist/components/SelectionControl/SelectionControl.js +22 -6
  155. package/dist/components/SelectionControl/SelectionControl.js.map +1 -1
  156. package/dist/components/SelectionControl/SelectionControlContext.d.ts +7 -0
  157. package/dist/components/SelectionControl/SelectionControlContext.d.ts.map +1 -0
  158. package/dist/components/SelectionControl/SelectionControlContext.js +7 -0
  159. package/dist/components/SelectionControl/SelectionControlContext.js.map +1 -0
  160. package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts.map +1 -1
  161. package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js +3 -1
  162. package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js.map +1 -1
  163. package/dist/components/SimpleCell/SimpleCell.d.ts.map +1 -1
  164. package/dist/components/SimpleCell/SimpleCell.js +29 -8
  165. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  166. package/dist/components/Skeleton/Skeleton.js +1 -1
  167. package/dist/components/Skeleton/Skeleton.js.map +1 -1
  168. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  169. package/dist/components/Tabs/Tabs.js +19 -9
  170. package/dist/components/Tabs/Tabs.js.map +1 -1
  171. package/dist/components/Tabs/TabsController.d.ts +2 -2
  172. package/dist/components/Tabs/TabsController.d.ts.map +1 -1
  173. package/dist/components/Tabs/TabsController.js.map +1 -1
  174. package/dist/components/Tabs/TabsControllerContext.d.ts +5 -0
  175. package/dist/components/Tabs/TabsControllerContext.d.ts.map +1 -0
  176. package/dist/components/Tabs/TabsControllerContext.js +4 -0
  177. package/dist/components/Tabs/TabsControllerContext.js.map +1 -0
  178. package/dist/components/Tabs/TabsModeContext.d.ts +0 -2
  179. package/dist/components/Tabs/TabsModeContext.d.ts.map +1 -1
  180. package/dist/components/Tabs/TabsModeContext.js +1 -2
  181. package/dist/components/Tabs/TabsModeContext.js.map +1 -1
  182. package/dist/components/TabsItem/TabsItem.d.ts.map +1 -1
  183. package/dist/components/TabsItem/TabsItem.js +3 -1
  184. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  185. package/dist/components/Tooltip/Tooltip.d.ts +1 -1
  186. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  187. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  188. package/dist/components/Tooltip/useTooltip.d.ts +1 -1
  189. package/dist/components/Tooltip/useTooltip.d.ts.map +1 -1
  190. package/dist/components/Tooltip/useTooltip.js +3 -1
  191. package/dist/components/Tooltip/useTooltip.js.map +1 -1
  192. package/dist/components/Typography/Caption/Caption.d.ts +2 -0
  193. package/dist/components/Typography/Caption/Caption.d.ts.map +1 -1
  194. package/dist/components/Typography/Caption/Caption.js +4 -1
  195. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  196. package/dist/components/Typography/Footnote/Footnote.d.ts +2 -0
  197. package/dist/components/Typography/Footnote/Footnote.d.ts.map +1 -1
  198. package/dist/components/Typography/Footnote/Footnote.js +4 -1
  199. package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
  200. package/dist/components/Typography/Typography.d.ts +1 -0
  201. package/dist/components/Typography/Typography.d.ts.map +1 -1
  202. package/dist/components/Typography/Typography.js +7 -1
  203. package/dist/components/Typography/Typography.js.map +1 -1
  204. package/dist/components/View/View.d.ts.map +1 -1
  205. package/dist/components/View/View.js +2 -1
  206. package/dist/components/View/View.js.map +1 -1
  207. package/dist/components/View/ViewInfinite.d.ts.map +1 -1
  208. package/dist/components/View/ViewInfinite.js +2 -1
  209. package/dist/components/View/ViewInfinite.js.map +1 -1
  210. package/dist/components.css +1 -1
  211. package/dist/components.css.map +1 -1
  212. package/dist/cssm/components/Banner/Banner.module.css +1 -6
  213. package/dist/cssm/components/Calendar/Calendar.js +6 -6
  214. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  215. package/dist/cssm/components/CalendarDays/CalendarDays.js +3 -3
  216. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  217. package/dist/cssm/components/CalendarRange/CalendarRange.js +16 -14
  218. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  219. package/dist/cssm/components/CalendarRange/utils.js +6 -5
  220. package/dist/cssm/components/CalendarRange/utils.js.map +1 -1
  221. package/dist/cssm/components/Cell/Cell.js +3 -1
  222. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  223. package/dist/cssm/components/Checkbox/Checkbox.js +2 -1
  224. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  225. package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.js +4 -2
  226. package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.js.map +1 -1
  227. package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +11 -2
  228. package/dist/cssm/components/ChipsInputBase/Chip/Chip.js +6 -2
  229. package/dist/cssm/components/ChipsInputBase/Chip/Chip.js.map +1 -1
  230. package/dist/cssm/components/ChipsInputBase/Chip/Chip.module.css +8 -1
  231. package/dist/cssm/components/ChipsInputBase/types.js.map +1 -1
  232. package/dist/cssm/components/ContentBadge/ContentBadge.js +14 -8
  233. package/dist/cssm/components/ContentBadge/ContentBadge.js.map +1 -1
  234. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  235. package/dist/cssm/components/CustomSelect/CustomSelect.js +154 -421
  236. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  237. package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.js +22 -4
  238. package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.js.map +1 -1
  239. package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +12 -0
  240. package/dist/cssm/components/CustomSelect/helpers.js +62 -0
  241. package/dist/cssm/components/CustomSelect/helpers.js.map +1 -0
  242. package/dist/cssm/components/CustomSelect/hooks/useAfterItems.js +58 -0
  243. package/dist/cssm/components/CustomSelect/hooks/useAfterItems.js.map +1 -0
  244. package/dist/cssm/components/CustomSelect/hooks/useDropdownOpenedController.js +60 -0
  245. package/dist/cssm/components/CustomSelect/hooks/useDropdownOpenedController.js.map +1 -0
  246. package/dist/cssm/components/CustomSelect/hooks/useFocusedOptionController.js +52 -0
  247. package/dist/cssm/components/CustomSelect/hooks/useFocusedOptionController.js.map +1 -0
  248. package/dist/cssm/components/CustomSelect/hooks/useInputKeyboardController.js +78 -0
  249. package/dist/cssm/components/CustomSelect/hooks/useInputKeyboardController.js.map +1 -0
  250. package/dist/cssm/components/CustomSelect/hooks/useInputValueController.js +43 -0
  251. package/dist/cssm/components/CustomSelect/hooks/useInputValueController.js.map +1 -0
  252. package/dist/cssm/components/CustomSelect/hooks/useScrollListController.js +37 -0
  253. package/dist/cssm/components/CustomSelect/hooks/useScrollListController.js.map +1 -0
  254. package/dist/cssm/components/CustomSelect/hooks/useSelectedOptionController.js +81 -0
  255. package/dist/cssm/components/CustomSelect/hooks/useSelectedOptionController.js.map +1 -0
  256. package/dist/cssm/components/CustomSelect/types.js +3 -0
  257. package/dist/cssm/components/CustomSelect/types.js.map +1 -0
  258. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -0
  259. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  260. package/dist/cssm/components/DateInput/DateInput.js +3 -2
  261. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  262. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -4
  263. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  264. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  265. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  266. package/dist/cssm/components/ModalCard/ModalCard.js +2 -1
  267. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  268. package/dist/cssm/components/ModalCard/ModalCardInternal.js +3 -2
  269. package/dist/cssm/components/ModalCard/ModalCardInternal.js.map +1 -1
  270. package/dist/cssm/components/ModalCard/types.js.map +1 -1
  271. package/dist/cssm/components/ModalOutlet/ModalOutlet.js +2 -2
  272. package/dist/cssm/components/ModalOutlet/ModalOutlet.js.map +1 -1
  273. package/dist/cssm/components/ModalOutlet/ModalOutlet.module.css +4 -0
  274. package/dist/cssm/components/ModalOverlay/ModalOverlay.module.css +1 -1
  275. package/dist/cssm/components/ModalPage/ModalPage.js +2 -1
  276. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  277. package/dist/cssm/components/ModalPage/ModalPage.module.css +1 -0
  278. package/dist/cssm/components/ModalPage/ModalPageInternal.js +3 -2
  279. package/dist/cssm/components/ModalPage/ModalPageInternal.js.map +1 -1
  280. package/dist/cssm/components/ModalPage/types.js.map +1 -1
  281. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -2
  282. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  283. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  284. package/dist/cssm/components/ModalRoot/useModalManager.js +2 -1
  285. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  286. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +3 -2
  287. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  288. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  289. package/dist/cssm/components/Popover/usePopover.js +2 -1
  290. package/dist/cssm/components/Popover/usePopover.js.map +1 -1
  291. package/dist/cssm/components/Popper/Popper.js +2 -1
  292. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  293. package/dist/cssm/components/RichCell/RichCell.module.css +4 -2
  294. package/dist/cssm/components/Select/Select.js +1 -1
  295. package/dist/cssm/components/Select/Select.js.map +1 -1
  296. package/dist/cssm/components/SelectionControl/SelectionControl.js +16 -6
  297. package/dist/cssm/components/SelectionControl/SelectionControl.js.map +1 -1
  298. package/dist/cssm/components/SelectionControl/SelectionControl.module.css +6 -3
  299. package/dist/cssm/components/SelectionControl/SelectionControlContext.js +7 -0
  300. package/dist/cssm/components/SelectionControl/SelectionControlContext.js.map +1 -0
  301. package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js +3 -1
  302. package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js.map +1 -1
  303. package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +6 -3
  304. package/dist/cssm/components/SimpleCell/SimpleCell.js +29 -8
  305. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  306. package/dist/cssm/components/Skeleton/Skeleton.js +1 -1
  307. package/dist/cssm/components/Skeleton/Skeleton.js.map +1 -1
  308. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.module.css +2 -1
  309. package/dist/cssm/components/Tabs/Tabs.js +19 -9
  310. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  311. package/dist/cssm/components/Tabs/TabsController.js.map +1 -1
  312. package/dist/cssm/components/Tabs/TabsControllerContext.js +4 -0
  313. package/dist/cssm/components/Tabs/TabsControllerContext.js.map +1 -0
  314. package/dist/cssm/components/Tabs/TabsModeContext.js +1 -2
  315. package/dist/cssm/components/Tabs/TabsModeContext.js.map +1 -1
  316. package/dist/cssm/components/TabsItem/TabsItem.js +3 -1
  317. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  318. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  319. package/dist/cssm/components/Tooltip/useTooltip.js +2 -1
  320. package/dist/cssm/components/Tooltip/useTooltip.js.map +1 -1
  321. package/dist/cssm/components/Typography/Caption/Caption.js +4 -1
  322. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  323. package/dist/cssm/components/Typography/Footnote/Footnote.js +4 -1
  324. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  325. package/dist/cssm/components/Typography/Typography.js +7 -1
  326. package/dist/cssm/components/Typography/Typography.js.map +1 -1
  327. package/dist/cssm/components/View/View.js +2 -1
  328. package/dist/cssm/components/View/View.js.map +1 -1
  329. package/dist/cssm/components/View/View.module.css +1 -1
  330. package/dist/cssm/components/View/ViewInfinite.js +2 -1
  331. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  332. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.module.css +0 -2
  333. package/dist/cssm/hooks/useCalendar.js +6 -4
  334. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  335. package/dist/cssm/hooks/useFloatingElement.js +3 -2
  336. package/dist/cssm/hooks/useFloatingElement.js.map +1 -1
  337. package/dist/cssm/hooks/useTodayDate.js +3 -2
  338. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  339. package/dist/cssm/index.js.map +1 -1
  340. package/dist/cssm/lib/accessibility.js +8 -0
  341. package/dist/cssm/lib/accessibility.js.map +1 -1
  342. package/dist/cssm/lib/calendar.js +9 -7
  343. package/dist/cssm/lib/calendar.js.map +1 -1
  344. package/dist/cssm/lib/date.js +66 -3
  345. package/dist/cssm/lib/date.js.map +1 -1
  346. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js +18 -8
  347. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  348. package/dist/cssm/lib/floating/useFloatingWithInteractions/types.js.map +1 -1
  349. package/dist/cssm/lib/touch/UIPanGestureRecognizer.js +2 -2
  350. package/dist/cssm/lib/touch/UIPanGestureRecognizer.js.map +1 -1
  351. package/dist/cssm/lib/utils.js +1 -0
  352. package/dist/cssm/lib/utils.js.map +1 -1
  353. package/dist/cssm/styles/dynamicTokens.css +14 -2
  354. package/dist/cssm/styles/themes.css +1 -1
  355. package/dist/hooks/useCalendar.d.ts.map +1 -1
  356. package/dist/hooks/useCalendar.js +6 -4
  357. package/dist/hooks/useCalendar.js.map +1 -1
  358. package/dist/hooks/useFloatingElement.d.ts +1 -1
  359. package/dist/hooks/useFloatingElement.d.ts.map +1 -1
  360. package/dist/hooks/useFloatingElement.js +3 -2
  361. package/dist/hooks/useFloatingElement.js.map +1 -1
  362. package/dist/hooks/useTodayDate.d.ts.map +1 -1
  363. package/dist/hooks/useTodayDate.js +3 -2
  364. package/dist/hooks/useTodayDate.js.map +1 -1
  365. package/dist/index.d.ts +4 -2
  366. package/dist/index.d.ts.map +1 -1
  367. package/dist/index.js.map +1 -1
  368. package/dist/lib/accessibility.d.ts +1 -1
  369. package/dist/lib/accessibility.d.ts.map +1 -1
  370. package/dist/lib/accessibility.js +8 -0
  371. package/dist/lib/accessibility.js.map +1 -1
  372. package/dist/lib/calendar.d.ts.map +1 -1
  373. package/dist/lib/calendar.js +9 -7
  374. package/dist/lib/calendar.js.map +1 -1
  375. package/dist/lib/date.d.ts +31 -1
  376. package/dist/lib/date.d.ts.map +1 -1
  377. package/dist/lib/date.js +67 -3
  378. package/dist/lib/date.js.map +1 -1
  379. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts +6 -1
  380. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts.map +1 -1
  381. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js +18 -8
  382. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  383. package/dist/lib/floating/useFloatingWithInteractions/types.d.ts +2 -0
  384. package/dist/lib/floating/useFloatingWithInteractions/types.d.ts.map +1 -1
  385. package/dist/lib/floating/useFloatingWithInteractions/types.js.map +1 -1
  386. package/dist/lib/touch/UIPanGestureRecognizer.d.ts.map +1 -1
  387. package/dist/lib/touch/UIPanGestureRecognizer.js +2 -2
  388. package/dist/lib/touch/UIPanGestureRecognizer.js.map +1 -1
  389. package/dist/lib/utils.d.ts +1 -0
  390. package/dist/lib/utils.d.ts.map +1 -1
  391. package/dist/lib/utils.js +1 -0
  392. package/dist/lib/utils.js.map +1 -1
  393. package/dist/vkui.css +1 -1
  394. package/dist/vkui.css.map +1 -1
  395. package/package.json +6 -7
  396. package/src/components/Banner/Banner.module.css +1 -6
  397. package/src/components/Banner/Banner.module.css.d.ts.map +1 -1
  398. package/src/components/Calendar/Calendar.tsx +6 -6
  399. package/src/components/CalendarDays/CalendarDays.tsx +3 -3
  400. package/src/components/CalendarRange/CalendarRange.tsx +15 -20
  401. package/src/components/CalendarRange/utils.ts +7 -6
  402. package/src/components/Cell/Cell.tsx +3 -0
  403. package/src/components/Checkbox/Checkbox.tsx +6 -0
  404. package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +7 -2
  405. package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css.d.ts.map +1 -1
  406. package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.tsx +12 -3
  407. package/src/components/ChipsInputBase/Chip/Chip.module.css +8 -1
  408. package/src/components/ChipsInputBase/Chip/Chip.module.css.d.ts.map +1 -1
  409. package/src/components/ChipsInputBase/Chip/Chip.tsx +55 -1
  410. package/src/components/ChipsInputBase/types.ts +2 -45
  411. package/src/components/ContentBadge/ContentBadge.tsx +18 -12
  412. package/src/components/ContentCard/ContentCard.tsx +1 -1
  413. package/src/components/CustomSelect/CustomSelect.tsx +216 -562
  414. package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +12 -0
  415. package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css.d.ts.map +1 -1
  416. package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.tsx +25 -2
  417. package/src/components/CustomSelect/helpers.ts +103 -0
  418. package/src/components/CustomSelect/hooks/useAfterItems.tsx +89 -0
  419. package/src/components/CustomSelect/hooks/useDropdownOpenedController.ts +61 -0
  420. package/src/components/CustomSelect/hooks/useFocusedOptionController.ts +86 -0
  421. package/src/components/CustomSelect/hooks/useInputKeyboardController.ts +96 -0
  422. package/src/components/CustomSelect/hooks/useInputValueController.ts +58 -0
  423. package/src/components/CustomSelect/hooks/useScrollListController.ts +46 -0
  424. package/src/components/CustomSelect/hooks/useSelectedOptionController.ts +132 -0
  425. package/src/components/CustomSelect/types.ts +38 -0
  426. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +1 -0
  427. package/src/components/DateInput/DateInput.tsx +9 -3
  428. package/src/components/DateRangeInput/DateRangeInput.tsx +9 -6
  429. package/src/components/ImageBase/ImageBaseBadge/ImageBaseBadge.tsx +1 -1
  430. package/src/components/MiniInfoCell/MiniInfoCell.tsx +8 -3
  431. package/src/components/ModalCard/ModalCard.tsx +2 -0
  432. package/src/components/ModalCard/ModalCardInternal.tsx +8 -2
  433. package/src/components/ModalCard/types.ts +8 -0
  434. package/src/components/ModalOutlet/ModalOutlet.module.css +4 -0
  435. package/src/components/ModalOutlet/ModalOutlet.module.css.d.ts.map +1 -1
  436. package/src/components/ModalOutlet/ModalOutlet.tsx +8 -1
  437. package/src/components/ModalOverlay/ModalOverlay.module.css +1 -1
  438. package/src/components/ModalPage/ModalPage.module.css +1 -0
  439. package/src/components/ModalPage/ModalPage.module.css.d.ts.map +1 -1
  440. package/src/components/ModalPage/ModalPage.tsx +2 -0
  441. package/src/components/ModalPage/ModalPageInternal.tsx +8 -2
  442. package/src/components/ModalPage/types.ts +8 -0
  443. package/src/components/ModalRoot/ModalRoot.tsx +19 -6
  444. package/src/components/ModalRoot/types.ts +7 -0
  445. package/src/components/ModalRoot/useModalManager.tsx +4 -0
  446. package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +3 -0
  447. package/src/components/Popover/Popover.tsx +1 -0
  448. package/src/components/Popover/usePopover.tsx +2 -0
  449. package/src/components/Popper/Popper.tsx +3 -0
  450. package/src/components/RichCell/RichCell.module.css +4 -2
  451. package/src/components/RichCell/RichCell.module.css.d.ts.map +1 -1
  452. package/src/components/Select/Select.tsx +5 -5
  453. package/src/components/SelectionControl/SelectionControl.module.css +6 -3
  454. package/src/components/SelectionControl/SelectionControl.module.css.d.ts.map +1 -1
  455. package/src/components/SelectionControl/SelectionControl.tsx +30 -8
  456. package/src/components/SelectionControl/SelectionControlContext.ts +7 -0
  457. package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +6 -3
  458. package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css.d.ts.map +1 -1
  459. package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.tsx +7 -1
  460. package/src/components/SimpleCell/SimpleCell.tsx +5 -0
  461. package/src/components/Skeleton/Skeleton.tsx +1 -1
  462. package/src/components/Slider/SliderThumb/SliderThumb.module.css +1 -1
  463. package/src/components/Tabs/Tabs.tsx +16 -12
  464. package/src/components/Tabs/TabsController.ts +2 -2
  465. package/src/components/Tabs/TabsControllerContext.ts +7 -0
  466. package/src/components/Tabs/TabsModeContext.ts +0 -3
  467. package/src/components/TabsItem/TabsItem.tsx +5 -9
  468. package/src/components/Tooltip/Tooltip.tsx +1 -0
  469. package/src/components/Tooltip/useTooltip.tsx +2 -0
  470. package/src/components/Typography/Caption/Caption.tsx +14 -6
  471. package/src/components/Typography/Footnote/Footnote.tsx +10 -6
  472. package/src/components/Typography/Typography.tsx +9 -2
  473. package/src/components/View/View.module.css +1 -1
  474. package/src/components/View/View.tsx +2 -1
  475. package/src/components/View/ViewInfinite.tsx +2 -1
  476. package/src/components/VisuallyHidden/VisuallyHidden.module.css +0 -2
  477. package/src/components/VisuallyHidden/VisuallyHidden.module.css.d.ts.map +1 -1
  478. package/src/hooks/useCalendar.ts +6 -4
  479. package/src/hooks/useFloatingElement.tsx +2 -0
  480. package/src/hooks/useTodayDate.ts +3 -2
  481. package/src/index.ts +5 -3
  482. package/src/lib/accessibility.ts +4 -0
  483. package/src/lib/calendar.ts +8 -12
  484. package/src/lib/date.ts +82 -3
  485. package/src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts +23 -10
  486. package/src/lib/floating/useFloatingWithInteractions/types.ts +2 -0
  487. package/src/lib/touch/UIPanGestureRecognizer.ts +2 -2
  488. package/src/lib/utils.ts +3 -0
  489. package/src/styles/dynamicTokens.css +13 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n arrowMiddleware,\n autoPlacementMiddleware,\n flipMiddleware,\n type FlipMiddlewareOptions,\n hideMiddleware,\n offsetMiddleware,\n shiftMiddleware,\n sizeMiddleware,\n} from '../adapters';\nimport { checkIsNotAutoPlacement, getAutoPlacementAlign } from '../functions';\nimport {\n type ArrowOptions,\n type Placement,\n type PlacementWithAuto,\n type UseFloatingMiddleware,\n} from '../types/common';\n\nexport interface UseFloatingMiddlewaresBootstrapOptions {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам, но приоритетное можно задать с помощью этого свойства.\n */\n placement?: PlacementWithAuto;\n /**\n * Указанное значение `placement` форсируется, даже если для выпадающего элемента недостаточно места.\n * Не оказывает влияния при `placement` значениях - `'auto' | 'auto-start' | 'auto-end'`\n */\n disableFlipMiddleware?: boolean;\n /**\n * Задаёт резервный вариант размещения по перпендикулярной оси.\n */\n flipMiddlewareFallbackAxisSideDirection?: FlipMiddlewareOptions['fallbackAxisSideDirection'];\n /**\n * Отступ по главной оси.\n */\n offsetByMainAxis?: number;\n /**\n * Отступ по вспомогательной оси.\n */\n offsetByCrossAxis?: number;\n arrowRef?: ArrowOptions['element'];\n /**\n * Отображать ли стрелку, указывающую на якорный элемент.\n */\n arrow?: boolean;\n /**\n * Высота стрелки. Складывается с `mainAxis`, чтобы стрелка не залезала на якорный элемент.\n */\n arrowHeight?: number;\n /**\n * Безопасная зона вокруг стрелки, чтобы та не выходила за края контента.\n */\n arrowPadding?: number;\n /**\n * Выставлять ширину равной target элементу.\n */\n sameWidth?: boolean;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать).\n */\n customMiddlewares?: UseFloatingMiddleware[];\n /**\n * Принудительно скрывает компонент если целевой элемент вышел за область видимости.\n */\n hideWhenReferenceHidden?: boolean;\n}\n\nexport const useFloatingMiddlewaresBootstrap = ({\n placement = 'bottom-start',\n arrowRef = null,\n arrow,\n arrowHeight,\n arrowPadding,\n sameWidth,\n offsetByMainAxis = 0,\n offsetByCrossAxis = 0,\n customMiddlewares,\n hideWhenReferenceHidden,\n disableFlipMiddleware = false,\n flipMiddlewareFallbackAxisSideDirection = 'end',\n}: UseFloatingMiddlewaresBootstrapOptions): {\n middlewares: UseFloatingMiddleware[];\n strictPlacement: Placement | undefined;\n} => {\n return React.useMemo(() => {\n const isAutoPlacement = !checkIsNotAutoPlacement(placement);\n const middlewares: UseFloatingMiddleware[] = [\n offsetMiddleware({\n crossAxis: offsetByCrossAxis,\n mainAxis: arrow && arrowHeight ? offsetByMainAxis + arrowHeight : offsetByMainAxis,\n }),\n ];\n\n const shiftMiddlewareInstance = shiftMiddleware();\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/flip.mdx#conflict-with-autoplacementjs\n if (isAutoPlacement) {\n middlewares.push(\n autoPlacementMiddleware({ alignment: getAutoPlacementAlign(placement) }),\n shiftMiddlewareInstance,\n );\n } else if (!disableFlipMiddleware) {\n const flipMiddlewareInstance = flipMiddleware({\n crossAxis: 'alignment',\n fallbackAxisSideDirection: flipMiddlewareFallbackAxisSideDirection,\n });\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/flip.mdx#combining-with-shiftjs\n if (placement.includes('-')) {\n middlewares.push(flipMiddlewareInstance, shiftMiddlewareInstance);\n } else {\n middlewares.push(shiftMiddlewareInstance, flipMiddlewareInstance);\n }\n } else {\n middlewares.push(shiftMiddlewareInstance);\n }\n\n if (sameWidth) {\n middlewares.push(\n sizeMiddleware({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n );\n }\n\n if (customMiddlewares) {\n middlewares.push(...customMiddlewares);\n }\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/arrow.mdx#order\n if (arrow) {\n middlewares.push(\n arrowMiddleware({\n element: arrowRef,\n padding: arrowPadding,\n }),\n );\n }\n\n if (hideWhenReferenceHidden) {\n middlewares.push(hideMiddleware());\n }\n\n return { middlewares, strictPlacement: isAutoPlacement ? undefined : placement };\n }, [\n placement,\n offsetByCrossAxis,\n arrow,\n arrowHeight,\n offsetByMainAxis,\n disableFlipMiddleware,\n flipMiddlewareFallbackAxisSideDirection,\n sameWidth,\n customMiddlewares,\n hideWhenReferenceHidden,\n arrowRef,\n arrowPadding,\n ]);\n};\n"],"names":["React","arrowMiddleware","autoPlacementMiddleware","flipMiddleware","hideMiddleware","offsetMiddleware","shiftMiddleware","sizeMiddleware","checkIsNotAutoPlacement","getAutoPlacementAlign","useFloatingMiddlewaresBootstrap","placement","arrowRef","arrow","arrowHeight","arrowPadding","sameWidth","offsetByMainAxis","offsetByCrossAxis","customMiddlewares","hideWhenReferenceHidden","disableFlipMiddleware","flipMiddlewareFallbackAxisSideDirection","useMemo","isAutoPlacement","middlewares","crossAxis","mainAxis","shiftMiddlewareInstance","push","alignment","flipMiddlewareInstance","fallbackAxisSideDirection","includes","apply","rects","elements","Object","assign","floating","style","width","reference","element","padding","strictPlacement","undefined"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SACEC,eAAe,EACfC,uBAAuB,EACvBC,cAAc,EAEdC,cAAc,EACdC,gBAAgB,EAChBC,eAAe,EACfC,cAAc,QACT,iBAAc;AACrB,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,kBAAe;AAyD9E,OAAO,MAAMC,kCAAkC,CAAC,EAC9CC,YAAY,cAAc,EAC1BC,WAAW,IAAI,EACfC,KAAK,EACLC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,mBAAmB,CAAC,EACpBC,oBAAoB,CAAC,EACrBC,iBAAiB,EACjBC,uBAAuB,EACvBC,wBAAwB,KAAK,EAC7BC,0CAA0C,KAAK,EACR;IAIvC,OAAOtB,MAAMuB,OAAO,CAAC;QACnB,MAAMC,kBAAkB,CAAChB,wBAAwBG;QACjD,MAAMc,cAAuC;YAC3CpB,iBAAiB;gBACfqB,WAAWR;gBACXS,UAAUd,SAASC,cAAcG,mBAAmBH,cAAcG;YACpE;SACD;QAED,MAAMW,0BAA0BtB;QAEhC,4IAA4I;QAC5I,IAAIkB,iBAAiB;YACnBC,YAAYI,IAAI,CACd3B,wBAAwB;gBAAE4B,WAAWrB,sBAAsBE;YAAW,IACtEiB;QAEJ,OAAO,IAAI,CAACP,uBAAuB;YACjC,MAAMU,yBAAyB5B,eAAe;gBAC5CuB,WAAW;gBACXM,2BAA2BV;YAC7B;YAEA,qIAAqI;YACrI,IAAIX,UAAUsB,QAAQ,CAAC,MAAM;gBAC3BR,YAAYI,IAAI,CAACE,wBAAwBH;YAC3C,OAAO;gBACLH,YAAYI,IAAI,CAACD,yBAAyBG;YAC5C;QACF,OAAO;YACLN,YAAYI,IAAI,CAACD;QACnB;QAEA,IAAIZ,WAAW;YACbS,YAAYI,IAAI,CACdtB,eAAe;gBACb2B,OAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE;oBACvBC,OAAOC,MAAM,CAACF,SAASG,QAAQ,CAACC,KAAK,EAAE;wBACrCC,OAAO,GAAGN,MAAMO,SAAS,CAACD,KAAK,CAAC,EAAE,CAAC;oBACrC;gBACF;YACF;QAEJ;QAEA,IAAItB,mBAAmB;YACrBM,YAAYI,IAAI,IAAIV;QACtB;QAEA,qHAAqH;QACrH,IAAIN,OAAO;YACTY,YAAYI,IAAI,CACd5B,gBAAgB;gBACd0C,SAAS/B;gBACTgC,SAAS7B;YACX;QAEJ;QAEA,IAAIK,yBAAyB;YAC3BK,YAAYI,IAAI,CAACzB;QACnB;QAEA,OAAO;YAAEqB;YAAaoB,iBAAiBrB,kBAAkBsB,YAAYnC;QAAU;IACjF,GAAG;QACDA;QACAO;QACAL;QACAC;QACAG;QACAI;QACAC;QACAN;QACAG;QACAC;QACAR;QACAG;KACD;AACH,EAAE"}
1
+ {"version":3,"sources":["../../../../../src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n arrowMiddleware,\n autoPlacementMiddleware,\n flipMiddleware,\n type FlipMiddlewareOptions,\n hideMiddleware,\n offsetMiddleware,\n shiftMiddleware,\n sizeMiddleware,\n} from '../adapters';\nimport { checkIsNotAutoPlacement, getAutoPlacementAlign } from '../functions';\nimport {\n type ArrowOptions,\n type Placement,\n type PlacementWithAuto,\n type UseFloatingMiddleware,\n} from '../types/common';\n\nexport interface UseFloatingMiddlewaresBootstrapOptions {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам, но приоритетное можно задать с помощью этого свойства.\n */\n placement?: PlacementWithAuto;\n /**\n * Указанное значение `placement` форсируется, даже если для выпадающего элемента недостаточно места.\n * Не оказывает влияния при `placement` значениях - `'auto' | 'auto-start' | 'auto-end'`\n */\n disableFlipMiddleware?: boolean;\n /**\n * Позволяет отключить смещение по главной оси,\n * которое не даёт всплывающему элементу выходить за границы видимой области.\n */\n disableShiftMiddleware?: boolean;\n /**\n * Задаёт резервный вариант размещения по перпендикулярной оси.\n */\n flipMiddlewareFallbackAxisSideDirection?: FlipMiddlewareOptions['fallbackAxisSideDirection'];\n /**\n * Отступ по главной оси.\n */\n offsetByMainAxis?: number;\n /**\n * Отступ по вспомогательной оси.\n */\n offsetByCrossAxis?: number;\n arrowRef?: ArrowOptions['element'];\n /**\n * Отображать ли стрелку, указывающую на якорный элемент.\n */\n arrow?: boolean;\n /**\n * Высота стрелки. Складывается с `mainAxis`, чтобы стрелка не залезала на якорный элемент.\n */\n arrowHeight?: number;\n /**\n * Безопасная зона вокруг стрелки, чтобы та не выходила за края контента.\n */\n arrowPadding?: number;\n /**\n * Выставлять ширину равной target элементу.\n */\n sameWidth?: boolean;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать).\n */\n customMiddlewares?: UseFloatingMiddleware[];\n /**\n * Принудительно скрывает компонент если целевой элемент вышел за область видимости.\n */\n hideWhenReferenceHidden?: boolean;\n}\n\nexport const useFloatingMiddlewaresBootstrap = ({\n placement = 'bottom-start',\n arrowRef = null,\n arrow,\n arrowHeight,\n arrowPadding,\n sameWidth,\n offsetByMainAxis = 0,\n offsetByCrossAxis = 0,\n customMiddlewares,\n hideWhenReferenceHidden,\n disableFlipMiddleware = false,\n disableShiftMiddleware = false,\n flipMiddlewareFallbackAxisSideDirection = 'end',\n}: UseFloatingMiddlewaresBootstrapOptions): {\n middlewares: UseFloatingMiddleware[];\n strictPlacement: Placement | undefined;\n} => {\n return React.useMemo(() => {\n const isAutoPlacement = !checkIsNotAutoPlacement(placement);\n const middlewares: UseFloatingMiddleware[] = [\n offsetMiddleware({\n crossAxis: offsetByCrossAxis,\n mainAxis: arrow && arrowHeight ? offsetByMainAxis + arrowHeight : offsetByMainAxis,\n }),\n ];\n\n const shift = disableShiftMiddleware ? null : shiftMiddleware();\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/flip.mdx#conflict-with-autoplacementjs\n if (isAutoPlacement) {\n middlewares.push(autoPlacementMiddleware({ alignment: getAutoPlacementAlign(placement) }));\n if (shift) {\n middlewares.push(shift);\n }\n } else if (!disableFlipMiddleware) {\n const flip = flipMiddleware({\n crossAxis: 'alignment',\n fallbackAxisSideDirection: flipMiddlewareFallbackAxisSideDirection,\n });\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/flip.mdx#combining-with-shiftjs\n if (placement.includes('-')) {\n middlewares.push(flip);\n if (shift) {\n middlewares.push(shift);\n }\n } else {\n if (shift) {\n middlewares.push(shift);\n }\n middlewares.push(flip);\n }\n } else if (shift) {\n middlewares.push(shift);\n }\n\n if (sameWidth) {\n middlewares.push(\n sizeMiddleware({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n );\n }\n\n if (customMiddlewares) {\n middlewares.push(...customMiddlewares);\n }\n\n // см. https://github.com/floating-ui/floating-ui/blob/%40floating-ui/core%401.7.1/website/pages/docs/arrow.mdx#order\n if (arrow) {\n middlewares.push(\n arrowMiddleware({\n element: arrowRef,\n padding: arrowPadding,\n }),\n );\n }\n\n if (hideWhenReferenceHidden) {\n middlewares.push(hideMiddleware());\n }\n\n return { middlewares, strictPlacement: isAutoPlacement ? undefined : placement };\n }, [\n placement,\n offsetByCrossAxis,\n arrow,\n arrowHeight,\n offsetByMainAxis,\n disableFlipMiddleware,\n disableShiftMiddleware,\n flipMiddlewareFallbackAxisSideDirection,\n sameWidth,\n customMiddlewares,\n hideWhenReferenceHidden,\n arrowRef,\n arrowPadding,\n ]);\n};\n"],"names":["React","arrowMiddleware","autoPlacementMiddleware","flipMiddleware","hideMiddleware","offsetMiddleware","shiftMiddleware","sizeMiddleware","checkIsNotAutoPlacement","getAutoPlacementAlign","useFloatingMiddlewaresBootstrap","placement","arrowRef","arrow","arrowHeight","arrowPadding","sameWidth","offsetByMainAxis","offsetByCrossAxis","customMiddlewares","hideWhenReferenceHidden","disableFlipMiddleware","disableShiftMiddleware","flipMiddlewareFallbackAxisSideDirection","useMemo","isAutoPlacement","middlewares","crossAxis","mainAxis","shift","push","alignment","flip","fallbackAxisSideDirection","includes","apply","rects","elements","Object","assign","floating","style","width","reference","element","padding","strictPlacement","undefined"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SACEC,eAAe,EACfC,uBAAuB,EACvBC,cAAc,EAEdC,cAAc,EACdC,gBAAgB,EAChBC,eAAe,EACfC,cAAc,QACT,iBAAc;AACrB,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,kBAAe;AA8D9E,OAAO,MAAMC,kCAAkC,CAAC,EAC9CC,YAAY,cAAc,EAC1BC,WAAW,IAAI,EACfC,KAAK,EACLC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,mBAAmB,CAAC,EACpBC,oBAAoB,CAAC,EACrBC,iBAAiB,EACjBC,uBAAuB,EACvBC,wBAAwB,KAAK,EAC7BC,yBAAyB,KAAK,EAC9BC,0CAA0C,KAAK,EACR;IAIvC,OAAOvB,MAAMwB,OAAO,CAAC;QACnB,MAAMC,kBAAkB,CAACjB,wBAAwBG;QACjD,MAAMe,cAAuC;YAC3CrB,iBAAiB;gBACfsB,WAAWT;gBACXU,UAAUf,SAASC,cAAcG,mBAAmBH,cAAcG;YACpE;SACD;QAED,MAAMY,QAAQP,yBAAyB,OAAOhB;QAE9C,4IAA4I;QAC5I,IAAImB,iBAAiB;YACnBC,YAAYI,IAAI,CAAC5B,wBAAwB;gBAAE6B,WAAWtB,sBAAsBE;YAAW;YACvF,IAAIkB,OAAO;gBACTH,YAAYI,IAAI,CAACD;YACnB;QACF,OAAO,IAAI,CAACR,uBAAuB;YACjC,MAAMW,OAAO7B,eAAe;gBAC1BwB,WAAW;gBACXM,2BAA2BV;YAC7B;YAEA,qIAAqI;YACrI,IAAIZ,UAAUuB,QAAQ,CAAC,MAAM;gBAC3BR,YAAYI,IAAI,CAACE;gBACjB,IAAIH,OAAO;oBACTH,YAAYI,IAAI,CAACD;gBACnB;YACF,OAAO;gBACL,IAAIA,OAAO;oBACTH,YAAYI,IAAI,CAACD;gBACnB;gBACAH,YAAYI,IAAI,CAACE;YACnB;QACF,OAAO,IAAIH,OAAO;YAChBH,YAAYI,IAAI,CAACD;QACnB;QAEA,IAAIb,WAAW;YACbU,YAAYI,IAAI,CACdvB,eAAe;gBACb4B,OAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE;oBACvBC,OAAOC,MAAM,CAACF,SAASG,QAAQ,CAACC,KAAK,EAAE;wBACrCC,OAAO,GAAGN,MAAMO,SAAS,CAACD,KAAK,CAAC,EAAE,CAAC;oBACrC;gBACF;YACF;QAEJ;QAEA,IAAIvB,mBAAmB;YACrBO,YAAYI,IAAI,IAAIX;QACtB;QAEA,qHAAqH;QACrH,IAAIN,OAAO;YACTa,YAAYI,IAAI,CACd7B,gBAAgB;gBACd2C,SAAShC;gBACTiC,SAAS9B;YACX;QAEJ;QAEA,IAAIK,yBAAyB;YAC3BM,YAAYI,IAAI,CAAC1B;QACnB;QAEA,OAAO;YAAEsB;YAAaoB,iBAAiBrB,kBAAkBsB,YAAYpC;QAAU;IACjF,GAAG;QACDA;QACAO;QACAL;QACAC;QACAG;QACAI;QACAC;QACAC;QACAP;QACAG;QACAC;QACAR;QACAG;KACD;AACH,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/lib/floating/useFloatingWithInteractions/types.ts"],"sourcesContent":["import {\n type FloatingPositionStrategy,\n type Placement,\n type UseFloatingData,\n type UseFloatingMiddleware,\n type UseFloatingRefs,\n} from '../types/common';\n\nexport type InteractiveTriggerType = 'click' | 'hover' | 'focus';\n\nexport type ManualTriggerType = 'manual';\n\nexport type TriggerType = ManualTriggerType | InteractiveTriggerType | InteractiveTriggerType[];\n\nexport type RestoreFocusType = boolean | 'anchor-element' | HTMLElement;\n\nexport type ShownChangeReason =\n | 'click-outside'\n | 'escape-key'\n | 'click'\n | 'hover'\n | 'focus'\n | 'callback';\n\nexport type OnShownChange = (shown: boolean, reason?: ShownChangeReason) => void;\n\nexport interface UseFloatingWithInteractionsProps {\n placement?: Placement;\n /**\n * Стратегия позиционирования всплывающего элемента.\n *\n * - `\"fixed\"` - позиционируется, используя `position: fixed`. Является значением по умолчанию\n * - `\"absolute\"` - позиционируется, используя `position: absolute`, относительно ближайшего элемента с `position: relative`\n *\n * > `strategy=\"absolute\"` Рекомендуется использовать с `usePortal={false}`. И нужно не забыть обернуть в элемент с `position: relative`\n */\n strategy?: FloatingPositionStrategy;\n middlewares?: UseFloatingMiddleware[];\n /**\n * Механика вызова всплывающего элемента.\n *\n * - `\"click\"` – показывается/скрывается только при нажатии.\n * - `\"hover\"` – будет показываться/скрывается при наведении/отведении мыши.\n * - `\"focus\"` – будет показываться/скрывается при фокусе/потере фокуса мыши.\n * - `\"manual\"` – будет показываться/скрывается только через свойство `shown`. `onShownChange`\n * будет вызываться при нажатии за пределы целевого и всплывающего элементов, а также по кнопке\n * ESC.\n *\n * > ⚠️`\"hover\"` на тач-устройствах будет работать как `\"click\"`, с одним лишь нюансом, что\n * > не будет закрываться при повторном нажатии на целевой элемент. Для закрытия необходимо нажать\n * > на область вне целевого элемента и выпадающего окна.\n */\n trigger?: TriggerType;\n /**\n * Количество миллисекунд, после которых произойдёт показ/скрытие всплывающего элемента\n * при наведении.\n *\n * > Чтобы задать разное время на показ и скрытие, передайте массив типа `[<показ>, <скрытие>]`.\n *\n * > Используется только для `trigger=\"hover\"`.\n */\n hoverDelay?: number | [number, number];\n /**\n * При `trigger=\"hover\"` закрывает всплывающий элемент при нажатии на целевой элемент.\n */\n closeAfterClick?: boolean;\n /**\n * Блокирует изменение состояния.\n */\n disabled?: boolean;\n /**\n * Отключает взаимодействие со всплывающим элементом.\n */\n disableInteractive?: boolean;\n /**\n * Отключает закрытие нажатием на область вне целевого и всплывающего элемента.\n */\n disableCloseOnClickOutside?: boolean;\n /**\n * Отключает закрытие нажатием на кнопку ESC.\n */\n disableCloseOnEscKey?: boolean;\n /**\n * Начальное состояние всплывающего элемента.\n */\n defaultShown?: boolean;\n /**\n * Если передан, то всплывающий элемент будет показано/скрыто в зависимости от значения свойства.\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости всплывающего элемента.\n */\n onShownChange?: OnShownChange;\n /**\n * Вызывается при каждом изменении видимости всплывающего элемента, но после завершении анимации.\n */\n onShownChanged?: OnShownChange;\n}\n\nexport type ReferenceProps<T = HTMLElement> = Omit<\n React.HTMLAttributes<T>,\n keyof React.DOMAttributes<T>\n> &\n Pick<React.DOMAttributes<T>, 'onMouseOver' | 'onMouseLeave' | 'onClick' | 'onFocus' | 'onBlur'>;\n\nexport type FloatingProps<T = HTMLElement> = Omit<\n React.HTMLAttributes<T>,\n keyof React.DOMAttributes<T> | 'style'\n> & { style: React.CSSProperties } & Pick<\n React.DOMAttributes<T>,\n 'onMouseOver' | 'onMouseLeave' | 'onClick' | 'onAnimationStart' | 'onAnimationEnd'\n >;\n\nexport interface UseFloatingWithInteractionsReturn<T extends HTMLElement = HTMLElement> {\n placement: Placement;\n shown: boolean;\n willBeHide: boolean;\n refs: UseFloatingRefs<T>;\n referenceProps: ReferenceProps<T>;\n floatingProps: FloatingProps<T>;\n middlewareData: UseFloatingData['middlewareData'];\n onClose: (this: void) => void;\n onEscapeKeyDown?: (this: void) => void;\n onRestoreFocus: (restoreFocus?: RestoreFocusType) => boolean | HTMLElement;\n}\n"],"names":[],"mappings":"AAkHA,WAWC"}
1
+ {"version":3,"sources":["../../../../../src/lib/floating/useFloatingWithInteractions/types.ts"],"sourcesContent":["import {\n type FloatingPositionStrategy,\n type Placement,\n type UseFloatingData,\n type UseFloatingMiddleware,\n type UseFloatingRefs,\n} from '../types/common';\n\nexport type InteractiveTriggerType = 'click' | 'hover' | 'focus';\n\nexport type ManualTriggerType = 'manual';\n\nexport type TriggerType = ManualTriggerType | InteractiveTriggerType | InteractiveTriggerType[];\n\nexport type RestoreFocusType = boolean | 'anchor-element' | HTMLElement;\n\nexport type ShownChangeReason =\n | 'click-outside'\n | 'escape-key'\n | 'click'\n | 'hover'\n | 'focus'\n | 'callback';\n\nexport type OnShownChange = (shown: boolean, reason?: ShownChangeReason) => void;\n\nexport interface UseFloatingWithInteractionsProps {\n placement?: Placement;\n /**\n * Стратегия позиционирования всплывающего элемента.\n *\n * - `\"fixed\"` - позиционируется, используя `position: fixed`. Является значением по умолчанию\n * - `\"absolute\"` - позиционируется, используя `position: absolute`, относительно ближайшего элемента с `position: relative`\n *\n * > `strategy=\"absolute\"` Рекомендуется использовать с `usePortal={false}`. И нужно не забыть обернуть в элемент с `position: relative`\n */\n strategy?: FloatingPositionStrategy;\n middlewares?: UseFloatingMiddleware[];\n /**\n * Механика вызова всплывающего элемента.\n *\n * - `\"click\"` – показывается/скрывается только при нажатии.\n * - `\"hover\"` – будет показываться/скрывается при наведении/отведении мыши.\n * - `\"focus\"` – будет показываться/скрывается при фокусе/потере фокуса мыши.\n * - `\"manual\"` – будет показываться/скрывается только через свойство `shown`. `onShownChange`\n * будет вызываться при нажатии за пределы целевого и всплывающего элементов, а также по кнопке\n * ESC.\n *\n * > ⚠️`\"hover\"` на тач-устройствах будет работать как `\"click\"`, с одним лишь нюансом, что\n * > не будет закрываться при повторном нажатии на целевой элемент. Для закрытия необходимо нажать\n * > на область вне целевого элемента и выпадающего окна.\n *\n * **Избегайте использования `trigger=\"hover\"` как единственного механизма активации, так как пользователи клавиатуры или скринридеров не смогут использовать компонент**\n */\n trigger?: TriggerType;\n /**\n * Количество миллисекунд, после которых произойдёт показ/скрытие всплывающего элемента\n * при наведении.\n *\n * > Чтобы задать разное время на показ и скрытие, передайте массив типа `[<показ>, <скрытие>]`.\n *\n * > Используется только для `trigger=\"hover\"`.\n */\n hoverDelay?: number | [number, number];\n /**\n * При `trigger=\"hover\"` закрывает всплывающий элемент при нажатии на целевой элемент.\n */\n closeAfterClick?: boolean;\n /**\n * Блокирует изменение состояния.\n */\n disabled?: boolean;\n /**\n * Отключает взаимодействие со всплывающим элементом.\n */\n disableInteractive?: boolean;\n /**\n * Отключает закрытие нажатием на область вне целевого и всплывающего элемента.\n */\n disableCloseOnClickOutside?: boolean;\n /**\n * Отключает закрытие нажатием на кнопку ESC.\n */\n disableCloseOnEscKey?: boolean;\n /**\n * Начальное состояние всплывающего элемента.\n */\n defaultShown?: boolean;\n /**\n * Если передан, то всплывающий элемент будет показано/скрыто в зависимости от значения свойства.\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости всплывающего элемента.\n */\n onShownChange?: OnShownChange;\n /**\n * Вызывается при каждом изменении видимости всплывающего элемента, но после завершении анимации.\n */\n onShownChanged?: OnShownChange;\n}\n\nexport type ReferenceProps<T = HTMLElement> = Omit<\n React.HTMLAttributes<T>,\n keyof React.DOMAttributes<T>\n> &\n Pick<React.DOMAttributes<T>, 'onMouseOver' | 'onMouseLeave' | 'onClick' | 'onFocus' | 'onBlur'>;\n\nexport type FloatingProps<T = HTMLElement> = Omit<\n React.HTMLAttributes<T>,\n keyof React.DOMAttributes<T> | 'style'\n> & { style: React.CSSProperties } & Pick<\n React.DOMAttributes<T>,\n 'onMouseOver' | 'onMouseLeave' | 'onClick' | 'onAnimationStart' | 'onAnimationEnd'\n >;\n\nexport interface UseFloatingWithInteractionsReturn<T extends HTMLElement = HTMLElement> {\n placement: Placement;\n shown: boolean;\n willBeHide: boolean;\n refs: UseFloatingRefs<T>;\n referenceProps: ReferenceProps<T>;\n floatingProps: FloatingProps<T>;\n middlewareData: UseFloatingData['middlewareData'];\n onClose: (this: void) => void;\n onEscapeKeyDown?: (this: void) => void;\n onRestoreFocus: (restoreFocus?: RestoreFocusType) => boolean | HTMLElement;\n}\n"],"names":[],"mappings":"AAoHA,WAWC"}
@@ -1,6 +1,6 @@
1
+ import { millisecondsInSecond } from "../date.js";
1
2
  import { getFirstTouchEventData } from "../dom.js";
2
3
  const DEFAULT_INITIAL_TIME = 0;
3
- const MILLISECONDS = 1000;
4
4
  /**
5
5
  * JS имплементация класса из UIKIt iOS.
6
6
  *
@@ -37,7 +37,7 @@ const MILLISECONDS = 1000;
37
37
  return Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
38
38
  }
39
39
  velocity() {
40
- const deltaTime = (Date.now() - this.initialTime) / MILLISECONDS;
40
+ const deltaTime = (Date.now() - this.initialTime) / millisecondsInSecond;
41
41
  if (deltaTime <= 0) {
42
42
  return {
43
43
  x: 0,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/touch/UIPanGestureRecognizer.ts"],"sourcesContent":["import { getFirstTouchEventData } from '../dom';\n\nexport type Direction = { axis: 'x' | 'y'; direction: -1 | 1 | null };\n\nexport type Coords = { x: number; y: number };\n\nconst DEFAULT_INITIAL_TIME = 0;\nconst MILLISECONDS = 1000;\n\n/**\n * JS имплементация класса из UIKIt iOS.\n *\n * https://developer.apple.com/documentation/uikit/uipangesturerecognizer\n */\nexport class UIPanGestureRecognizer {\n private initialTime = DEFAULT_INITIAL_TIME;\n x1 = 0;\n y1 = 0;\n x2 = 0;\n y2 = 0;\n\n setInitialTimeOnce(): void {\n if (this.initialTime === DEFAULT_INITIAL_TIME) {\n this.initialTime = Date.now();\n }\n }\n\n setStartCoords(event: UIEvent): void {\n const { clientX, clientY } = getFirstTouchEventData(event);\n this.x1 = clientX;\n this.y1 = clientY;\n }\n\n setEndCoords(event: UIEvent): void {\n const { clientX, clientY } = getFirstTouchEventData(event);\n this.x2 = clientX;\n this.y2 = clientY;\n }\n\n delta(): Coords {\n return {\n x: this.x2 - this.x1,\n y: this.y2 - this.y1,\n };\n }\n\n distance(): number {\n const { x, y } = this.delta();\n return Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));\n }\n\n velocity(): Coords {\n const deltaTime = (Date.now() - this.initialTime) / MILLISECONDS;\n\n if (deltaTime <= 0) {\n return { x: 0, y: 0 };\n }\n\n const { x, y } = this.delta();\n return { x: x / deltaTime, y: y / deltaTime };\n }\n\n angle(): number {\n const deltaX = this.x2 - this.x1;\n const deltaY = this.y2 - this.y1;\n const radians = Math.atan2(deltaY, deltaX);\n const degrees = (radians * 180) / Math.PI;\n return degrees < 0 ? 360 + degrees : degrees;\n }\n\n direction(): Direction {\n const { x, y } = this.delta();\n return Math.abs(x) > Math.abs(y)\n ? { axis: 'x', direction: x > 0 ? 1 : x < 0 ? -1 : null }\n : { axis: 'y', direction: y > 0 ? 1 : y < 0 ? -1 : null };\n }\n\n reset(): void {\n this.initialTime = DEFAULT_INITIAL_TIME;\n this.x1 = this.y1 = 0;\n this.x2 = this.y2 = 0;\n }\n}\n"],"names":["getFirstTouchEventData","DEFAULT_INITIAL_TIME","MILLISECONDS","UIPanGestureRecognizer","initialTime","x1","y1","x2","y2","setInitialTimeOnce","Date","now","setStartCoords","event","clientX","clientY","setEndCoords","delta","x","y","distance","Math","sqrt","pow","velocity","deltaTime","angle","deltaX","deltaY","radians","atan2","degrees","PI","direction","abs","axis","reset"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,YAAS;AAMhD,MAAMC,uBAAuB;AAC7B,MAAMC,eAAe;AAErB;;;;CAIC,GACD,OAAO,MAAMC;IACHC,cAAcH,qBAAqB;IAC3CI,KAAK,EAAE;IACPC,KAAK,EAAE;IACPC,KAAK,EAAE;IACPC,KAAK,EAAE;IAEPC,qBAA2B;QACzB,IAAI,IAAI,CAACL,WAAW,KAAKH,sBAAsB;YAC7C,IAAI,CAACG,WAAW,GAAGM,KAAKC,GAAG;QAC7B;IACF;IAEAC,eAAeC,KAAc,EAAQ;QACnC,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGf,uBAAuBa;QACpD,IAAI,CAACR,EAAE,GAAGS;QACV,IAAI,CAACR,EAAE,GAAGS;IACZ;IAEAC,aAAaH,KAAc,EAAQ;QACjC,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGf,uBAAuBa;QACpD,IAAI,CAACN,EAAE,GAAGO;QACV,IAAI,CAACN,EAAE,GAAGO;IACZ;IAEAE,QAAgB;QACd,OAAO;YACLC,GAAG,IAAI,CAACX,EAAE,GAAG,IAAI,CAACF,EAAE;YACpBc,GAAG,IAAI,CAACX,EAAE,GAAG,IAAI,CAACF,EAAE;QACtB;IACF;IAEAc,WAAmB;QACjB,MAAM,EAAEF,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAOI,KAAKC,IAAI,CAACD,KAAKE,GAAG,CAACL,GAAG,KAAKG,KAAKE,GAAG,CAACJ,GAAG;IAChD;IAEAK,WAAmB;QACjB,MAAMC,YAAY,AAACf,CAAAA,KAAKC,GAAG,KAAK,IAAI,CAACP,WAAW,AAAD,IAAKF;QAEpD,IAAIuB,aAAa,GAAG;YAClB,OAAO;gBAAEP,GAAG;gBAAGC,GAAG;YAAE;QACtB;QAEA,MAAM,EAAED,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAO;YAAEC,GAAGA,IAAIO;YAAWN,GAAGA,IAAIM;QAAU;IAC9C;IAEAC,QAAgB;QACd,MAAMC,SAAS,IAAI,CAACpB,EAAE,GAAG,IAAI,CAACF,EAAE;QAChC,MAAMuB,SAAS,IAAI,CAACpB,EAAE,GAAG,IAAI,CAACF,EAAE;QAChC,MAAMuB,UAAUR,KAAKS,KAAK,CAACF,QAAQD;QACnC,MAAMI,UAAU,AAACF,UAAU,MAAOR,KAAKW,EAAE;QACzC,OAAOD,UAAU,IAAI,MAAMA,UAAUA;IACvC;IAEAE,YAAuB;QACrB,MAAM,EAAEf,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAOI,KAAKa,GAAG,CAAChB,KAAKG,KAAKa,GAAG,CAACf,KAC1B;YAAEgB,MAAM;YAAKF,WAAWf,IAAI,IAAI,IAAIA,IAAI,IAAI,CAAC,IAAI;QAAK,IACtD;YAAEiB,MAAM;YAAKF,WAAWd,IAAI,IAAI,IAAIA,IAAI,IAAI,CAAC,IAAI;QAAK;IAC5D;IAEAiB,QAAc;QACZ,IAAI,CAAChC,WAAW,GAAGH;QACnB,IAAI,CAACI,EAAE,GAAG,IAAI,CAACC,EAAE,GAAG;QACpB,IAAI,CAACC,EAAE,GAAG,IAAI,CAACC,EAAE,GAAG;IACtB;AACF"}
1
+ {"version":3,"sources":["../../../../src/lib/touch/UIPanGestureRecognizer.ts"],"sourcesContent":["import { millisecondsInSecond } from '../date';\nimport { getFirstTouchEventData } from '../dom';\n\nexport type Direction = { axis: 'x' | 'y'; direction: -1 | 1 | null };\n\nexport type Coords = { x: number; y: number };\n\nconst DEFAULT_INITIAL_TIME = 0;\n\n/**\n * JS имплементация класса из UIKIt iOS.\n *\n * https://developer.apple.com/documentation/uikit/uipangesturerecognizer\n */\nexport class UIPanGestureRecognizer {\n private initialTime = DEFAULT_INITIAL_TIME;\n x1 = 0;\n y1 = 0;\n x2 = 0;\n y2 = 0;\n\n setInitialTimeOnce(): void {\n if (this.initialTime === DEFAULT_INITIAL_TIME) {\n this.initialTime = Date.now();\n }\n }\n\n setStartCoords(event: UIEvent): void {\n const { clientX, clientY } = getFirstTouchEventData(event);\n this.x1 = clientX;\n this.y1 = clientY;\n }\n\n setEndCoords(event: UIEvent): void {\n const { clientX, clientY } = getFirstTouchEventData(event);\n this.x2 = clientX;\n this.y2 = clientY;\n }\n\n delta(): Coords {\n return {\n x: this.x2 - this.x1,\n y: this.y2 - this.y1,\n };\n }\n\n distance(): number {\n const { x, y } = this.delta();\n return Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));\n }\n\n velocity(): Coords {\n const deltaTime = (Date.now() - this.initialTime) / millisecondsInSecond;\n\n if (deltaTime <= 0) {\n return { x: 0, y: 0 };\n }\n\n const { x, y } = this.delta();\n return { x: x / deltaTime, y: y / deltaTime };\n }\n\n angle(): number {\n const deltaX = this.x2 - this.x1;\n const deltaY = this.y2 - this.y1;\n const radians = Math.atan2(deltaY, deltaX);\n const degrees = (radians * 180) / Math.PI;\n return degrees < 0 ? 360 + degrees : degrees;\n }\n\n direction(): Direction {\n const { x, y } = this.delta();\n return Math.abs(x) > Math.abs(y)\n ? { axis: 'x', direction: x > 0 ? 1 : x < 0 ? -1 : null }\n : { axis: 'y', direction: y > 0 ? 1 : y < 0 ? -1 : null };\n }\n\n reset(): void {\n this.initialTime = DEFAULT_INITIAL_TIME;\n this.x1 = this.y1 = 0;\n this.x2 = this.y2 = 0;\n }\n}\n"],"names":["millisecondsInSecond","getFirstTouchEventData","DEFAULT_INITIAL_TIME","UIPanGestureRecognizer","initialTime","x1","y1","x2","y2","setInitialTimeOnce","Date","now","setStartCoords","event","clientX","clientY","setEndCoords","delta","x","y","distance","Math","sqrt","pow","velocity","deltaTime","angle","deltaX","deltaY","radians","atan2","degrees","PI","direction","abs","axis","reset"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ,aAAU;AAC/C,SAASC,sBAAsB,QAAQ,YAAS;AAMhD,MAAMC,uBAAuB;AAE7B;;;;CAIC,GACD,OAAO,MAAMC;IACHC,cAAcF,qBAAqB;IAC3CG,KAAK,EAAE;IACPC,KAAK,EAAE;IACPC,KAAK,EAAE;IACPC,KAAK,EAAE;IAEPC,qBAA2B;QACzB,IAAI,IAAI,CAACL,WAAW,KAAKF,sBAAsB;YAC7C,IAAI,CAACE,WAAW,GAAGM,KAAKC,GAAG;QAC7B;IACF;IAEAC,eAAeC,KAAc,EAAQ;QACnC,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGd,uBAAuBY;QACpD,IAAI,CAACR,EAAE,GAAGS;QACV,IAAI,CAACR,EAAE,GAAGS;IACZ;IAEAC,aAAaH,KAAc,EAAQ;QACjC,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGd,uBAAuBY;QACpD,IAAI,CAACN,EAAE,GAAGO;QACV,IAAI,CAACN,EAAE,GAAGO;IACZ;IAEAE,QAAgB;QACd,OAAO;YACLC,GAAG,IAAI,CAACX,EAAE,GAAG,IAAI,CAACF,EAAE;YACpBc,GAAG,IAAI,CAACX,EAAE,GAAG,IAAI,CAACF,EAAE;QACtB;IACF;IAEAc,WAAmB;QACjB,MAAM,EAAEF,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAOI,KAAKC,IAAI,CAACD,KAAKE,GAAG,CAACL,GAAG,KAAKG,KAAKE,GAAG,CAACJ,GAAG;IAChD;IAEAK,WAAmB;QACjB,MAAMC,YAAY,AAACf,CAAAA,KAAKC,GAAG,KAAK,IAAI,CAACP,WAAW,AAAD,IAAKJ;QAEpD,IAAIyB,aAAa,GAAG;YAClB,OAAO;gBAAEP,GAAG;gBAAGC,GAAG;YAAE;QACtB;QAEA,MAAM,EAAED,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAO;YAAEC,GAAGA,IAAIO;YAAWN,GAAGA,IAAIM;QAAU;IAC9C;IAEAC,QAAgB;QACd,MAAMC,SAAS,IAAI,CAACpB,EAAE,GAAG,IAAI,CAACF,EAAE;QAChC,MAAMuB,SAAS,IAAI,CAACpB,EAAE,GAAG,IAAI,CAACF,EAAE;QAChC,MAAMuB,UAAUR,KAAKS,KAAK,CAACF,QAAQD;QACnC,MAAMI,UAAU,AAACF,UAAU,MAAOR,KAAKW,EAAE;QACzC,OAAOD,UAAU,IAAI,MAAMA,UAAUA;IACvC;IAEAE,YAAuB;QACrB,MAAM,EAAEf,CAAC,EAAEC,CAAC,EAAE,GAAG,IAAI,CAACF,KAAK;QAC3B,OAAOI,KAAKa,GAAG,CAAChB,KAAKG,KAAKa,GAAG,CAACf,KAC1B;YAAEgB,MAAM;YAAKF,WAAWf,IAAI,IAAI,IAAIA,IAAI,IAAI,CAAC,IAAI;QAAK,IACtD;YAAEiB,MAAM;YAAKF,WAAWd,IAAI,IAAI,IAAIA,IAAI,IAAI,CAAC,IAAI;QAAK;IAC5D;IAEAiB,QAAc;QACZ,IAAI,CAAChC,WAAW,GAAGF;QACnB,IAAI,CAACG,EAAE,GAAG,IAAI,CAACC,EAAE,GAAG;QACpB,IAAI,CAACC,EAAE,GAAG,IAAI,CAACC,EAAE,GAAG;IACtB;AACF"}
@@ -23,6 +23,7 @@ export function multiRef(...refs) {
23
23
  };
24
24
  }
25
25
  export const stopPropagation = (event)=>event.stopPropagation();
26
+ export const preventDefault = (event)=>event.preventDefault();
26
27
  export function addClassNameToElement(element1, className) {
27
28
  const elementClassName = element1.getAttribute('class') || '';
28
29
  const updatedClassName = `${elementClassName}${elementClassName ? ' ' : ''}${className}`;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/utils.ts"],"sourcesContent":["import * as React from 'react';\nimport { shouldTriggerClickOnEnterOrSpace } from './accessibility';\nimport { isHTMLElement } from './dom';\n\nexport type ImgOnlyAttributes = {\n [index in Exclude<\n keyof React.ImgHTMLAttributes<HTMLImageElement>,\n keyof React.HTMLAttributes<HTMLImageElement>\n >]: React.ImgHTMLAttributes<HTMLImageElement>[index];\n};\n\nexport function setRef<T>(element: T, ref?: React.Ref<T>): void {\n if (ref) {\n if (typeof ref === 'function') {\n ref(element);\n } else {\n (ref as React.RefObject<T>).current = element;\n }\n }\n}\n\nexport function multiRef<T>(...refs: Array<React.Ref<T> | undefined>): React.RefObject<T | null> {\n let current: T | null = null;\n return {\n get current() {\n return current;\n },\n set current(element) {\n current = element;\n refs.forEach((ref) => ref && setRef(element, ref));\n },\n };\n}\n\nexport const stopPropagation = <T extends React.SyntheticEvent>(event: T): void =>\n event.stopPropagation();\n\nexport function addClassNameToElement(element: HTMLElement, className: string): void {\n const elementClassName = element.getAttribute('class') || '';\n const updatedClassName = `${elementClassName}${elementClassName ? ' ' : ''}${className}`;\n\n element.setAttribute('class', updatedClassName);\n}\n\nexport function removeClassNameFromElement(element: HTMLElement, classNameToRemove: string): void {\n const classNamesArray = (element.getAttribute('class') || '').split(/\\s+/);\n const elementIndexToRemove = classNamesArray.findIndex(\n (className) => className === classNameToRemove,\n );\n if (elementIndexToRemove === -1) {\n return;\n }\n classNamesArray.splice(elementIndexToRemove, 1);\n\n element.setAttribute('class', classNamesArray.join(' '));\n}\n\ntype ExcludeKeysWithUndefined<T> = {\n [P in keyof T]?: Exclude<T[P], undefined>;\n};\n\nexport const excludeKeysWithUndefined = <T extends Record<string | number | symbol, any>>(\n obj: T,\n): ExcludeKeysWithUndefined<T> => {\n const filteredObj: ExcludeKeysWithUndefined<T> = {};\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] !== undefined) {\n filteredObj[key] = obj[key];\n }\n }\n return filteredObj;\n};\n\nexport const isDOMTypeElement = <\n P extends React.HTMLAttributes<T> | React.SVGAttributes<T>,\n T extends Element,\n>(\n element: React.ReactElement,\n): element is Omit<React.DOMElement<P, T>, 'ref'> & { ref?: React.Ref<T> | undefined } =>\n typeof element.type === 'string';\n\nexport function isValidNotReactFragmentElement(\n children: Parameters<typeof React.isValidElement>[0],\n): children is React.ReactElement<Record<PropertyKey, any>> {\n return (\n React.isValidElement(children) &&\n // @ts-expect-error: TS2339 $$typeof всегда symbol, в отличии от type, благодаря этому пропускаем лишние проверки на тип.\n children.$$typeof !== Symbol.for('react.fragment')\n );\n}\n\nexport function isForwardRefElement<\n P extends React.HTMLAttributes<T> | React.SVGAttributes<T>,\n T extends Element,\n>(\n children: Parameters<typeof React.isValidElement>[0],\n): children is Omit<React.DOMElement<P, T>, 'ref'> & { ref?: React.Ref<T> | undefined } {\n if (!React.isValidElement(children)) {\n return false;\n }\n\n // @ts-expect-error: TS2339 $$typeof всегда symbol, в отличии от type, благодаря этому пропускаем лишние проверки на тип.\n // черпаем вдохновение из react-is https://github.com/facebook/react/blob/d48dbb824985166ecb7b2959db03090a8593dce0/packages/react-is/src/ReactIs.js#L119-L121\n const typeOfOfType = children.type && children.type.$$typeof;\n return typeOfOfType === Symbol.for('react.forward_ref');\n}\n\n/**\n * При использовании пропа fetchPriority генерируется warning \"Invalid DOM property\" (версия React 18.*)\n * Ворнинга нет в React версии 19.*, поэтому пока поддерживаем 2 версии наименования\n */\nexport function getFetchPriorityProp(value: React.ImgHTMLAttributes<HTMLElement>['fetchPriority']):\n | {\n fetchPriority: 'high' | 'low' | 'auto' | undefined;\n }\n | {\n fetchpriority: 'high' | 'low' | 'auto' | undefined;\n } {\n if (React.version.startsWith('19')) {\n return { fetchPriority: value };\n }\n return { fetchpriority: value };\n}\n\n/*\n * [a11y]\n * Обрабатывает событие onkeydown\n * для кастомных доступных элементов:\n * - role=\"link\" (активация по Enter)\n * - role=\"button\" (активация по Space и Enter)\n */\nexport function clickByKeyboardHandler(event: React.KeyboardEvent<HTMLDivElement>): void {\n if (!isHTMLElement(event.target) || !shouldTriggerClickOnEnterOrSpace(event)) {\n return;\n }\n\n event.preventDefault();\n event.target.click?.();\n}\n"],"names":["React","shouldTriggerClickOnEnterOrSpace","isHTMLElement","setRef","element","ref","current","multiRef","refs","forEach","stopPropagation","event","addClassNameToElement","className","elementClassName","getAttribute","updatedClassName","setAttribute","removeClassNameFromElement","classNameToRemove","classNamesArray","split","elementIndexToRemove","findIndex","splice","join","excludeKeysWithUndefined","obj","filteredObj","key","hasOwnProperty","undefined","isDOMTypeElement","type","isValidNotReactFragmentElement","children","isValidElement","$$typeof","Symbol","for","isForwardRefElement","typeOfOfType","getFetchPriorityProp","value","version","startsWith","fetchPriority","fetchpriority","clickByKeyboardHandler","target","preventDefault","click"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,gCAAgC,QAAQ,qBAAkB;AACnE,SAASC,aAAa,QAAQ,WAAQ;AAStC,OAAO,SAASC,OAAUC,QAAU,EAAEC,GAAkB;IACtD,IAAIA,KAAK;QACP,IAAI,OAAOA,QAAQ,YAAY;YAC7BA,IAAID;QACN,OAAO;YACJC,IAA2BC,OAAO,GAAGF;QACxC;IACF;AACF;AAEA,OAAO,SAASG,SAAY,GAAGC,IAAqC;IAClE,IAAIF,UAAoB;IACxB,OAAO;QACL,IAAIA,WAAU;YACZ,OAAOA;QACT;QACA,IAAIA,SAAQF,QAAS;YACnBE,UAAUF;YACVI,KAAKC,OAAO,CAAC,CAACJ,MAAQA,OAAOF,OAAOC,SAASC;QAC/C;IACF;AACF;AAEA,OAAO,MAAMK,kBAAkB,CAAiCC,QAC9DA,MAAMD,eAAe,GAAG;AAE1B,OAAO,SAASE,sBAAsBR,QAAoB,EAAES,SAAiB;IAC3E,MAAMC,mBAAmBV,SAAQW,YAAY,CAAC,YAAY;IAC1D,MAAMC,mBAAmB,GAAGF,mBAAmBA,mBAAmB,MAAM,KAAKD,WAAW;IAExFT,SAAQa,YAAY,CAAC,SAASD;AAChC;AAEA,OAAO,SAASE,2BAA2Bd,QAAoB,EAAEe,iBAAyB;IACxF,MAAMC,kBAAkB,AAAChB,CAAAA,SAAQW,YAAY,CAAC,YAAY,EAAC,EAAGM,KAAK,CAAC;IACpE,MAAMC,uBAAuBF,gBAAgBG,SAAS,CACpD,CAACV,YAAcA,cAAcM;IAE/B,IAAIG,yBAAyB,CAAC,GAAG;QAC/B;IACF;IACAF,gBAAgBI,MAAM,CAACF,sBAAsB;IAE7ClB,SAAQa,YAAY,CAAC,SAASG,gBAAgBK,IAAI,CAAC;AACrD;AAMA,OAAO,MAAMC,2BAA2B,CACtCC;IAEA,MAAMC,cAA2C,CAAC;IAClD,IAAK,MAAMC,OAAOF,IAAK;QACrB,IAAIA,IAAIG,cAAc,CAACD,QAAQF,GAAG,CAACE,IAAI,KAAKE,WAAW;YACrDH,WAAW,CAACC,IAAI,GAAGF,GAAG,CAACE,IAAI;QAC7B;IACF;IACA,OAAOD;AACT,EAAE;AAEF,OAAO,MAAMI,mBAAmB,CAI9B5B,WAEA,OAAOA,SAAQ6B,IAAI,KAAK,SAAS;AAEnC,OAAO,SAASC,+BACdC,QAAoD;IAEpD,OACEnC,MAAMoC,cAAc,CAACD,aACrB,yHAAyH;IACzHA,SAASE,QAAQ,KAAKC,OAAOC,GAAG,CAAC;AAErC;AAEA,OAAO,SAASC,oBAIdL,QAAoD;IAEpD,IAAI,CAACnC,MAAMoC,cAAc,CAACD,WAAW;QACnC,OAAO;IACT;IAEA,yHAAyH;IACzH,6JAA6J;IAC7J,MAAMM,eAAeN,SAASF,IAAI,IAAIE,SAASF,IAAI,CAACI,QAAQ;IAC5D,OAAOI,iBAAiBH,OAAOC,GAAG,CAAC;AACrC;AAEA;;;CAGC,GACD,OAAO,SAASG,qBAAqBC,KAA4D;IAO/F,IAAI3C,MAAM4C,OAAO,CAACC,UAAU,CAAC,OAAO;QAClC,OAAO;YAAEC,eAAeH;QAAM;IAChC;IACA,OAAO;QAAEI,eAAeJ;IAAM;AAChC;AAEA;;;;;;CAMC,GACD,OAAO,SAASK,uBAAuBrC,KAA0C;IAC/E,IAAI,CAACT,cAAcS,MAAMsC,MAAM,KAAK,CAAChD,iCAAiCU,QAAQ;QAC5E;IACF;IAEAA,MAAMuC,cAAc;IACpBvC,MAAMsC,MAAM,CAACE,KAAK;AACpB"}
1
+ {"version":3,"sources":["../../../src/lib/utils.ts"],"sourcesContent":["import * as React from 'react';\nimport { shouldTriggerClickOnEnterOrSpace } from './accessibility';\nimport { isHTMLElement } from './dom';\n\nexport type ImgOnlyAttributes = {\n [index in Exclude<\n keyof React.ImgHTMLAttributes<HTMLImageElement>,\n keyof React.HTMLAttributes<HTMLImageElement>\n >]: React.ImgHTMLAttributes<HTMLImageElement>[index];\n};\n\nexport function setRef<T>(element: T, ref?: React.Ref<T>): void {\n if (ref) {\n if (typeof ref === 'function') {\n ref(element);\n } else {\n (ref as React.RefObject<T>).current = element;\n }\n }\n}\n\nexport function multiRef<T>(...refs: Array<React.Ref<T> | undefined>): React.RefObject<T | null> {\n let current: T | null = null;\n return {\n get current() {\n return current;\n },\n set current(element) {\n current = element;\n refs.forEach((ref) => ref && setRef(element, ref));\n },\n };\n}\n\nexport const stopPropagation = <T extends React.SyntheticEvent>(event: T): void =>\n event.stopPropagation();\n\nexport const preventDefault = <T extends React.SyntheticEvent>(event: T): void =>\n event.preventDefault();\n\nexport function addClassNameToElement(element: HTMLElement, className: string): void {\n const elementClassName = element.getAttribute('class') || '';\n const updatedClassName = `${elementClassName}${elementClassName ? ' ' : ''}${className}`;\n\n element.setAttribute('class', updatedClassName);\n}\n\nexport function removeClassNameFromElement(element: HTMLElement, classNameToRemove: string): void {\n const classNamesArray = (element.getAttribute('class') || '').split(/\\s+/);\n const elementIndexToRemove = classNamesArray.findIndex(\n (className) => className === classNameToRemove,\n );\n if (elementIndexToRemove === -1) {\n return;\n }\n classNamesArray.splice(elementIndexToRemove, 1);\n\n element.setAttribute('class', classNamesArray.join(' '));\n}\n\ntype ExcludeKeysWithUndefined<T> = {\n [P in keyof T]?: Exclude<T[P], undefined>;\n};\n\nexport const excludeKeysWithUndefined = <T extends Record<string | number | symbol, any>>(\n obj: T,\n): ExcludeKeysWithUndefined<T> => {\n const filteredObj: ExcludeKeysWithUndefined<T> = {};\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] !== undefined) {\n filteredObj[key] = obj[key];\n }\n }\n return filteredObj;\n};\n\nexport const isDOMTypeElement = <\n P extends React.HTMLAttributes<T> | React.SVGAttributes<T>,\n T extends Element,\n>(\n element: React.ReactElement,\n): element is Omit<React.DOMElement<P, T>, 'ref'> & { ref?: React.Ref<T> | undefined } =>\n typeof element.type === 'string';\n\nexport function isValidNotReactFragmentElement(\n children: Parameters<typeof React.isValidElement>[0],\n): children is React.ReactElement<Record<PropertyKey, any>> {\n return (\n React.isValidElement(children) &&\n // @ts-expect-error: TS2339 $$typeof всегда symbol, в отличии от type, благодаря этому пропускаем лишние проверки на тип.\n children.$$typeof !== Symbol.for('react.fragment')\n );\n}\n\nexport function isForwardRefElement<\n P extends React.HTMLAttributes<T> | React.SVGAttributes<T>,\n T extends Element,\n>(\n children: Parameters<typeof React.isValidElement>[0],\n): children is Omit<React.DOMElement<P, T>, 'ref'> & { ref?: React.Ref<T> | undefined } {\n if (!React.isValidElement(children)) {\n return false;\n }\n\n // @ts-expect-error: TS2339 $$typeof всегда symbol, в отличии от type, благодаря этому пропускаем лишние проверки на тип.\n // черпаем вдохновение из react-is https://github.com/facebook/react/blob/d48dbb824985166ecb7b2959db03090a8593dce0/packages/react-is/src/ReactIs.js#L119-L121\n const typeOfOfType = children.type && children.type.$$typeof;\n return typeOfOfType === Symbol.for('react.forward_ref');\n}\n\n/**\n * При использовании пропа fetchPriority генерируется warning \"Invalid DOM property\" (версия React 18.*)\n * Ворнинга нет в React версии 19.*, поэтому пока поддерживаем 2 версии наименования\n */\nexport function getFetchPriorityProp(value: React.ImgHTMLAttributes<HTMLElement>['fetchPriority']):\n | {\n fetchPriority: 'high' | 'low' | 'auto' | undefined;\n }\n | {\n fetchpriority: 'high' | 'low' | 'auto' | undefined;\n } {\n if (React.version.startsWith('19')) {\n return { fetchPriority: value };\n }\n return { fetchpriority: value };\n}\n\n/*\n * [a11y]\n * Обрабатывает событие onkeydown\n * для кастомных доступных элементов:\n * - role=\"link\" (активация по Enter)\n * - role=\"button\" (активация по Space и Enter)\n */\nexport function clickByKeyboardHandler(event: React.KeyboardEvent<HTMLDivElement>): void {\n if (!isHTMLElement(event.target) || !shouldTriggerClickOnEnterOrSpace(event)) {\n return;\n }\n\n event.preventDefault();\n event.target.click?.();\n}\n"],"names":["React","shouldTriggerClickOnEnterOrSpace","isHTMLElement","setRef","element","ref","current","multiRef","refs","forEach","stopPropagation","event","preventDefault","addClassNameToElement","className","elementClassName","getAttribute","updatedClassName","setAttribute","removeClassNameFromElement","classNameToRemove","classNamesArray","split","elementIndexToRemove","findIndex","splice","join","excludeKeysWithUndefined","obj","filteredObj","key","hasOwnProperty","undefined","isDOMTypeElement","type","isValidNotReactFragmentElement","children","isValidElement","$$typeof","Symbol","for","isForwardRefElement","typeOfOfType","getFetchPriorityProp","value","version","startsWith","fetchPriority","fetchpriority","clickByKeyboardHandler","target","click"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,gCAAgC,QAAQ,qBAAkB;AACnE,SAASC,aAAa,QAAQ,WAAQ;AAStC,OAAO,SAASC,OAAUC,QAAU,EAAEC,GAAkB;IACtD,IAAIA,KAAK;QACP,IAAI,OAAOA,QAAQ,YAAY;YAC7BA,IAAID;QACN,OAAO;YACJC,IAA2BC,OAAO,GAAGF;QACxC;IACF;AACF;AAEA,OAAO,SAASG,SAAY,GAAGC,IAAqC;IAClE,IAAIF,UAAoB;IACxB,OAAO;QACL,IAAIA,WAAU;YACZ,OAAOA;QACT;QACA,IAAIA,SAAQF,QAAS;YACnBE,UAAUF;YACVI,KAAKC,OAAO,CAAC,CAACJ,MAAQA,OAAOF,OAAOC,SAASC;QAC/C;IACF;AACF;AAEA,OAAO,MAAMK,kBAAkB,CAAiCC,QAC9DA,MAAMD,eAAe,GAAG;AAE1B,OAAO,MAAME,iBAAiB,CAAiCD,QAC7DA,MAAMC,cAAc,GAAG;AAEzB,OAAO,SAASC,sBAAsBT,QAAoB,EAAEU,SAAiB;IAC3E,MAAMC,mBAAmBX,SAAQY,YAAY,CAAC,YAAY;IAC1D,MAAMC,mBAAmB,GAAGF,mBAAmBA,mBAAmB,MAAM,KAAKD,WAAW;IAExFV,SAAQc,YAAY,CAAC,SAASD;AAChC;AAEA,OAAO,SAASE,2BAA2Bf,QAAoB,EAAEgB,iBAAyB;IACxF,MAAMC,kBAAkB,AAACjB,CAAAA,SAAQY,YAAY,CAAC,YAAY,EAAC,EAAGM,KAAK,CAAC;IACpE,MAAMC,uBAAuBF,gBAAgBG,SAAS,CACpD,CAACV,YAAcA,cAAcM;IAE/B,IAAIG,yBAAyB,CAAC,GAAG;QAC/B;IACF;IACAF,gBAAgBI,MAAM,CAACF,sBAAsB;IAE7CnB,SAAQc,YAAY,CAAC,SAASG,gBAAgBK,IAAI,CAAC;AACrD;AAMA,OAAO,MAAMC,2BAA2B,CACtCC;IAEA,MAAMC,cAA2C,CAAC;IAClD,IAAK,MAAMC,OAAOF,IAAK;QACrB,IAAIA,IAAIG,cAAc,CAACD,QAAQF,GAAG,CAACE,IAAI,KAAKE,WAAW;YACrDH,WAAW,CAACC,IAAI,GAAGF,GAAG,CAACE,IAAI;QAC7B;IACF;IACA,OAAOD;AACT,EAAE;AAEF,OAAO,MAAMI,mBAAmB,CAI9B7B,WAEA,OAAOA,SAAQ8B,IAAI,KAAK,SAAS;AAEnC,OAAO,SAASC,+BACdC,QAAoD;IAEpD,OACEpC,MAAMqC,cAAc,CAACD,aACrB,yHAAyH;IACzHA,SAASE,QAAQ,KAAKC,OAAOC,GAAG,CAAC;AAErC;AAEA,OAAO,SAASC,oBAIdL,QAAoD;IAEpD,IAAI,CAACpC,MAAMqC,cAAc,CAACD,WAAW;QACnC,OAAO;IACT;IAEA,yHAAyH;IACzH,6JAA6J;IAC7J,MAAMM,eAAeN,SAASF,IAAI,IAAIE,SAASF,IAAI,CAACI,QAAQ;IAC5D,OAAOI,iBAAiBH,OAAOC,GAAG,CAAC;AACrC;AAEA;;;CAGC,GACD,OAAO,SAASG,qBAAqBC,KAA4D;IAO/F,IAAI5C,MAAM6C,OAAO,CAACC,UAAU,CAAC,OAAO;QAClC,OAAO;YAAEC,eAAeH;QAAM;IAChC;IACA,OAAO;QAAEI,eAAeJ;IAAM;AAChC;AAEA;;;;;;CAMC,GACD,OAAO,SAASK,uBAAuBtC,KAA0C;IAC/E,IAAI,CAACT,cAAcS,MAAMuC,MAAM,KAAK,CAACjD,iCAAiCU,QAAQ;QAC5E;IACF;IAEAA,MAAMC,cAAc;IACpBD,MAAMuC,MAAM,CAACC,KAAK;AACpB"}
@@ -1,16 +1,28 @@
1
1
  /* stylelint-disable selector-pseudo-class-disallowed-list */
2
2
 
3
+ /*
4
+ В Windows можно менять общий масштаб интерфейса от 100 до 500%. Готовые пресеты 125%, 150% и 175%.
5
+ В случаях, когда `--vkui--size_border--regular` используется не для свойства `border`, а для `height`,
6
+ одна из линий становится размером больше чем остальные.
7
+
8
+ Поэтому используем пограничные значения DPI, чтобы смена на субпиксельные значения срабатывала раньше:
9
+ - 1.01dppx вместо 2dppx для 101% и до 200%;
10
+ - 2.01dppx вместо 3dppx для 201% и больше;
11
+
12
+ @see https://github.com/VKCOM/VKUI/issues/8864
13
+ */
14
+
3
15
  :root {
4
16
  --vkui--size_border--regular: var(--vkui--size_border1x--regular);
5
17
  }
6
18
 
7
- @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
19
+ @media (-webkit-min-device-pixel-ratio: 1.01), (min-resolution: 1.01dppx) {
8
20
  :root {
9
21
  --vkui--size_border--regular: var(--vkui--size_border2x--regular);
10
22
  }
11
23
  }
12
24
 
13
- @media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 3dppx) {
25
+ @media (-webkit-min-device-pixel-ratio: 2.01), (min-resolution: 2.01dppx) {
14
26
  :root {
15
27
  --vkui--size_border--regular: var(--vkui--size_border3x--regular);
16
28
  }
@@ -42,7 +42,7 @@
42
42
  --vkui--font_title1--font_weight--regular: 600;
43
43
  --vkui--font_title2--font_size--regular: 20px;
44
44
  --vkui--font_title2--line_height--regular: 24px;
45
- --vkui--font_title2--font_weight--regular: 600;
45
+ --vkui--font_title2--font_weight--regular: 500;
46
46
  --vkui--font_title3--font_size--regular: 17px;
47
47
  --vkui--font_title3--line_height--regular: 22px;
48
48
  --vkui--font_title3--font_weight--regular: 600;
@@ -1 +1 @@
1
- {"version":3,"file":"useCalendar.d.ts","sourceRoot":"","sources":["../../src/hooks/useCalendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGrE,MAAM,WAAW,uBACf,SAAQ,IAAI,CACV,aAAa,EACX,gBAAgB,GAChB,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,eAAe,GACf,aAAa,CAChB;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;CAC1C;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,GACZ,EAAE,uBAAuB,GAAG;IAC3B,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC;IAC7B,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC;IACtE,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC;IACrC,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IAC1D,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CAC3C,CAgHA"}
1
+ {"version":3,"file":"useCalendar.d.ts","sourceRoot":"","sources":["../../src/hooks/useCalendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAIrE,MAAM,WAAW,uBACf,SAAQ,IAAI,CACV,aAAa,EACX,gBAAgB,GAChB,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,eAAe,GACf,aAAa,CAChB;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;CAC1C;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,GACZ,EAAE,uBAAuB,GAAG;IAC3B,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC;IACnC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC;IAC7B,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC;IACtE,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC;IACrC,aAAa,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IAC1D,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CAC3C,CAgHA"}
@@ -1,6 +1,8 @@
1
1
  import * as React from "react";
2
- import { addMonths, endOfDay, isAfter, isBefore, isSameDay, startOfDay, subMonths } from "date-fns";
2
+ import { isSameDate } from "@vkontakte/vkjs";
3
+ import { addMonths, startOfDay, subMonths } from "date-fns";
3
4
  import { DEFAULT_MAX_YEAR, DEFAULT_MIN_YEAR, isDayMinMaxRestricted } from "../lib/calendar.js";
5
+ import { endOfDay } from "../lib/date.js";
4
6
  export function useCalendar({ value, disablePast, disableFuture, shouldDisableDate, onHeaderChange, onNextMonth, onPrevMonth, minDateTime, maxDateTime }) {
5
7
  var _ref;
6
8
  const [viewDate, setViewDate] = React.useState((_ref = Array.isArray(value) ? value[0] : value) !== null && _ref !== void 0 ? _ref : new Date());
@@ -27,7 +29,7 @@ export function useCalendar({ value, disablePast, disableFuture, shouldDisableDa
27
29
  }, [
28
30
  onHeaderChange
29
31
  ]);
30
- const isDayFocused = React.useCallback((day)=>Boolean(focusedDay && isSameDay(day, focusedDay)), [
32
+ const isDayFocused = React.useCallback((day)=>Boolean(focusedDay && isSameDate(day, focusedDay)), [
31
33
  focusedDay
32
34
  ]);
33
35
  const isDayDisabled = React.useCallback((day, withTime)=>{
@@ -36,10 +38,10 @@ export function useCalendar({ value, disablePast, disableFuture, shouldDisableDa
36
38
  return shouldDisableDate(day);
37
39
  }
38
40
  if (disableFuture) {
39
- return isAfter(startOfDay(day), now);
41
+ return startOfDay(day) > now;
40
42
  }
41
43
  if (disablePast) {
42
- return isBefore(endOfDay(day), now);
44
+ return endOfDay(day) < now;
43
45
  }
44
46
  if (minDateTime || maxDateTime) {
45
47
  return isDayMinMaxRestricted(day, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useCalendar.ts"],"sourcesContent":["import * as React from 'react';\nimport { addMonths, endOfDay, isAfter, isBefore, isSameDay, startOfDay, subMonths } from 'date-fns';\nimport type { CalendarProps } from '../components/Calendar/Calendar';\nimport { DEFAULT_MAX_YEAR, DEFAULT_MIN_YEAR, isDayMinMaxRestricted } from '../lib/calendar';\n\nexport interface UseCalendarDependencies\n extends Pick<\n CalendarProps,\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'minDateTime'\n | 'maxDateTime'\n | 'shouldDisableDate'\n | 'disableFuture'\n | 'disablePast'\n > {\n value?: Array<Date | null> | Date | null;\n}\n\nexport function useCalendar({\n value,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n minDateTime,\n maxDateTime,\n}: UseCalendarDependencies): {\n viewDate: Date;\n setViewDate: (value: Date) => void;\n setPrevMonth: () => void;\n setNextMonth: () => void;\n focusedDay: Date | undefined;\n setFocusedDay: React.Dispatch<React.SetStateAction<Date | undefined>>;\n isDayFocused: (day: Date) => boolean;\n isDayDisabled: (day: Date, withTime?: boolean) => boolean;\n isMonthDisabled: (month: number, year?: number) => boolean;\n isYearDisabled: (year: number) => boolean;\n} {\n const [viewDate, setViewDate] = React.useState(\n (Array.isArray(value) ? value[0] : value) ?? new Date(),\n );\n // соответствует дню, на котором сейчас есть фокус\n // меняется при переключении дней с помощью стрелок\n const [focusedDay, setFocusedDay] = React.useState<Date>();\n\n const setPrevMonth = React.useCallback(() => {\n onPrevMonth?.();\n setViewDate(subMonths(viewDate, 1));\n }, [viewDate, onPrevMonth]);\n const setNextMonth = React.useCallback(() => {\n onNextMonth?.();\n setViewDate(addMonths(viewDate, 1));\n }, [viewDate, onNextMonth]);\n\n const handleSetViewDate = React.useCallback(\n (value: Date) => {\n onHeaderChange?.(value);\n setViewDate(value);\n },\n [onHeaderChange],\n );\n\n const isDayFocused = React.useCallback(\n (day: Date) => Boolean(focusedDay && isSameDay(day, focusedDay)),\n [focusedDay],\n );\n\n const isDayDisabled = React.useCallback(\n (day: Date, withTime?: boolean) => {\n const now = new Date();\n if (shouldDisableDate) {\n return shouldDisableDate(day);\n }\n if (disableFuture) {\n return isAfter(startOfDay(day), now);\n }\n if (disablePast) {\n return isBefore(endOfDay(day), now);\n }\n if (minDateTime || maxDateTime) {\n return isDayMinMaxRestricted(day, { min: minDateTime, max: maxDateTime, withTime });\n }\n\n return false;\n },\n [disableFuture, disablePast, shouldDisableDate, minDateTime, maxDateTime],\n );\n\n const isMonthDisabled = React.useCallback(\n (month: number, year?: number): boolean => {\n const now = new Date();\n year = year || viewDate.getFullYear();\n const minMonth = minDateTime ? minDateTime.getMonth() : 0;\n const maxMonth = maxDateTime ? maxDateTime.getMonth() : 11;\n const minYear = minDateTime?.getFullYear() || DEFAULT_MIN_YEAR;\n const maxYear = maxDateTime?.getFullYear() || DEFAULT_MAX_YEAR;\n\n let isDisabled =\n year >= minYear && year <= maxYear\n ? (year === minYear && minMonth > month) || (year === maxYear && month > maxMonth)\n : true;\n\n if (disableFuture) {\n isDisabled =\n isDisabled ||\n (year === now.getFullYear() ? month > now.getMonth() : year > now.getFullYear());\n }\n if (disablePast) {\n isDisabled =\n isDisabled ||\n (year === now.getFullYear() ? month < now.getMonth() : year < now.getFullYear());\n }\n\n return isDisabled;\n },\n [disableFuture, disablePast, viewDate, minDateTime, maxDateTime],\n );\n\n const isYearDisabled = React.useCallback(\n (year: number): boolean => {\n const now = new Date();\n const minYear = minDateTime?.getFullYear() || DEFAULT_MIN_YEAR;\n const maxYear = maxDateTime?.getFullYear() || DEFAULT_MAX_YEAR;\n\n let isDisabled = minYear > year || year > maxYear;\n if (disableFuture) {\n isDisabled = isDisabled || year > now.getFullYear();\n }\n if (disablePast) {\n isDisabled = isDisabled || year < now.getFullYear();\n }\n\n return isDisabled;\n },\n [disableFuture, disablePast, minDateTime, maxDateTime],\n );\n\n return {\n viewDate,\n setViewDate: handleSetViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n isMonthDisabled,\n isYearDisabled,\n };\n}\n"],"names":["React","addMonths","endOfDay","isAfter","isBefore","isSameDay","startOfDay","subMonths","DEFAULT_MAX_YEAR","DEFAULT_MIN_YEAR","isDayMinMaxRestricted","useCalendar","value","disablePast","disableFuture","shouldDisableDate","onHeaderChange","onNextMonth","onPrevMonth","minDateTime","maxDateTime","Array","viewDate","setViewDate","useState","isArray","Date","focusedDay","setFocusedDay","setPrevMonth","useCallback","setNextMonth","handleSetViewDate","isDayFocused","day","Boolean","isDayDisabled","withTime","now","min","max","isMonthDisabled","month","year","getFullYear","minMonth","getMonth","maxMonth","minYear","maxYear","isDisabled","isYearDisabled"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/hooks/useCalendar.ts"],"sourcesContent":["import * as React from 'react';\nimport { isSameDate } from '@vkontakte/vkjs';\nimport { addMonths, startOfDay, subMonths } from 'date-fns';\nimport type { CalendarProps } from '../components/Calendar/Calendar';\nimport { DEFAULT_MAX_YEAR, DEFAULT_MIN_YEAR, isDayMinMaxRestricted } from '../lib/calendar';\nimport { endOfDay } from '../lib/date';\n\nexport interface UseCalendarDependencies\n extends Pick<\n CalendarProps,\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'minDateTime'\n | 'maxDateTime'\n | 'shouldDisableDate'\n | 'disableFuture'\n | 'disablePast'\n > {\n value?: Array<Date | null> | Date | null;\n}\n\nexport function useCalendar({\n value,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n minDateTime,\n maxDateTime,\n}: UseCalendarDependencies): {\n viewDate: Date;\n setViewDate: (value: Date) => void;\n setPrevMonth: () => void;\n setNextMonth: () => void;\n focusedDay: Date | undefined;\n setFocusedDay: React.Dispatch<React.SetStateAction<Date | undefined>>;\n isDayFocused: (day: Date) => boolean;\n isDayDisabled: (day: Date, withTime?: boolean) => boolean;\n isMonthDisabled: (month: number, year?: number) => boolean;\n isYearDisabled: (year: number) => boolean;\n} {\n const [viewDate, setViewDate] = React.useState(\n (Array.isArray(value) ? value[0] : value) ?? new Date(),\n );\n // соответствует дню, на котором сейчас есть фокус\n // меняется при переключении дней с помощью стрелок\n const [focusedDay, setFocusedDay] = React.useState<Date>();\n\n const setPrevMonth = React.useCallback(() => {\n onPrevMonth?.();\n setViewDate(subMonths(viewDate, 1));\n }, [viewDate, onPrevMonth]);\n const setNextMonth = React.useCallback(() => {\n onNextMonth?.();\n setViewDate(addMonths(viewDate, 1));\n }, [viewDate, onNextMonth]);\n\n const handleSetViewDate = React.useCallback(\n (value: Date) => {\n onHeaderChange?.(value);\n setViewDate(value);\n },\n [onHeaderChange],\n );\n\n const isDayFocused = React.useCallback(\n (day: Date) => Boolean(focusedDay && isSameDate(day, focusedDay)),\n [focusedDay],\n );\n\n const isDayDisabled = React.useCallback(\n (day: Date, withTime?: boolean) => {\n const now = new Date();\n if (shouldDisableDate) {\n return shouldDisableDate(day);\n }\n if (disableFuture) {\n return startOfDay(day) > now;\n }\n if (disablePast) {\n return endOfDay(day) < now;\n }\n if (minDateTime || maxDateTime) {\n return isDayMinMaxRestricted(day, { min: minDateTime, max: maxDateTime, withTime });\n }\n\n return false;\n },\n [disableFuture, disablePast, shouldDisableDate, minDateTime, maxDateTime],\n );\n\n const isMonthDisabled = React.useCallback(\n (month: number, year?: number): boolean => {\n const now = new Date();\n year = year || viewDate.getFullYear();\n const minMonth = minDateTime ? minDateTime.getMonth() : 0;\n const maxMonth = maxDateTime ? maxDateTime.getMonth() : 11;\n const minYear = minDateTime?.getFullYear() || DEFAULT_MIN_YEAR;\n const maxYear = maxDateTime?.getFullYear() || DEFAULT_MAX_YEAR;\n\n let isDisabled =\n year >= minYear && year <= maxYear\n ? (year === minYear && minMonth > month) || (year === maxYear && month > maxMonth)\n : true;\n\n if (disableFuture) {\n isDisabled =\n isDisabled ||\n (year === now.getFullYear() ? month > now.getMonth() : year > now.getFullYear());\n }\n if (disablePast) {\n isDisabled =\n isDisabled ||\n (year === now.getFullYear() ? month < now.getMonth() : year < now.getFullYear());\n }\n\n return isDisabled;\n },\n [disableFuture, disablePast, viewDate, minDateTime, maxDateTime],\n );\n\n const isYearDisabled = React.useCallback(\n (year: number): boolean => {\n const now = new Date();\n const minYear = minDateTime?.getFullYear() || DEFAULT_MIN_YEAR;\n const maxYear = maxDateTime?.getFullYear() || DEFAULT_MAX_YEAR;\n\n let isDisabled = minYear > year || year > maxYear;\n if (disableFuture) {\n isDisabled = isDisabled || year > now.getFullYear();\n }\n if (disablePast) {\n isDisabled = isDisabled || year < now.getFullYear();\n }\n\n return isDisabled;\n },\n [disableFuture, disablePast, minDateTime, maxDateTime],\n );\n\n return {\n viewDate,\n setViewDate: handleSetViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n isMonthDisabled,\n isYearDisabled,\n };\n}\n"],"names":["React","isSameDate","addMonths","startOfDay","subMonths","DEFAULT_MAX_YEAR","DEFAULT_MIN_YEAR","isDayMinMaxRestricted","endOfDay","useCalendar","value","disablePast","disableFuture","shouldDisableDate","onHeaderChange","onNextMonth","onPrevMonth","minDateTime","maxDateTime","Array","viewDate","setViewDate","useState","isArray","Date","focusedDay","setFocusedDay","setPrevMonth","useCallback","setNextMonth","handleSetViewDate","isDayFocused","day","Boolean","isDayDisabled","withTime","now","min","max","isMonthDisabled","month","year","getFullYear","minMonth","getMonth","maxMonth","minYear","maxYear","isDisabled","isYearDisabled"],"mappings":"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"}
@@ -22,5 +22,5 @@ export type UseFloatingResult<ReferenceElement extends HTMLElement = HTMLElement
22
22
  anchorProps: ReferenceProps<ReferenceElement>;
23
23
  component: React.ReactNode | null;
24
24
  };
25
- export declare const useFloatingElement: <ReferenceElement extends HTMLElement = HTMLElement, FloatingElement extends HTMLElement = HTMLElement>({ placement, arrow, arrowHeight, arrowPadding, sameWidth, offsetByMainAxis, offsetByCrossAxis, customMiddlewares, hideWhenReferenceHidden, disableFlipMiddleware, trigger, hoverDelay, closeAfterClick, disabled, disableInteractive, disableCloseOnClickOutside, disableCloseOnEscKey, defaultShown, shown: shownProp, onShownChange, onShownChanged, strategy, onReferenceHiddenChange, onPlacementChange, renderFloatingComponent, externalFloatingElementRef, remapReferenceProps, }: UseFloatingElementProps<FloatingElement, ReferenceElement>) => UseFloatingResult<ReferenceElement>;
25
+ export declare const useFloatingElement: <ReferenceElement extends HTMLElement = HTMLElement, FloatingElement extends HTMLElement = HTMLElement>({ placement, arrow, arrowHeight, arrowPadding, sameWidth, offsetByMainAxis, offsetByCrossAxis, customMiddlewares, hideWhenReferenceHidden, disableFlipMiddleware, disableShiftMiddleware, trigger, hoverDelay, closeAfterClick, disabled, disableInteractive, disableCloseOnClickOutside, disableCloseOnEscKey, defaultShown, shown: shownProp, onShownChange, onShownChanged, strategy, onReferenceHiddenChange, onPlacementChange, renderFloatingComponent, externalFloatingElementRef, remapReferenceProps, }: UseFloatingElementProps<FloatingElement, ReferenceElement>) => UseFloatingResult<ReferenceElement>;
26
26
  //# sourceMappingURL=useFloatingElement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFloatingElement.d.ts","sourceRoot":"","sources":["../../src/hooks/useFloatingElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,GAAG,EAAW,MAAM,OAAO,CAAC;AAC1C,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,sCAAsC,EAE3C,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EAEvC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAKxF,MAAM,MAAM,sBAAsB,CAAC,eAAe,SAAS,WAAW,GAAG,WAAW,IAAI,IAAI,CAC1F,iCAAiC,EAC/B,OAAO,GACP,YAAY,GACZ,eAAe,GACf,gBAAgB,GAChB,SAAS,GACT,gBAAgB,GAChB,WAAW,CACd,GAAG;IACF,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACxC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC;CAC1E,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,eAAe,SAAS,WAAW,GAAG,WAAW,IAAI,CACzF,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,KAC3C,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;AAE5B,MAAM,MAAM,qBAAqB,CAAC,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAAI,CACtF,KAAK,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,KACzD,cAAc,CAAC,gBAAgB,CAAC,CAAC;AAEtC,MAAM,MAAM,uBAAuB,CACjC,eAAe,SAAS,WAAW,GAAG,WAAW,EACjD,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAChD,IAAI,CAAC,sCAAsC,EAAE,UAAU,CAAC,GAC1D,IAAI,CAAC,gCAAgC,EAAE,WAAW,CAAC,GAAG;IACpD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,uBAAuB,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IACpE,mBAAmB,CAAC,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC9D,0BAA0B,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;CACzD,CAAC;AAEJ,MAAM,MAAM,iBAAiB,CAAC,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAAI;IAClF,SAAS,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjC,WAAW,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,gBAAgB,SAAS,WAAW,GAAG,WAAW,EAClD,eAAe,SAAS,WAAW,GAAG,WAAW,EACjD,0dAiCC,uBAAuB,CACxB,eAAe,EACf,gBAAgB,CACjB,KAAG,iBAAiB,CAAC,gBAAgB,CA4ErC,CAAC"}
1
+ {"version":3,"file":"useFloatingElement.d.ts","sourceRoot":"","sources":["../../src/hooks/useFloatingElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,GAAG,EAAW,MAAM,OAAO,CAAC;AAC1C,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,sCAAsC,EAE3C,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EAEvC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAKxF,MAAM,MAAM,sBAAsB,CAAC,eAAe,SAAS,WAAW,GAAG,WAAW,IAAI,IAAI,CAC1F,iCAAiC,EAC/B,OAAO,GACP,YAAY,GACZ,eAAe,GACf,gBAAgB,GAChB,SAAS,GACT,gBAAgB,GAChB,WAAW,CACd,GAAG;IACF,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACxC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC;CAC1E,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,eAAe,SAAS,WAAW,GAAG,WAAW,IAAI,CACzF,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,KAC3C,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;AAE5B,MAAM,MAAM,qBAAqB,CAAC,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAAI,CACtF,KAAK,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAAG;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,KACzD,cAAc,CAAC,gBAAgB,CAAC,CAAC;AAEtC,MAAM,MAAM,uBAAuB,CACjC,eAAe,SAAS,WAAW,GAAG,WAAW,EACjD,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAChD,IAAI,CAAC,sCAAsC,EAAE,UAAU,CAAC,GAC1D,IAAI,CAAC,gCAAgC,EAAE,WAAW,CAAC,GAAG;IACpD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,uBAAuB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,uBAAuB,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IACpE,mBAAmB,CAAC,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC9D,0BAA0B,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;CACzD,CAAC;AAEJ,MAAM,MAAM,iBAAiB,CAAC,gBAAgB,SAAS,WAAW,GAAG,WAAW,IAAI;IAClF,SAAS,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjC,WAAW,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,gBAAgB,SAAS,WAAW,GAAG,WAAW,EAClD,eAAe,SAAS,WAAW,GAAG,WAAW,EACjD,kfAkCC,uBAAuB,CACxB,eAAe,EACf,gBAAgB,CACjB,KAAG,iBAAiB,CAAC,gBAAgB,CA6ErC,CAAC"}
@@ -7,7 +7,7 @@ import { useReferenceHiddenChangeCallback } from "../lib/floating/useReferenceHi
7
7
  import { useExternRef } from "./useExternRef.js";
8
8
  import { useGlobalEscKeyDown } from "./useGlobalEscKeyDown.js";
9
9
  export const useFloatingElement = ({ // useFloatingMiddlewaresBootstrap
10
- placement = 'bottom-start', arrow, arrowHeight, arrowPadding, sameWidth, offsetByMainAxis = 0, offsetByCrossAxis = 0, customMiddlewares, hideWhenReferenceHidden, disableFlipMiddleware = false, // useFloatingWithInteractions
10
+ placement = 'bottom-start', arrow, arrowHeight, arrowPadding, sameWidth, offsetByMainAxis = 0, offsetByCrossAxis = 0, customMiddlewares, hideWhenReferenceHidden, disableFlipMiddleware = false, disableShiftMiddleware = false, // useFloatingWithInteractions
11
11
  trigger, hoverDelay, closeAfterClick, disabled, disableInteractive, disableCloseOnClickOutside, disableCloseOnEscKey, defaultShown, shown: shownProp, onShownChange, onShownChanged, strategy, onReferenceHiddenChange, onPlacementChange, renderFloatingComponent, externalFloatingElementRef, remapReferenceProps })=>{
12
12
  const [arrowRef, setArrowRef] = React.useState(null);
13
13
  const { middlewares, strictPlacement } = useFloatingMiddlewaresBootstrap({
@@ -21,7 +21,8 @@ trigger, hoverDelay, closeAfterClick, disabled, disableInteractive, disableClose
21
21
  arrowRef,
22
22
  arrowPadding,
23
23
  arrowHeight,
24
- disableFlipMiddleware
24
+ disableFlipMiddleware,
25
+ disableShiftMiddleware
25
26
  });
26
27
  const { placement: resolvedPlacement, shown, willBeHide, refs, referenceProps, floatingProps, middlewareData, onClose, onRestoreFocus, onEscapeKeyDown } = useFloatingWithInteractions({
27
28
  middlewares,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useFloatingElement.tsx"],"sourcesContent":["import * as React from 'react';\nimport { type Ref, useMemo } from 'react';\nimport {\n type OnPlacementChange,\n useFloatingMiddlewaresBootstrap,\n type UseFloatingMiddlewaresBootstrapOptions,\n useFloatingWithInteractions,\n type UseFloatingWithInteractionsProps,\n type UseFloatingWithInteractionsReturn,\n usePlacementChangeCallback,\n} from '../lib/floating';\nimport { type ReferenceProps } from '../lib/floating/useFloatingWithInteractions/types';\nimport { useReferenceHiddenChangeCallback } from '../lib/floating/useReferenceHiddenChangeCallback';\nimport { useExternRef } from './useExternRef';\nimport { useGlobalEscKeyDown } from './useGlobalEscKeyDown';\n\nexport type FloatingComponentProps<FloatingElement extends HTMLElement = HTMLElement> = Pick<\n UseFloatingWithInteractionsReturn,\n | 'shown'\n | 'willBeHide'\n | 'floatingProps'\n | 'middlewareData'\n | 'onClose'\n | 'onRestoreFocus'\n | 'placement'\n> & {\n floatingRef: React.Ref<FloatingElement>;\n setArrowRef: React.Dispatch<React.SetStateAction<HTMLDivElement | null>>;\n};\n\nexport type RenderFloatingComponentFn<FloatingElement extends HTMLElement = HTMLElement> = (\n props: FloatingComponentProps<FloatingElement>,\n) => React.ReactNode | null;\n\nexport type RemapReferencePropsFn<ReferenceElement extends HTMLElement = HTMLElement> = (\n props: ReferenceProps<ReferenceElement> & { shown: boolean },\n) => ReferenceProps<ReferenceElement>;\n\nexport type UseFloatingElementProps<\n FloatingElement extends HTMLElement = HTMLElement,\n ReferenceElement extends HTMLElement = HTMLElement,\n> = Omit<UseFloatingMiddlewaresBootstrapOptions, 'arrowRef'> &\n Omit<UseFloatingWithInteractionsProps, 'placement'> & {\n onPlacementChange?: OnPlacementChange;\n onReferenceHiddenChange?: (hidden: boolean) => void;\n renderFloatingComponent: RenderFloatingComponentFn<FloatingElement>;\n remapReferenceProps?: RemapReferencePropsFn<ReferenceElement>;\n externalFloatingElementRef?: React.Ref<FloatingElement>;\n };\n\nexport type UseFloatingResult<ReferenceElement extends HTMLElement = HTMLElement> = {\n anchorRef: Ref<ReferenceElement>;\n anchorProps: ReferenceProps<ReferenceElement>;\n component: React.ReactNode | null;\n};\n\nexport const useFloatingElement = <\n ReferenceElement extends HTMLElement = HTMLElement,\n FloatingElement extends HTMLElement = HTMLElement,\n>({\n // useFloatingMiddlewaresBootstrap\n placement = 'bottom-start',\n arrow,\n arrowHeight,\n arrowPadding,\n sameWidth,\n offsetByMainAxis = 0,\n offsetByCrossAxis = 0,\n customMiddlewares,\n hideWhenReferenceHidden,\n disableFlipMiddleware = false,\n\n // useFloatingWithInteractions\n trigger,\n hoverDelay,\n closeAfterClick,\n disabled,\n disableInteractive,\n disableCloseOnClickOutside,\n disableCloseOnEscKey,\n defaultShown,\n shown: shownProp,\n onShownChange,\n onShownChanged,\n strategy,\n onReferenceHiddenChange,\n\n onPlacementChange,\n\n renderFloatingComponent,\n externalFloatingElementRef,\n remapReferenceProps,\n}: UseFloatingElementProps<\n FloatingElement,\n ReferenceElement\n>): UseFloatingResult<ReferenceElement> => {\n const [arrowRef, setArrowRef] = React.useState<HTMLDivElement | null>(null);\n\n const { middlewares, strictPlacement } = useFloatingMiddlewaresBootstrap({\n placement,\n offsetByMainAxis,\n offsetByCrossAxis,\n customMiddlewares,\n hideWhenReferenceHidden,\n sameWidth,\n arrow,\n arrowRef,\n arrowPadding,\n arrowHeight,\n disableFlipMiddleware,\n });\n\n const {\n placement: resolvedPlacement,\n shown,\n willBeHide,\n refs,\n referenceProps,\n floatingProps,\n middlewareData,\n onClose,\n onRestoreFocus,\n onEscapeKeyDown,\n } = useFloatingWithInteractions({\n middlewares,\n strategy,\n placement: strictPlacement,\n trigger,\n hoverDelay,\n closeAfterClick,\n disabled,\n disableInteractive,\n disableCloseOnClickOutside,\n disableCloseOnEscKey,\n defaultShown,\n shown: shownProp,\n onShownChange,\n onShownChanged,\n });\n\n const resultRef = useExternRef<FloatingElement>(externalFloatingElementRef, refs.setFloating);\n\n usePlacementChangeCallback(placement, resolvedPlacement, onPlacementChange);\n\n useReferenceHiddenChangeCallback(middlewareData.hide, onReferenceHiddenChange);\n\n const component = renderFloatingComponent({\n shown,\n willBeHide,\n floatingProps,\n floatingRef: resultRef,\n middlewareData,\n placement: resolvedPlacement,\n onClose,\n onRestoreFocus,\n setArrowRef,\n });\n\n useGlobalEscKeyDown(shown, onEscapeKeyDown);\n\n const remappedReferenceProps = useMemo(\n () =>\n remapReferenceProps ? remapReferenceProps({ ...referenceProps, shown }) : referenceProps,\n [remapReferenceProps, shown, referenceProps],\n );\n\n return {\n anchorRef: refs.setReference,\n anchorProps: remappedReferenceProps,\n component,\n };\n};\n"],"names":["React","useMemo","useFloatingMiddlewaresBootstrap","useFloatingWithInteractions","usePlacementChangeCallback","useReferenceHiddenChangeCallback","useExternRef","useGlobalEscKeyDown","useFloatingElement","placement","arrow","arrowHeight","arrowPadding","sameWidth","offsetByMainAxis","offsetByCrossAxis","customMiddlewares","hideWhenReferenceHidden","disableFlipMiddleware","trigger","hoverDelay","closeAfterClick","disabled","disableInteractive","disableCloseOnClickOutside","disableCloseOnEscKey","defaultShown","shown","shownProp","onShownChange","onShownChanged","strategy","onReferenceHiddenChange","onPlacementChange","renderFloatingComponent","externalFloatingElementRef","remapReferenceProps","arrowRef","setArrowRef","useState","middlewares","strictPlacement","resolvedPlacement","willBeHide","refs","referenceProps","floatingProps","middlewareData","onClose","onRestoreFocus","onEscapeKeyDown","resultRef","setFloating","hide","component","floatingRef","remappedReferenceProps","anchorRef","setReference","anchorProps"],"mappings":";;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAAmBC,OAAO,QAAQ,QAAQ;AAC1C,SAEEC,+BAA+B,EAE/BC,2BAA2B,EAG3BC,0BAA0B,QACrB,2BAAkB;AAEzB,SAASC,gCAAgC,QAAQ,sDAAmD;AACpG,SAASC,YAAY,QAAQ,oBAAiB;AAC9C,SAASC,mBAAmB,QAAQ,2BAAwB;AA0C5D,OAAO,MAAMC,qBAAqB,CAGhC,EACA,kCAAkC;AAClCC,YAAY,cAAc,EAC1BC,KAAK,EACLC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,mBAAmB,CAAC,EACpBC,oBAAoB,CAAC,EACrBC,iBAAiB,EACjBC,uBAAuB,EACvBC,wBAAwB,KAAK,EAE7B,8BAA8B;AAC9BC,OAAO,EACPC,UAAU,EACVC,eAAe,EACfC,QAAQ,EACRC,kBAAkB,EAClBC,0BAA0B,EAC1BC,oBAAoB,EACpBC,YAAY,EACZC,OAAOC,SAAS,EAChBC,aAAa,EACbC,cAAc,EACdC,QAAQ,EACRC,uBAAuB,EAEvBC,iBAAiB,EAEjBC,uBAAuB,EACvBC,0BAA0B,EAC1BC,mBAAmB,EAIpB;IACC,MAAM,CAACC,UAAUC,YAAY,GAAGtC,MAAMuC,QAAQ,CAAwB;IAEtE,MAAM,EAAEC,WAAW,EAAEC,eAAe,EAAE,GAAGvC,gCAAgC;QACvEO;QACAK;QACAC;QACAC;QACAC;QACAJ;QACAH;QACA2B;QACAzB;QACAD;QACAO;IACF;IAEA,MAAM,EACJT,WAAWiC,iBAAiB,EAC5Bf,KAAK,EACLgB,UAAU,EACVC,IAAI,EACJC,cAAc,EACdC,aAAa,EACbC,cAAc,EACdC,OAAO,EACPC,cAAc,EACdC,eAAe,EAChB,GAAG/C,4BAA4B;QAC9BqC;QACAT;QACAtB,WAAWgC;QACXtB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC,OAAOC;QACPC;QACAC;IACF;IAEA,MAAMqB,YAAY7C,aAA8B6B,4BAA4BS,KAAKQ,WAAW;IAE5FhD,2BAA2BK,WAAWiC,mBAAmBT;IAEzD5B,iCAAiC0C,eAAeM,IAAI,EAAErB;IAEtD,MAAMsB,YAAYpB,wBAAwB;QACxCP;QACAgB;QACAG;QACAS,aAAaJ;QACbJ;QACAtC,WAAWiC;QACXM;QACAC;QACAX;IACF;IAEA/B,oBAAoBoB,OAAOuB;IAE3B,MAAMM,yBAAyBvD,QAC7B,IACEmC,sBAAsBA,oBAAoB,wCAAKS;YAAgBlB;cAAWkB,gBAC5E;QAACT;QAAqBT;QAAOkB;KAAe;IAG9C,OAAO;QACLY,WAAWb,KAAKc,YAAY;QAC5BC,aAAaH;QACbF;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../../src/hooks/useFloatingElement.tsx"],"sourcesContent":["import * as React from 'react';\nimport { type Ref, useMemo } from 'react';\nimport {\n type OnPlacementChange,\n useFloatingMiddlewaresBootstrap,\n type UseFloatingMiddlewaresBootstrapOptions,\n useFloatingWithInteractions,\n type UseFloatingWithInteractionsProps,\n type UseFloatingWithInteractionsReturn,\n usePlacementChangeCallback,\n} from '../lib/floating';\nimport { type ReferenceProps } from '../lib/floating/useFloatingWithInteractions/types';\nimport { useReferenceHiddenChangeCallback } from '../lib/floating/useReferenceHiddenChangeCallback';\nimport { useExternRef } from './useExternRef';\nimport { useGlobalEscKeyDown } from './useGlobalEscKeyDown';\n\nexport type FloatingComponentProps<FloatingElement extends HTMLElement = HTMLElement> = Pick<\n UseFloatingWithInteractionsReturn,\n | 'shown'\n | 'willBeHide'\n | 'floatingProps'\n | 'middlewareData'\n | 'onClose'\n | 'onRestoreFocus'\n | 'placement'\n> & {\n floatingRef: React.Ref<FloatingElement>;\n setArrowRef: React.Dispatch<React.SetStateAction<HTMLDivElement | null>>;\n};\n\nexport type RenderFloatingComponentFn<FloatingElement extends HTMLElement = HTMLElement> = (\n props: FloatingComponentProps<FloatingElement>,\n) => React.ReactNode | null;\n\nexport type RemapReferencePropsFn<ReferenceElement extends HTMLElement = HTMLElement> = (\n props: ReferenceProps<ReferenceElement> & { shown: boolean },\n) => ReferenceProps<ReferenceElement>;\n\nexport type UseFloatingElementProps<\n FloatingElement extends HTMLElement = HTMLElement,\n ReferenceElement extends HTMLElement = HTMLElement,\n> = Omit<UseFloatingMiddlewaresBootstrapOptions, 'arrowRef'> &\n Omit<UseFloatingWithInteractionsProps, 'placement'> & {\n onPlacementChange?: OnPlacementChange;\n onReferenceHiddenChange?: (hidden: boolean) => void;\n renderFloatingComponent: RenderFloatingComponentFn<FloatingElement>;\n remapReferenceProps?: RemapReferencePropsFn<ReferenceElement>;\n externalFloatingElementRef?: React.Ref<FloatingElement>;\n };\n\nexport type UseFloatingResult<ReferenceElement extends HTMLElement = HTMLElement> = {\n anchorRef: Ref<ReferenceElement>;\n anchorProps: ReferenceProps<ReferenceElement>;\n component: React.ReactNode | null;\n};\n\nexport const useFloatingElement = <\n ReferenceElement extends HTMLElement = HTMLElement,\n FloatingElement extends HTMLElement = HTMLElement,\n>({\n // useFloatingMiddlewaresBootstrap\n placement = 'bottom-start',\n arrow,\n arrowHeight,\n arrowPadding,\n sameWidth,\n offsetByMainAxis = 0,\n offsetByCrossAxis = 0,\n customMiddlewares,\n hideWhenReferenceHidden,\n disableFlipMiddleware = false,\n disableShiftMiddleware = false,\n\n // useFloatingWithInteractions\n trigger,\n hoverDelay,\n closeAfterClick,\n disabled,\n disableInteractive,\n disableCloseOnClickOutside,\n disableCloseOnEscKey,\n defaultShown,\n shown: shownProp,\n onShownChange,\n onShownChanged,\n strategy,\n onReferenceHiddenChange,\n\n onPlacementChange,\n\n renderFloatingComponent,\n externalFloatingElementRef,\n remapReferenceProps,\n}: UseFloatingElementProps<\n FloatingElement,\n ReferenceElement\n>): UseFloatingResult<ReferenceElement> => {\n const [arrowRef, setArrowRef] = React.useState<HTMLDivElement | null>(null);\n\n const { middlewares, strictPlacement } = useFloatingMiddlewaresBootstrap({\n placement,\n offsetByMainAxis,\n offsetByCrossAxis,\n customMiddlewares,\n hideWhenReferenceHidden,\n sameWidth,\n arrow,\n arrowRef,\n arrowPadding,\n arrowHeight,\n disableFlipMiddleware,\n disableShiftMiddleware,\n });\n\n const {\n placement: resolvedPlacement,\n shown,\n willBeHide,\n refs,\n referenceProps,\n floatingProps,\n middlewareData,\n onClose,\n onRestoreFocus,\n onEscapeKeyDown,\n } = useFloatingWithInteractions({\n middlewares,\n strategy,\n placement: strictPlacement,\n trigger,\n hoverDelay,\n closeAfterClick,\n disabled,\n disableInteractive,\n disableCloseOnClickOutside,\n disableCloseOnEscKey,\n defaultShown,\n shown: shownProp,\n onShownChange,\n onShownChanged,\n });\n\n const resultRef = useExternRef<FloatingElement>(externalFloatingElementRef, refs.setFloating);\n\n usePlacementChangeCallback(placement, resolvedPlacement, onPlacementChange);\n\n useReferenceHiddenChangeCallback(middlewareData.hide, onReferenceHiddenChange);\n\n const component = renderFloatingComponent({\n shown,\n willBeHide,\n floatingProps,\n floatingRef: resultRef,\n middlewareData,\n placement: resolvedPlacement,\n onClose,\n onRestoreFocus,\n setArrowRef,\n });\n\n useGlobalEscKeyDown(shown, onEscapeKeyDown);\n\n const remappedReferenceProps = useMemo(\n () =>\n remapReferenceProps ? remapReferenceProps({ ...referenceProps, shown }) : referenceProps,\n [remapReferenceProps, shown, referenceProps],\n );\n\n return {\n anchorRef: refs.setReference,\n anchorProps: remappedReferenceProps,\n component,\n };\n};\n"],"names":["React","useMemo","useFloatingMiddlewaresBootstrap","useFloatingWithInteractions","usePlacementChangeCallback","useReferenceHiddenChangeCallback","useExternRef","useGlobalEscKeyDown","useFloatingElement","placement","arrow","arrowHeight","arrowPadding","sameWidth","offsetByMainAxis","offsetByCrossAxis","customMiddlewares","hideWhenReferenceHidden","disableFlipMiddleware","disableShiftMiddleware","trigger","hoverDelay","closeAfterClick","disabled","disableInteractive","disableCloseOnClickOutside","disableCloseOnEscKey","defaultShown","shown","shownProp","onShownChange","onShownChanged","strategy","onReferenceHiddenChange","onPlacementChange","renderFloatingComponent","externalFloatingElementRef","remapReferenceProps","arrowRef","setArrowRef","useState","middlewares","strictPlacement","resolvedPlacement","willBeHide","refs","referenceProps","floatingProps","middlewareData","onClose","onRestoreFocus","onEscapeKeyDown","resultRef","setFloating","hide","component","floatingRef","remappedReferenceProps","anchorRef","setReference","anchorProps"],"mappings":";;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAAmBC,OAAO,QAAQ,QAAQ;AAC1C,SAEEC,+BAA+B,EAE/BC,2BAA2B,EAG3BC,0BAA0B,QACrB,2BAAkB;AAEzB,SAASC,gCAAgC,QAAQ,sDAAmD;AACpG,SAASC,YAAY,QAAQ,oBAAiB;AAC9C,SAASC,mBAAmB,QAAQ,2BAAwB;AA0C5D,OAAO,MAAMC,qBAAqB,CAGhC,EACA,kCAAkC;AAClCC,YAAY,cAAc,EAC1BC,KAAK,EACLC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,mBAAmB,CAAC,EACpBC,oBAAoB,CAAC,EACrBC,iBAAiB,EACjBC,uBAAuB,EACvBC,wBAAwB,KAAK,EAC7BC,yBAAyB,KAAK,EAE9B,8BAA8B;AAC9BC,OAAO,EACPC,UAAU,EACVC,eAAe,EACfC,QAAQ,EACRC,kBAAkB,EAClBC,0BAA0B,EAC1BC,oBAAoB,EACpBC,YAAY,EACZC,OAAOC,SAAS,EAChBC,aAAa,EACbC,cAAc,EACdC,QAAQ,EACRC,uBAAuB,EAEvBC,iBAAiB,EAEjBC,uBAAuB,EACvBC,0BAA0B,EAC1BC,mBAAmB,EAIpB;IACC,MAAM,CAACC,UAAUC,YAAY,GAAGvC,MAAMwC,QAAQ,CAAwB;IAEtE,MAAM,EAAEC,WAAW,EAAEC,eAAe,EAAE,GAAGxC,gCAAgC;QACvEO;QACAK;QACAC;QACAC;QACAC;QACAJ;QACAH;QACA4B;QACA1B;QACAD;QACAO;QACAC;IACF;IAEA,MAAM,EACJV,WAAWkC,iBAAiB,EAC5Bf,KAAK,EACLgB,UAAU,EACVC,IAAI,EACJC,cAAc,EACdC,aAAa,EACbC,cAAc,EACdC,OAAO,EACPC,cAAc,EACdC,eAAe,EAChB,GAAGhD,4BAA4B;QAC9BsC;QACAT;QACAvB,WAAWiC;QACXtB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC,OAAOC;QACPC;QACAC;IACF;IAEA,MAAMqB,YAAY9C,aAA8B8B,4BAA4BS,KAAKQ,WAAW;IAE5FjD,2BAA2BK,WAAWkC,mBAAmBT;IAEzD7B,iCAAiC2C,eAAeM,IAAI,EAAErB;IAEtD,MAAMsB,YAAYpB,wBAAwB;QACxCP;QACAgB;QACAG;QACAS,aAAaJ;QACbJ;QACAvC,WAAWkC;QACXM;QACAC;QACAX;IACF;IAEAhC,oBAAoBqB,OAAOuB;IAE3B,MAAMM,yBAAyBxD,QAC7B,IACEoC,sBAAsBA,oBAAoB,wCAAKS;YAAgBlB;cAAWkB,gBAC5E;QAACT;QAAqBT;QAAOkB;KAAe;IAG9C,OAAO;QACLY,WAAWb,KAAKc,YAAY;QAC5BC,aAAaH;QACbF;IACF;AACF,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTodayDate.d.ts","sourceRoot":"","sources":["../../src/hooks/useTodayDate.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,yBAAyB,UAAQ,GAAG,IAAI,CAiDpE"}
1
+ {"version":3,"file":"useTodayDate.d.ts","sourceRoot":"","sources":["../../src/hooks/useTodayDate.ts"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,yBAAyB,UAAQ,GAAG,IAAI,CAiDpE"}
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import { differenceInMilliseconds, isSameDay, startOfTomorrow } from "date-fns";
2
+ import { isSameDate } from "@vkontakte/vkjs";
3
+ import { differenceInMilliseconds, startOfTomorrow } from "date-fns";
3
4
  import { useDOM } from "../lib/dom.js";
4
5
  /**
5
6
  * Опционально обновляемая дата сегодняшнего дня
@@ -28,7 +29,7 @@ import { useDOM } from "../lib/dom.js";
28
29
  setTodayDate(new Date());
29
30
  }, timeToDayChange);
30
31
  // Если todayDate не обновился в таймаут - обновить при заходе на вкладку
31
- if (!isSameDay(todayDate, now)) {
32
+ if (!isSameDate(todayDate, now)) {
32
33
  setTodayDate(now);
33
34
  }
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useTodayDate.ts"],"sourcesContent":["import * as React from 'react';\nimport { differenceInMilliseconds, isSameDay, startOfTomorrow } from 'date-fns';\nimport { useDOM } from '../lib/dom';\n\n/**\n * Опционально обновляемая дата сегодняшнего дня\n *\n * Дата - сегодня (в соответствии с системным временем)\n *\n * Часы, минуты, секунды, миллисекунды - произвольные\n *\n * @param listenDayChangesForUpdate - флаг по которому определяется, будет ли создаваться подписка на смену календарного дня\n */\nexport function useTodayDate(listenDayChangesForUpdate = false): Date {\n const { document, window } = useDOM();\n const [todayDate, setTodayDate] = React.useState(() => new Date());\n\n React.useEffect(\n function setupTodaysDateRecalculationListener() {\n if (!listenDayChangesForUpdate || !document || !window) {\n return;\n }\n\n let timeout: number | undefined = undefined;\n\n const recalcTimeout = () => {\n if (document.visibilityState === 'visible') {\n const now = new Date();\n\n const timeToDayChange = differenceInMilliseconds(startOfTomorrow(), now);\n\n // Удаляем старый таймаут\n window.clearTimeout(timeout);\n\n // Создаем новый таймаут\n timeout = window.setTimeout(() => {\n setTodayDate(new Date());\n }, timeToDayChange);\n\n // Если todayDate не обновился в таймаут - обновить при заходе на вкладку\n if (!isSameDay(todayDate, now)) {\n setTodayDate(now);\n }\n }\n };\n\n recalcTimeout();\n\n // Создаем слушатель visibilitychange, чтобы предотвратить пропуск обновления стейта после заморозки вкладки\n // Если человек ее долго не трогал или закрывал крышку ноута и тп\n // https://developer.chrome.com/blog/page-lifecycle-api/\n document.addEventListener('visibilitychange', recalcTimeout);\n\n return () => {\n window.clearTimeout(timeout);\n document.removeEventListener('visibilitychange', recalcTimeout);\n };\n },\n [document, listenDayChangesForUpdate, todayDate, window],\n );\n\n return todayDate;\n}\n"],"names":["React","differenceInMilliseconds","isSameDay","startOfTomorrow","useDOM","useTodayDate","listenDayChangesForUpdate","document","window","todayDate","setTodayDate","useState","Date","useEffect","setupTodaysDateRecalculationListener","timeout","undefined","recalcTimeout","visibilityState","now","timeToDayChange","clearTimeout","setTimeout","addEventListener","removeEventListener"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,EAAEC,SAAS,EAAEC,eAAe,QAAQ,WAAW;AAChF,SAASC,MAAM,QAAQ,gBAAa;AAEpC;;;;;;;;CAQC,GACD,OAAO,SAASC,aAAaC,4BAA4B,KAAK;IAC5D,MAAM,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGJ;IAC7B,MAAM,CAACK,WAAWC,aAAa,GAAGV,MAAMW,QAAQ,CAAC,IAAM,IAAIC;IAE3DZ,MAAMa,SAAS,CACb,SAASC;QACP,IAAI,CAACR,6BAA6B,CAACC,YAAY,CAACC,QAAQ;YACtD;QACF;QAEA,IAAIO,UAA8BC;QAElC,MAAMC,gBAAgB;YACpB,IAAIV,SAASW,eAAe,KAAK,WAAW;gBAC1C,MAAMC,MAAM,IAAIP;gBAEhB,MAAMQ,kBAAkBnB,yBAAyBE,mBAAmBgB;gBAEpE,yBAAyB;gBACzBX,OAAOa,YAAY,CAACN;gBAEpB,wBAAwB;gBACxBA,UAAUP,OAAOc,UAAU,CAAC;oBAC1BZ,aAAa,IAAIE;gBACnB,GAAGQ;gBAEH,yEAAyE;gBACzE,IAAI,CAAClB,UAAUO,WAAWU,MAAM;oBAC9BT,aAAaS;gBACf;YACF;QACF;QAEAF;QAEA,4GAA4G;QAC5G,iEAAiE;QACjE,wDAAwD;QACxDV,SAASgB,gBAAgB,CAAC,oBAAoBN;QAE9C,OAAO;YACLT,OAAOa,YAAY,CAACN;YACpBR,SAASiB,mBAAmB,CAAC,oBAAoBP;QACnD;IACF,GACA;QAACV;QAAUD;QAA2BG;QAAWD;KAAO;IAG1D,OAAOC;AACT"}
1
+ {"version":3,"sources":["../../src/hooks/useTodayDate.ts"],"sourcesContent":["import * as React from 'react';\nimport { isSameDate } from '@vkontakte/vkjs';\nimport { differenceInMilliseconds, startOfTomorrow } from 'date-fns';\nimport { useDOM } from '../lib/dom';\n\n/**\n * Опционально обновляемая дата сегодняшнего дня\n *\n * Дата - сегодня (в соответствии с системным временем)\n *\n * Часы, минуты, секунды, миллисекунды - произвольные\n *\n * @param listenDayChangesForUpdate - флаг по которому определяется, будет ли создаваться подписка на смену календарного дня\n */\nexport function useTodayDate(listenDayChangesForUpdate = false): Date {\n const { document, window } = useDOM();\n const [todayDate, setTodayDate] = React.useState(() => new Date());\n\n React.useEffect(\n function setupTodaysDateRecalculationListener() {\n if (!listenDayChangesForUpdate || !document || !window) {\n return;\n }\n\n let timeout: number | undefined = undefined;\n\n const recalcTimeout = () => {\n if (document.visibilityState === 'visible') {\n const now = new Date();\n\n const timeToDayChange = differenceInMilliseconds(startOfTomorrow(), now);\n\n // Удаляем старый таймаут\n window.clearTimeout(timeout);\n\n // Создаем новый таймаут\n timeout = window.setTimeout(() => {\n setTodayDate(new Date());\n }, timeToDayChange);\n\n // Если todayDate не обновился в таймаут - обновить при заходе на вкладку\n if (!isSameDate(todayDate, now)) {\n setTodayDate(now);\n }\n }\n };\n\n recalcTimeout();\n\n // Создаем слушатель visibilitychange, чтобы предотвратить пропуск обновления стейта после заморозки вкладки\n // Если человек ее долго не трогал или закрывал крышку ноута и тп\n // https://developer.chrome.com/blog/page-lifecycle-api/\n document.addEventListener('visibilitychange', recalcTimeout);\n\n return () => {\n window.clearTimeout(timeout);\n document.removeEventListener('visibilitychange', recalcTimeout);\n };\n },\n [document, listenDayChangesForUpdate, todayDate, window],\n );\n\n return todayDate;\n}\n"],"names":["React","isSameDate","differenceInMilliseconds","startOfTomorrow","useDOM","useTodayDate","listenDayChangesForUpdate","document","window","todayDate","setTodayDate","useState","Date","useEffect","setupTodaysDateRecalculationListener","timeout","undefined","recalcTimeout","visibilityState","now","timeToDayChange","clearTimeout","setTimeout","addEventListener","removeEventListener"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,wBAAwB,EAAEC,eAAe,QAAQ,WAAW;AACrE,SAASC,MAAM,QAAQ,gBAAa;AAEpC;;;;;;;;CAQC,GACD,OAAO,SAASC,aAAaC,4BAA4B,KAAK;IAC5D,MAAM,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGJ;IAC7B,MAAM,CAACK,WAAWC,aAAa,GAAGV,MAAMW,QAAQ,CAAC,IAAM,IAAIC;IAE3DZ,MAAMa,SAAS,CACb,SAASC;QACP,IAAI,CAACR,6BAA6B,CAACC,YAAY,CAACC,QAAQ;YACtD;QACF;QAEA,IAAIO,UAA8BC;QAElC,MAAMC,gBAAgB;YACpB,IAAIV,SAASW,eAAe,KAAK,WAAW;gBAC1C,MAAMC,MAAM,IAAIP;gBAEhB,MAAMQ,kBAAkBlB,yBAAyBC,mBAAmBgB;gBAEpE,yBAAyB;gBACzBX,OAAOa,YAAY,CAACN;gBAEpB,wBAAwB;gBACxBA,UAAUP,OAAOc,UAAU,CAAC;oBAC1BZ,aAAa,IAAIE;gBACnB,GAAGQ;gBAEH,yEAAyE;gBACzE,IAAI,CAACnB,WAAWQ,WAAWU,MAAM;oBAC/BT,aAAaS;gBACf;YACF;QACF;QAEAF;QAEA,4GAA4G;QAC5G,iEAAiE;QACjE,wDAAwD;QACxDV,SAASgB,gBAAgB,CAAC,oBAAoBN;QAE9C,OAAO;YACLT,OAAOa,YAAY,CAACN;YACpBR,SAASiB,mBAAmB,CAAC,oBAAoBP;QACnD;IACF,GACA;QAACV;QAAUD;QAA2BG;QAAWD;KAAO;IAG1D,OAAOC;AACT"}
package/dist/index.d.ts CHANGED
@@ -254,8 +254,9 @@ export { DropZone } from './components/DropZone/DropZone';
254
254
  export type { DropZoneProps } from './components/DropZone/DropZone';
255
255
  export { Input } from './components/Input/Input';
256
256
  export type { InputProps } from './components/Input/Input';
257
+ export type { ChipProps } from './components/ChipsInputBase/Chip/Chip';
257
258
  export { Chip } from './components/ChipsInputBase/Chip/Chip';
258
- export type { ChipProps, ChipOption, RenderChipProps, ChipOptionValue, ChipOptionLabel, } from './components/ChipsInputBase/types';
259
+ export type { ChipOption, RenderChipProps, ChipOptionValue, ChipOptionLabel, } from './components/ChipsInputBase/types';
259
260
  export { ChipsInput } from './components/ChipsInput/ChipsInput';
260
261
  export type { ChipsInputProps } from './components/ChipsInput/ChipsInput';
261
262
  export { ChipsSelect } from './components/ChipsSelect/ChipsSelect';
@@ -280,7 +281,8 @@ export type { SelectMimicryProps } from './components/SelectMimicry/SelectMimicr
280
281
  export { NativeSelect } from './components/NativeSelect/NativeSelect';
281
282
  export type { NativeSelectProps } from './components/NativeSelect/NativeSelect';
282
283
  export { CustomSelect } from './components/CustomSelect/CustomSelect';
283
- export type { SelectProps, CustomSelectOptionInterface, CustomSelectRenderOption, CustomSelectClearButtonProps, } from './components/CustomSelect/CustomSelect';
284
+ export type { SelectProps, CustomSelectClearButtonProps, } from './components/CustomSelect/CustomSelect';
285
+ export type { CustomSelectOptionInterface, CustomSelectRenderOption, } from './components/CustomSelect/types';
284
286
  export { CustomSelectOption } from './components/CustomSelectOption/CustomSelectOption';
285
287
  export type { CustomSelectOptionProps } from './components/CustomSelectOption/CustomSelectOption';
286
288
  export { SegmentedControl } from './components/SegmentedControl/SegmentedControl';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}