@salutejs/plasma-new-hope 0.162.2-dev.0 → 0.162.3-canary.1448.11254553277.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (419) hide show
  1. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +0 -1
  2. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  3. package/cjs/components/Attach/Attach.js +3 -4
  4. package/cjs/components/Attach/Attach.js.map +1 -1
  5. package/cjs/components/Attach/components/AttachButton/AttachButton.js +0 -1
  6. package/cjs/components/Attach/components/AttachButton/AttachButton.js.map +1 -1
  7. package/cjs/components/Attach/ui/Button/Button.styles.js +0 -1
  8. package/cjs/components/Attach/ui/Button/Button.styles.js.map +1 -1
  9. package/cjs/components/Attach/ui/Cell/Cell.styles.js +0 -2
  10. package/cjs/components/Attach/ui/Cell/Cell.styles.js.map +1 -1
  11. package/cjs/components/Attach/ui/IconButton/IconButton.styles.js +0 -1
  12. package/cjs/components/Attach/ui/IconButton/IconButton.styles.js.map +1 -1
  13. package/cjs/components/Attach/utils/getFileicon.js +3 -4
  14. package/cjs/components/Attach/utils/getFileicon.js.map +1 -1
  15. package/cjs/components/Attach/utils/index.js +0 -3
  16. package/cjs/components/Attach/utils/index.js.map +1 -1
  17. package/cjs/components/Autocomplete/Autocomplete.js +5 -6
  18. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/Autocomplete/Autocomplete.styles.js +2 -3
  20. package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -1
  21. package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js +1 -2
  22. package/cjs/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -1
  23. package/cjs/components/Avatar/Avatar.js +2 -3
  24. package/cjs/components/Avatar/Avatar.js.map +1 -1
  25. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +2 -4
  26. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  27. package/cjs/components/Button/Button.styles.js +0 -3
  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 +4 -4
  37. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +5 -6
  38. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  39. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +0 -1
  40. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  41. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +4 -4
  42. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +4 -4
  43. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +4 -4
  44. package/cjs/components/Combobox/ComboboxNew/Combobox.js +11 -12
  45. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  46. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +2 -4
  47. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  48. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +0 -2
  49. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  50. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -2
  51. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  52. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +5 -6
  53. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  54. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +1 -3
  55. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  56. package/cjs/components/Combobox/ComboboxNew/ui/Target/Target.styles.js +1 -2
  57. package/cjs/components/Combobox/ComboboxNew/ui/Target/Target.styles.js.map +1 -1
  58. package/cjs/components/Combobox/ComboboxOld/Combobox.js +4 -10
  59. package/cjs/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  60. package/cjs/components/Combobox/ComboboxOld/Combobox.styles.js +0 -1
  61. package/cjs/components/Combobox/ComboboxOld/Combobox.styles.js.map +1 -1
  62. package/cjs/components/Combobox/ComboboxOld/hooks/useFocusController.js +0 -1
  63. package/cjs/components/Combobox/ComboboxOld/hooks/useFocusController.js.map +1 -1
  64. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js +1 -2
  65. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js.map +1 -1
  66. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +1 -10
  67. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
  68. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +1 -10
  69. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
  70. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +1 -10
  71. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
  72. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +1 -10
  73. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
  74. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js +0 -2
  75. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  76. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.js +1 -1
  77. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js +1 -2
  78. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js.map +1 -1
  79. package/cjs/components/DatePicker/DatePickerBase.styles.js +1 -7
  80. package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  81. package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +0 -1
  82. package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
  83. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +1 -2
  84. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  85. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +2 -5
  86. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
  87. package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js +0 -1
  88. package/cjs/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
  89. package/cjs/components/Drawer/Drawer.js +5 -10
  90. package/cjs/components/Drawer/Drawer.js.map +1 -1
  91. package/cjs/components/Drawer/Drawer.styles.js +0 -4
  92. package/cjs/components/Drawer/Drawer.styles.js.map +1 -1
  93. package/cjs/components/Drawer/hooks/useDrawer.js +0 -4
  94. package/cjs/components/Drawer/hooks/useDrawer.js.map +1 -1
  95. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.js +0 -7
  96. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.js.map +1 -1
  97. package/cjs/components/Drawer/ui/DrawerFooter/DrawerFooter.js +0 -7
  98. package/cjs/components/Drawer/ui/DrawerFooter/DrawerFooter.js.map +1 -1
  99. package/cjs/components/Drawer/ui/DrawerHeader/DrawerHeader.js +0 -3
  100. package/cjs/components/Drawer/ui/DrawerHeader/DrawerHeader.js.map +1 -1
  101. package/cjs/components/Dropdown/Dropdown.js +3 -10
  102. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  103. package/cjs/components/Dropdown/Dropdown.styles.js +2 -3
  104. package/cjs/components/Dropdown/Dropdown.styles.js.map +1 -1
  105. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -9
  106. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  107. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +1 -2
  108. package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  109. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +0 -2
  110. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -1
  111. package/cjs/components/Dropdown/ui/DropdownOld/Dropdown.styles.js +0 -1
  112. package/cjs/components/Dropdown/ui/DropdownOld/Dropdown.styles.js.map +1 -1
  113. package/cjs/components/Editable/Editable.js +3 -4
  114. package/cjs/components/Editable/Editable.js.map +1 -1
  115. package/cjs/components/Editable/utils/clearSelection.js +0 -2
  116. package/cjs/components/Editable/utils/clearSelection.js.map +1 -1
  117. package/cjs/components/Editable/utils/selectText.js +0 -2
  118. package/cjs/components/Editable/utils/selectText.js.map +1 -1
  119. package/cjs/components/EmptyState/EmptyState.styles.js +1 -2
  120. package/cjs/components/EmptyState/EmptyState.styles.js.map +1 -1
  121. package/cjs/components/IconButton/IconButton.js +1 -1
  122. package/cjs/components/IconButton/IconButton.styles.js +0 -8
  123. package/cjs/components/IconButton/IconButton.styles.js.map +1 -1
  124. package/cjs/components/Modal/Modal.js +6 -8
  125. package/cjs/components/Modal/Modal.js.map +1 -1
  126. package/cjs/components/Modal/hooks/useModal.js +0 -4
  127. package/cjs/components/Modal/hooks/useModal.js.map +1 -1
  128. package/cjs/components/Notification/Notification.styles.js +2 -3
  129. package/cjs/components/Notification/Notification.styles.js.map +1 -1
  130. package/cjs/components/Notification/NotificationsPortal.js +3 -4
  131. package/cjs/components/Notification/NotificationsPortal.js.map +1 -1
  132. package/cjs/components/Pagination/Pagination.styles.js +1 -2
  133. package/cjs/components/Pagination/Pagination.styles.js.map +1 -1
  134. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -2
  135. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  136. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.js +1 -2
  137. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.js.map +1 -1
  138. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.styles.js +1 -2
  139. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.styles.js.map +1 -1
  140. package/cjs/components/Popover/Popover.js +1 -1
  141. package/cjs/components/Popup/Popup.js +2 -2
  142. package/cjs/components/Popup/PopupContext.js +1 -1
  143. package/cjs/components/Range/Range.styles.js +0 -1
  144. package/cjs/components/Range/Range.styles.js.map +1 -1
  145. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +2 -3
  146. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  147. package/cjs/components/Select/Select.js +11 -12
  148. package/cjs/components/Select/Select.js.map +1 -1
  149. package/cjs/components/Select/Select.styles.js +2 -5
  150. package/cjs/components/Select/Select.styles.js.map +1 -1
  151. package/cjs/components/Select/hooks/usePathMaps.js +0 -2
  152. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  153. package/cjs/components/Select/ui/Inner/Inner.js +1 -2
  154. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  155. package/cjs/components/Select/ui/Inner/ui/Item/Item.js +4 -5
  156. package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  157. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +0 -1
  158. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  159. package/cjs/components/Select/ui/Target/ui/Button/Button.js +1 -1
  160. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +1 -3
  161. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  162. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +2 -2
  163. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -4
  164. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  165. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +1 -2
  166. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +1 -1
  167. package/cjs/components/Select/utils/getButtonLabel.js +0 -2
  168. package/cjs/components/Select/utils/getButtonLabel.js.map +1 -1
  169. package/cjs/components/Sheet/Sheet.js +3 -3
  170. package/cjs/components/Skeleton/LineSkeleton/LineSkeleton.js +2 -4
  171. package/cjs/components/Skeleton/LineSkeleton/LineSkeleton.js.map +1 -1
  172. package/cjs/components/Skeleton/RectSkeleton/RectSkeleton.js +2 -4
  173. package/cjs/components/Skeleton/RectSkeleton/RectSkeleton.js.map +1 -1
  174. package/cjs/components/Slider/Slider.js +0 -6
  175. package/cjs/components/Slider/Slider.js.map +1 -1
  176. package/cjs/components/Slider/components/Double/Double.js +1 -2
  177. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  178. package/cjs/components/Slider/components/Double/Double.styles.js +0 -1
  179. package/cjs/components/Slider/components/Double/Double.styles.js.map +1 -1
  180. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -3
  181. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -1
  182. package/cjs/components/Slider/components/Single/Single.js +1 -2
  183. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  184. package/cjs/components/Slider/components/SliderBase/SliderBase.js +1 -1
  185. package/cjs/components/Steps/Steps.js +1 -1
  186. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js +0 -1
  187. package/cjs/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  188. package/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -3
  189. package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  190. package/cjs/components/TextArea/TextArea.js +1 -1
  191. package/cjs/components/TextField/TextField.js +1 -1
  192. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +1 -2
  193. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -1
  194. package/cjs/components/Toast/Toast.styles.js +1 -1
  195. package/cjs/components/Toast/ToastController.js +1 -1
  196. package/cjs/components/Toast/utils.js +1 -2
  197. package/cjs/components/Toast/utils.js.map +1 -1
  198. package/cjs/components/Toolbar/ui/ToolbarDivider/ToolbarDivider.js +1 -1
  199. package/cjs/components/Tooltip/Tooltip.js +2 -3
  200. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  201. package/cjs/engines/index.js +0 -2
  202. package/cjs/engines/index.js.map +1 -1
  203. package/cjs/hooks/useIsomorphicLayoutEffect.js +0 -1
  204. package/cjs/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  205. package/cjs/index.js +48 -51
  206. package/cjs/index.js.map +1 -1
  207. package/cjs/utils/index.js +0 -5
  208. package/cjs/utils/index.js.map +1 -1
  209. package/emotion/package.json +2 -1
  210. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +0 -1
  211. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  212. package/es/components/Attach/Attach.js +3 -4
  213. package/es/components/Attach/Attach.js.map +1 -1
  214. package/es/components/Attach/components/AttachButton/AttachButton.js +0 -1
  215. package/es/components/Attach/components/AttachButton/AttachButton.js.map +1 -1
  216. package/es/components/Attach/ui/Button/Button.styles.js +0 -1
  217. package/es/components/Attach/ui/Button/Button.styles.js.map +1 -1
  218. package/es/components/Attach/ui/Cell/Cell.styles.js +0 -2
  219. package/es/components/Attach/ui/Cell/Cell.styles.js.map +1 -1
  220. package/es/components/Attach/ui/IconButton/IconButton.styles.js +0 -1
  221. package/es/components/Attach/ui/IconButton/IconButton.styles.js.map +1 -1
  222. package/es/components/Attach/utils/getFileicon.js +3 -4
  223. package/es/components/Attach/utils/getFileicon.js.map +1 -1
  224. package/es/components/Attach/utils/index.js +0 -3
  225. package/es/components/Attach/utils/index.js.map +1 -1
  226. package/es/components/Autocomplete/Autocomplete.js +5 -6
  227. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  228. package/es/components/Autocomplete/Autocomplete.styles.js +2 -3
  229. package/es/components/Autocomplete/Autocomplete.styles.js.map +1 -1
  230. package/es/components/Autocomplete/ui/TextField/TextField.styles.js +1 -2
  231. package/es/components/Autocomplete/ui/TextField/TextField.styles.js.map +1 -1
  232. package/es/components/Avatar/Avatar.js +2 -3
  233. package/es/components/Avatar/Avatar.js.map +1 -1
  234. package/es/components/Breadcrumbs/Breadcrumbs.styles.js +2 -4
  235. package/es/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  236. package/es/components/Button/Button.styles.js +0 -3
  237. package/es/components/Button/Button.styles.js.map +1 -1
  238. package/es/components/Calendar/CalendarBase/CalendarBase.js +5 -5
  239. package/es/components/Calendar/CalendarDouble/CalendarDouble.js +8 -8
  240. package/es/components/Calendar/hooks/useDays.js +2 -2
  241. package/es/components/Calendar/hooks/useKeyNavigation.js +1 -1
  242. package/es/components/Calendar/hooks/useMonths.js +2 -2
  243. package/es/components/Calendar/hooks/useQuarters.js +2 -2
  244. package/es/components/Calendar/hooks/useYears.js +2 -2
  245. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js +4 -4
  246. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +5 -6
  247. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  248. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +0 -1
  249. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  250. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +4 -4
  251. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +4 -4
  252. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js +4 -4
  253. package/es/components/Combobox/ComboboxNew/Combobox.js +11 -12
  254. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  255. package/es/components/Combobox/ComboboxNew/Combobox.styles.js +2 -4
  256. package/es/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  257. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +0 -2
  258. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  259. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -2
  260. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  261. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +5 -6
  262. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  263. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +1 -3
  264. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  265. package/es/components/Combobox/ComboboxNew/ui/Target/Target.styles.js +1 -2
  266. package/es/components/Combobox/ComboboxNew/ui/Target/Target.styles.js.map +1 -1
  267. package/es/components/Combobox/ComboboxOld/Combobox.js +4 -10
  268. package/es/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  269. package/es/components/Combobox/ComboboxOld/Combobox.styles.js +0 -1
  270. package/es/components/Combobox/ComboboxOld/Combobox.styles.js.map +1 -1
  271. package/es/components/Combobox/ComboboxOld/hooks/useFocusController.js +0 -1
  272. package/es/components/Combobox/ComboboxOld/hooks/useFocusController.js.map +1 -1
  273. package/es/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js +1 -2
  274. package/es/components/Combobox/ComboboxOld/ui/ComboboxChip/ComboboxChip.styles.js.map +1 -1
  275. package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js +1 -10
  276. package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.js.map +1 -1
  277. package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js +1 -10
  278. package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.js.map +1 -1
  279. package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js +1 -10
  280. package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.js.map +1 -1
  281. package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js +1 -10
  282. package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.js.map +1 -1
  283. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js +0 -2
  284. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.styles.js.map +1 -1
  285. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.js +1 -1
  286. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js +1 -2
  287. package/es/components/Combobox/ComboboxOld/ui/ComboboxTarget/ComboboxTarget.styles.js.map +1 -1
  288. package/es/components/DatePicker/DatePickerBase.styles.js +1 -7
  289. package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  290. package/es/components/DatePicker/RangeDate/RangeDate.styles.js +0 -1
  291. package/es/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
  292. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +1 -2
  293. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  294. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +2 -5
  295. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js.map +1 -1
  296. package/es/components/DatePicker/SingleDate/SingleDate.styles.js +0 -1
  297. package/es/components/DatePicker/SingleDate/SingleDate.styles.js.map +1 -1
  298. package/es/components/Drawer/Drawer.js +5 -10
  299. package/es/components/Drawer/Drawer.js.map +1 -1
  300. package/es/components/Drawer/Drawer.styles.js +0 -4
  301. package/es/components/Drawer/Drawer.styles.js.map +1 -1
  302. package/es/components/Drawer/hooks/useDrawer.js +0 -4
  303. package/es/components/Drawer/hooks/useDrawer.js.map +1 -1
  304. package/es/components/Drawer/ui/DrawerContent/DrawerContent.js +0 -7
  305. package/es/components/Drawer/ui/DrawerContent/DrawerContent.js.map +1 -1
  306. package/es/components/Drawer/ui/DrawerFooter/DrawerFooter.js +0 -7
  307. package/es/components/Drawer/ui/DrawerFooter/DrawerFooter.js.map +1 -1
  308. package/es/components/Drawer/ui/DrawerHeader/DrawerHeader.js +0 -3
  309. package/es/components/Drawer/ui/DrawerHeader/DrawerHeader.js.map +1 -1
  310. package/es/components/Dropdown/Dropdown.js +3 -10
  311. package/es/components/Dropdown/Dropdown.js.map +1 -1
  312. package/es/components/Dropdown/Dropdown.styles.js +2 -3
  313. package/es/components/Dropdown/Dropdown.styles.js.map +1 -1
  314. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -9
  315. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  316. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +1 -2
  317. package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
  318. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js +0 -2
  319. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItem.styles.js.map +1 -1
  320. package/es/components/Dropdown/ui/DropdownOld/Dropdown.styles.js +0 -1
  321. package/es/components/Dropdown/ui/DropdownOld/Dropdown.styles.js.map +1 -1
  322. package/es/components/Editable/Editable.js +3 -4
  323. package/es/components/Editable/Editable.js.map +1 -1
  324. package/es/components/Editable/utils/clearSelection.js +0 -2
  325. package/es/components/Editable/utils/clearSelection.js.map +1 -1
  326. package/es/components/Editable/utils/selectText.js +0 -2
  327. package/es/components/Editable/utils/selectText.js.map +1 -1
  328. package/es/components/EmptyState/EmptyState.styles.js +1 -2
  329. package/es/components/EmptyState/EmptyState.styles.js.map +1 -1
  330. package/es/components/IconButton/IconButton.js +1 -1
  331. package/es/components/IconButton/IconButton.styles.js +0 -8
  332. package/es/components/IconButton/IconButton.styles.js.map +1 -1
  333. package/es/components/Modal/Modal.js +6 -8
  334. package/es/components/Modal/Modal.js.map +1 -1
  335. package/es/components/Modal/hooks/useModal.js +0 -4
  336. package/es/components/Modal/hooks/useModal.js.map +1 -1
  337. package/es/components/Notification/Notification.styles.js +2 -3
  338. package/es/components/Notification/Notification.styles.js.map +1 -1
  339. package/es/components/Notification/NotificationsPortal.js +3 -4
  340. package/es/components/Notification/NotificationsPortal.js.map +1 -1
  341. package/es/components/Pagination/Pagination.styles.js +1 -2
  342. package/es/components/Pagination/Pagination.styles.js.map +1 -1
  343. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -2
  344. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  345. package/es/components/Panel/ui/PanelHeader/PanelHeader.js +1 -2
  346. package/es/components/Panel/ui/PanelHeader/PanelHeader.js.map +1 -1
  347. package/es/components/Panel/ui/PanelHeader/PanelHeader.styles.js +1 -2
  348. package/es/components/Panel/ui/PanelHeader/PanelHeader.styles.js.map +1 -1
  349. package/es/components/Popover/Popover.js +1 -1
  350. package/es/components/Popup/Popup.js +2 -2
  351. package/es/components/Popup/PopupContext.js +1 -1
  352. package/es/components/Range/Range.styles.js +0 -1
  353. package/es/components/Range/Range.styles.js.map +1 -1
  354. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +2 -3
  355. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  356. package/es/components/Select/Select.js +11 -12
  357. package/es/components/Select/Select.js.map +1 -1
  358. package/es/components/Select/Select.styles.js +2 -5
  359. package/es/components/Select/Select.styles.js.map +1 -1
  360. package/es/components/Select/hooks/usePathMaps.js +0 -2
  361. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  362. package/es/components/Select/ui/Inner/Inner.js +1 -2
  363. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  364. package/es/components/Select/ui/Inner/ui/Item/Item.js +4 -5
  365. package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  366. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js +0 -1
  367. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  368. package/es/components/Select/ui/Target/ui/Button/Button.js +1 -1
  369. package/es/components/Select/ui/Target/ui/Button/Button.styles.js +1 -3
  370. package/es/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  371. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +2 -2
  372. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +1 -4
  373. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  374. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +1 -2
  375. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +1 -1
  376. package/es/components/Select/utils/getButtonLabel.js +0 -2
  377. package/es/components/Select/utils/getButtonLabel.js.map +1 -1
  378. package/es/components/Sheet/Sheet.js +3 -3
  379. package/es/components/Skeleton/LineSkeleton/LineSkeleton.js +2 -4
  380. package/es/components/Skeleton/LineSkeleton/LineSkeleton.js.map +1 -1
  381. package/es/components/Skeleton/RectSkeleton/RectSkeleton.js +2 -4
  382. package/es/components/Skeleton/RectSkeleton/RectSkeleton.js.map +1 -1
  383. package/es/components/Slider/Slider.js +0 -6
  384. package/es/components/Slider/Slider.js.map +1 -1
  385. package/es/components/Slider/components/Double/Double.js +1 -2
  386. package/es/components/Slider/components/Double/Double.js.map +1 -1
  387. package/es/components/Slider/components/Double/Double.styles.js +0 -1
  388. package/es/components/Slider/components/Double/Double.styles.js.map +1 -1
  389. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +0 -3
  390. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -1
  391. package/es/components/Slider/components/Single/Single.js +1 -2
  392. package/es/components/Slider/components/Single/Single.js.map +1 -1
  393. package/es/components/Slider/components/SliderBase/SliderBase.js +1 -1
  394. package/es/components/Steps/Steps.js +1 -1
  395. package/es/components/Steps/ui/StepItem/StepItem.styles.js +0 -1
  396. package/es/components/Steps/ui/StepItem/StepItem.styles.js.map +1 -1
  397. package/es/components/Tabs/ui/Tabs/Tabs.js +2 -3
  398. package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  399. package/es/components/TextArea/TextArea.js +1 -1
  400. package/es/components/TextField/TextField.js +1 -1
  401. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +1 -2
  402. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -1
  403. package/es/components/Toast/Toast.styles.js +1 -1
  404. package/es/components/Toast/ToastController.js +1 -1
  405. package/es/components/Toast/utils.js +1 -2
  406. package/es/components/Toast/utils.js.map +1 -1
  407. package/es/components/Toolbar/ui/ToolbarDivider/ToolbarDivider.js +1 -1
  408. package/es/components/Tooltip/Tooltip.js +2 -3
  409. package/es/components/Tooltip/Tooltip.js.map +1 -1
  410. package/es/engines/index.js +0 -2
  411. package/es/engines/index.js.map +1 -1
  412. package/es/hooks/useIsomorphicLayoutEffect.js +0 -1
  413. package/es/hooks/useIsomorphicLayoutEffect.js.map +1 -1
  414. package/es/index.js +21 -24
  415. package/es/index.js.map +1 -1
  416. package/es/utils/index.js +0 -3
  417. package/es/utils/index.js.map +1 -1
  418. package/package.json +5 -2
  419. package/styled-components/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Button.styles.js","sources":["../../../src/components/Button/Button.styles.ts"],"sourcesContent":["import { css } from '@linaria/core';\nimport { styled } from '@linaria/react';\n\nimport { applyEllipsis, addFocus } from '../../mixins';\nimport { component, mergeConfig } from '../../engines';\nimport { spinnerConfig, spinnerTokens } from '../Spinner';\n\nimport { classes, tokens } from './Button.tokens';\n\n// issue #823\nconst mergedConfig = mergeConfig(spinnerConfig);\nconst Spinner = component(mergedConfig);\n\nexport const ButtonText = styled.span`\n min-width: 4ch;\n flex-shrink: 2;\n\n ${applyEllipsis()}\n\n\n &.${String(classes.contentRelaxed)} {\n text-align: start;\n flex-grow: 2;\n }\n`;\n\nexport const ButtonValue = styled.span`\n color: var(${tokens.buttonValueColor});\n\n margin: var(${tokens.buttonValueMargin});\n\n min-width: 4ch;\n\n ${applyEllipsis()}\n`;\n\n// TODO: #720\nexport const LoadWrap = styled.div<{ contentPlacing: string; isLoading?: boolean }>`\n opacity: ${({ isLoading }) => (isLoading ? '0' : '1')};\n display: flex;\n align-items: inherit;\n justify-content: ${({ contentPlacing }) => contentPlacing};\n height: 100%;\n width: 100%;\n`;\n\nexport const Loader = styled.div`\n position: absolute;\n`;\n\nexport const StyledSpinner = styled(Spinner)`\n ${spinnerTokens.size}: var(${tokens.buttonSpinnerSize});\n ${spinnerTokens.color}: var(${tokens.buttonSpinnerColor});\n`;\n\nexport const StyledContentLeft = styled.div`\n display: flex;\n margin: var(${tokens.buttonLeftContentMargin});\n align-self: var(${tokens.buttonLeftContentAlignSelf});\n`;\n\nexport const StyledContentRight = styled.div`\n display: flex;\n margin: var(${tokens.buttonRightContentMargin});\n align-self: var(${tokens.buttonRightContentAlignSelf});\n`;\n\nexport const base = css`\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n justify-content: center;\n\n appearance: none;\n border: none;\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n a& {\n text-decoration: none;\n }\n\n /* NOTE:\n --plasma_computed-btn-br-radius is defined in Button.tsx\n */\n --plasma_private-btn-br: var(--plasma_computed-btn-br);\n border-radius: var(--plasma_private-btn-br);\n\n &&.${String(classes.buttonSquare)} {\n width: var(${tokens.buttonHeight});\n padding: 0;\n }\n`;\n\n// INFO: Для возможности переиспользования стилей в других компонентах\nexport const baseContent = `\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n justify-content: center;\n\n appearance: none;\n border: none;\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n a& {\n text-decoration: none;\n }\n\n /* NOTE:\n --plasma_computed-btn-br-radius is defined in Button.tsx\n */\n --plasma_private-btn-br: var(--plasma_computed-btn-br);\n border-radius: var(--plasma_private-btn-br);\n\n &&.${String(classes.buttonSquare)} {\n width: var(${tokens.buttonHeight});\n padding: 0;\n }\n\n color: var(${tokens.buttonColor});\n background-color: var(${tokens.buttonBackgroundColor});\n\n :hover {\n color: var(${tokens.buttonColorHover}, var(${tokens.buttonColor}));\n background-color: var(${tokens.buttonBackgroundColorHover}, var(${tokens.buttonBackgroundColor}));\n\n scale: var(${tokens.buttonScaleHover});\n }\n\n :active {\n color: var(${tokens.buttonColorActive}, var(${tokens.buttonColor}));\n background-color: var(${tokens.buttonBackgroundColorActive}, var(${tokens.buttonBackgroundColor}));\n\n scale: var(${tokens.buttonScaleActive});\n }\n\n height: var(${tokens.buttonHeight});\n width: var(${tokens.buttonWidth});\n\n /* TODO: #714 move these calc's to plasma-mapping | ds-generator and add Math.round() */\n padding: 0 var(${tokens.buttonPadding}, calc(var(${tokens.buttonHeight}) * 1.618 / 4));\n\n font-family: var(${tokens.buttonFontFamily});\n font-size: var(${tokens.buttonFontSize});\n font-style: var(${tokens.buttonFontStyle});\n font-weight: var(${tokens.buttonFontWeight});\n letter-spacing: var(${tokens.buttonLetterSpacing});\n line-height: var(${tokens.buttonLineHeight});\n\n /* TODO: #710 make it token API ? */\n --plasma_private-btn-outline-size: var(--plasma-button-outline-size, 0.0625rem);\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineOffset: '-0.125rem',\n outlineSize: 'var(--plasma_private-btn-outline-size)',\n outlineRadius: 'calc(0.125rem + var(--plasma_private-btn-br))',\n outlineColor: `var(${tokens.buttonFocusColor})`,\n })}\n\n &[disabled] {\n opacity: var(${tokens.buttonDisabledOpacity});\n cursor: not-allowed;\n\n :hover,\n :active {\n scale: none;\n\n color: var(${tokens.buttonColor});\n background-color: var(${tokens.buttonBackgroundColor});\n }\n }\n\n &.${classes.fixedStretching} {\n width: var(${tokens.buttonWidth});\n }\n &.${classes.filledStretching} {\n width: 100%;\n }\n &.${classes.autoStretching} {\n width: fit-content;\n }\n`;\n"],"names":["mergedConfig","mergeConfig","spinnerConfig","Spinner","component","ButtonText","styled","name","class","propsAsIs","ButtonValue","_exp6","_ref","isLoading","_exp7","_ref2","contentPlacing","LoadWrap","vars","Loader","_exp8","StyledSpinner","StyledContentLeft","StyledContentRight","base"],"mappings":";;;;;;;AASA;AACA,IAAMA,YAAY,gBAAGC,WAAW,CAACC,aAAa,CAAC,CAAA;AAC/C,IAAMC,OAAO,gBAAGC,SAAS,CAACJ,YAAY,CAAC,CAAA;AAEhC,IAAMK,UAAU,gBAAGC,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,YAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAW/B,EAAA;AAEM,IAAMC,WAAW,gBAAGJ,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQhC,EAAA;;AAED;AAAA,IAAAE,KAAA,GAnCkBA,SAmClBA,KAAAA,GAAA;AAAA,EAAA,OAEe,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,SAAAA,GAAAA,IAAAA,CAAAA,SAAAA,CAAAA;AAAAA,IAAAA,OAAiBA,SAAS,GAAG,GAAG,GAAG,GAAI,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,KAAA,GArCvCA,SAqCuCA,KAAAA,GAAA;AAAA,EAAA,OAGlC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,cAAAA,GAAAA,KAAAA,CAAAA,cAAAA,CAAAA;AAAAA,IAAAA,OAAqBA,cAAc,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAJtD,IAAMC,QAAQ,gBAAGX,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,UAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAS,EAAAA,IAAA,EAAA;AAAA,IAAA,WAAA,EAAA,cACfP,KAA0C,EAAA,CAAA;AAAA,IAAA,WAAA,EAAA,cAGlCG,KAAsC,EAAA,CAAA;AAAA,GAAA;AAAA,CAG5D,EAAA;AAEM,IAAMK,MAAM,gBAAGb,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,QAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAE3B,EAAA;AAAC,IAAAW,KAAA,GA/CgBA,SA+ChBA,KAAAA,GAAA;AAAA,EAAA,OAEkCjB,OAAO,CAAA;AAAA,CAAA,CAAA;AAApC,IAAMkB,aAAa,gBAAGf,MAAM,CAAAc,KAAA,EAAA,CAAA,CAAA;AAAAb,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAGlC,EAAA;AAEM,IAAMa,iBAAiB,gBAAGhB,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,mBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAItC,EAAA;AAEM,IAAMc,kBAAkB,gBAAGjB,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,oBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAIvC,EAAA;AAEM,IAAMe,IAAI,GA0BhB;;;;"}
1
+ {"version":3,"file":"Button.styles.js","sources":["../../../src/components/Button/Button.styles.ts"],"sourcesContent":["import { css } from '@linaria/core';\nimport { styled } from '@linaria/react';\n\nimport { applyEllipsis, addFocus } from '../../mixins';\nimport { component, mergeConfig } from '../../engines';\nimport { spinnerConfig, spinnerTokens } from '../Spinner';\n\nimport { classes, tokens } from './Button.tokens';\n\n// issue #823\nconst mergedConfig = mergeConfig(spinnerConfig);\nconst Spinner = component(mergedConfig);\n\nexport const ButtonText = styled.span`\n min-width: 4ch;\n flex-shrink: 2;\n\n ${applyEllipsis()}\n\n\n &.${String(classes.contentRelaxed)} {\n text-align: start;\n flex-grow: 2;\n }\n`;\n\nexport const ButtonValue = styled.span`\n color: var(${tokens.buttonValueColor});\n\n margin: var(${tokens.buttonValueMargin});\n\n min-width: 4ch;\n\n ${applyEllipsis()}\n`;\n\n// TODO: #720\nexport const LoadWrap = styled.div<{ contentPlacing: string; isLoading?: boolean }>`\n opacity: ${({ isLoading }) => (isLoading ? '0' : '1')};\n display: flex;\n align-items: inherit;\n justify-content: ${({ contentPlacing }) => contentPlacing};\n height: 100%;\n width: 100%;\n`;\n\nexport const Loader = styled.div`\n position: absolute;\n`;\n\nexport const StyledSpinner = styled(Spinner)`\n ${spinnerTokens.size}: var(${tokens.buttonSpinnerSize});\n ${spinnerTokens.color}: var(${tokens.buttonSpinnerColor});\n`;\n\nexport const StyledContentLeft = styled.div`\n display: flex;\n margin: var(${tokens.buttonLeftContentMargin});\n align-self: var(${tokens.buttonLeftContentAlignSelf});\n`;\n\nexport const StyledContentRight = styled.div`\n display: flex;\n margin: var(${tokens.buttonRightContentMargin});\n align-self: var(${tokens.buttonRightContentAlignSelf});\n`;\n\nexport const base = css`\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n justify-content: center;\n\n appearance: none;\n border: none;\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n a& {\n text-decoration: none;\n }\n\n /* NOTE:\n --plasma_computed-btn-br-radius is defined in Button.tsx\n */\n --plasma_private-btn-br: var(--plasma_computed-btn-br);\n border-radius: var(--plasma_private-btn-br);\n\n &&.${String(classes.buttonSquare)} {\n width: var(${tokens.buttonHeight});\n padding: 0;\n }\n`;\n\n// INFO: Для возможности переиспользования стилей в других компонентах\nexport const baseContent = `\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n justify-content: center;\n\n appearance: none;\n border: none;\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n a& {\n text-decoration: none;\n }\n\n /* NOTE:\n --plasma_computed-btn-br-radius is defined in Button.tsx\n */\n --plasma_private-btn-br: var(--plasma_computed-btn-br);\n border-radius: var(--plasma_private-btn-br);\n\n &&.${String(classes.buttonSquare)} {\n width: var(${tokens.buttonHeight});\n padding: 0;\n }\n\n color: var(${tokens.buttonColor});\n background-color: var(${tokens.buttonBackgroundColor});\n\n :hover {\n color: var(${tokens.buttonColorHover}, var(${tokens.buttonColor}));\n background-color: var(${tokens.buttonBackgroundColorHover}, var(${tokens.buttonBackgroundColor}));\n\n scale: var(${tokens.buttonScaleHover});\n }\n\n :active {\n color: var(${tokens.buttonColorActive}, var(${tokens.buttonColor}));\n background-color: var(${tokens.buttonBackgroundColorActive}, var(${tokens.buttonBackgroundColor}));\n\n scale: var(${tokens.buttonScaleActive});\n }\n\n height: var(${tokens.buttonHeight});\n width: var(${tokens.buttonWidth});\n\n /* TODO: #714 move these calc's to plasma-mapping | ds-generator and add Math.round() */\n padding: 0 var(${tokens.buttonPadding}, calc(var(${tokens.buttonHeight}) * 1.618 / 4));\n\n font-family: var(${tokens.buttonFontFamily});\n font-size: var(${tokens.buttonFontSize});\n font-style: var(${tokens.buttonFontStyle});\n font-weight: var(${tokens.buttonFontWeight});\n letter-spacing: var(${tokens.buttonLetterSpacing});\n line-height: var(${tokens.buttonLineHeight});\n\n /* TODO: #710 make it token API ? */\n --plasma_private-btn-outline-size: var(--plasma-button-outline-size, 0.0625rem);\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineOffset: '-0.125rem',\n outlineSize: 'var(--plasma_private-btn-outline-size)',\n outlineRadius: 'calc(0.125rem + var(--plasma_private-btn-br))',\n outlineColor: `var(${tokens.buttonFocusColor})`,\n })}\n\n &[disabled] {\n opacity: var(${tokens.buttonDisabledOpacity});\n cursor: not-allowed;\n\n :hover,\n :active {\n scale: none;\n\n color: var(${tokens.buttonColor});\n background-color: var(${tokens.buttonBackgroundColor});\n }\n }\n\n &.${classes.fixedStretching} {\n width: var(${tokens.buttonWidth});\n }\n &.${classes.filledStretching} {\n width: 100%;\n }\n &.${classes.autoStretching} {\n width: fit-content;\n }\n`;\n"],"names":["mergedConfig","mergeConfig","spinnerConfig","Spinner","component","ButtonText","styled","name","class","propsAsIs","ButtonValue","_exp6","_ref","isLoading","_exp7","_ref2","contentPlacing","LoadWrap","vars","Loader","_exp8","StyledSpinner","StyledContentLeft","StyledContentRight","base"],"mappings":";;;;AASA;AACA,IAAMA,YAAY,gBAAGC,WAAW,CAACC,aAAa,CAAC,CAAA;AAC/C,IAAMC,OAAO,gBAAGC,SAAS,CAACJ,YAAY,CAAC,CAAA;AAEhC,IAAMK,UAAU,gBAAGC,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,YAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAW/B,EAAA;AAEM,IAAMC,WAAW,gBAAGJ,MAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQhC,EAAA;;AAED;AAAA,IAAAE,KAAA,GAnCkBA,SAmClBA,KAAAA,GAAA;AAAA,EAAA,OAEe,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,SAAAA,GAAAA,IAAAA,CAAAA,SAAAA,CAAAA;AAAAA,IAAAA,OAAiBA,SAAS,GAAG,GAAG,GAAG,GAAI,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,KAAA,GArCvCA,SAqCuCA,KAAAA,GAAA;AAAA,EAAA,OAGlC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,cAAAA,GAAAA,KAAAA,CAAAA,cAAAA,CAAAA;AAAAA,IAAAA,OAAqBA,cAAc,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAJtD,IAAMC,QAAQ,gBAAGX,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,UAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAS,EAAAA,IAAA,EAAA;AAAA,IAAA,WAAA,EAAA,cACfP,KAA0C,EAAA,CAAA;AAAA,IAAA,WAAA,EAAA,cAGlCG,KAAsC,EAAA,CAAA;AAAA,GAAA;AAAA,CAG5D,EAAA;AAEM,IAAMK,MAAM,gBAAGb,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,QAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAE3B,EAAA;AAAC,IAAAW,KAAA,GA/CgBA,SA+ChBA,KAAAA,GAAA;AAAA,EAAA,OAEkCjB,OAAO,CAAA;AAAA,CAAA,CAAA;AAApC,IAAMkB,aAAa,gBAAGf,MAAM,CAAAc,KAAA,EAAA,CAAA,CAAA;AAAAb,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAGlC,EAAA;AAEM,IAAMa,iBAAiB,gBAAGhB,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,mBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAItC,EAAA;AAEM,IAAMc,kBAAkB,gBAAGjB,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,oBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAIvC,EAAA;AAEM,IAAMe,IAAI,GA0BhB;;;;"}
@@ -2,18 +2,18 @@ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _
2
2
  import React, { forwardRef, useMemo, useState, useReducer, useCallback, useEffect } from 'react';
3
3
  import { reducer, getInitialState, sizeMap } from '../store/reducer.js';
4
4
  import { ActionType, CalendarState } from '../store/types.js';
5
- import { isValueUpdate } from '../utils/calendarRangeHelper.js';
6
- import { useKeyNavigation } from '../hooks/useKeyNavigation.js';
5
+ import { base } from './variations/_view/base.js';
6
+ import { base as base$1 } from './variations/_size/base.js';
7
+ import { IsOutOfRange, StyledCalendar } from './CalendarBase.styles.js';
7
8
  import { useCalendarNavigation } from '../hooks/useCalendarNavigation.js';
9
+ import { useKeyNavigation } from '../hooks/useKeyNavigation.js';
8
10
  import { useCalendarDateChange } from '../hooks/useCalendarDateChange.js';
9
11
  import { CalendarHeader } from '../ui/CalendarHeader/CalendarHeader.js';
10
12
  import { CalendarDays } from '../ui/CalendarDays/CalendarDays.js';
11
13
  import { CalendarMonths } from '../ui/CalendarMonths/CalendarMonths.js';
12
14
  import { CalendarQuarters } from '../ui/CalendarQuarters/CalendarQuarters.js';
13
15
  import { CalendarYears } from '../ui/CalendarYears/CalendarYears.js';
14
- import { base } from './variations/_view/base.js';
15
- import { base as base$1 } from './variations/_size/base.js';
16
- import { IsOutOfRange, StyledCalendar } from './CalendarBase.styles.js';
16
+ import { isValueUpdate } from '../utils/calendarRangeHelper.js';
17
17
 
18
18
  var _excluded = ["value", "min", "max", "includeEdgeDates", "type", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "onChangeValue", "locale"];
19
19
  /**
@@ -1,21 +1,21 @@
1
1
  import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useMemo, useState, useReducer, useCallback, useEffect } from 'react';
3
+ import { reducer, getInitialState, sizeMap } from '../store/reducer.js';
3
4
  import { ActionType, CalendarState } from '../store/types.js';
4
- import { YEAR_RENDER_COUNT } from '../utils/constants.js';
5
- import { getNextDate } from '../utils/calendarGridHelper.js';
6
- import { isValueUpdate } from '../utils/calendarRangeHelper.js';
7
- import { useKeyNavigation } from '../hooks/useKeyNavigation.js';
5
+ import { IsOutOfRange } from '../CalendarBase/CalendarBase.styles.js';
6
+ import { base } from './variations/_view/base.js';
7
+ import { StyledWrapper, StyledSeparator, StyledCalendar } from './CalendarDouble.styles.js';
8
8
  import { useCalendarNavigation } from '../hooks/useCalendarNavigation.js';
9
+ import { useKeyNavigation } from '../hooks/useKeyNavigation.js';
9
10
  import { useCalendarDateChange } from '../hooks/useCalendarDateChange.js';
10
11
  import { CalendarHeader } from '../ui/CalendarHeader/CalendarHeader.js';
11
12
  import { CalendarDays } from '../ui/CalendarDays/CalendarDays.js';
12
13
  import { CalendarMonths } from '../ui/CalendarMonths/CalendarMonths.js';
13
14
  import { CalendarQuarters } from '../ui/CalendarQuarters/CalendarQuarters.js';
14
15
  import { CalendarYears } from '../ui/CalendarYears/CalendarYears.js';
15
- import { reducer, getInitialState, sizeMap } from '../store/reducer.js';
16
- import { IsOutOfRange } from '../CalendarBase/CalendarBase.styles.js';
17
- import { base } from './variations/_view/base.js';
18
- import { StyledWrapper, StyledSeparator, StyledCalendar } from './CalendarDouble.styles.js';
16
+ import { isValueUpdate } from '../utils/calendarRangeHelper.js';
17
+ import { YEAR_RENDER_COUNT } from '../utils/constants.js';
18
+ import { getNextDate } from '../utils/calendarGridHelper.js';
19
19
 
20
20
  var _StyledSeparator, _StyledSeparator2, _StyledSeparator3, _StyledSeparator4;
21
21
  var _excluded = ["value", "min", "max", "includeEdgeDates", "type", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "onChangeValue", "locale"];
@@ -1,9 +1,9 @@
1
1
  import { toConsumableArray as _toConsumableArray, slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { useMemo } from 'react';
3
- import { getDatesWithModifications } from '../utils/getDateWithModification.js';
3
+ import { CalendarState } from '../store/types.js';
4
4
  import { getDaysInMonth, getOffsetDayInWeek, getMatrix, IsCurrentDay, isSelectedDay, getPrevDate, getNextDate } from '../utils/calendarGridHelper.js';
5
+ import { getDatesWithModifications } from '../utils/getDateWithModification.js';
5
6
  import { isDateInRange } from '../utils/calendarRangeHelper.js';
6
- import { CalendarState } from '../store/types.js';
7
7
 
8
8
  /**
9
9
  * Метод возвращающий массив дней в предыдущем месяце.
@@ -1,8 +1,8 @@
1
1
  import { slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { useState, useRef, useLayoutEffect, useCallback } from 'react';
3
3
  import { Keys } from '../Calendar.types.js';
4
- import { offsetMap } from '../utils/constants.js';
5
4
  import { sizeMap } from '../store/reducer.js';
5
+ import { offsetMap } from '../utils/constants.js';
6
6
 
7
7
  /**
8
8
  * Метод для получения стороны двойного календаря.
@@ -1,9 +1,9 @@
1
1
  import { useMemo } from 'react';
2
- import { getDatesWithModifications } from '../utils/getDateWithModification.js';
2
+ import { CalendarState } from '../store/types.js';
3
3
  import { SHORT_MONTH_NAME, MONTH_NAMES } from '../utils/constants.js';
4
4
  import { isCurrentMonth, isSelectedMonth, getMatrix } from '../utils/calendarGridHelper.js';
5
5
  import { isDateInRange } from '../utils/calendarRangeHelper.js';
6
- import { CalendarState } from '../store/types.js';
6
+ import { getDatesWithModifications } from '../utils/getDateWithModification.js';
7
7
 
8
8
  /**
9
9
  * Хук для получения списка месяцев.
@@ -1,9 +1,9 @@
1
1
  import { useMemo } from 'react';
2
- import { getDatesWithModifications } from '../utils/getDateWithModification.js';
2
+ import { CalendarState } from '../store/types.js';
3
3
  import { QUARTER_NAMES, quarterDates } from '../utils/constants.js';
4
4
  import { isCurrentMonth, isSelectedMonth, getMatrix } from '../utils/calendarGridHelper.js';
5
5
  import { isDateInRange } from '../utils/calendarRangeHelper.js';
6
- import { CalendarState } from '../store/types.js';
6
+ import { getDatesWithModifications } from '../utils/getDateWithModification.js';
7
7
 
8
8
  /**
9
9
  * Хук для получения списка месяцев.
@@ -1,9 +1,9 @@
1
1
  import { useMemo } from 'react';
2
- import { getDatesWithModifications } from '../utils/getDateWithModification.js';
2
+ import { CalendarState } from '../store/types.js';
3
3
  import { YEAR_RENDER_COUNT } from '../utils/constants.js';
4
4
  import { isCurrentYear, isSelectedYear, getMatrix } from '../utils/calendarGridHelper.js';
5
5
  import { isDateInRange } from '../utils/calendarRangeHelper.js';
6
- import { CalendarState } from '../store/types.js';
6
+ import { getDatesWithModifications } from '../utils/getDateWithModification.js';
7
7
 
8
8
  /**
9
9
  * Хук для получения списка годов.
@@ -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 { useDays } from '../../hooks/useDays.js';
4
- import { SHORT_DAY_NAMES, FULL_DAY_NAMES, ROW_STEP } from '../../utils/constants.js';
5
- import { canSelectDate } from '../../utils/calendarGridHelper.js';
6
- import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
7
3
  import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
8
4
  import { tokens, innerTokens } from '../../Calendar.tokens.js';
9
5
  import { StyledCalendarDays, StyledCalendarDaysHint, StyledFlex } from './CalendarDays.styles.js';
6
+ import { useDays } from '../../hooks/useDays.js';
7
+ import { canSelectDate } from '../../utils/calendarGridHelper.js';
8
+ import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
9
+ import { SHORT_DAY_NAMES, FULL_DAY_NAMES, ROW_STEP } from '../../utils/constants.js';
10
10
 
11
11
  var _StyledCalendarDaysHi;
12
12
  /**
@@ -1,14 +1,13 @@
1
1
  import React, { useCallback, useMemo } from 'react';
2
- import { IconDisclosureLeft } from '../../../_Icon/Icons/IconDisclosureLeft.js';
3
- import { IconDisclosureRight } from '../../../_Icon/Icons/IconDisclosureRight.js';
4
- import { IconDisclosureDownFill } from '../../../_Icon/Icons/IconDisclosureDownFill.js';
5
- import '@linaria/react';
6
2
  import { CalendarState } from '../../store/types.js';
7
- import { MONTH_NAMES, YEAR_RENDER_COUNT } from '../../utils/constants.js';
8
- import { getCalendarType } from '../../utils/calendarGridHelper.js';
9
3
  import { classes } from '../../Calendar.tokens.js';
10
4
  import { sizeMap } from '../../store/reducer.js';
11
5
  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';
12
11
 
13
12
  /**
14
13
  * Компонент шапки календаря.
@@ -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":"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"}
@@ -1,6 +1,5 @@
1
1
  import './CalendarHeader.styles_1jfelqf.css';
2
2
  import { styled } from '@linaria/react';
3
- import '@linaria/core';
4
3
  import { component, mergeConfig } from '../../../../engines/common.js';
5
4
  import { iconButtonConfig } from '../../../IconButton/IconButton.js';
6
5
 
@@ -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 { ROW_MONTH_STEP } from '../../utils/constants.js';
4
- import { canSelectDate } from '../../utils/calendarGridHelper.js';
5
- import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
- import { useMonths } from '../../hooks/useMonths.js';
7
3
  import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
4
  import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
5
  import { StyledCalendarMonths, StyledFlex } from './CalendarMonths.styles.js';
6
+ import { useMonths } from '../../hooks/useMonths.js';
7
+ import { ROW_MONTH_STEP } from '../../utils/constants.js';
8
+ import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
+ import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
10
10
 
11
11
  /**
12
12
  * Компонент месяцев в календаре.
@@ -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 { ROW_QUARTER_STEP } from '../../utils/constants.js';
4
- import { canSelectDate } from '../../utils/calendarGridHelper.js';
5
- import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
- import { useQuarters } from '../../hooks/useQuarters.js';
7
3
  import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
4
  import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
5
  import { StyledCalendarQuarters, StyledFlex } from './CalendarQuarters.styles.js';
6
+ import { useQuarters } from '../../hooks/useQuarters.js';
7
+ import { ROW_QUARTER_STEP } from '../../utils/constants.js';
8
+ import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
+ import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
10
10
 
11
11
  /**
12
12
  * Компонент кварталов в календаре.
@@ -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 { ROW_YEAR_STEP } from '../../utils/constants.js';
4
- import { canSelectDate } from '../../utils/calendarGridHelper.js';
5
- import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
6
- import { useYears } from '../../hooks/useYears.js';
7
3
  import { tokens, innerTokens } from '../../Calendar.tokens.js';
8
4
  import { DateStructureItem } from '../DateStructureItem/DateStructureItem.js';
9
5
  import { StyledCalendarYears, StyledFlex } from './CalendarYears.styles.js';
6
+ import { useYears } from '../../hooks/useYears.js';
7
+ import { ROW_YEAR_STEP } from '../../utils/constants.js';
8
+ import { canSelectDate } from '../../utils/calendarGridHelper.js';
9
+ import { isSelectProcess, isSameDay, getInRange, getSideInRange } from '../../utils/calendarRangeHelper.js';
10
10
 
11
11
  /**
12
12
  * Компонент годов в календаре.
@@ -1,27 +1,26 @@
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';
8
4
  import { classes } from './Combobox.tokens.js';
9
5
  import { FloatingPopover } from './FloatingPopover.js';
10
6
  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';
12
17
  import { updateDescendants } from './utils/updateDescendants.js';
13
18
  import { updateAncestors } from './utils/updateAncestors.js';
14
19
  import { updateSingleAncestors } from './utils/updateSingleAncestors.js';
15
- import { filterItems } from './utils/filterItems.js';
20
+ import { StyledTextField } from './ui/Target/Target.styles.js';
21
+ import { sizeToIconSize } from '../../Select/utils/sizeToIconSize.js';
16
22
  import { getItemId } from './utils/getItemId.js';
17
23
  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';
25
24
 
26
25
  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"];
27
26
  var Context = /*#__PURE__*/createContext({});
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n ...rest\n } = props;\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(items), [items]);\n\n const [textValue, setTextValue] = useState(valueToItemMap.get(outerValue as string)?.label || '');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue || internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n setTextValue(isCurrentChecked ? '' : item.label);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n return (value as []).map((value) => valueToItemMap.get(value)!.label);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","get","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","transformedItems","initialItemsTransform","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","undefined","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","_","updateSingleAncestors","getChips","length","concat","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","Array","isArray","val","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n ...rest\n } = props;\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(items), [items]);\n\n const [textValue, setTextValue] = useState(valueToItemMap.get(outerValue as string)?.label || '');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue || internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n setTextValue(isCurrentChecked ? '' : item.label);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n return (value as []).map((value) => valueToItemMap.get(value)!.label);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","get","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","transformedItems","initialItemsTransform","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","undefined","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","_","updateSingleAncestors","getChips","length","concat","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","Array","isArray","val","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}