@salutejs/plasma-new-hope 0.172.1-canary.1448.11457725334.0 → 0.172.1-canary.1498.11456450638.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (453) hide show
  1. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +1 -0
  2. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  3. package/cjs/components/Attach/Attach.js +4 -3
  4. package/cjs/components/Attach/Attach.js.map +1 -1
  5. package/cjs/components/Attach/components/AttachButton/AttachButton.js +1 -0
  6. package/cjs/components/Attach/components/AttachButton/AttachButton.js.map +1 -1
  7. package/cjs/components/Attach/ui/Button/Button.styles.js +1 -0
  8. package/cjs/components/Attach/ui/Button/Button.styles.js.map +1 -1
  9. package/cjs/components/Attach/ui/Cell/Cell.styles.js +2 -0
  10. package/cjs/components/Attach/ui/Cell/Cell.styles.js.map +1 -1
  11. package/cjs/components/Attach/ui/IconButton/IconButton.styles.js +1 -0
  12. package/cjs/components/Attach/ui/IconButton/IconButton.styles.js.map +1 -1
  13. package/cjs/components/Attach/utils/getFileicon.js +4 -3
  14. package/cjs/components/Attach/utils/getFileicon.js.map +1 -1
  15. package/cjs/components/Attach/utils/index.js +3 -0
  16. package/cjs/components/Attach/utils/index.js.map +1 -1
  17. package/cjs/components/Autocomplete/Autocomplete.js +6 -5
  18. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/Autocomplete/Autocomplete.styles.js +3 -2
  20. package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -1
  21. package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js +2 -1
  22. package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -1
  23. package/cjs/components/Avatar/Avatar.js +3 -2
  24. package/cjs/components/Avatar/Avatar.js.map +1 -1
  25. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +4 -2
  26. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  27. package/cjs/components/Button/Button.styles.js +3 -0
  28. package/cjs/components/Button/Button.styles.js.map +1 -1
  29. package/cjs/components/Calendar/CalendarBase/CalendarBase.js +5 -5
  30. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +8 -8
  31. package/cjs/components/Calendar/hooks/useDays.js +2 -2
  32. package/cjs/components/Calendar/hooks/useKeyNavigation.js +1 -1
  33. package/cjs/components/Calendar/hooks/useMonths.js +2 -2
  34. package/cjs/components/Calendar/hooks/useQuarters.js +2 -2
  35. package/cjs/components/Calendar/hooks/useYears.js +2 -2
  36. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +9 -5
  37. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  38. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +6 -5
  39. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  40. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +1 -0
  41. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  42. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +9 -5
  43. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  44. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +9 -5
  45. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -1
  46. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +9 -5
  47. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  48. package/cjs/components/Combobox/ComboboxNew/Combobox.js +12 -11
  49. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  50. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +4 -2
  51. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  52. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -0
  53. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  54. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +2 -1
  55. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  56. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +6 -5
  57. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  58. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +3 -1
  59. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  60. package/cjs/components/Combobox/ComboboxNew/ui/Target/Target.styles.js +2 -1
  61. package/cjs/components/Combobox/ComboboxNew/ui/Target/Target.styles.js.map +1 -1
  62. package/cjs/components/Combobox/ComboboxOld/Combobox.js +10 -4
  63. package/cjs/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  64. package/cjs/components/Combobox/ComboboxOld/Combobox.styles.js +1 -0
  65. package/cjs/components/Combobox/ComboboxOld/Combobox.styles.js.map +1 -1
  66. package/cjs/components/Combobox/ComboboxOld/hooks/useFocusController.js +1 -0
  67. package/cjs/components/Combobox/ComboboxOld/hooks/useFocusController.js.map +1 -1
  68. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js +2 -1
  69. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js.map +1 -1
  70. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +10 -1
  71. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
  72. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +10 -1
  73. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
  74. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +10 -1
  75. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
  76. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +10 -1
  77. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
  78. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js +2 -0
  79. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  80. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.js +1 -1
  81. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js +2 -1
  82. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js.map +1 -1
  83. package/cjs/components/DatePicker/DatePickerBase.styles.js +7 -1
  84. package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  85. package/cjs/components/DatePicker/RangeDate/RangeDate.js +1 -1
  86. package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +1 -0
  87. package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
  88. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +2 -1
  89. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  90. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +5 -2
  91. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
  92. package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js +1 -0
  93. package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
  94. package/cjs/components/Drawer/Drawer.js +10 -5
  95. package/cjs/components/Drawer/Drawer.js.map +1 -1
  96. package/cjs/components/Drawer/Drawer.styles.js +4 -0
  97. package/cjs/components/Drawer/Drawer.styles.js.map +1 -1
  98. package/cjs/components/Drawer/hooks/useDrawer.js +4 -0
  99. package/cjs/components/Drawer/hooks/useDrawer.js.map +1 -1
  100. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.js +7 -0
  101. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.js.map +1 -1
  102. package/cjs/components/Drawer/ui/DrawerFooter/DrawerFooter.js +7 -0
  103. package/cjs/components/Drawer/ui/DrawerFooter/DrawerFooter.js.map +1 -1
  104. package/cjs/components/Drawer/ui/DrawerHeader/DrawerHeader.js +3 -0
  105. package/cjs/components/Drawer/ui/DrawerHeader/DrawerHeader.js.map +1 -1
  106. package/cjs/components/Dropdown/Dropdown.js +10 -3
  107. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  108. package/cjs/components/Dropdown/Dropdown.styles.js +3 -2
  109. package/cjs/components/Dropdown/Dropdown.styles.js.map +1 -1
  110. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +9 -1
  111. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  112. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +2 -1
  113. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  114. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +2 -0
  115. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -1
  116. package/cjs/components/Dropdown/ui/DropdownOld/Dropdown.styles.js +1 -0
  117. package/cjs/components/Dropdown/ui/DropdownOld/Dropdown.styles.js.map +1 -1
  118. package/cjs/components/Editable/Editable.js +4 -3
  119. package/cjs/components/Editable/Editable.js.map +1 -1
  120. package/cjs/components/Editable/utils/clearSelection.js +2 -0
  121. package/cjs/components/Editable/utils/clearSelection.js.map +1 -1
  122. package/cjs/components/Editable/utils/selectText.js +2 -0
  123. package/cjs/components/Editable/utils/selectText.js.map +1 -1
  124. package/cjs/components/EmptyState/EmptyState.styles.js +2 -1
  125. package/cjs/components/EmptyState/EmptyState.styles.js.map +1 -1
  126. package/cjs/components/IconButton/IconButton.js +1 -1
  127. package/cjs/components/IconButton/IconButton.styles.js +8 -0
  128. package/cjs/components/IconButton/IconButton.styles.js.map +1 -1
  129. package/cjs/components/Modal/Modal.js +8 -6
  130. package/cjs/components/Modal/Modal.js.map +1 -1
  131. package/cjs/components/Modal/hooks/useModal.js +4 -0
  132. package/cjs/components/Modal/hooks/useModal.js.map +1 -1
  133. package/cjs/components/Notification/Notification.styles.js +3 -2
  134. package/cjs/components/Notification/Notification.styles.js.map +1 -1
  135. package/cjs/components/Notification/NotificationsPortal.js +4 -3
  136. package/cjs/components/Notification/NotificationsPortal.js.map +1 -1
  137. package/cjs/components/Pagination/Pagination.styles.js +2 -1
  138. package/cjs/components/Pagination/Pagination.styles.js.map +1 -1
  139. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +2 -1
  140. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  141. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.js +2 -1
  142. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.js.map +1 -1
  143. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.styles.js +2 -1
  144. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.styles.js.map +1 -1
  145. package/cjs/components/Popover/Popover.js +1 -1
  146. package/cjs/components/Popup/Popup.js +2 -2
  147. package/cjs/components/Popup/PopupContext.js +1 -1
  148. package/cjs/components/Range/Range.styles.js +1 -0
  149. package/cjs/components/Range/Range.styles.js.map +1 -1
  150. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +5 -4
  151. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  152. package/cjs/components/Select/Select.js +12 -11
  153. package/cjs/components/Select/Select.js.map +1 -1
  154. package/cjs/components/Select/Select.styles.js +5 -2
  155. package/cjs/components/Select/Select.styles.js.map +1 -1
  156. package/cjs/components/Select/hooks/usePathMaps.js +2 -0
  157. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  158. package/cjs/components/Select/ui/Inner/Inner.js +2 -1
  159. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  160. package/cjs/components/Select/ui/Inner/ui/Item/Item.js +5 -4
  161. package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  162. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +1 -0
  163. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  164. package/cjs/components/Select/ui/Target/ui/Button/Button.js +1 -1
  165. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +3 -1
  166. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  167. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +2 -2
  168. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +4 -1
  169. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  170. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +2 -1
  171. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +1 -1
  172. package/cjs/components/Select/utils/getButtonLabel.js +2 -0
  173. package/cjs/components/Select/utils/getButtonLabel.js.map +1 -1
  174. package/cjs/components/Sheet/Sheet.js +3 -3
  175. package/cjs/components/Skeleton/LineSkeleton/LineSkeleton.js +4 -2
  176. package/cjs/components/Skeleton/LineSkeleton/LineSkeleton.js.map +1 -1
  177. package/cjs/components/Skeleton/RectSkeleton/RectSkeleton.js +4 -2
  178. package/cjs/components/Skeleton/RectSkeleton/RectSkeleton.js.map +1 -1
  179. package/cjs/components/Slider/Slider.js +6 -0
  180. package/cjs/components/Slider/Slider.js.map +1 -1
  181. package/cjs/components/Slider/components/Double/Double.js +2 -1
  182. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  183. package/cjs/components/Slider/components/Double/Double.styles.js +1 -0
  184. package/cjs/components/Slider/components/Double/Double.styles.js.map +1 -1
  185. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +3 -0
  186. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -1
  187. package/cjs/components/Slider/components/Single/Single.js +2 -1
  188. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  189. package/cjs/components/Slider/components/SliderBase/SliderBase.js +1 -1
  190. package/cjs/components/Steps/Steps.js +1 -1
  191. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js +1 -0
  192. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  193. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +3 -2
  194. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  195. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +3 -2
  196. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  197. package/cjs/components/TextArea/TextArea.js +1 -1
  198. package/cjs/components/TextField/TextField.js +1 -1
  199. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +2 -1
  200. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -1
  201. package/cjs/components/Toast/Toast.styles.js +1 -1
  202. package/cjs/components/Toast/ToastController.js +1 -1
  203. package/cjs/components/Toast/utils.js +2 -1
  204. package/cjs/components/Toast/utils.js.map +1 -1
  205. package/cjs/components/Toolbar/ui/ToolbarDivider/ToolbarDivider.js +1 -1
  206. package/cjs/components/Tooltip/Tooltip.js +3 -2
  207. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  208. package/cjs/engines/index.js +2 -0
  209. package/cjs/engines/index.js.map +1 -1
  210. package/cjs/hooks/useIsomorphicLayoutEffect.js +1 -0
  211. package/cjs/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  212. package/cjs/index.js +51 -48
  213. package/cjs/index.js.map +1 -1
  214. package/cjs/utils/index.js +5 -0
  215. package/cjs/utils/index.js.map +1 -1
  216. package/emotion/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  217. package/emotion/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  218. package/emotion/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  219. package/emotion/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  220. package/emotion/es/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  221. package/emotion/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  222. package/emotion/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  223. package/emotion/es/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  224. package/emotion/package.json +1 -2
  225. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +1 -0
  226. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  227. package/es/components/Attach/Attach.js +4 -3
  228. package/es/components/Attach/Attach.js.map +1 -1
  229. package/es/components/Attach/components/AttachButton/AttachButton.js +1 -0
  230. package/es/components/Attach/components/AttachButton/AttachButton.js.map +1 -1
  231. package/es/components/Attach/ui/Button/Button.styles.js +1 -0
  232. package/es/components/Attach/ui/Button/Button.styles.js.map +1 -1
  233. package/es/components/Attach/ui/Cell/Cell.styles.js +2 -0
  234. package/es/components/Attach/ui/Cell/Cell.styles.js.map +1 -1
  235. package/es/components/Attach/ui/IconButton/IconButton.styles.js +1 -0
  236. package/es/components/Attach/ui/IconButton/IconButton.styles.js.map +1 -1
  237. package/es/components/Attach/utils/getFileicon.js +4 -3
  238. package/es/components/Attach/utils/getFileicon.js.map +1 -1
  239. package/es/components/Attach/utils/index.js +3 -0
  240. package/es/components/Attach/utils/index.js.map +1 -1
  241. package/es/components/Autocomplete/Autocomplete.js +6 -5
  242. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  243. package/es/components/Autocomplete/Autocomplete.styles.js +3 -2
  244. package/es/components/Autocomplete/Autocomplete.styles.js.map +1 -1
  245. package/es/components/Autocomplete/ui/TextField/TextField.styles.js +2 -1
  246. package/es/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -1
  247. package/es/components/Avatar/Avatar.js +3 -2
  248. package/es/components/Avatar/Avatar.js.map +1 -1
  249. package/es/components/Breadcrumbs/Breadcrumbs.styles.js +4 -2
  250. package/es/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  251. package/es/components/Button/Button.styles.js +3 -0
  252. package/es/components/Button/Button.styles.js.map +1 -1
  253. package/es/components/Calendar/CalendarBase/CalendarBase.js +5 -5
  254. package/es/components/Calendar/CalendarDouble/CalendarDouble.js +8 -8
  255. package/es/components/Calendar/hooks/useDays.js +2 -2
  256. package/es/components/Calendar/hooks/useKeyNavigation.js +1 -1
  257. package/es/components/Calendar/hooks/useMonths.js +2 -2
  258. package/es/components/Calendar/hooks/useQuarters.js +2 -2
  259. package/es/components/Calendar/hooks/useYears.js +2 -2
  260. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js +9 -5
  261. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  262. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +6 -5
  263. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  264. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +1 -0
  265. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  266. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +9 -5
  267. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  268. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +9 -5
  269. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -1
  270. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js +9 -5
  271. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  272. package/es/components/Combobox/ComboboxNew/Combobox.js +12 -11
  273. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  274. package/es/components/Combobox/ComboboxNew/Combobox.styles.js +4 -2
  275. package/es/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  276. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +2 -0
  277. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  278. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +2 -1
  279. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  280. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +6 -5
  281. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  282. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +3 -1
  283. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  284. package/es/components/Combobox/ComboboxNew/ui/Target/Target.styles.js +2 -1
  285. package/es/components/Combobox/ComboboxNew/ui/Target/Target.styles.js.map +1 -1
  286. package/es/components/Combobox/ComboboxOld/Combobox.js +10 -4
  287. package/es/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  288. package/es/components/Combobox/ComboboxOld/Combobox.styles.js +1 -0
  289. package/es/components/Combobox/ComboboxOld/Combobox.styles.js.map +1 -1
  290. package/es/components/Combobox/ComboboxOld/hooks/useFocusController.js +1 -0
  291. package/es/components/Combobox/ComboboxOld/hooks/useFocusController.js.map +1 -1
  292. package/es/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js +2 -1
  293. package/es/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js.map +1 -1
  294. package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +10 -1
  295. package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
  296. package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +10 -1
  297. package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
  298. package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +10 -1
  299. package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
  300. package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +10 -1
  301. package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
  302. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js +2 -0
  303. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  304. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.js +1 -1
  305. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js +2 -1
  306. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js.map +1 -1
  307. package/es/components/DatePicker/DatePickerBase.styles.js +7 -1
  308. package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  309. package/es/components/DatePicker/RangeDate/RangeDate.js +1 -1
  310. package/es/components/DatePicker/RangeDate/RangeDate.styles.js +1 -0
  311. package/es/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
  312. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +2 -1
  313. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  314. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +5 -2
  315. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
  316. package/es/components/DatePicker/SingleDate/SingleDate.styles.js +1 -0
  317. package/es/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
  318. package/es/components/Drawer/Drawer.js +10 -5
  319. package/es/components/Drawer/Drawer.js.map +1 -1
  320. package/es/components/Drawer/Drawer.styles.js +4 -0
  321. package/es/components/Drawer/Drawer.styles.js.map +1 -1
  322. package/es/components/Drawer/hooks/useDrawer.js +4 -0
  323. package/es/components/Drawer/hooks/useDrawer.js.map +1 -1
  324. package/es/components/Drawer/ui/DrawerContent/DrawerContent.js +7 -0
  325. package/es/components/Drawer/ui/DrawerContent/DrawerContent.js.map +1 -1
  326. package/es/components/Drawer/ui/DrawerFooter/DrawerFooter.js +7 -0
  327. package/es/components/Drawer/ui/DrawerFooter/DrawerFooter.js.map +1 -1
  328. package/es/components/Drawer/ui/DrawerHeader/DrawerHeader.js +3 -0
  329. package/es/components/Drawer/ui/DrawerHeader/DrawerHeader.js.map +1 -1
  330. package/es/components/Dropdown/Dropdown.js +10 -3
  331. package/es/components/Dropdown/Dropdown.js.map +1 -1
  332. package/es/components/Dropdown/Dropdown.styles.js +3 -2
  333. package/es/components/Dropdown/Dropdown.styles.js.map +1 -1
  334. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +9 -1
  335. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  336. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +2 -1
  337. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  338. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +2 -0
  339. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -1
  340. package/es/components/Dropdown/ui/DropdownOld/Dropdown.styles.js +1 -0
  341. package/es/components/Dropdown/ui/DropdownOld/Dropdown.styles.js.map +1 -1
  342. package/es/components/Editable/Editable.js +4 -3
  343. package/es/components/Editable/Editable.js.map +1 -1
  344. package/es/components/Editable/utils/clearSelection.js +2 -0
  345. package/es/components/Editable/utils/clearSelection.js.map +1 -1
  346. package/es/components/Editable/utils/selectText.js +2 -0
  347. package/es/components/Editable/utils/selectText.js.map +1 -1
  348. package/es/components/EmptyState/EmptyState.styles.js +2 -1
  349. package/es/components/EmptyState/EmptyState.styles.js.map +1 -1
  350. package/es/components/IconButton/IconButton.js +1 -1
  351. package/es/components/IconButton/IconButton.styles.js +8 -0
  352. package/es/components/IconButton/IconButton.styles.js.map +1 -1
  353. package/es/components/Modal/Modal.js +8 -6
  354. package/es/components/Modal/Modal.js.map +1 -1
  355. package/es/components/Modal/hooks/useModal.js +4 -0
  356. package/es/components/Modal/hooks/useModal.js.map +1 -1
  357. package/es/components/Notification/Notification.styles.js +3 -2
  358. package/es/components/Notification/Notification.styles.js.map +1 -1
  359. package/es/components/Notification/NotificationsPortal.js +4 -3
  360. package/es/components/Notification/NotificationsPortal.js.map +1 -1
  361. package/es/components/Pagination/Pagination.styles.js +2 -1
  362. package/es/components/Pagination/Pagination.styles.js.map +1 -1
  363. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +2 -1
  364. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  365. package/es/components/Panel/ui/PanelHeader/PanelHeader.js +2 -1
  366. package/es/components/Panel/ui/PanelHeader/PanelHeader.js.map +1 -1
  367. package/es/components/Panel/ui/PanelHeader/PanelHeader.styles.js +2 -1
  368. package/es/components/Panel/ui/PanelHeader/PanelHeader.styles.js.map +1 -1
  369. package/es/components/Popover/Popover.js +1 -1
  370. package/es/components/Popup/Popup.js +2 -2
  371. package/es/components/Popup/PopupContext.js +1 -1
  372. package/es/components/Range/Range.styles.js +1 -0
  373. package/es/components/Range/Range.styles.js.map +1 -1
  374. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +5 -4
  375. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  376. package/es/components/Select/Select.js +12 -11
  377. package/es/components/Select/Select.js.map +1 -1
  378. package/es/components/Select/Select.styles.js +5 -2
  379. package/es/components/Select/Select.styles.js.map +1 -1
  380. package/es/components/Select/hooks/usePathMaps.js +2 -0
  381. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  382. package/es/components/Select/ui/Inner/Inner.js +2 -1
  383. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  384. package/es/components/Select/ui/Inner/ui/Item/Item.js +5 -4
  385. package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  386. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js +1 -0
  387. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  388. package/es/components/Select/ui/Target/ui/Button/Button.js +1 -1
  389. package/es/components/Select/ui/Target/ui/Button/Button.styles.js +3 -1
  390. package/es/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  391. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +2 -2
  392. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +4 -1
  393. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  394. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +2 -1
  395. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +1 -1
  396. package/es/components/Select/utils/getButtonLabel.js +2 -0
  397. package/es/components/Select/utils/getButtonLabel.js.map +1 -1
  398. package/es/components/Sheet/Sheet.js +3 -3
  399. package/es/components/Skeleton/LineSkeleton/LineSkeleton.js +4 -2
  400. package/es/components/Skeleton/LineSkeleton/LineSkeleton.js.map +1 -1
  401. package/es/components/Skeleton/RectSkeleton/RectSkeleton.js +4 -2
  402. package/es/components/Skeleton/RectSkeleton/RectSkeleton.js.map +1 -1
  403. package/es/components/Slider/Slider.js +6 -0
  404. package/es/components/Slider/Slider.js.map +1 -1
  405. package/es/components/Slider/components/Double/Double.js +2 -1
  406. package/es/components/Slider/components/Double/Double.js.map +1 -1
  407. package/es/components/Slider/components/Double/Double.styles.js +1 -0
  408. package/es/components/Slider/components/Double/Double.styles.js.map +1 -1
  409. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +3 -0
  410. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -1
  411. package/es/components/Slider/components/Single/Single.js +2 -1
  412. package/es/components/Slider/components/Single/Single.js.map +1 -1
  413. package/es/components/Slider/components/SliderBase/SliderBase.js +1 -1
  414. package/es/components/Steps/Steps.js +1 -1
  415. package/es/components/Steps/ui/StepItem/StepItem.styles.js +1 -0
  416. package/es/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  417. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +3 -2
  418. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  419. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +3 -2
  420. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  421. package/es/components/TextArea/TextArea.js +1 -1
  422. package/es/components/TextField/TextField.js +1 -1
  423. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +2 -1
  424. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -1
  425. package/es/components/Toast/Toast.styles.js +1 -1
  426. package/es/components/Toast/ToastController.js +1 -1
  427. package/es/components/Toast/utils.js +2 -1
  428. package/es/components/Toast/utils.js.map +1 -1
  429. package/es/components/Toolbar/ui/ToolbarDivider/ToolbarDivider.js +1 -1
  430. package/es/components/Tooltip/Tooltip.js +3 -2
  431. package/es/components/Tooltip/Tooltip.js.map +1 -1
  432. package/es/engines/index.js +2 -0
  433. package/es/engines/index.js.map +1 -1
  434. package/es/hooks/useIsomorphicLayoutEffect.js +1 -0
  435. package/es/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  436. package/es/index.js +24 -21
  437. package/es/index.js.map +1 -1
  438. package/es/utils/index.js +3 -0
  439. package/es/utils/index.js.map +1 -1
  440. package/package.json +2 -5
  441. package/styled-components/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  442. package/styled-components/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  443. package/styled-components/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  444. package/styled-components/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  445. package/styled-components/es/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  446. package/styled-components/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  447. package/styled-components/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  448. package/styled-components/es/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  449. package/styled-components/package.json +1 -2
  450. package/types/components/Calendar/ui/CalendarDays/CalendarDays.d.ts.map +1 -1
  451. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.d.ts.map +1 -1
  452. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.d.ts.map +1 -1
  453. package/types/components/Calendar/ui/CalendarYears/CalendarYears.d.ts.map +1 -1
@@ -1,13 +1,14 @@
1
1
  import React, { useCallback, useMemo } from 'react';
2
+ import '@linaria/react';
3
+ import { IconDisclosureLeft } from '../../../_Icon/Icons/IconDisclosureLeft.js';
4
+ import { IconDisclosureRight } from '../../../_Icon/Icons/IconDisclosureRight.js';
5
+ import { IconDisclosureDownFill } from '../../../_Icon/Icons/IconDisclosureDownFill.js';
2
6
  import { CalendarState } from '../../store/types.js';
7
+ import { MONTH_NAMES, YEAR_RENDER_COUNT } from '../../utils/constants.js';
8
+ import { getCalendarType } from '../../utils/calendarGridHelper.js';
3
9
  import { classes } from '../../Calendar.tokens.js';
4
10
  import { sizeMap } from '../../store/reducer.js';
5
11
  import { StyledHeaderDate, StyledArrow, StyledCalendarHeader, StyledNavigation, StyledDoubleHeaderWrapper, StyledHeaderDouble, StyledHeader, StyledArrows } from './CalendarHeader.styles.js';
6
- import { IconDisclosureDownFill } from '../../../_Icon/Icons/IconDisclosureDownFill.js';
7
- import { IconDisclosureLeft } from '../../../_Icon/Icons/IconDisclosureLeft.js';
8
- import { IconDisclosureRight } from '../../../_Icon/Icons/IconDisclosureRight.js';
9
- import { getCalendarType } from '../../utils/calendarGridHelper.js';
10
- import { MONTH_NAMES, YEAR_RENDER_COUNT } from '../../utils/constants.js';
11
12
 
12
13
  /**
13
14
  * Компонент шапки календаря.
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarHeader.js","sources":["../../../../../src/components/Calendar/ui/CalendarHeader/CalendarHeader.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\n\nimport { IconDisclosureDownFill, IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';\nimport { CalendarState } from '../../store/types';\nimport { getCalendarType, MONTH_NAMES, YEAR_RENDER_COUNT } from '../../utils';\nimport type { DateObject } from '../../Calendar.types';\nimport { classes } from '../../Calendar.tokens';\nimport { sizeMap } from '../../store/reducer';\n\nimport type { CalendarHeaderProps } from './CalendarHeader.types';\nimport {\n StyledArrow,\n StyledArrows,\n StyledCalendarHeader,\n StyledDoubleHeaderWrapper,\n StyledHeader,\n StyledHeaderDate,\n StyledHeaderDouble,\n StyledNavigation,\n} from './CalendarHeader.styles';\n\n/**\n * Компонент шапки календаря.\n */\nexport const CalendarHeader: React.FC<CalendarHeaderProps> = ({\n type = 'Days',\n startYear = 0,\n size,\n firstDate,\n secondDate,\n isDouble,\n onPrev,\n onNext,\n onUpdateCalendarState,\n locale,\n}) => {\n const handleCalendarState = useCallback(() => {\n const newSize: [number, number] = isDouble ? sizeMap.Months.double : sizeMap.Months.single;\n\n if (type === CalendarState.Days) {\n onUpdateCalendarState?.(CalendarState.Months, newSize);\n }\n\n if (type === CalendarState.Months || type === CalendarState.Quarters) {\n onUpdateCalendarState?.(CalendarState.Years, newSize);\n }\n }, [type, onUpdateCalendarState]);\n\n const getHeaderContent = useCallback(\n (date?: DateObject, secondPart?: boolean) => {\n if (!date) {\n return '';\n }\n\n if (type === CalendarState.Days) {\n return (\n <>\n <StyledHeaderDate>{MONTH_NAMES[locale][date.monthIndex]}</StyledHeaderDate>\n <StyledHeaderDate>\n {date.year}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n </>\n );\n }\n\n if (type === CalendarState.Months || type === CalendarState.Quarters) {\n return (\n <StyledHeaderDate>\n {date.year}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n );\n }\n\n if (type === CalendarState.Years) {\n const yearValue = secondPart ? startYear + 12 : startYear;\n\n return (\n <StyledHeaderDate>\n {yearValue}—{yearValue + YEAR_RENDER_COUNT - 1}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n );\n }\n\n return '';\n },\n [type, startYear, size, locale],\n );\n\n const currentCalendarType = getCalendarType(type);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow aria-label={`Предыдущий ${currentCalendarType}`} onClick={() => onPrev()}>\n <IconDisclosureLeft color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledArrow>\n ),\n [currentCalendarType, size, onPrev],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow aria-label={`Следующий ${currentCalendarType}`} onClick={() => onNext()}>\n <IconDisclosureRight color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledArrow>\n ),\n [currentCalendarType, size, onNext],\n );\n\n return (\n <StyledCalendarHeader>\n {isDouble ? (\n <StyledNavigation>\n <StyledDoubleHeaderWrapper>\n {PreviousButton}\n <StyledHeaderDouble onClick={handleCalendarState} aria-live=\"polite\">\n {getHeaderContent(firstDate)}\n </StyledHeaderDouble>\n </StyledDoubleHeaderWrapper>\n <StyledDoubleHeaderWrapper className={classes.doubleHeaderLastDateWrapper}>\n <StyledHeaderDouble onClick={handleCalendarState} aria-live=\"polite\">\n {getHeaderContent(secondDate, true)}\n </StyledHeaderDouble>\n {NextButton}\n </StyledDoubleHeaderWrapper>\n </StyledNavigation>\n ) : (\n <>\n <StyledHeader\n type=\"button\"\n aria-live=\"polite\"\n id=\"id-grid-label\"\n onClick={handleCalendarState}\n tabIndex={0}\n >\n {getHeaderContent(firstDate)}\n </StyledHeader>\n <StyledArrows>\n {PreviousButton}\n {NextButton}\n </StyledArrows>\n </>\n )}\n </StyledCalendarHeader>\n );\n};\n"],"names":["CalendarHeader","_ref","_ref$type","type","_ref$startYear","startYear","size","firstDate","secondDate","isDouble","onPrev","onNext","onUpdateCalendarState","locale","handleCalendarState","useCallback","newSize","sizeMap","Months","single","CalendarState","Days","Quarters","Years","getHeaderContent","date","secondPart","React","createElement","Fragment","StyledHeaderDate","MONTH_NAMES","monthIndex","year","IconDisclosureDownFill","color","yearValue","YEAR_RENDER_COUNT","currentCalendarType","getCalendarType","PreviousButton","useMemo","StyledArrow","concat","onClick","IconDisclosureLeft","NextButton","IconDisclosureRight","StyledCalendarHeader","StyledNavigation","StyledDoubleHeaderWrapper","StyledHeaderDouble","className","classes","doubleHeaderLastDateWrapper","StyledHeader","id","tabIndex","StyledArrows"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarHeader.js","sources":["../../../../../src/components/Calendar/ui/CalendarHeader/CalendarHeader.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\n\nimport { IconDisclosureDownFill, IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';\nimport { CalendarState } from '../../store/types';\nimport { getCalendarType, MONTH_NAMES, YEAR_RENDER_COUNT } from '../../utils';\nimport type { DateObject } from '../../Calendar.types';\nimport { classes } from '../../Calendar.tokens';\nimport { sizeMap } from '../../store/reducer';\n\nimport type { CalendarHeaderProps } from './CalendarHeader.types';\nimport {\n StyledArrow,\n StyledArrows,\n StyledCalendarHeader,\n StyledDoubleHeaderWrapper,\n StyledHeader,\n StyledHeaderDate,\n StyledHeaderDouble,\n StyledNavigation,\n} from './CalendarHeader.styles';\n\n/**\n * Компонент шапки календаря.\n */\nexport const CalendarHeader: React.FC<CalendarHeaderProps> = ({\n type = 'Days',\n startYear = 0,\n size,\n firstDate,\n secondDate,\n isDouble,\n onPrev,\n onNext,\n onUpdateCalendarState,\n locale,\n}) => {\n const handleCalendarState = useCallback(() => {\n const newSize: [number, number] = isDouble ? sizeMap.Months.double : sizeMap.Months.single;\n\n if (type === CalendarState.Days) {\n onUpdateCalendarState?.(CalendarState.Months, newSize);\n }\n\n if (type === CalendarState.Months || type === CalendarState.Quarters) {\n onUpdateCalendarState?.(CalendarState.Years, newSize);\n }\n }, [type, onUpdateCalendarState]);\n\n const getHeaderContent = useCallback(\n (date?: DateObject, secondPart?: boolean) => {\n if (!date) {\n return '';\n }\n\n if (type === CalendarState.Days) {\n return (\n <>\n <StyledHeaderDate>{MONTH_NAMES[locale][date.monthIndex]}</StyledHeaderDate>\n <StyledHeaderDate>\n {date.year}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n </>\n );\n }\n\n if (type === CalendarState.Months || type === CalendarState.Quarters) {\n return (\n <StyledHeaderDate>\n {date.year}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n );\n }\n\n if (type === CalendarState.Years) {\n const yearValue = secondPart ? startYear + 12 : startYear;\n\n return (\n <StyledHeaderDate>\n {yearValue}—{yearValue + YEAR_RENDER_COUNT - 1}\n <IconDisclosureDownFill color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledHeaderDate>\n );\n }\n\n return '';\n },\n [type, startYear, size, locale],\n );\n\n const currentCalendarType = getCalendarType(type);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow aria-label={`Предыдущий ${currentCalendarType}`} onClick={() => onPrev()}>\n <IconDisclosureLeft color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledArrow>\n ),\n [currentCalendarType, size, onPrev],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow aria-label={`Следующий ${currentCalendarType}`} onClick={() => onNext()}>\n <IconDisclosureRight color=\"inherit\" size={size === 'xs' ? 'xs' : 's'} />\n </StyledArrow>\n ),\n [currentCalendarType, size, onNext],\n );\n\n return (\n <StyledCalendarHeader>\n {isDouble ? (\n <StyledNavigation>\n <StyledDoubleHeaderWrapper>\n {PreviousButton}\n <StyledHeaderDouble onClick={handleCalendarState} aria-live=\"polite\">\n {getHeaderContent(firstDate)}\n </StyledHeaderDouble>\n </StyledDoubleHeaderWrapper>\n <StyledDoubleHeaderWrapper className={classes.doubleHeaderLastDateWrapper}>\n <StyledHeaderDouble onClick={handleCalendarState} aria-live=\"polite\">\n {getHeaderContent(secondDate, true)}\n </StyledHeaderDouble>\n {NextButton}\n </StyledDoubleHeaderWrapper>\n </StyledNavigation>\n ) : (\n <>\n <StyledHeader\n type=\"button\"\n aria-live=\"polite\"\n id=\"id-grid-label\"\n onClick={handleCalendarState}\n tabIndex={0}\n >\n {getHeaderContent(firstDate)}\n </StyledHeader>\n <StyledArrows>\n {PreviousButton}\n {NextButton}\n </StyledArrows>\n </>\n )}\n </StyledCalendarHeader>\n );\n};\n"],"names":["CalendarHeader","_ref","_ref$type","type","_ref$startYear","startYear","size","firstDate","secondDate","isDouble","onPrev","onNext","onUpdateCalendarState","locale","handleCalendarState","useCallback","newSize","sizeMap","Months","single","CalendarState","Days","Quarters","Years","getHeaderContent","date","secondPart","React","createElement","Fragment","StyledHeaderDate","MONTH_NAMES","monthIndex","year","IconDisclosureDownFill","color","yearValue","YEAR_RENDER_COUNT","currentCalendarType","getCalendarType","PreviousButton","useMemo","StyledArrow","concat","onClick","IconDisclosureLeft","NextButton","IconDisclosureRight","StyledCalendarHeader","StyledNavigation","StyledDoubleHeaderWrapper","StyledHeaderDouble","className","classes","doubleHeaderLastDateWrapper","StyledHeader","id","tabIndex","StyledArrows"],"mappings":";;;;;;;;;;;;AAqBA;AACA;AACA;IACaA,cAA6C,GAAG,SAAhDA,cAA6CA,CAAAC,IAAA,EAWpD;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAVFE,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,SAAA;IAAAE,cAAA,GAAAH,IAAA,CACbI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,cAAA;IACbE,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,UAAU,GAAAP,IAAA,CAAVO,UAAU;IACVC,QAAQ,GAAAR,IAAA,CAARQ,QAAQ;IACRC,MAAM,GAAAT,IAAA,CAANS,MAAM;IACNC,MAAM,GAAAV,IAAA,CAANU,MAAM;IACNC,qBAAqB,GAAAX,IAAA,CAArBW,qBAAqB;IACrBC,MAAM,GAAAZ,IAAA,CAANY,MAAM,CAAA;AAEN,EAAA,IAAMC,mBAAmB,GAAGC,WAAW,CAAC,YAAM;AAC1C,IAAA,IAAMC,OAAyB,GAAGP,QAAQ,GAAGQ,OAAO,CAACC,MAAM,CAAA,QAAA,CAAO,GAAGD,OAAO,CAACC,MAAM,CAACC,MAAM,CAAA;AAE1F,IAAA,IAAIhB,IAAI,KAAKiB,aAAa,CAACC,IAAI,EAAE;MAC7BT,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAAA,KAAA,CAAA,IAArBA,qBAAqB,CAAGQ,aAAa,CAACF,MAAM,EAAEF,OAAO,CAAC,CAAA;AAC1D,KAAA;IAEA,IAAIb,IAAI,KAAKiB,aAAa,CAACF,MAAM,IAAIf,IAAI,KAAKiB,aAAa,CAACE,QAAQ,EAAE;MAClEV,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAAA,KAAA,CAAA,IAArBA,qBAAqB,CAAGQ,aAAa,CAACG,KAAK,EAAEP,OAAO,CAAC,CAAA;AACzD,KAAA;AACJ,GAAC,EAAE,CAACb,IAAI,EAAES,qBAAqB,CAAC,CAAC,CAAA;EAEjC,IAAMY,gBAAgB,GAAGT,WAAW,CAChC,UAACU,IAAiB,EAAEC,UAAoB,EAAK;IACzC,IAAI,CAACD,IAAI,EAAE;AACP,MAAA,OAAO,EAAE,CAAA;AACb,KAAA;AAEA,IAAA,IAAItB,IAAI,KAAKiB,aAAa,CAACC,IAAI,EAAE;AAC7B,MAAA,oBACIM,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAE,QAAA,EAAA,IAAA,eACIF,KAAA,CAAAC,aAAA,CAACE,gBAAgB,QAAEC,WAAW,CAAClB,MAAM,CAAC,CAACY,IAAI,CAACO,UAAU,CAAoB,CAAC,eAC3EL,KAAA,CAAAC,aAAA,CAACE,gBAAgB,EACZL,IAAAA,EAAAA,IAAI,CAACQ,IAAI,eACVN,KAAA,CAAAC,aAAA,CAACM,sBAAsB,EAAA;AAACC,QAAAA,KAAK,EAAC,SAAS;AAAC7B,QAAAA,IAAI,EAAEA,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,GAAA;OAAM,CAC7D,CACpB,CAAC,CAAA;AAEX,KAAA;IAEA,IAAIH,IAAI,KAAKiB,aAAa,CAACF,MAAM,IAAIf,IAAI,KAAKiB,aAAa,CAACE,QAAQ,EAAE;AAClE,MAAA,oBACIK,KAAA,CAAAC,aAAA,CAACE,gBAAgB,EACZL,IAAAA,EAAAA,IAAI,CAACQ,IAAI,eACVN,KAAA,CAAAC,aAAA,CAACM,sBAAsB,EAAA;AAACC,QAAAA,KAAK,EAAC,SAAS;AAAC7B,QAAAA,IAAI,EAAEA,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,GAAA;AAAI,OAAE,CAC7D,CAAC,CAAA;AAE3B,KAAA;AAEA,IAAA,IAAIH,IAAI,KAAKiB,aAAa,CAACG,KAAK,EAAE;MAC9B,IAAMa,SAAS,GAAGV,UAAU,GAAGrB,SAAS,GAAG,EAAE,GAAGA,SAAS,CAAA;MAEzD,oBACIsB,KAAA,CAAAC,aAAA,CAACE,gBAAgB,EACZM,IAAAA,EAAAA,SAAS,EAAC,QAAC,EAACA,SAAS,GAAGC,iBAAiB,GAAG,CAAC,eAC9CV,KAAA,CAAAC,aAAA,CAACM,sBAAsB,EAAA;AAACC,QAAAA,KAAK,EAAC,SAAS;AAAC7B,QAAAA,IAAI,EAAEA,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,GAAA;AAAI,OAAE,CAC7D,CAAC,CAAA;AAE3B,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACZ,EACD,CAACH,IAAI,EAAEE,SAAS,EAAEC,IAAI,EAAEO,MAAM,CAClC,CAAC,CAAA;AAED,EAAA,IAAMyB,mBAAmB,GAAGC,eAAe,CAACpC,IAAI,CAAC,CAAA;EAEjD,IAAMqC,cAAc,GAAGC,OAAO,CAC1B,YAAA;AAAA,IAAA,oBACId,KAAA,CAAAC,aAAA,CAACc,WAAW,EAAA;MAAC,YAAAC,EAAAA,+DAAAA,CAAAA,MAAA,CAA0BL,mBAAmB,CAAG;MAACM,OAAO,EAAE,SAAAA,OAAA,GAAA;QAAA,OAAMlC,MAAM,EAAE,CAAA;AAAA,OAAA;AAAC,KAAA,eAClFiB,KAAA,CAAAC,aAAA,CAACiB,kBAAkB,EAAA;AAACV,MAAAA,KAAK,EAAC,SAAS;AAAC7B,MAAAA,IAAI,EAAEA,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,GAAA;AAAI,KAAE,CAC9D,CAAC,CAAA;GACjB,EACD,CAACgC,mBAAmB,EAAEhC,IAAI,EAAEI,MAAM,CACtC,CAAC,CAAA;EAED,IAAMoC,UAAU,GAAGL,OAAO,CACtB,YAAA;AAAA,IAAA,oBACId,KAAA,CAAAC,aAAA,CAACc,WAAW,EAAA;MAAC,YAAAC,EAAAA,yDAAAA,CAAAA,MAAA,CAAyBL,mBAAmB,CAAG;MAACM,OAAO,EAAE,SAAAA,OAAA,GAAA;QAAA,OAAMjC,MAAM,EAAE,CAAA;AAAA,OAAA;AAAC,KAAA,eACjFgB,KAAA,CAAAC,aAAA,CAACmB,mBAAmB,EAAA;AAACZ,MAAAA,KAAK,EAAC,SAAS;AAAC7B,MAAAA,IAAI,EAAEA,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,GAAA;AAAI,KAAE,CAC/D,CAAC,CAAA;GACjB,EACD,CAACgC,mBAAmB,EAAEhC,IAAI,EAAEK,MAAM,CACtC,CAAC,CAAA;EAED,oBACIgB,KAAA,CAAAC,aAAA,CAACoB,oBAAoB,EAChBvC,IAAAA,EAAAA,QAAQ,gBACLkB,KAAA,CAAAC,aAAA,CAACqB,gBAAgB,qBACbtB,KAAA,CAAAC,aAAA,CAACsB,yBAAyB,EAAA,IAAA,EACrBV,cAAc,eACfb,KAAA,CAAAC,aAAA,CAACuB,kBAAkB,EAAA;AAACP,IAAAA,OAAO,EAAE9B,mBAAoB;IAAC,WAAU,EAAA,QAAA;GACvDU,EAAAA,gBAAgB,CAACjB,SAAS,CACX,CACG,CAAC,eAC5BoB,KAAA,CAAAC,aAAA,CAACsB,yBAAyB,EAAA;IAACE,SAAS,EAAEC,OAAO,CAACC,2BAAAA;AAA4B,GAAA,eACtE3B,KAAA,CAAAC,aAAA,CAACuB,kBAAkB,EAAA;AAACP,IAAAA,OAAO,EAAE9B,mBAAoB;IAAC,WAAU,EAAA,QAAA;GACvDU,EAAAA,gBAAgB,CAAChB,UAAU,EAAE,IAAI,CAClB,CAAC,EACpBsC,UACsB,CACb,CAAC,gBAEnBnB,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAE,QAAA,qBACIF,KAAA,CAAAC,aAAA,CAAC2B,YAAY,EAAA;AACTpD,IAAAA,IAAI,EAAC,QAAQ;AACb,IAAA,WAAA,EAAU,QAAQ;AAClBqD,IAAAA,EAAE,EAAC,eAAe;AAClBZ,IAAAA,OAAO,EAAE9B,mBAAoB;AAC7B2C,IAAAA,QAAQ,EAAE,CAAA;AAAE,GAAA,EAEXjC,gBAAgB,CAACjB,SAAS,CACjB,CAAC,eACfoB,KAAA,CAAAC,aAAA,CAAC8B,YAAY,EACRlB,IAAAA,EAAAA,cAAc,EACdM,UACS,CAChB,CAEY,CAAC,CAAA;AAE/B;;;;"}
@@ -1,5 +1,6 @@
1
1
  import './CalendarHeader.styles_1jfelqf.css';
2
2
  import { styled } from '@linaria/react';
3
+ import '@linaria/core';
3
4
  import { component, mergeConfig } from '../../../../engines/common.js';
4
5
  import { iconButtonConfig } from '../../../IconButton/IconButton.js';
5
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarHeader.styles.js","sources":["../../../../../src/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens } from '../../Calendar.tokens';\nimport { component, mergeConfig } from '../../../../engines';\nimport { iconButtonConfig, iconButtonTokens } from '../../../IconButton';\nimport { flexCenter } from '../../mixins';\nimport { addFocus } from '../../../../mixins';\n\nconst mergedIconButtonConfig = mergeConfig(iconButtonConfig);\nconst IconButton = component(mergedIconButtonConfig);\n\nexport const StyledCalendarHeader = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: var(${tokens.calendarHeaderWrapperPadding});\n`;\n\nexport const StyledHeader = styled.button`\n border: none;\n background-color: transparent;\n padding: 0;\n outline: none;\n font-family: var(${tokens.calendarHeaderFontFamily});\n font-size: var(${tokens.calendarHeaderFontSize});\n font-style: var(${tokens.calendarHeaderFontStyle});\n font-weight: var(${tokens.calendarHeaderFontWeightBold});\n letter-spacing: var(${tokens.calendarHeaderFontLetterSpacing});\n line-height: var(${tokens.calendarHeaderFontLineHeight});\n padding: var(${tokens.calendarHeaderPadding});\n\n color: var(${tokens.calendarContentPrimaryColor});\n\n cursor: pointer;\n display: flex;\n gap: var(${tokens.calendarHeaderDateGap});\n justify-content: space-between;\n align-items: center;\n\n &:hover,\n &:active {\n color: var(${tokens.calendarContentSecondaryColor});\n }\n\n ${addFocus({\n outlineSize: '0.063rem',\n outlineOffset: '-0.125rem',\n outlineColor: `var(${tokens.calendarOutlineFocusColor})`,\n outlineRadius: '0.563rem',\n })};\n`;\n\nexport const StyledHeaderDate = styled.span`\n ${flexCenter};\n pointer-events: none;\n`;\n\nexport const StyledArrows = styled.div`\n display: flex;\n gap: var(${tokens.calendarHeaderArrowGap});\n padding: var(${tokens.calendarHeaderArrowPadding});\n`;\n\n// NOTE: переопределение токенов IconButton\nexport const StyledArrow = styled(IconButton)`\n ${iconButtonTokens.iconButtonColor}: var(${tokens.iconButtonColor});\n ${iconButtonTokens.iconButtonBackgroundColor}: var(${tokens.iconButtonBackgroundColor});\n ${iconButtonTokens.iconButtonColorHover}: var(${tokens.iconButtonColorHover});\n ${iconButtonTokens.iconButtonBackgroundColorHover}: var(${tokens.iconButtonBackgroundColorHover});\n ${iconButtonTokens.iconButtonColorActive}: var(${tokens.iconButtonColorActive});\n ${iconButtonTokens.iconButtonBackgroundColorActive}: var(${tokens.iconButtonBackgroundColorActive});\n ${iconButtonTokens.iconButtonHeight}: var(${tokens.iconButtonHeight});\n ${iconButtonTokens.iconButtonWidth}: var(${tokens.iconButtonWidth});\n ${iconButtonTokens.iconButtonPadding}: var(${tokens.iconButtonPadding});\n ${iconButtonTokens.iconButtonRadius}: var(${tokens.iconButtonRadius});\n ${iconButtonTokens.iconButtonFocusColor}: var(${tokens.iconButtonFocusColor});\n`;\n\nexport const StyledNavigation = styled.div`\n width: 100%;\n ${flexCenter};\n`;\n\nexport const StyledDoubleHeaderWrapper = styled.div`\n width: 100%;\n display: grid;\n align-items: center;\n grid-template-columns: var(${tokens.iconButtonWidth}) 1fr var(${tokens.iconButtonWidth});\n grid-template-areas: 'a b c';\n\n ${StyledArrow} {\n grid-area: a;\n }\n\n &.${classes.doubleHeaderLastDateWrapper} ${StyledArrow} {\n grid-area: c;\n }\n`;\n\nexport const StyledHeaderDouble = styled.button`\n border: none;\n background-color: transparent;\n padding: 0;\n outline: none;\n\n font-family: var(${tokens.calendarHeaderFontFamily});\n font-size: var(${tokens.calendarHeaderFontSize});\n font-style: var(${tokens.calendarHeaderFontStyle});\n font-weight: var(${tokens.calendarHeaderFontWeightBold});\n letter-spacing: var(${tokens.calendarHeaderFontLetterSpacing});\n line-height: var(${tokens.calendarHeaderFontLineHeight});\n\n color: var(${tokens.calendarContentPrimaryColor});\n\n grid-area: b;\n justify-self: center;\n cursor: pointer;\n display: flex;\n gap: var(${tokens.calendarHeaderDateGap});\n justify-content: space-between;\n align-items: center;\n margin: 0;\n height: fit-content;\n\n ${String(flexCenter)};\n\n ${addFocus({\n outlineSize: '0.063rem',\n outlineOffset: '-0.125rem',\n outlineColor: `var(${tokens.calendarOutlineFocusColor})`,\n outlineRadius: '0.563rem',\n })};\n`;\n"],"names":["mergedIconButtonConfig","mergeConfig","iconButtonConfig","IconButton","component","StyledCalendarHeader","styled","name","class","propsAsIs","StyledHeader","StyledHeaderDate","StyledArrows","_exp16","StyledArrow","StyledNavigation","StyledDoubleHeaderWrapper","StyledHeaderDouble"],"mappings":";;;;AAQA,IAAMA,sBAAsB,gBAAGC,WAAW,CAACC,gBAAgB,CAAC,CAAA;AAC5D,IAAMC,UAAU,gBAAGC,SAAS,CAACJ,sBAAsB,CAAC,CAAA;AAE7C,IAAMK,oBAAoB,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,sBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAKzC,EAAA;AAEM,IAAMC,YAAY,gBAAGJ,MAAM,CAAA,QAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAgCjC,EAAA;AAEM,IAAME,gBAAgB,gBAAGL,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,kBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGrC,EAAA;AAEM,IAAMG,YAAY,gBAAGN,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAIjC,EAAA;;AAED;AAAA,IAAAI,MAAA,GA9DkBA,SA8DlBA,MAAAA,GAAA;AAAA,EAAA,OACkCV,UAAU,CAAA;AAAA,CAAA,CAAA;AAArC,IAAMW,WAAW,gBAAGR,MAAM,CAAAO,MAAA,EAAA,CAAA,CAAA;AAAAN,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAYhC,EAAA;AAEM,IAAMM,gBAAgB,gBAAGT,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,kBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGrC,EAAA;AAEM,IAAMO,yBAAyB,gBAAGV,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,2BAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAc9C,EAAA;AAEM,IAAMQ,kBAAkB,gBAAGX,MAAM,CAAA,QAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,oBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAiCvC;;;;"}
1
+ {"version":3,"file":"CalendarHeader.styles.js","sources":["../../../../../src/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens } from '../../Calendar.tokens';\nimport { component, mergeConfig } from '../../../../engines';\nimport { iconButtonConfig, iconButtonTokens } from '../../../IconButton';\nimport { flexCenter } from '../../mixins';\nimport { addFocus } from '../../../../mixins';\n\nconst mergedIconButtonConfig = mergeConfig(iconButtonConfig);\nconst IconButton = component(mergedIconButtonConfig);\n\nexport const StyledCalendarHeader = styled.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: var(${tokens.calendarHeaderWrapperPadding});\n`;\n\nexport const StyledHeader = styled.button`\n border: none;\n background-color: transparent;\n padding: 0;\n outline: none;\n font-family: var(${tokens.calendarHeaderFontFamily});\n font-size: var(${tokens.calendarHeaderFontSize});\n font-style: var(${tokens.calendarHeaderFontStyle});\n font-weight: var(${tokens.calendarHeaderFontWeightBold});\n letter-spacing: var(${tokens.calendarHeaderFontLetterSpacing});\n line-height: var(${tokens.calendarHeaderFontLineHeight});\n padding: var(${tokens.calendarHeaderPadding});\n\n color: var(${tokens.calendarContentPrimaryColor});\n\n cursor: pointer;\n display: flex;\n gap: var(${tokens.calendarHeaderDateGap});\n justify-content: space-between;\n align-items: center;\n\n &:hover,\n &:active {\n color: var(${tokens.calendarContentSecondaryColor});\n }\n\n ${addFocus({\n outlineSize: '0.063rem',\n outlineOffset: '-0.125rem',\n outlineColor: `var(${tokens.calendarOutlineFocusColor})`,\n outlineRadius: '0.563rem',\n })};\n`;\n\nexport const StyledHeaderDate = styled.span`\n ${flexCenter};\n pointer-events: none;\n`;\n\nexport const StyledArrows = styled.div`\n display: flex;\n gap: var(${tokens.calendarHeaderArrowGap});\n padding: var(${tokens.calendarHeaderArrowPadding});\n`;\n\n// NOTE: переопределение токенов IconButton\nexport const StyledArrow = styled(IconButton)`\n ${iconButtonTokens.iconButtonColor}: var(${tokens.iconButtonColor});\n ${iconButtonTokens.iconButtonBackgroundColor}: var(${tokens.iconButtonBackgroundColor});\n ${iconButtonTokens.iconButtonColorHover}: var(${tokens.iconButtonColorHover});\n ${iconButtonTokens.iconButtonBackgroundColorHover}: var(${tokens.iconButtonBackgroundColorHover});\n ${iconButtonTokens.iconButtonColorActive}: var(${tokens.iconButtonColorActive});\n ${iconButtonTokens.iconButtonBackgroundColorActive}: var(${tokens.iconButtonBackgroundColorActive});\n ${iconButtonTokens.iconButtonHeight}: var(${tokens.iconButtonHeight});\n ${iconButtonTokens.iconButtonWidth}: var(${tokens.iconButtonWidth});\n ${iconButtonTokens.iconButtonPadding}: var(${tokens.iconButtonPadding});\n ${iconButtonTokens.iconButtonRadius}: var(${tokens.iconButtonRadius});\n ${iconButtonTokens.iconButtonFocusColor}: var(${tokens.iconButtonFocusColor});\n`;\n\nexport const StyledNavigation = styled.div`\n width: 100%;\n ${flexCenter};\n`;\n\nexport const StyledDoubleHeaderWrapper = styled.div`\n width: 100%;\n display: grid;\n align-items: center;\n grid-template-columns: var(${tokens.iconButtonWidth}) 1fr var(${tokens.iconButtonWidth});\n grid-template-areas: 'a b c';\n\n ${StyledArrow} {\n grid-area: a;\n }\n\n &.${classes.doubleHeaderLastDateWrapper} ${StyledArrow} {\n grid-area: c;\n }\n`;\n\nexport const StyledHeaderDouble = styled.button`\n border: none;\n background-color: transparent;\n padding: 0;\n outline: none;\n\n font-family: var(${tokens.calendarHeaderFontFamily});\n font-size: var(${tokens.calendarHeaderFontSize});\n font-style: var(${tokens.calendarHeaderFontStyle});\n font-weight: var(${tokens.calendarHeaderFontWeightBold});\n letter-spacing: var(${tokens.calendarHeaderFontLetterSpacing});\n line-height: var(${tokens.calendarHeaderFontLineHeight});\n\n color: var(${tokens.calendarContentPrimaryColor});\n\n grid-area: b;\n justify-self: center;\n cursor: pointer;\n display: flex;\n gap: var(${tokens.calendarHeaderDateGap});\n justify-content: space-between;\n align-items: center;\n margin: 0;\n height: fit-content;\n\n ${String(flexCenter)};\n\n ${addFocus({\n outlineSize: '0.063rem',\n outlineOffset: '-0.125rem',\n outlineColor: `var(${tokens.calendarOutlineFocusColor})`,\n outlineRadius: '0.563rem',\n })};\n`;\n"],"names":["mergedIconButtonConfig","mergeConfig","iconButtonConfig","IconButton","component","StyledCalendarHeader","styled","name","class","propsAsIs","StyledHeader","StyledHeaderDate","StyledArrows","_exp16","StyledArrow","StyledNavigation","StyledDoubleHeaderWrapper","StyledHeaderDouble"],"mappings":";;;;;AAQA,IAAMA,sBAAsB,gBAAGC,WAAW,CAACC,gBAAgB,CAAC,CAAA;AAC5D,IAAMC,UAAU,gBAAGC,SAAS,CAACJ,sBAAsB,CAAC,CAAA;AAE7C,IAAMK,oBAAoB,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,sBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAKzC,EAAA;AAEM,IAAMC,YAAY,gBAAGJ,MAAM,CAAA,QAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAgCjC,EAAA;AAEM,IAAME,gBAAgB,gBAAGL,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,kBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGrC,EAAA;AAEM,IAAMG,YAAY,gBAAGN,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,cAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAIjC,EAAA;;AAED;AAAA,IAAAI,MAAA,GA9DkBA,SA8DlBA,MAAAA,GAAA;AAAA,EAAA,OACkCV,UAAU,CAAA;AAAA,CAAA,CAAA;AAArC,IAAMW,WAAW,gBAAGR,MAAM,CAAAO,MAAA,EAAA,CAAA,CAAA;AAAAN,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAYhC,EAAA;AAEM,IAAMM,gBAAgB,gBAAGT,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,kBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAGrC,EAAA;AAEM,IAAMO,yBAAyB,gBAAGV,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,2BAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAc9C,EAAA;AAEM,IAAMQ,kBAAkB,gBAAGX,MAAM,CAAA,QAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,oBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAiCvC;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { useRef, useCallback, useEffect } from 'react';
3
- import { tokens, innerTokens } from '../../Calendar.tokens.js';
4
- import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
5
- import { StyledCalendarMonths, StyledFlex } from './CalendarMonths.styles.js';
6
- import { useMonths } from '../../hooks/useMonths.js';
7
3
  import { ROW_MONTH_STEP } from '../../utils/constants.js';
8
4
  import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
5
  import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
+ import { useMonths } from '../../hooks/useMonths.js';
7
+ import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
+ import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
+ import { StyledCalendarMonths, StyledFlex } from './CalendarMonths.styles.js';
10
10
 
11
11
  /**
12
12
  * Компонент месяцев в календаре.
@@ -85,6 +85,9 @@ var CalendarMonths = function CalendarMonths(_ref) {
85
85
  }
86
86
  onHoverMonth === null || onHoverMonth === void 0 || onHoverMonth(selectedDate);
87
87
  }, [getSelectedDate, onHoverMonth, value]);
88
+ var handleMouseOutGrid = function handleMouseOutGrid() {
89
+ return onHoverMonth === null || onHoverMonth === void 0 ? void 0 : onHoverMonth(undefined);
90
+ };
88
91
  var getRefs = useCallback(function (element, i, j) {
89
92
  outerRefs.current[i + offset][j] = element;
90
93
  }, [offset, outerRefs]);
@@ -97,7 +100,8 @@ var CalendarMonths = function CalendarMonths(_ref) {
97
100
  return /*#__PURE__*/React.createElement(StyledCalendarMonths, {
98
101
  role: "grid",
99
102
  "aria-labelledby": "id-grid-label",
100
- onKeyDown: onKeyDown
103
+ onKeyDown: onKeyDown,
104
+ onMouseLeave: handleMouseOutGrid
101
105
  }, months.map(function (month, i) {
102
106
  return /*#__PURE__*/React.createElement(StyledFlex, {
103
107
  role: "row",
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarMonths.js","sources":["../../../../../src/components/Calendar/ui/CalendarMonths/CalendarMonths.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useMonths } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_MONTH_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarMonthsProps } from './CalendarMonths.types';\nimport { StyledCalendarMonths, StyledFlex } from './CalendarMonths.styles';\n\n/**\n * Компонент месяцев в календаре.\n */\nexport const CalendarMonths: React.FC<CalendarMonthsProps> = ({\n date: currentDate,\n value,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredMonth,\n onChangeMonth,\n onHoverMonth,\n onSetSelected,\n onKeyDown,\n locale,\n}) => {\n const [months, selected] = useMonths({ date: currentDate, value, eventList, disabledList, min, max, locale });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_MONTH_STEP : 0;\n\n const monthItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarMonthFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarMonthFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarMonthFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarMonthFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarMonthFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarMonthFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarMonthSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarMonthItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarMonthItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarMonthItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeMonth = useCallback(\n (i: number, j: number) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeMonth(selectedDate, [i + offset, j]);\n\n if (isSelectProcess(value)) {\n onHoverMonth?.(undefined);\n }\n },\n [getSelectedDate, onChangeMonth, offset, value, onHoverMonth],\n );\n\n const handleOnHoverMonth = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverMonth?.(selectedDate);\n },\n [getSelectedDate, onHoverMonth, value],\n );\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [offset, outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarMonths role=\"grid\" aria-labelledby=\"id-grid-label\" onKeyDown={onKeyDown}>\n {months.map((month, i) => (\n <StyledFlex role=\"row\" key={i}>\n {month.map(\n (\n {\n monthName,\n monthIndex,\n isSelected,\n isCurrent,\n monthFullName,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={monthItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={date.year}\n monthIndex={monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredMonth)}\n inRange={getInRange(value, date, hoveredMonth, inRange)}\n sideInRange={getSideInRange(value, date, hoveredMonth, isSelected)}\n onClick={disabled ? undefined : handleOnChangeMonth(i, j)}\n onMouseOver={disabled ? undefined : handleOnHoverMonth}\n key={`StyledMonth-${i}-${j}`}\n role=\"gridcell\"\n aria-label={monthFullName}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {monthName}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarMonths>\n );\n};\n"],"names":["CalendarMonths","_ref","currentDate","date","value","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredMonth","onChangeMonth","onHoverMonth","onSetSelected","onKeyDown","locale","_useMonths","useMonths","_useMonths2","_slicedToArray","months","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_MONTH_STEP","monthItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarMonthFontFamily","dateStructureFontSize","calendarMonthFontSize","dateStructureFontWeight","calendarMonthFontWeight","dateStructureFontLineHeight","calendarMonthFontLineHeight","dateStructureFontLetterSpacing","calendarMonthFontLetterSpacing","dateStructureFontStyle","calendarMonthFontStyle","dateStructureSelectedFontWeight","calendarMonthSelectedFontWeight","dateStructureWidth","calendarMonthItemWidth","dateStructureHeight","calendarMonthItemHeight","dateStructureBorderRadius","calendarMonthItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeMonth","i","j","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverMonth","isSelectedDone","Array","isArray","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarMonths","role","map","month","StyledFlex","key","_ref2","monthName","isSelected","isCurrent","monthFullName","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","onMouseOver","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarMonths.js","sources":["../../../../../src/components/Calendar/ui/CalendarMonths/CalendarMonths.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useMonths } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_MONTH_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarMonthsProps } from './CalendarMonths.types';\nimport { StyledCalendarMonths, StyledFlex } from './CalendarMonths.styles';\n\n/**\n * Компонент месяцев в календаре.\n */\nexport const CalendarMonths: React.FC<CalendarMonthsProps> = ({\n date: currentDate,\n value,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredMonth,\n onChangeMonth,\n onHoverMonth,\n onSetSelected,\n onKeyDown,\n locale,\n}) => {\n const [months, selected] = useMonths({ date: currentDate, value, eventList, disabledList, min, max, locale });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_MONTH_STEP : 0;\n\n const monthItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarMonthFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarMonthFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarMonthFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarMonthFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarMonthFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarMonthFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarMonthSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarMonthItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarMonthItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarMonthItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeMonth = useCallback(\n (i: number, j: number) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeMonth(selectedDate, [i + offset, j]);\n\n if (isSelectProcess(value)) {\n onHoverMonth?.(undefined);\n }\n },\n [getSelectedDate, onChangeMonth, offset, value, onHoverMonth],\n );\n\n const handleOnHoverMonth = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverMonth?.(selectedDate);\n },\n [getSelectedDate, onHoverMonth, value],\n );\n\n const handleMouseOutGrid = () => onHoverMonth?.(undefined);\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [offset, outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarMonths\n role=\"grid\"\n aria-labelledby=\"id-grid-label\"\n onKeyDown={onKeyDown}\n onMouseLeave={handleMouseOutGrid}\n >\n {months.map((month, i) => (\n <StyledFlex role=\"row\" key={i}>\n {month.map(\n (\n {\n monthName,\n monthIndex,\n isSelected,\n isCurrent,\n monthFullName,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={monthItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={date.year}\n monthIndex={monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredMonth)}\n inRange={getInRange(value, date, hoveredMonth, inRange)}\n sideInRange={getSideInRange(value, date, hoveredMonth, isSelected)}\n onClick={disabled ? undefined : handleOnChangeMonth(i, j)}\n onMouseOver={disabled ? undefined : handleOnHoverMonth}\n key={`StyledMonth-${i}-${j}`}\n role=\"gridcell\"\n aria-label={monthFullName}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {monthName}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarMonths>\n );\n};\n"],"names":["CalendarMonths","_ref","currentDate","date","value","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredMonth","onChangeMonth","onHoverMonth","onSetSelected","onKeyDown","locale","_useMonths","useMonths","_useMonths2","_slicedToArray","months","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_MONTH_STEP","monthItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarMonthFontFamily","dateStructureFontSize","calendarMonthFontSize","dateStructureFontWeight","calendarMonthFontWeight","dateStructureFontLineHeight","calendarMonthFontLineHeight","dateStructureFontLetterSpacing","calendarMonthFontLetterSpacing","dateStructureFontStyle","calendarMonthFontStyle","dateStructureSelectedFontWeight","calendarMonthSelectedFontWeight","dateStructureWidth","calendarMonthItemWidth","dateStructureHeight","calendarMonthItemHeight","dateStructureBorderRadius","calendarMonthItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeMonth","i","j","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverMonth","isSelectedDone","Array","isArray","handleMouseOutGrid","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarMonths","role","onMouseLeave","map","month","StyledFlex","key","_ref2","monthName","isSelected","isCurrent","monthFullName","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","onMouseOver","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { useRef, useCallback, useEffect } from 'react';
3
- import { tokens, innerTokens } from '../../Calendar.tokens.js';
4
- import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
5
- import { StyledCalendarQuarters, StyledFlex } from './CalendarQuarters.styles.js';
6
- import { useQuarters } from '../../hooks/useQuarters.js';
7
3
  import { ROW_QUARTER_STEP } from '../../utils/constants.js';
8
4
  import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
5
  import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
+ import { useQuarters } from '../../hooks/useQuarters.js';
7
+ import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
+ import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
+ import { StyledCalendarQuarters, StyledFlex } from './CalendarQuarters.styles.js';
10
10
 
11
11
  /**
12
12
  * Компонент кварталов в календаре.
@@ -83,6 +83,9 @@ var CalendarQuarters = function CalendarQuarters(_ref) {
83
83
  }
84
84
  onHoverQuarter === null || onHoverQuarter === void 0 || onHoverQuarter(selectedDate);
85
85
  }, [getSelectedDate, onHoverQuarter, value]);
86
+ var handleMouseOutGrid = function handleMouseOutGrid() {
87
+ return onHoverQuarter === null || onHoverQuarter === void 0 ? void 0 : onHoverQuarter(undefined);
88
+ };
86
89
  var getRefs = useCallback(function (element, i, j) {
87
90
  outerRefs.current[i + offset][j] = element;
88
91
  }, [offset, outerRefs]);
@@ -95,7 +98,8 @@ var CalendarQuarters = function CalendarQuarters(_ref) {
95
98
  return /*#__PURE__*/React.createElement(StyledCalendarQuarters, {
96
99
  role: "grid",
97
100
  "aria-labelledby": "id-grid-label",
98
- onKeyDown: onKeyDown
101
+ onKeyDown: onKeyDown,
102
+ onMouseLeave: handleMouseOutGrid
99
103
  }, quarters.map(function (quarter, i) {
100
104
  return /*#__PURE__*/React.createElement(StyledFlex, {
101
105
  role: "row",
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarQuarters.js","sources":["../../../../../src/components/Calendar/ui/CalendarQuarters/CalendarQuarters.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useQuarters } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_QUARTER_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarQuartersProps } from './CalendarQuarters.types';\nimport { StyledCalendarQuarters, StyledFlex } from './CalendarQuarters.styles';\n\n/**\n * Компонент кварталов в календаре.\n */\nexport const CalendarQuarters: React.FC<CalendarQuartersProps> = ({\n date: currentDate,\n value,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredQuarter,\n onChangeQuarter,\n onHoverQuarter,\n onSetSelected,\n onKeyDown,\n}) => {\n const [quarters, selected] = useQuarters({ date: currentDate, value, eventList, disabledList, min, max });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_QUARTER_STEP : 0;\n\n const quarterItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarQuarterFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarQuarterFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarQuarterFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarQuarterFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarQuarterFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarQuarterFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarQuarterSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarQuarterItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarQuarterItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarQuarterItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeQuarter = useCallback(\n (i: number, j: number, quarterName: string) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeQuarter(selectedDate, [i + offset, j], quarterName);\n\n if (isSelectProcess(value)) {\n onHoverQuarter?.(undefined);\n }\n },\n [getSelectedDate, onChangeQuarter, offset, value, onHoverQuarter],\n );\n\n const handleOnHoverQuarter = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverQuarter?.(selectedDate);\n },\n [getSelectedDate, onHoverQuarter, value],\n );\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [offset, outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarQuarters role=\"grid\" aria-labelledby=\"id-grid-label\" onKeyDown={onKeyDown}>\n {quarters.map((quarter, i) => (\n <StyledFlex role=\"row\" key={i}>\n {quarter.map(\n (\n {\n quarterName,\n isSelected,\n isCurrent,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={quarterItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={date.year}\n monthIndex={date.monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredQuarter)}\n inRange={getInRange(value, date, hoveredQuarter, inRange)}\n sideInRange={getSideInRange(value, date, hoveredQuarter, isSelected)}\n onClick={disabled ? undefined : handleOnChangeQuarter(i, j, String(quarterName))}\n onMouseOver={disabled ? undefined : handleOnHoverQuarter}\n key={`StyledQuarter-${i}-${j}`}\n role=\"gridcell\"\n aria-label={quarterName}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {quarterName}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarQuarters>\n );\n};\n"],"names":["CalendarQuarters","_ref","currentDate","date","value","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredQuarter","onChangeQuarter","onHoverQuarter","onSetSelected","onKeyDown","_useQuarters","useQuarters","_useQuarters2","_slicedToArray","quarters","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_QUARTER_STEP","quarterItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarQuarterFontFamily","dateStructureFontSize","calendarQuarterFontSize","dateStructureFontWeight","calendarQuarterFontWeight","dateStructureFontLineHeight","calendarQuarterFontLineHeight","dateStructureFontLetterSpacing","calendarQuarterFontLetterSpacing","dateStructureFontStyle","calendarQuarterFontStyle","dateStructureSelectedFontWeight","calendarQuarterSelectedFontWeight","dateStructureWidth","calendarQuarterItemWidth","dateStructureHeight","calendarQuarterItemHeight","dateStructureBorderRadius","calendarQuarterItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeQuarter","i","j","quarterName","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverQuarter","isSelectedDone","Array","isArray","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarQuarters","role","map","quarter","StyledFlex","key","_ref2","isSelected","isCurrent","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","String","onMouseOver","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarQuarters.js","sources":["../../../../../src/components/Calendar/ui/CalendarQuarters/CalendarQuarters.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useQuarters } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_QUARTER_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarQuartersProps } from './CalendarQuarters.types';\nimport { StyledCalendarQuarters, StyledFlex } from './CalendarQuarters.styles';\n\n/**\n * Компонент кварталов в календаре.\n */\nexport const CalendarQuarters: React.FC<CalendarQuartersProps> = ({\n date: currentDate,\n value,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredQuarter,\n onChangeQuarter,\n onHoverQuarter,\n onSetSelected,\n onKeyDown,\n}) => {\n const [quarters, selected] = useQuarters({ date: currentDate, value, eventList, disabledList, min, max });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_QUARTER_STEP : 0;\n\n const quarterItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarQuarterFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarQuarterFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarQuarterFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarQuarterFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarQuarterFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarQuarterFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarQuarterSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarQuarterItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarQuarterItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarQuarterItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeQuarter = useCallback(\n (i: number, j: number, quarterName: string) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeQuarter(selectedDate, [i + offset, j], quarterName);\n\n if (isSelectProcess(value)) {\n onHoverQuarter?.(undefined);\n }\n },\n [getSelectedDate, onChangeQuarter, offset, value, onHoverQuarter],\n );\n\n const handleOnHoverQuarter = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverQuarter?.(selectedDate);\n },\n [getSelectedDate, onHoverQuarter, value],\n );\n\n const handleMouseOutGrid = () => onHoverQuarter?.(undefined);\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [offset, outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarQuarters\n role=\"grid\"\n aria-labelledby=\"id-grid-label\"\n onKeyDown={onKeyDown}\n onMouseLeave={handleMouseOutGrid}\n >\n {quarters.map((quarter, i) => (\n <StyledFlex role=\"row\" key={i}>\n {quarter.map(\n (\n {\n quarterName,\n isSelected,\n isCurrent,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={quarterItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={date.year}\n monthIndex={date.monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredQuarter)}\n inRange={getInRange(value, date, hoveredQuarter, inRange)}\n sideInRange={getSideInRange(value, date, hoveredQuarter, isSelected)}\n onClick={disabled ? undefined : handleOnChangeQuarter(i, j, String(quarterName))}\n onMouseOver={disabled ? undefined : handleOnHoverQuarter}\n key={`StyledQuarter-${i}-${j}`}\n role=\"gridcell\"\n aria-label={quarterName}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {quarterName}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarQuarters>\n );\n};\n"],"names":["CalendarQuarters","_ref","currentDate","date","value","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredQuarter","onChangeQuarter","onHoverQuarter","onSetSelected","onKeyDown","_useQuarters","useQuarters","_useQuarters2","_slicedToArray","quarters","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_QUARTER_STEP","quarterItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarQuarterFontFamily","dateStructureFontSize","calendarQuarterFontSize","dateStructureFontWeight","calendarQuarterFontWeight","dateStructureFontLineHeight","calendarQuarterFontLineHeight","dateStructureFontLetterSpacing","calendarQuarterFontLetterSpacing","dateStructureFontStyle","calendarQuarterFontStyle","dateStructureSelectedFontWeight","calendarQuarterSelectedFontWeight","dateStructureWidth","calendarQuarterItemWidth","dateStructureHeight","calendarQuarterItemHeight","dateStructureBorderRadius","calendarQuarterItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeQuarter","i","j","quarterName","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverQuarter","isSelectedDone","Array","isArray","handleMouseOutGrid","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarQuarters","role","onMouseLeave","map","quarter","StyledFlex","key","_ref2","isSelected","isCurrent","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","String","onMouseOver","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { useRef, useCallback, useEffect } from 'react';
3
- import { tokens, innerTokens } from '../../Calendar.tokens.js';
4
- import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
5
- import { StyledCalendarYears, StyledFlex } from './CalendarYears.styles.js';
6
- import { useYears } from '../../hooks/useYears.js';
7
3
  import { ROW_YEAR_STEP } from '../../utils/constants.js';
8
4
  import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
5
  import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
+ import { useYears } from '../../hooks/useYears.js';
7
+ import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
+ import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
+ import { StyledCalendarYears, StyledFlex } from './CalendarYears.styles.js';
10
10
 
11
11
  /**
12
12
  * Компонент годов в календаре.
@@ -85,6 +85,9 @@ var CalendarYears = function CalendarYears(_ref) {
85
85
  }
86
86
  onHoverYear === null || onHoverYear === void 0 || onHoverYear(selectedDate);
87
87
  }, [getSelectedDate, onHoverYear, value]);
88
+ var handleMouseOutGrid = function handleMouseOutGrid() {
89
+ return onHoverYear === null || onHoverYear === void 0 ? void 0 : onHoverYear(undefined);
90
+ };
88
91
  var getRefs = useCallback(function (element, i, j) {
89
92
  outerRefs.current[i + offset][j] = element;
90
93
  }, [outerRefs]);
@@ -97,7 +100,8 @@ var CalendarYears = function CalendarYears(_ref) {
97
100
  return /*#__PURE__*/React.createElement(StyledCalendarYears, {
98
101
  role: "grid",
99
102
  "aria-labelledby": "id-grid-label",
100
- onKeyDown: onKeyDown
103
+ onKeyDown: onKeyDown,
104
+ onMouseLeave: handleMouseOutGrid
101
105
  }, years.map(function (year, i) {
102
106
  return /*#__PURE__*/React.createElement(StyledFlex, {
103
107
  role: "row",
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarYears.js","sources":["../../../../../src/components/Calendar/ui/CalendarYears/CalendarYears.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useYears } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_YEAR_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarYearsProps } from './CalendarYears.types';\nimport { StyledCalendarYears, StyledFlex } from './CalendarYears.styles';\n\n/**\n * Компонент годов в календаре.\n */\nexport const CalendarYears: React.FC<CalendarYearsProps> = ({\n date: currentDate,\n value,\n startYear,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredYear,\n onChangeYear,\n onHoverYear,\n onSetSelected,\n onKeyDown,\n}) => {\n const [years, selected] = useYears({ date: currentDate, value, startYear, eventList, disabledList, min, max });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_YEAR_STEP : 0;\n\n const yearItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarYearFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarYearFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarYearFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarYearFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarYearFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarYearFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarYearSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarYearItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarYearItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarYearItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeYear = useCallback(\n (i: number, j: number) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeYear(selectedDate, [i + offset, j]);\n\n if (isSelectProcess(value)) {\n onHoverYear?.(undefined);\n }\n },\n [getSelectedDate, onChangeYear, offset, value, onHoverYear],\n );\n\n const handleOnHoverYear = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverYear?.(selectedDate);\n },\n [getSelectedDate, onHoverYear, value],\n );\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarYears role=\"grid\" aria-labelledby=\"id-grid-label\" onKeyDown={onKeyDown}>\n {years.map((year, i) => (\n <StyledFlex role=\"row\" key={i}>\n {year.map(\n (\n {\n yearValue,\n isSelected,\n isCurrent,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={yearItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={yearValue}\n monthIndex={date.monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredYear)}\n inRange={getInRange(value, date, hoveredYear, inRange)}\n sideInRange={getSideInRange(value, date, hoveredYear, isSelected)}\n onClick={disabled ? undefined : handleOnChangeYear(i, j)}\n onMouseOver={disabled ? undefined : handleOnHoverYear}\n key={`StyledYear-${i}-${j}`}\n role=\"gridcell\"\n data-year={yearValue}\n data-month-index={date.monthIndex}\n data-day={date.day}\n aria-label={String(yearValue)}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {yearValue}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarYears>\n );\n};\n"],"names":["CalendarYears","_ref","currentDate","date","value","startYear","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredYear","onChangeYear","onHoverYear","onSetSelected","onKeyDown","_useYears","useYears","_useYears2","_slicedToArray","years","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_YEAR_STEP","yearItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarYearFontFamily","dateStructureFontSize","calendarYearFontSize","dateStructureFontWeight","calendarYearFontWeight","dateStructureFontLineHeight","calendarYearFontLineHeight","dateStructureFontLetterSpacing","calendarYearFontLetterSpacing","dateStructureFontStyle","calendarYearFontStyle","dateStructureSelectedFontWeight","calendarYearSelectedFontWeight","dateStructureWidth","calendarYearItemWidth","dateStructureHeight","calendarYearItemHeight","dateStructureBorderRadius","calendarYearItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeYear","i","j","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverYear","isSelectedDone","Array","isArray","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarYears","role","map","StyledFlex","key","_ref2","yearValue","isSelected","isCurrent","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","onMouseOver","String","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarYears.js","sources":["../../../../../src/components/Calendar/ui/CalendarYears/CalendarYears.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from 'react';\n\nimport { useYears } from '../../hooks';\nimport { innerTokens, tokens } from '../../Calendar.tokens';\nimport { ROW_YEAR_STEP, canSelectDate, getInRange, getSideInRange, isSameDay, isSelectProcess } from '../../utils';\nimport { DateStructureItem } from '../DateStructureItem/DateStructureItem';\n\nimport type { CalendarYearsProps } from './CalendarYears.types';\nimport { StyledCalendarYears, StyledFlex } from './CalendarYears.styles';\n\n/**\n * Компонент годов в календаре.\n */\nexport const CalendarYears: React.FC<CalendarYearsProps> = ({\n date: currentDate,\n value,\n startYear,\n selectIndexes,\n eventList,\n disabledList,\n min,\n max,\n outerRefs,\n isDouble,\n isSecond,\n hoveredYear,\n onChangeYear,\n onHoverYear,\n onSetSelected,\n onKeyDown,\n}) => {\n const [years, selected] = useYears({ date: currentDate, value, startYear, eventList, disabledList, min, max });\n const selectedRef = useRef(selected);\n const onSetSelectedRef = useRef(onSetSelected);\n\n const offset = isSecond ? ROW_YEAR_STEP : 0;\n\n const yearItemTokens = {\n [`${innerTokens.dateStructureFontFamily}`]: `var(${tokens.calendarYearFontFamily})`,\n [`${innerTokens.dateStructureFontSize}`]: `var(${tokens.calendarYearFontSize})`,\n [`${innerTokens.dateStructureFontWeight}`]: `var(${tokens.calendarYearFontWeight})`,\n [`${innerTokens.dateStructureFontLineHeight}`]: `var(${tokens.calendarYearFontLineHeight})`,\n [`${innerTokens.dateStructureFontLetterSpacing}`]: `var(${tokens.calendarYearFontLetterSpacing})`,\n [`${innerTokens.dateStructureFontStyle}`]: `var(${tokens.calendarYearFontStyle})`,\n [`${innerTokens.dateStructureSelectedFontWeight}`]: `var(${tokens.calendarYearSelectedFontWeight})`,\n [`${innerTokens.dateStructureWidth}`]: `var(${tokens.calendarYearItemWidth})`,\n [`${innerTokens.dateStructureHeight}`]: `var(${tokens.calendarYearItemHeight})`,\n [`${innerTokens.dateStructureBorderRadius}`]: `var(${tokens.calendarYearItemBorderRadius})`,\n };\n\n const getSelectedDate = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const { day, monthIndex, year } = event.currentTarget.dataset;\n\n const selectedDate = {\n day: Number(day),\n monthIndex: Number(monthIndex),\n year: Number(year),\n };\n\n if (!canSelectDate(selectedDate, value, disabledList)) {\n return;\n }\n\n return selectedDate;\n },\n [disabledList, value],\n );\n\n const handleOnChangeYear = useCallback(\n (i: number, j: number) => (event: React.MouseEvent<HTMLDivElement>) => {\n /**\n * нужно вызвать stopImmediatePropagation для случаев, когда\n * обработчик события onClick навешивается снаружи.\n * Как, например, в компоненте Popup\n */\n event.nativeEvent.stopImmediatePropagation();\n\n const selectedDate = getSelectedDate(event);\n\n if (!selectedDate) {\n return;\n }\n\n onChangeYear(selectedDate, [i + offset, j]);\n\n if (isSelectProcess(value)) {\n onHoverYear?.(undefined);\n }\n },\n [getSelectedDate, onChangeYear, offset, value, onHoverYear],\n );\n\n const handleOnHoverYear = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedDate = getSelectedDate(event);\n const isSelectedDone = Array.isArray(value) && value[0] && value[1];\n\n if (!selectedDate || !Array.isArray(value) || isSelectedDone) {\n return;\n }\n\n onHoverYear?.(selectedDate);\n },\n [getSelectedDate, onHoverYear, value],\n );\n\n const handleMouseOutGrid = () => onHoverYear?.(undefined);\n\n const getRefs = useCallback(\n (element: HTMLDivElement, i: number, j: number) => {\n outerRefs.current[i + offset][j] = element;\n },\n [outerRefs],\n );\n\n useEffect(() => {\n if (selectedRef.current) {\n onSetSelectedRef.current?.(selectedRef.current);\n }\n }, []);\n\n return (\n <StyledCalendarYears\n role=\"grid\"\n aria-labelledby=\"id-grid-label\"\n onKeyDown={onKeyDown}\n onMouseLeave={handleMouseOutGrid}\n >\n {years.map((year, i) => (\n <StyledFlex role=\"row\" key={i}>\n {year.map(\n (\n {\n yearValue,\n isSelected,\n isCurrent,\n date,\n events,\n isOutOfMinMaxRange,\n inRange,\n disabled,\n disabledArrowKey,\n disabledDates,\n },\n j,\n ) => {\n return (\n <DateStructureItem\n ref={(element: HTMLDivElement) => getRefs(element, i, j)}\n style={yearItemTokens}\n eventList={events}\n disabled={disabled}\n day={date.day}\n year={yearValue}\n monthIndex={date.monthIndex}\n isFocused={\n i + offset === selectIndexes?.[0] &&\n j === selectIndexes?.[1] &&\n !isOutOfMinMaxRange\n }\n isSelected={isSelected}\n isCurrent={isCurrent}\n isDouble={isDouble}\n isHovered={isSameDay(date, hoveredYear)}\n inRange={getInRange(value, date, hoveredYear, inRange)}\n sideInRange={getSideInRange(value, date, hoveredYear, isSelected)}\n onClick={disabled ? undefined : handleOnChangeYear(i, j)}\n onMouseOver={disabled ? undefined : handleOnHoverYear}\n key={`StyledYear-${i}-${j}`}\n role=\"gridcell\"\n data-year={yearValue}\n data-month-index={date.monthIndex}\n data-day={date.day}\n aria-label={String(yearValue)}\n disabledArrowKey={disabledArrowKey}\n disabledMonths={disabledDates}\n isDayInCurrentMonth\n >\n {yearValue}\n </DateStructureItem>\n );\n },\n )}\n </StyledFlex>\n ))}\n </StyledCalendarYears>\n );\n};\n"],"names":["CalendarYears","_ref","currentDate","date","value","startYear","selectIndexes","eventList","disabledList","min","max","outerRefs","isDouble","isSecond","hoveredYear","onChangeYear","onHoverYear","onSetSelected","onKeyDown","_useYears","useYears","_useYears2","_slicedToArray","years","selected","selectedRef","useRef","onSetSelectedRef","offset","ROW_YEAR_STEP","yearItemTokens","_defineProperty","concat","innerTokens","dateStructureFontFamily","tokens","calendarYearFontFamily","dateStructureFontSize","calendarYearFontSize","dateStructureFontWeight","calendarYearFontWeight","dateStructureFontLineHeight","calendarYearFontLineHeight","dateStructureFontLetterSpacing","calendarYearFontLetterSpacing","dateStructureFontStyle","calendarYearFontStyle","dateStructureSelectedFontWeight","calendarYearSelectedFontWeight","dateStructureWidth","calendarYearItemWidth","dateStructureHeight","calendarYearItemHeight","dateStructureBorderRadius","calendarYearItemBorderRadius","getSelectedDate","useCallback","event","_event$currentTarget$","currentTarget","dataset","day","monthIndex","year","selectedDate","Number","canSelectDate","handleOnChangeYear","i","j","nativeEvent","stopImmediatePropagation","isSelectProcess","undefined","handleOnHoverYear","isSelectedDone","Array","isArray","handleMouseOutGrid","getRefs","element","current","useEffect","_onSetSelectedRef$cur","call","React","createElement","StyledCalendarYears","role","onMouseLeave","map","StyledFlex","key","_ref2","yearValue","isSelected","isCurrent","events","isOutOfMinMaxRange","inRange","disabled","disabledArrowKey","disabledDates","DateStructureItem","ref","style","isFocused","isHovered","isSameDay","getInRange","sideInRange","getSideInRange","onClick","onMouseOver","String","disabledMonths","isDayInCurrentMonth"],"mappings":"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"}
@@ -1,26 +1,27 @@
1
1
  import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useMemo, useState, useRef, useReducer, useLayoutEffect, createContext } from 'react';
3
3
  import { useForkRef, safeUseId } from '@salutejs/plasma-core';
4
+ import '../../../utils/react.js';
5
+ import { isEmpty } from '../../../utils/isEmpty.js';
6
+ import { useOutsideClick } from '../../../hooks/useOutsideClick.js';
7
+ import { sizeToIconSize } from '../../Select/utils/sizeToIconSize.js';
4
8
  import { classes } from './Combobox.tokens.js';
5
9
  import { FloatingPopover } from './FloatingPopover.js';
6
10
  import { getItemByFocused, useKeyNavigation } from './hooks/useKeyboardNavigation.js';
7
- import { getTreeMaps, getPathMap } from './hooks/getPathMaps.js';
8
- import { IconArrowWrapper, StyledArrow, Ul, StyledEmptyState, base } from './Combobox.styles.js';
9
- import { base as base$1 } from './variations/_view/base.js';
10
- import { base as base$2 } from './variations/_size/base.js';
11
11
  import { initialItemsTransform } from './utils/initialItemsTransform.js';
12
- import { filterItems } from './utils/filterItems.js';
13
- import { pathReducer } from './reducers/pathReducer.js';
14
- import { focusedPathReducer } from './reducers/focusedPathReducer.js';
15
- import { useOutsideClick } from '../../../hooks/useOutsideClick.js';
16
- import { isEmpty } from '../../../utils/isEmpty.js';
17
12
  import { updateDescendants } from './utils/updateDescendants.js';
18
13
  import { updateAncestors } from './utils/updateAncestors.js';
19
14
  import { updateSingleAncestors } from './utils/updateSingleAncestors.js';
20
- import { StyledTextField } from './ui/Target/Target.styles.js';
21
- import { sizeToIconSize } from '../../Select/utils/sizeToIconSize.js';
15
+ import { filterItems } from './utils/filterItems.js';
22
16
  import { getItemId } from './utils/getItemId.js';
23
17
  import { Inner } from './ui/Inner/Inner.js';
18
+ import { StyledTextField } from './ui/Target/Target.styles.js';
19
+ import { pathReducer } from './reducers/pathReducer.js';
20
+ import { focusedPathReducer } from './reducers/focusedPathReducer.js';
21
+ import { getTreeMaps, getPathMap } from './hooks/getPathMaps.js';
22
+ import { IconArrowWrapper, StyledArrow, Ul, StyledEmptyState, base } from './Combobox.styles.js';
23
+ import { base as base$1 } from './variations/_view/base.js';
24
+ import { base as base$2 } from './variations/_size/base.js';
24
25
 
25
26
  var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "alwaysOpened", "filter", "closeAfterSelect"];
26
27
  var Context = /*#__PURE__*/createContext({});