@salutejs/plasma-new-hope 0.338.0-dev.0 → 0.338.1-canary.2259.18864675636.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (750) hide show
  1. package/cjs/components/Calendar/Calendar.tokens.js +24 -1
  2. package/cjs/components/Calendar/Calendar.tokens.js.map +1 -1
  3. package/cjs/components/Calendar/Calendar.types.js.map +1 -1
  4. package/cjs/components/Calendar/CalendarBase/CalendarBase.css +18 -4
  5. package/cjs/components/Calendar/CalendarBase/CalendarBase.js +48 -5
  6. package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  7. package/cjs/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +9 -0
  8. package/cjs/components/Calendar/CalendarBase/variations/_tooltip-size/base.js.map +1 -0
  9. package/cjs/components/Calendar/CalendarBase/variations/_tooltip-size/base_x642ct.css +1 -0
  10. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.css +18 -4
  11. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +61 -11
  12. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  13. package/cjs/components/Calendar/CalendarDouble/variations/_size/base.js +9 -0
  14. package/cjs/components/Calendar/CalendarDouble/variations/_size/base.js.map +1 -0
  15. package/cjs/components/Calendar/CalendarDouble/variations/_size/base_x642ct.css +1 -0
  16. package/cjs/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +9 -0
  17. package/cjs/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js.map +1 -0
  18. package/cjs/components/Calendar/CalendarDouble/variations/_tooltip-size/base_x642ct.css +1 -0
  19. package/cjs/components/Calendar/hooks/useKeyNavigation.js +3 -0
  20. package/cjs/components/Calendar/hooks/useKeyNavigation.js.map +1 -1
  21. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.css +4 -4
  22. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  23. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  24. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.css +4 -4
  25. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  26. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  27. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.css +4 -4
  28. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  29. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -1
  30. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.css +4 -4
  31. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  32. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  33. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.css +4 -4
  34. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js +23 -6
  35. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js.map +1 -1
  36. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +3 -3
  37. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js.map +1 -1
  38. package/cjs/components/Calendar/ui/DateStructureItem/{DateStructureItem.styles_z3dhwf.css → DateStructureItem.styles_1jogt74.css} +1 -1
  39. package/cjs/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +22 -0
  40. package/cjs/components/Calendar/ui/EventTooltip/EventTooltip.styles.js.map +1 -0
  41. package/cjs/components/Calendar/ui/EventTooltip/EventTooltip.styles_dh6nzd.css +1 -0
  42. package/cjs/components/Combobox/ComboboxNew/Combobox.js +10 -0
  43. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  44. package/cjs/components/DatePicker/DatePicker.tokens.js +24 -1
  45. package/cjs/components/DatePicker/DatePicker.tokens.js.map +1 -1
  46. package/cjs/components/DatePicker/DatePickerBase.styles.js +1 -1
  47. package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  48. package/{es/components/DatePicker/DatePickerBase.styles_6x4unn.css → cjs/components/DatePicker/DatePickerBase.styles_1rfomby.css} +1 -1
  49. package/cjs/components/DatePicker/RangeDate/RangeDate.css +15 -13
  50. package/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -6
  51. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  52. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +13 -11
  53. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -0
  54. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  55. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
  56. package/{es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1wt56uj.css → cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_k6m3t6.css} +2 -2
  57. package/cjs/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +9 -0
  58. package/cjs/components/DatePicker/RangeDate/variations/_tooltip-size/base.js.map +1 -0
  59. package/cjs/components/DatePicker/RangeDate/variations/_tooltip-size/base_x642ct.css +1 -0
  60. package/cjs/components/DatePicker/SingleDate/SingleDate.css +8 -6
  61. package/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -12
  62. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  63. package/cjs/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +9 -0
  64. package/cjs/components/DatePicker/SingleDate/variations/_tooltip-size/base.js.map +1 -0
  65. package/cjs/components/DatePicker/SingleDate/variations/_tooltip-size/base_x642ct.css +1 -0
  66. package/cjs/components/Pagination/Pagination.css +19 -0
  67. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +19 -0
  68. package/cjs/components/Popover/Popover.js +1 -0
  69. package/cjs/components/Popover/Popover.js.map +1 -1
  70. package/cjs/components/Select/Select.css +19 -0
  71. package/cjs/components/Select/Select.js +44 -9
  72. package/cjs/components/Select/Select.js.map +1 -1
  73. package/cjs/components/Select/Select.tokens.js +2 -0
  74. package/cjs/components/Select/Select.tokens.js.map +1 -1
  75. package/cjs/components/Select/hooks/useKeyboardNavigation.js +185 -1
  76. package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  77. package/cjs/components/Select/hooks/usePathMaps.js +7 -3
  78. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  79. package/cjs/components/Select/reducers/treePathReducer.js +87 -0
  80. package/cjs/components/Select/reducers/treePathReducer.js.map +1 -0
  81. package/cjs/components/Select/ui/TreeList/TreeList.css +57 -0
  82. package/cjs/components/Select/ui/TreeList/TreeList.js +96 -0
  83. package/cjs/components/Select/ui/TreeList/TreeList.js.map +1 -0
  84. package/cjs/components/Select/ui/TreeList/TreeList.styles.js +30 -0
  85. package/cjs/components/Select/ui/TreeList/TreeList.styles.js.map +1 -0
  86. package/cjs/components/Select/ui/TreeList/TreeList.styles_1t38mek.css +2 -0
  87. package/cjs/components/Select/ui/TreeList/ui/Item/Item.css +54 -0
  88. package/cjs/components/Select/ui/TreeList/ui/Item/Item.js +130 -0
  89. package/cjs/components/Select/ui/TreeList/ui/Item/Item.js.map +1 -0
  90. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +214 -0
  91. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js.map +1 -0
  92. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles_i0dby2.css +15 -0
  93. package/cjs/components/Table/Table.css +19 -0
  94. package/cjs/components/Table/ui/Cell/Cell.css +19 -0
  95. package/cjs/components/Table/ui/EditableCell/EditableCell.css +19 -0
  96. package/cjs/components/Table/ui/HeadCell/HeadCell.css +19 -0
  97. package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +19 -0
  98. package/cjs/components/TextArea/TextArea.js +3 -2
  99. package/cjs/components/TextArea/TextArea.js.map +1 -1
  100. package/cjs/components/TextField/TextField.js +3 -2
  101. package/cjs/components/TextField/TextField.js.map +1 -1
  102. package/cjs/components/TimePicker/TimePicker.css +15 -11
  103. package/cjs/components/TimePicker/TimePicker.js +22 -458
  104. package/cjs/components/TimePicker/TimePicker.js.map +1 -1
  105. package/cjs/components/TimePicker/TimePicker.styles.js +17 -21
  106. package/cjs/components/TimePicker/TimePicker.styles.js.map +1 -1
  107. package/{es/components/TimePicker/TimePicker.styles_ar3obv.css → cjs/components/TimePicker/TimePicker.styles_2lk4d9.css} +4 -3
  108. package/cjs/components/TimePicker/utils/index.js +1 -33
  109. package/cjs/components/TimePicker/utils/index.js.map +1 -1
  110. package/cjs/components/TimePickerGrid/TimePickerGrid.css +10 -0
  111. package/cjs/components/TimePickerGrid/TimePickerGrid.js +733 -0
  112. package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  113. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +27 -0
  114. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  115. package/cjs/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  116. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +40 -0
  117. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  118. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  119. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  120. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  121. package/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +12 -12
  122. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  123. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  124. package/cjs/components/TimePickerGrid/utils/index.js +135 -0
  125. package/cjs/components/TimePickerGrid/utils/index.js.map +1 -0
  126. package/cjs/components/TimePickerGrid/variations/_disabled/base.js +9 -0
  127. package/cjs/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  128. package/cjs/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  129. package/cjs/components/TimePickerGrid/variations/_size/base.js +9 -0
  130. package/cjs/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  131. package/cjs/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  132. package/cjs/components/TimePickerGrid/variations/_view/base.js +9 -0
  133. package/cjs/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  134. package/cjs/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  135. package/cjs/components/Tree/utils/traverseTree.js +2 -23
  136. package/cjs/components/Tree/utils/traverseTree.js.map +1 -1
  137. package/cjs/components/Typography/Body/Body.css +1 -1
  138. package/cjs/components/Typography/Typography.styles.js +1 -1
  139. package/cjs/components/Typography/Typography.styles.js.map +1 -1
  140. package/cjs/components/Typography/Typography.styles_iqzojt.css +1 -0
  141. package/cjs/index.css +45 -20
  142. package/cjs/index.js +2 -0
  143. package/cjs/index.js.map +1 -1
  144. package/cjs/utils/deepCopy.js +30 -0
  145. package/cjs/utils/deepCopy.js.map +1 -0
  146. package/cjs/utils/index.js.map +1 -1
  147. package/emotion/cjs/components/Calendar/Calendar.tokens.js +23 -1
  148. package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +44 -5
  149. package/emotion/cjs/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +12 -0
  150. package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +53 -7
  151. package/emotion/cjs/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +12 -0
  152. package/emotion/cjs/components/Calendar/hooks/useKeyNavigation.js +3 -0
  153. package/emotion/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -2
  154. package/emotion/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -2
  155. package/emotion/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -2
  156. package/emotion/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -2
  157. package/emotion/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js +23 -6
  158. package/emotion/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +9 -8
  159. package/emotion/cjs/components/Calendar/ui/EventTooltip/EventTooltip.js +11 -0
  160. package/emotion/cjs/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +25 -0
  161. package/emotion/cjs/components/Calendar/ui/index.js +4 -0
  162. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +11 -0
  163. package/emotion/cjs/components/DatePicker/DatePicker.tokens.js +23 -1
  164. package/emotion/cjs/components/DatePicker/DatePickerBase.styles.js +5 -5
  165. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -6
  166. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -1
  167. package/emotion/cjs/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +12 -0
  168. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -12
  169. package/emotion/cjs/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +12 -0
  170. package/emotion/cjs/components/Popover/Popover.js +1 -0
  171. package/emotion/cjs/components/Select/Select.js +33 -6
  172. package/emotion/cjs/components/Select/Select.tokens.js +2 -0
  173. package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +166 -0
  174. package/emotion/cjs/components/Select/hooks/usePathMaps.js +35 -3
  175. package/emotion/cjs/components/Select/reducers/index.js +1 -0
  176. package/emotion/cjs/components/Select/reducers/treePathReducer.js +98 -0
  177. package/emotion/cjs/components/Select/ui/TreeList/TreeList.js +126 -0
  178. package/emotion/cjs/components/Select/ui/TreeList/TreeList.styles.js +36 -0
  179. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.js +150 -0
  180. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +186 -0
  181. package/emotion/cjs/components/Select/ui/index.js +1 -0
  182. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  183. package/emotion/cjs/components/TextField/TextField.js +3 -3
  184. package/emotion/cjs/components/TimePicker/TimePicker.js +22 -488
  185. package/emotion/cjs/components/TimePicker/TimePicker.styles.js +17 -7
  186. package/emotion/cjs/components/TimePicker/utils/index.js +1 -25
  187. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +922 -0
  188. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +34 -0
  189. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  190. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.types.js +4 -0
  191. package/emotion/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  192. package/emotion/cjs/components/TimePickerGrid/index.js +26 -0
  193. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  194. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +71 -0
  195. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +4 -0
  196. package/emotion/cjs/components/TimePickerGrid/utils/index.js +166 -0
  197. package/emotion/cjs/components/TimePickerGrid/variations/_disabled/base.js +12 -0
  198. package/emotion/cjs/components/TimePickerGrid/variations/_size/base.js +12 -0
  199. package/emotion/cjs/components/TimePickerGrid/variations/_view/base.js +12 -0
  200. package/emotion/cjs/components/Tree/utils/traverseTree.js +2 -60
  201. package/emotion/cjs/components/Typography/Typography.styles.js +1 -1
  202. package/emotion/cjs/examples/components/Calendar/CalendarBase.config.js +11 -6
  203. package/emotion/cjs/examples/components/Calendar/CalendarDouble.config.js +11 -6
  204. package/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
  205. package/emotion/cjs/examples/components/DatePicker/DatePicker.config.js +11 -7
  206. package/emotion/cjs/examples/components/Select/Select.config.js +24 -24
  207. package/emotion/cjs/examples/components/TimePicker/TimePicker.config.js +7 -7
  208. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +32 -0
  209. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  210. package/emotion/cjs/utils/deepCopy.js +82 -0
  211. package/emotion/cjs/utils/index.js +4 -0
  212. package/emotion/es/components/Calendar/Calendar.tokens.js +23 -1
  213. package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +46 -7
  214. package/emotion/es/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +2 -0
  215. package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +55 -9
  216. package/emotion/es/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +2 -0
  217. package/emotion/es/components/Calendar/hooks/useKeyNavigation.js +3 -0
  218. package/emotion/es/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -2
  219. package/emotion/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -2
  220. package/emotion/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -2
  221. package/emotion/es/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -2
  222. package/emotion/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js +24 -7
  223. package/emotion/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +9 -8
  224. package/emotion/es/components/Calendar/ui/EventTooltip/EventTooltip.js +1 -0
  225. package/emotion/es/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +10 -0
  226. package/emotion/es/components/Calendar/ui/index.js +1 -0
  227. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +11 -0
  228. package/emotion/es/components/DatePicker/DatePicker.tokens.js +23 -1
  229. package/emotion/es/components/DatePicker/DatePickerBase.styles.js +5 -5
  230. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +11 -2
  231. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -1
  232. package/emotion/es/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +2 -0
  233. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +11 -8
  234. package/emotion/es/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +2 -0
  235. package/emotion/es/components/Popover/Popover.js +1 -0
  236. package/emotion/es/components/Select/Select.js +35 -8
  237. package/emotion/es/components/Select/Select.tokens.js +2 -0
  238. package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +166 -0
  239. package/emotion/es/components/Select/hooks/usePathMaps.js +36 -4
  240. package/emotion/es/components/Select/reducers/index.js +1 -0
  241. package/emotion/es/components/Select/reducers/treePathReducer.js +81 -0
  242. package/emotion/es/components/Select/ui/TreeList/TreeList.js +75 -0
  243. package/emotion/es/components/Select/ui/TreeList/TreeList.styles.js +13 -0
  244. package/emotion/es/components/Select/ui/TreeList/ui/Item/Item.js +99 -0
  245. package/emotion/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +122 -0
  246. package/emotion/es/components/Select/ui/index.js +1 -0
  247. package/emotion/es/components/TextArea/TextArea.js +3 -3
  248. package/emotion/es/components/TextField/TextField.js +3 -3
  249. package/emotion/es/components/TimePicker/TimePicker.js +25 -491
  250. package/emotion/es/components/TimePicker/TimePicker.styles.js +14 -7
  251. package/emotion/es/components/TimePicker/utils/index.js +1 -22
  252. package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +863 -0
  253. package/emotion/es/components/TimePickerGrid/TimePickerGrid.styles.js +11 -0
  254. package/emotion/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  255. package/emotion/es/components/TimePickerGrid/TimePickerGrid.types.js +1 -0
  256. package/emotion/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  257. package/emotion/es/components/TimePickerGrid/index.js +2 -0
  258. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  259. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +33 -0
  260. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +1 -0
  261. package/emotion/es/components/TimePickerGrid/utils/index.js +133 -0
  262. package/emotion/es/components/TimePickerGrid/variations/_disabled/base.js +2 -0
  263. package/emotion/es/components/TimePickerGrid/variations/_size/base.js +2 -0
  264. package/emotion/es/components/TimePickerGrid/variations/_view/base.js +2 -0
  265. package/emotion/es/components/Tree/utils/traverseTree.js +1 -59
  266. package/emotion/es/components/Typography/Typography.styles.js +1 -1
  267. package/emotion/es/examples/components/Calendar/CalendarBase.config.js +11 -6
  268. package/emotion/es/examples/components/Calendar/CalendarDouble.config.js +11 -6
  269. package/emotion/es/examples/components/DatePicker/DatePicker.config.js +11 -7
  270. package/emotion/es/examples/components/Select/Select.config.js +24 -24
  271. package/emotion/es/examples/components/TimePicker/TimePicker.config.js +7 -7
  272. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +22 -0
  273. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  274. package/emotion/es/utils/deepCopy.js +72 -0
  275. package/emotion/es/utils/index.js +1 -0
  276. package/es/components/Calendar/Calendar.tokens.js +24 -1
  277. package/es/components/Calendar/Calendar.tokens.js.map +1 -1
  278. package/es/components/Calendar/Calendar.types.js.map +1 -1
  279. package/es/components/Calendar/CalendarBase/CalendarBase.css +18 -4
  280. package/es/components/Calendar/CalendarBase/CalendarBase.js +49 -6
  281. package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  282. package/es/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +5 -0
  283. package/es/components/Calendar/CalendarBase/variations/_tooltip-size/base.js.map +1 -0
  284. package/es/components/Calendar/CalendarBase/variations/_tooltip-size/base_x642ct.css +1 -0
  285. package/es/components/Calendar/CalendarDouble/CalendarDouble.css +18 -4
  286. package/es/components/Calendar/CalendarDouble/CalendarDouble.js +62 -12
  287. package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  288. package/es/components/Calendar/CalendarDouble/variations/_size/base.js +5 -0
  289. package/es/components/Calendar/CalendarDouble/variations/_size/base.js.map +1 -0
  290. package/es/components/Calendar/CalendarDouble/variations/_size/base_x642ct.css +1 -0
  291. package/es/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +5 -0
  292. package/es/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js.map +1 -0
  293. package/es/components/Calendar/CalendarDouble/variations/_tooltip-size/base_x642ct.css +1 -0
  294. package/es/components/Calendar/hooks/useKeyNavigation.js +3 -0
  295. package/es/components/Calendar/hooks/useKeyNavigation.js.map +1 -1
  296. package/es/components/Calendar/ui/CalendarDays/CalendarDays.css +4 -4
  297. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -1
  298. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  299. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.css +4 -4
  300. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -1
  301. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  302. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.css +4 -4
  303. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -1
  304. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -1
  305. package/es/components/Calendar/ui/CalendarYears/CalendarYears.css +4 -4
  306. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -1
  307. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  308. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.css +4 -4
  309. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js +24 -7
  310. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js.map +1 -1
  311. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +3 -3
  312. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js.map +1 -1
  313. package/es/components/Calendar/ui/DateStructureItem/{DateStructureItem.styles_z3dhwf.css → DateStructureItem.styles_1jogt74.css} +1 -1
  314. package/es/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +18 -0
  315. package/es/components/Calendar/ui/EventTooltip/EventTooltip.styles.js.map +1 -0
  316. package/es/components/Calendar/ui/EventTooltip/EventTooltip.styles_dh6nzd.css +1 -0
  317. package/es/components/Combobox/ComboboxNew/Combobox.js +10 -0
  318. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  319. package/es/components/DatePicker/DatePicker.tokens.js +24 -1
  320. package/es/components/DatePicker/DatePicker.tokens.js.map +1 -1
  321. package/es/components/DatePicker/DatePickerBase.styles.js +1 -1
  322. package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  323. package/{cjs/components/DatePicker/DatePickerBase.styles_6x4unn.css → es/components/DatePicker/DatePickerBase.styles_1rfomby.css} +1 -1
  324. package/es/components/DatePicker/RangeDate/RangeDate.css +15 -13
  325. package/es/components/DatePicker/RangeDate/RangeDate.js +15 -6
  326. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  327. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +13 -11
  328. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -0
  329. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  330. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
  331. package/{cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1wt56uj.css → es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_k6m3t6.css} +2 -2
  332. package/es/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +5 -0
  333. package/es/components/DatePicker/RangeDate/variations/_tooltip-size/base.js.map +1 -0
  334. package/es/components/DatePicker/RangeDate/variations/_tooltip-size/base_x642ct.css +1 -0
  335. package/es/components/DatePicker/SingleDate/SingleDate.css +8 -6
  336. package/es/components/DatePicker/SingleDate/SingleDate.js +15 -12
  337. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  338. package/es/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +5 -0
  339. package/es/components/DatePicker/SingleDate/variations/_tooltip-size/base.js.map +1 -0
  340. package/es/components/DatePicker/SingleDate/variations/_tooltip-size/base_x642ct.css +1 -0
  341. package/es/components/Pagination/Pagination.css +19 -0
  342. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +19 -0
  343. package/es/components/Popover/Popover.js +1 -0
  344. package/es/components/Popover/Popover.js.map +1 -1
  345. package/es/components/Select/Select.css +19 -0
  346. package/es/components/Select/Select.js +44 -9
  347. package/es/components/Select/Select.js.map +1 -1
  348. package/es/components/Select/Select.tokens.js +2 -0
  349. package/es/components/Select/Select.tokens.js.map +1 -1
  350. package/es/components/Select/hooks/useKeyboardNavigation.js +185 -1
  351. package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  352. package/es/components/Select/hooks/usePathMaps.js +7 -3
  353. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  354. package/es/components/Select/reducers/treePathReducer.js +82 -0
  355. package/es/components/Select/reducers/treePathReducer.js.map +1 -0
  356. package/es/components/Select/ui/TreeList/TreeList.css +57 -0
  357. package/es/components/Select/ui/TreeList/TreeList.js +88 -0
  358. package/es/components/Select/ui/TreeList/TreeList.js.map +1 -0
  359. package/es/components/Select/ui/TreeList/TreeList.styles.js +25 -0
  360. package/es/components/Select/ui/TreeList/TreeList.styles.js.map +1 -0
  361. package/es/components/Select/ui/TreeList/TreeList.styles_1t38mek.css +2 -0
  362. package/es/components/Select/ui/TreeList/ui/Item/Item.css +54 -0
  363. package/es/components/Select/ui/TreeList/ui/Item/Item.js +122 -0
  364. package/es/components/Select/ui/TreeList/ui/Item/Item.js.map +1 -0
  365. package/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +196 -0
  366. package/es/components/Select/ui/TreeList/ui/Item/Item.styles.js.map +1 -0
  367. package/es/components/Select/ui/TreeList/ui/Item/Item.styles_i0dby2.css +15 -0
  368. package/es/components/Table/Table.css +19 -0
  369. package/es/components/Table/ui/Cell/Cell.css +19 -0
  370. package/es/components/Table/ui/EditableCell/EditableCell.css +19 -0
  371. package/es/components/Table/ui/HeadCell/HeadCell.css +19 -0
  372. package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +19 -0
  373. package/es/components/TextArea/TextArea.js +3 -2
  374. package/es/components/TextArea/TextArea.js.map +1 -1
  375. package/es/components/TextField/TextField.js +3 -2
  376. package/es/components/TextField/TextField.js.map +1 -1
  377. package/es/components/TimePicker/TimePicker.css +15 -11
  378. package/es/components/TimePicker/TimePicker.js +26 -462
  379. package/es/components/TimePicker/TimePicker.js.map +1 -1
  380. package/es/components/TimePicker/TimePicker.styles.js +17 -21
  381. package/es/components/TimePicker/TimePicker.styles.js.map +1 -1
  382. package/{cjs/components/TimePicker/TimePicker.styles_ar3obv.css → es/components/TimePicker/TimePicker.styles_2lk4d9.css} +4 -3
  383. package/es/components/TimePicker/utils/index.js +2 -32
  384. package/es/components/TimePicker/utils/index.js.map +1 -1
  385. package/es/components/TimePickerGrid/TimePickerGrid.css +10 -0
  386. package/es/components/TimePickerGrid/TimePickerGrid.js +724 -0
  387. package/es/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  388. package/es/components/TimePickerGrid/TimePickerGrid.styles.js +22 -0
  389. package/es/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  390. package/es/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  391. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js +35 -0
  392. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  393. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  394. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +109 -0
  395. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  396. package/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -11
  397. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  398. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  399. package/es/components/TimePickerGrid/utils/index.js +126 -0
  400. package/es/components/TimePickerGrid/utils/index.js.map +1 -0
  401. package/es/components/TimePickerGrid/variations/_disabled/base.js +5 -0
  402. package/es/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  403. package/es/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  404. package/es/components/TimePickerGrid/variations/_size/base.js +5 -0
  405. package/es/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  406. package/es/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  407. package/es/components/TimePickerGrid/variations/_view/base.js +5 -0
  408. package/es/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  409. package/es/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  410. package/es/components/Tree/utils/traverseTree.js +2 -23
  411. package/es/components/Tree/utils/traverseTree.js.map +1 -1
  412. package/es/components/Typography/Body/Body.css +1 -1
  413. package/es/components/Typography/Typography.styles.js +1 -1
  414. package/es/components/Typography/Typography.styles.js.map +1 -1
  415. package/es/components/Typography/Typography.styles_iqzojt.css +1 -0
  416. package/es/index.css +45 -20
  417. package/es/index.js +1 -0
  418. package/es/index.js.map +1 -1
  419. package/es/utils/deepCopy.js +26 -0
  420. package/es/utils/deepCopy.js.map +1 -0
  421. package/es/utils/index.js.map +1 -1
  422. package/package.json +4 -4
  423. package/styled-components/cjs/components/Calendar/Calendar.tokens.js +23 -1
  424. package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +44 -5
  425. package/styled-components/cjs/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +14 -0
  426. package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +53 -7
  427. package/styled-components/cjs/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +14 -0
  428. package/styled-components/cjs/components/Calendar/hooks/useKeyNavigation.js +3 -0
  429. package/styled-components/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -2
  430. package/styled-components/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -2
  431. package/styled-components/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -2
  432. package/styled-components/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -2
  433. package/styled-components/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js +23 -6
  434. package/styled-components/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +9 -6
  435. package/styled-components/cjs/components/Calendar/ui/EventTooltip/EventTooltip.js +11 -0
  436. package/styled-components/cjs/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +71 -0
  437. package/styled-components/cjs/components/Calendar/ui/index.js +4 -0
  438. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +11 -0
  439. package/styled-components/cjs/components/DatePicker/DatePicker.tokens.js +23 -1
  440. package/styled-components/cjs/components/DatePicker/DatePickerBase.styles.js +3 -3
  441. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -6
  442. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -1
  443. package/styled-components/cjs/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +14 -0
  444. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -12
  445. package/styled-components/cjs/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +14 -0
  446. package/styled-components/cjs/components/Popover/Popover.js +1 -0
  447. package/styled-components/cjs/components/Select/Select.js +33 -6
  448. package/styled-components/cjs/components/Select/Select.tokens.js +2 -0
  449. package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +166 -0
  450. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +35 -3
  451. package/styled-components/cjs/components/Select/reducers/index.js +1 -0
  452. package/styled-components/cjs/components/Select/reducers/treePathReducer.js +98 -0
  453. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.js +126 -0
  454. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.styles.js +50 -0
  455. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.types.js +4 -0
  456. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.js +150 -0
  457. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +300 -0
  458. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.types.js +4 -0
  459. package/styled-components/cjs/components/Select/ui/index.js +1 -0
  460. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  461. package/styled-components/cjs/components/TextField/TextField.js +2 -2
  462. package/styled-components/cjs/components/TimePicker/TimePicker.js +22 -488
  463. package/styled-components/cjs/components/TimePicker/TimePicker.styles.js +57 -3
  464. package/styled-components/cjs/components/TimePicker/utils/index.js +1 -25
  465. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +922 -0
  466. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +79 -0
  467. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  468. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.types.js +4 -0
  469. package/styled-components/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  470. package/styled-components/cjs/components/TimePickerGrid/index.js +26 -0
  471. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  472. package/styled-components/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +16 -14
  473. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +4 -0
  474. package/styled-components/cjs/components/TimePickerGrid/utils/index.js +166 -0
  475. package/styled-components/cjs/components/TimePickerGrid/variations/_disabled/base.js +14 -0
  476. package/styled-components/cjs/components/TimePickerGrid/variations/_size/base.js +14 -0
  477. package/styled-components/cjs/components/TimePickerGrid/variations/_view/base.js +14 -0
  478. package/styled-components/cjs/components/Tree/utils/traverseTree.js +2 -60
  479. package/styled-components/cjs/components/Typography/Typography.styles.js +2 -2
  480. package/styled-components/cjs/examples/components/Calendar/CalendarBase.config.js +53 -3
  481. package/styled-components/cjs/examples/components/Calendar/CalendarDouble.config.js +53 -3
  482. package/styled-components/cjs/examples/components/Combobox/Combobox.js +0 -15
  483. package/styled-components/cjs/examples/components/DatePicker/DatePicker.config.js +51 -2
  484. package/styled-components/cjs/examples/components/Select/Select.config.js +12 -4
  485. package/styled-components/cjs/examples/components/TimePicker/TimePicker.config.js +3 -2
  486. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +103 -0
  487. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  488. package/styled-components/cjs/utils/deepCopy.js +82 -0
  489. package/styled-components/cjs/utils/index.js +4 -0
  490. package/styled-components/es/components/Calendar/Calendar.tokens.js +23 -1
  491. package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +46 -7
  492. package/styled-components/es/components/Calendar/CalendarBase/variations/_tooltip-size/base.js +4 -0
  493. package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +55 -9
  494. package/styled-components/es/components/Calendar/CalendarDouble/variations/_tooltip-size/base.js +4 -0
  495. package/styled-components/es/components/Calendar/hooks/useKeyNavigation.js +3 -0
  496. package/styled-components/es/components/Calendar/ui/CalendarDays/CalendarDays.js +5 -2
  497. package/styled-components/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +5 -2
  498. package/styled-components/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +5 -2
  499. package/styled-components/es/components/Calendar/ui/CalendarYears/CalendarYears.js +5 -2
  500. package/styled-components/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js +24 -7
  501. package/styled-components/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +9 -6
  502. package/styled-components/es/components/Calendar/ui/EventTooltip/EventTooltip.js +1 -0
  503. package/styled-components/es/components/Calendar/ui/EventTooltip/EventTooltip.styles.js +56 -0
  504. package/styled-components/es/components/Calendar/ui/index.js +1 -0
  505. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +11 -0
  506. package/styled-components/es/components/DatePicker/DatePicker.tokens.js +23 -1
  507. package/styled-components/es/components/DatePicker/DatePickerBase.styles.js +3 -3
  508. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +11 -2
  509. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -1
  510. package/styled-components/es/components/DatePicker/RangeDate/variations/_tooltip-size/base.js +4 -0
  511. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +11 -8
  512. package/styled-components/es/components/DatePicker/SingleDate/variations/_tooltip-size/base.js +4 -0
  513. package/styled-components/es/components/Popover/Popover.js +1 -0
  514. package/styled-components/es/components/Select/Select.js +35 -8
  515. package/styled-components/es/components/Select/Select.tokens.js +2 -0
  516. package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +166 -0
  517. package/styled-components/es/components/Select/hooks/usePathMaps.js +36 -4
  518. package/styled-components/es/components/Select/reducers/index.js +1 -0
  519. package/styled-components/es/components/Select/reducers/treePathReducer.js +81 -0
  520. package/styled-components/es/components/Select/ui/TreeList/TreeList.js +75 -0
  521. package/styled-components/es/components/Select/ui/TreeList/TreeList.styles.js +27 -0
  522. package/styled-components/es/components/Select/ui/TreeList/TreeList.types.js +1 -0
  523. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.js +99 -0
  524. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +236 -0
  525. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.types.js +1 -0
  526. package/styled-components/es/components/Select/ui/index.js +1 -0
  527. package/styled-components/es/components/TextArea/TextArea.js +2 -2
  528. package/styled-components/es/components/TextField/TextField.js +2 -2
  529. package/styled-components/es/components/TimePicker/TimePicker.js +25 -491
  530. package/styled-components/es/components/TimePicker/TimePicker.styles.js +54 -3
  531. package/styled-components/es/components/TimePicker/utils/index.js +1 -22
  532. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +863 -0
  533. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.styles.js +21 -0
  534. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  535. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.types.js +1 -0
  536. package/styled-components/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  537. package/styled-components/es/components/TimePickerGrid/index.js +2 -0
  538. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  539. package/styled-components/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -9
  540. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +1 -0
  541. package/styled-components/es/components/TimePickerGrid/utils/index.js +133 -0
  542. package/styled-components/es/components/TimePickerGrid/variations/_disabled/base.js +4 -0
  543. package/styled-components/es/components/TimePickerGrid/variations/_size/base.js +4 -0
  544. package/styled-components/es/components/TimePickerGrid/variations/_view/base.js +4 -0
  545. package/styled-components/es/components/Tree/utils/traverseTree.js +1 -59
  546. package/styled-components/es/components/Typography/Typography.styles.js +2 -2
  547. package/styled-components/es/examples/components/Calendar/CalendarBase.config.js +53 -3
  548. package/styled-components/es/examples/components/Calendar/CalendarDouble.config.js +53 -3
  549. package/styled-components/es/examples/components/DatePicker/DatePicker.config.js +51 -2
  550. package/styled-components/es/examples/components/Select/Select.config.js +12 -4
  551. package/styled-components/es/examples/components/TimePicker/TimePicker.config.js +3 -2
  552. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +93 -0
  553. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  554. package/styled-components/es/utils/deepCopy.js +72 -0
  555. package/styled-components/es/utils/index.js +1 -0
  556. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  557. package/types/components/Calendar/Calendar.tokens.d.ts +22 -0
  558. package/types/components/Calendar/Calendar.tokens.d.ts.map +1 -1
  559. package/types/components/Calendar/Calendar.types.d.ts +43 -1
  560. package/types/components/Calendar/Calendar.types.d.ts.map +1 -1
  561. package/types/components/Calendar/CalendarBase/CalendarBase.d.ts +10 -2
  562. package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
  563. package/types/components/Calendar/CalendarBase/variations/_tooltip-size/base.d.ts +2 -0
  564. package/types/components/Calendar/CalendarBase/variations/_tooltip-size/base.d.ts.map +1 -0
  565. package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts +13 -2
  566. package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
  567. package/types/components/Calendar/CalendarDouble/variations/_tooltip-size/base.d.ts +2 -0
  568. package/types/components/Calendar/CalendarDouble/variations/_tooltip-size/base.d.ts.map +1 -0
  569. package/types/components/Calendar/hooks/useKeyNavigation.d.ts.map +1 -1
  570. package/types/components/Calendar/ui/CalendarDays/CalendarDays.d.ts.map +1 -1
  571. package/types/components/Calendar/ui/CalendarDays/CalendarDays.types.d.ts +3 -2
  572. package/types/components/Calendar/ui/CalendarDays/CalendarDays.types.d.ts.map +1 -1
  573. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.d.ts.map +1 -1
  574. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.types.d.ts +2 -1
  575. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.types.d.ts.map +1 -1
  576. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.d.ts.map +1 -1
  577. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.d.ts +2 -1
  578. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.d.ts.map +1 -1
  579. package/types/components/Calendar/ui/CalendarYears/CalendarYears.d.ts.map +1 -1
  580. package/types/components/Calendar/ui/CalendarYears/CalendarYears.types.d.ts +2 -1
  581. package/types/components/Calendar/ui/CalendarYears/CalendarYears.types.d.ts.map +1 -1
  582. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.d.ts.map +1 -1
  583. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.d.ts.map +1 -1
  584. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.types.d.ts +2 -1
  585. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.types.d.ts.map +1 -1
  586. package/types/components/Calendar/ui/EventTooltip/EventTooltip.d.ts +2 -0
  587. package/types/components/Calendar/ui/EventTooltip/EventTooltip.d.ts.map +1 -0
  588. package/types/components/Calendar/ui/EventTooltip/EventTooltip.styles.d.ts +2 -0
  589. package/types/components/Calendar/ui/EventTooltip/EventTooltip.styles.d.ts.map +1 -0
  590. package/types/components/Calendar/ui/index.d.ts +1 -0
  591. package/types/components/Calendar/ui/index.d.ts.map +1 -1
  592. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  593. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +1 -1
  594. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  595. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  596. package/types/components/DatePicker/DatePicker.tokens.d.ts +22 -0
  597. package/types/components/DatePicker/DatePicker.tokens.d.ts.map +1 -1
  598. package/types/components/DatePicker/DatePickerBase.styles.d.ts.map +1 -1
  599. package/types/components/DatePicker/DatePickerBase.types.d.ts +5 -1
  600. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  601. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +7 -3
  602. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  603. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +3 -0
  604. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
  605. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  606. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  607. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts.map +1 -1
  608. package/types/components/DatePicker/RangeDate/variations/_tooltip-size/base.d.ts +2 -0
  609. package/types/components/DatePicker/RangeDate/variations/_tooltip-size/base.d.ts.map +1 -0
  610. package/types/components/DatePicker/SingleDate/SingleDate.d.ts +7 -3
  611. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  612. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  613. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +3 -0
  614. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  615. package/types/components/DatePicker/SingleDate/variations/_tooltip-size/base.d.ts +2 -0
  616. package/types/components/DatePicker/SingleDate/variations/_tooltip-size/base.d.ts.map +1 -0
  617. package/types/components/EmptyState/EmptyState.types.d.ts +1 -1
  618. package/types/components/EmptyState/EmptyState.types.d.ts.map +1 -1
  619. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +12 -0
  620. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
  621. package/types/components/Popover/Popover.d.ts.map +1 -1
  622. package/types/components/Range/Range.styles.d.ts.map +1 -1
  623. package/types/components/Select/Select.d.ts.map +1 -1
  624. package/types/components/Select/Select.tokens.d.ts +2 -0
  625. package/types/components/Select/Select.tokens.d.ts.map +1 -1
  626. package/types/components/Select/Select.types.d.ts +26 -2
  627. package/types/components/Select/Select.types.d.ts.map +1 -1
  628. package/types/components/Select/hooks/useKeyboardNavigation.d.ts +6 -2
  629. package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
  630. package/types/components/Select/hooks/usePathMaps.d.ts +2 -1
  631. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  632. package/types/components/Select/reducers/index.d.ts +1 -0
  633. package/types/components/Select/reducers/index.d.ts.map +1 -1
  634. package/types/components/Select/reducers/treePathReducer.d.ts +14 -0
  635. package/types/components/Select/reducers/treePathReducer.d.ts.map +1 -0
  636. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  637. package/types/components/Select/ui/TreeList/TreeList.d.ts +4 -0
  638. package/types/components/Select/ui/TreeList/TreeList.d.ts.map +1 -0
  639. package/types/components/Select/ui/TreeList/TreeList.styles.d.ts +6 -0
  640. package/types/components/Select/ui/TreeList/TreeList.styles.d.ts.map +1 -0
  641. package/types/components/Select/ui/TreeList/TreeList.types.d.ts +11 -0
  642. package/types/components/Select/ui/TreeList/TreeList.types.d.ts.map +1 -0
  643. package/types/components/Select/ui/TreeList/ui/Item/Item.d.ts +4 -0
  644. package/types/components/Select/ui/TreeList/ui/Item/Item.d.ts.map +1 -0
  645. package/types/components/Select/ui/TreeList/ui/Item/Item.styles.d.ts +64 -0
  646. package/types/components/Select/ui/TreeList/ui/Item/Item.styles.d.ts.map +1 -0
  647. package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts +14 -0
  648. package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts.map +1 -0
  649. package/types/components/Select/ui/index.d.ts +1 -0
  650. package/types/components/Select/ui/index.d.ts.map +1 -1
  651. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  652. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +12 -0
  653. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
  654. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  655. package/types/components/TextArea/TextArea.types.d.ts +4 -0
  656. package/types/components/TextArea/TextArea.types.d.ts.map +1 -1
  657. package/types/components/TextField/TextField.d.ts.map +1 -1
  658. package/types/components/TextField/TextField.types.d.ts +4 -0
  659. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  660. package/types/components/TimePicker/TimePicker.d.ts.map +1 -1
  661. package/types/components/TimePicker/TimePicker.styles.d.ts +18 -0
  662. package/types/components/TimePicker/TimePicker.styles.d.ts.map +1 -1
  663. package/types/components/TimePicker/utils/index.d.ts +1 -2
  664. package/types/components/TimePicker/utils/index.d.ts.map +1 -1
  665. package/types/components/TimePickerGrid/TimePickerGrid.d.ts +61 -0
  666. package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  667. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts +5 -0
  668. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts.map +1 -0
  669. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts +33 -0
  670. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts.map +1 -0
  671. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts +65 -0
  672. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts.map +1 -0
  673. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts +14 -0
  674. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts.map +1 -0
  675. package/types/components/TimePickerGrid/index.d.ts +4 -0
  676. package/types/components/TimePickerGrid/index.d.ts.map +1 -0
  677. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +3 -0
  678. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +1 -0
  679. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.d.ts.map +1 -0
  680. package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.d.ts +9 -8
  681. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -0
  682. package/types/components/TimePickerGrid/utils/index.d.ts +24 -0
  683. package/types/components/TimePickerGrid/utils/index.d.ts.map +1 -0
  684. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts +2 -0
  685. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts.map +1 -0
  686. package/types/components/TimePickerGrid/variations/_size/base.d.ts +2 -0
  687. package/types/components/TimePickerGrid/variations/_size/base.d.ts.map +1 -0
  688. package/types/components/TimePickerGrid/variations/_view/base.d.ts +2 -0
  689. package/types/components/TimePickerGrid/variations/_view/base.d.ts.map +1 -0
  690. package/types/components/Tooltip/Tooltip.types.d.ts +3 -3
  691. package/types/components/Tooltip/Tooltip.types.d.ts.map +1 -1
  692. package/types/components/Tree/utils/traverseTree.d.ts.map +1 -1
  693. package/types/components/Typography/Typography.styles.d.ts.map +1 -1
  694. package/types/examples/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  695. package/types/examples/components/Calendar/Calendar.d.ts +8 -0
  696. package/types/examples/components/Calendar/Calendar.d.ts.map +1 -1
  697. package/types/examples/components/Calendar/CalendarBase.config.d.ts +5 -0
  698. package/types/examples/components/Calendar/CalendarBase.config.d.ts.map +1 -1
  699. package/types/examples/components/Calendar/CalendarDouble.config.d.ts +5 -0
  700. package/types/examples/components/Calendar/CalendarDouble.config.d.ts.map +1 -1
  701. package/types/examples/components/Combobox/Combobox.d.ts +24 -24
  702. package/types/examples/components/Combobox/Combobox.d.ts.map +1 -1
  703. package/types/examples/components/DatePicker/DatePicker.config.d.ts +4 -0
  704. package/types/examples/components/DatePicker/DatePicker.config.d.ts.map +1 -1
  705. package/types/examples/components/DatePicker/DatePicker.d.ts +8 -0
  706. package/types/examples/components/DatePicker/DatePicker.d.ts.map +1 -1
  707. package/types/examples/components/Mask/Mask.d.ts.map +1 -1
  708. package/types/examples/components/NumberFormat/NumberFormat.d.ts.map +1 -1
  709. package/types/examples/components/Select/Select.config.d.ts.map +1 -1
  710. package/types/examples/components/Select/Select.d.ts +12 -0
  711. package/types/examples/components/Select/Select.d.ts.map +1 -1
  712. package/types/examples/components/TextArea/TextArea.d.ts +8 -0
  713. package/types/examples/components/TextArea/TextArea.d.ts.map +1 -1
  714. package/types/examples/components/TextField/TextField.d.ts.map +1 -1
  715. package/types/examples/components/TimePicker/TimePicker.config.d.ts.map +1 -1
  716. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts +21 -0
  717. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts.map +1 -0
  718. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts +32 -0
  719. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  720. package/types/utils/deepCopy.d.ts +2 -0
  721. package/types/utils/deepCopy.d.ts.map +1 -0
  722. package/types/utils/index.d.ts +1 -0
  723. package/types/utils/index.d.ts.map +1 -1
  724. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  725. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  726. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  727. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  728. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  729. package/cjs/components/Typography/Typography.styles_ysh8u6.css +0 -1
  730. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  731. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -71
  732. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  733. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -33
  734. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  735. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -56
  736. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  737. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  738. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  739. package/es/components/Typography/Typography.styles_ysh8u6.css +0 -1
  740. package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  741. package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  742. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts +0 -3
  743. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts.map +0 -1
  744. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts.map +0 -1
  745. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts.map +0 -1
  746. /package/emotion/cjs/components/{TimePicker/ui/TimeColumn/TimeColumn.types.js → Select/ui/TreeList/TreeList.types.js} +0 -0
  747. /package/{styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.types.js → emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.types.js} +0 -0
  748. /package/emotion/es/components/{TimePicker/ui/TimeColumn/TimeColumn.types.js → Select/ui/TreeList/TreeList.types.js} +0 -0
  749. /package/{styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.types.js → emotion/es/components/Select/ui/TreeList/ui/Item/Item.types.js} +0 -0
  750. /package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useRef, useCallback, useEffect, useState, forwardRef, isValidElement } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { useFocusTrap } from '../../hooks';\nimport { cx, safeUseId } from '../../utils';\nimport { Portal } from '../Portal';\nimport { Resizable } from '../_Resizable';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport type { PopoverPlacement, PopoverProps } from './Popover.types';\nimport { StyledArrow, StyledPopover, StyledRoot, StyledWrapper } from './Popover.styles';\nimport { classes } from './Popover.tokens';\nimport { usePopoverOffset } from './hooks/usePopoverOffset';\n\nexport const ESCAPE_KEYCODE = 27;\nexport const POPOVER_PORTAL_ID = 'plasma-popover-root';\n\n/**\n * Всплывающее окно с возможностью позиционирования\n * и вызова по клику либо ховеру.\n */\nexport const popoverRoot = (Root: RootProps<HTMLDivElement, PopoverProps>) =>\n forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n target,\n children,\n animated,\n isOpen,\n opened,\n trigger = 'click',\n hasArrow,\n frame = 'document',\n className,\n placement = 'auto',\n offset = [0, 0],\n zIndex,\n isFocusTrapped = true,\n closeOnEsc = true,\n preventOverflow = true,\n usePortal = false,\n resizable,\n view,\n onToggle,\n onResizeStart,\n onResizeEnd,\n closeOnOverlayClick,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n\n const rootRef = useRef<HTMLDivElement | null>(null);\n const popoverRef = useRef<HTMLDivElement | null>(null);\n const handleRef = useForkRef<HTMLDivElement>(rootRef, outerRootRef);\n const portalRef = useRef<HTMLElement | null>(null);\n const targetRef = useRef<HTMLDivElement | null>(null);\n\n const trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);\n const uuid = safeUseId();\n\n const popoverForkRef = useForkRef<HTMLDivElement>(popoverRef, trapRef);\n\n const [arrowElement, setArrowElement] = useState<HTMLSpanElement | null>(null);\n\n const [, forceRender] = useState(false);\n const [shouldRender, setShouldRender] = useState(innerIsOpen);\n\n const portalContainer =\n (typeof target === 'object' && target !== null && 'current' in target && target.current) || undefined;\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const openClass = innerIsOpen && shouldRender ? classes.open : undefined;\n const animatedClass = animated ? classes.animate : undefined;\n\n const offsetInner = usePopoverOffset({\n handleRef: targetRef,\n placement: placement as string,\n offsetOuter: offset,\n });\n\n const { styles, attributes, forceUpdate } = usePopper(rootRef.current, popoverRef.current, {\n // TODO: #1121\n // eslint-disable-next-line no-nested-ternary\n placement: isAutoArray\n ? placement[0]?.endsWith('start')\n ? 'auto-start'\n : 'auto'\n : (placement as PopoverPlacement),\n modifiers: [\n {\n name: 'preventOverflow',\n options: {\n mainAxis: preventOverflow,\n },\n },\n { name: 'offset', options: { offset: [offsetInner[0], offsetInner[1]] } },\n {\n name: 'flip',\n enabled: isAuto,\n options: {\n allowedAutoPlacements: isAutoArray ? (placement as PopoverPlacement[]) : [],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrowElement,\n },\n },\n ],\n });\n\n const onEscape = useCallback(\n (event: KeyboardEvent) => {\n if (innerIsOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {\n onToggle?.(false, event);\n }\n },\n [closeOnEsc, innerIsOpen, onToggle],\n );\n\n const onDocumentClick = useCallback(\n (event: MouseEvent) => {\n if (innerIsOpen && closeOnOverlayClick && onToggle) {\n const targetIsRoot = event.target === rootRef.current;\n const rootHasTarget = rootRef.current?.contains(event.target as Element);\n const popoverRootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsRoot && !rootHasTarget && !popoverRootHasTarget) {\n onToggle(false, event);\n }\n }\n },\n [closeOnOverlayClick, innerIsOpen, onToggle],\n );\n\n const onClick = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'click') {\n const targetIsPopover = event.target === popoverRef.current;\n const rootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n onToggle?.(!innerIsOpen, event);\n }\n }\n },\n [trigger, innerIsOpen, onToggle],\n );\n\n const onMouseEnter = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onMouseLeave = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onBlur = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n useEffect(() => {\n document.addEventListener('click', onDocumentClick);\n return () => document.removeEventListener('click', onDocumentClick);\n }, [innerIsOpen, onToggle]);\n\n useEffect(() => {\n window.addEventListener('keydown', onEscape);\n return () => window.removeEventListener('keydown', onEscape);\n }, [closeOnEsc, innerIsOpen, onToggle]);\n\n useEffect(() => {\n let portal = document.getElementById(POPOVER_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (typeof frame === 'string' && frame) {\n portal = document.getElementById(frame);\n }\n\n if (!usePortal && isValidElement(target)) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n const portalId = `${POPOVER_PORTAL_ID}-${uuid}`;\n\n portal = document.createElement('div');\n portal.setAttribute('id', portalId);\n\n if (typeof frame === 'string' && frame !== 'document') {\n document.getElementById(frame)?.appendChild(portal);\n } else {\n document.body.appendChild(portal);\n }\n }\n\n portalRef.current = portal;\n\n /**\n * Изменение стейта нужно для того, чтобы Popup\n * отобразился после записи DOM элемента в portalRef.current\n */\n forceRender(true);\n }, []);\n\n useEffect(() => {\n if (!innerIsOpen || !forceUpdate) {\n return;\n }\n\n /*\n * INFO: Метод forceUpdate содержит в себе flushSync и приводит\n * к повторному рендеру компонента, который уже находится в процессе рендера.\n * Данный хак, нужен для того, чтобы это поведение избежать и перенаправить\n * вызов метода в очередь микрозадач.\n */\n Promise.resolve().then(forceUpdate);\n }, [innerIsOpen, children, forceUpdate]);\n\n const handleTransitionEnd = () => {\n if (!innerIsOpen) {\n setShouldRender(false);\n }\n };\n\n useEffect(() => {\n if (innerIsOpen) {\n setShouldRender(true);\n }\n }, [innerIsOpen]);\n\n return (\n <Portal container={portalContainer} disabled={isValidElement(target)}>\n <StyledWrapper\n className={cx(classes.wrapper, !isValidElement(target) && classes.targetAsRef)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={targetRef}\n >\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {isValidElement(target) && target}\n </StyledRoot>\n {children && portalRef.current && (\n <Portal container={portalRef.current}>\n <Root view={view} className={className} {...rest}>\n <StyledPopover\n {...attributes.popper}\n onTransitionEnd={handleTransitionEnd}\n className={cx(classes.root, openClass, animatedClass)}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n display: shouldRender || innerIsOpen ? 'block' : 'none',\n }}\n zIndex={zIndex}\n >\n {hasArrow && (\n <StyledArrow\n className={classes.arrow}\n ref={setArrowElement}\n style={styles.arrow}\n {...attributes.arrow}\n />\n )}\n <Resizable\n resizable={resizable}\n onResizeStart={onResizeStart}\n onResizeEnd={onResizeEnd}\n >\n {children}\n </Resizable>\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\n </Portal>\n );\n },\n );\n\nexport const popoverConfig = {\n name: 'Popover',\n tag: 'div',\n layout: popoverRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["ESCAPE_KEYCODE","POPOVER_PORTAL_ID","popoverRoot","Root","forwardRef","_ref","outerRootRef","_placement$","target","children","animated","isOpen","opened","_ref$trigger","trigger","hasArrow","_ref$frame","frame","className","_ref$placement","placement","_ref$offset","offset","zIndex","_ref$isFocusTrapped","isFocusTrapped","_ref$closeOnEsc","closeOnEsc","_ref$preventOverflow","preventOverflow","_ref$usePortal","usePortal","resizable","view","onToggle","onResizeStart","onResizeEnd","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","targetRef","trapRef","useFocusTrap","uuid","safeUseId","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","_useState5","_useState6","shouldRender","setShouldRender","portalContainer","_typeof","current","undefined","isAutoArray","Array","isArray","isAuto","startsWith","openClass","classes","open","animatedClass","animate","offsetInner","usePopoverOffset","offsetOuter","_usePopper","usePopper","endsWith","modifiers","name","options","mainAxis","enabled","allowedAutoPlacements","element","styles","attributes","forceUpdate","onEscape","useCallback","event","keyCode","onDocumentClick","_rootRef$current","_popoverRef$current","targetIsRoot","rootHasTarget","contains","popoverRootHasTarget","onClick","_popoverRef$current2","targetIsPopover","onMouseEnter","onMouseLeave","onFocus","onBlur","useEffect","document","addEventListener","removeEventListener","window","portal","getElementById","isValidElement","portalId","concat","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","handleTransitionEnd","React","Portal","container","disabled","StyledWrapper","cx","wrapper","targetAsRef","ref","StyledRoot","_extends","StyledPopover","popper","onTransitionEnd","root","style","_objectSpread","display","StyledArrow","arrow","Resizable","popoverConfig","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":";;;;;;;;;;;;;;;AAgBO,IAAMA,cAAc,GAAG,GAAE;AACzB,IAAMC,iBAAiB,GAAG,sBAAqB;;AAEtD;AACA;AACA;AACA;IACaC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,IAA6C,EAAA;AAAA,EAAA,oBACrEC,UAAU,CACN,UAAAC,IAAA,EA0BIC,YAAY,EACX;AAAA,IAAA,IAAAC,WAAA,CAAA;AAAA,IAAA,IAzBGC,MAAM,GAAAH,IAAA,CAANG,MAAM;MACNC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;MACRC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;MACRC,MAAM,GAAAN,IAAA,CAANM,MAAM;MACNC,MAAM,GAAAP,IAAA,CAANO,MAAM;MAAAC,YAAA,GAAAR,IAAA,CACNS,OAAO;AAAPA,MAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,YAAA;MACjBE,QAAQ,GAAAV,IAAA,CAARU,QAAQ;MAAAC,UAAA,GAAAX,IAAA,CACRY,KAAK;AAALA,MAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,UAAU,GAAAA,UAAA;MAClBE,SAAS,GAAAb,IAAA,CAATa,SAAS;MAAAC,cAAA,GAAAd,IAAA,CACTe,SAAS;AAATA,MAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,cAAA;MAAAE,WAAA,GAAAhB,IAAA,CAClBiB,MAAM;MAANA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,CAAC,CAAC,EAAE,CAAC,CAAC,GAAAA,WAAA;MACfE,MAAM,GAAAlB,IAAA,CAANkB,MAAM;MAAAC,mBAAA,GAAAnB,IAAA,CACNoB,cAAc;AAAdA,MAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,mBAAA;MAAAE,eAAA,GAAArB,IAAA,CACrBsB,UAAU;AAAVA,MAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,eAAA;MAAAE,oBAAA,GAAAvB,IAAA,CACjBwB,eAAe;AAAfA,MAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,oBAAA;MAAAE,cAAA,GAAAzB,IAAA,CACtB0B,SAAS;AAATA,MAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;MACjBE,SAAS,GAAA3B,IAAA,CAAT2B,SAAS;MACTC,IAAI,GAAA5B,IAAA,CAAJ4B,IAAI;MACJC,QAAQ,GAAA7B,IAAA,CAAR6B,QAAQ;MACRC,aAAa,GAAA9B,IAAA,CAAb8B,aAAa;MACbC,WAAW,GAAA/B,IAAA,CAAX+B,WAAW;MACXC,mBAAmB,GAAAhC,IAAA,CAAnBgC,mBAAmB;AAChBC,MAAAA,IAAI,GAAAC,wBAAA,CAAAlC,IAAA,EAAAmC,SAAA,CAAA,CAAA;AAIX,IAAA,IAAMC,WAAW,GAAGC,OAAO,CAAC/B,MAAM,IAAIC,MAAM,CAAC,CAAA;AAE7C,IAAA,IAAM+B,OAAO,GAAGC,MAAM,CAAwB,IAAI,CAAC,CAAA;AACnD,IAAA,IAAMC,UAAU,GAAGD,MAAM,CAAwB,IAAI,CAAC,CAAA;AACtD,IAAA,IAAME,SAAS,GAAGC,UAAU,CAAiBJ,OAAO,EAAErC,YAAY,CAAC,CAAA;AACnE,IAAA,IAAM0C,SAAS,GAAGJ,MAAM,CAAqB,IAAI,CAAC,CAAA;AAClD,IAAA,IAAMK,SAAS,GAAGL,MAAM,CAAwB,IAAI,CAAC,CAAA;AAErD,IAAA,IAAMM,OAAO,GAAGC,YAAY,CAACV,WAAW,IAAIhB,cAAc,CAAC,CAAA;AAC3D,IAAA,IAAM2B,IAAI,GAAGC,SAAS,EAAE,CAAA;AAExB,IAAA,IAAMC,cAAc,GAAGP,UAAU,CAAiBF,UAAU,EAAEK,OAAO,CAAC,CAAA;AAEtE,IAAA,IAAAK,SAAA,GAAwCC,QAAQ,CAAyB,IAAI,CAAC;MAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAvEI,MAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpC,IAAA,IAAAI,UAAA,GAAwBL,QAAQ,CAAC,KAAK,CAAC;MAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA9BE,MAAAA,WAAW,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AACpB,IAAA,IAAAE,UAAA,GAAwCR,QAAQ,CAACf,WAAW,CAAC;MAAAwB,UAAA,GAAAP,cAAA,CAAAM,UAAA,EAAA,CAAA,CAAA;AAAtDE,MAAAA,YAAY,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,eAAe,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAEpC,IAAMG,eAAe,GAChBC,OAAA,CAAO7D,MAAM,CAAK,KAAA,QAAQ,IAAIA,MAAM,KAAK,IAAI,IAAI,SAAS,IAAIA,MAAM,IAAIA,MAAM,CAAC8D,OAAO,IAAKC,SAAS,CAAA;AAEzG,IAAA,IAAMC,WAAW,GAAGC,KAAK,CAACC,OAAO,CAACtD,SAAS,CAAC,CAAA;IAC5C,IAAMuD,MAAM,GAAGH,WAAW,IAAKpD,SAAS,CAAsBwD,UAAU,CAAC,MAAM,CAAC,CAAA;IAEhF,IAAMC,SAAS,GAAGpC,WAAW,IAAIyB,YAAY,GAAGY,OAAO,CAACC,IAAI,GAAGR,SAAS,CAAA;IACxE,IAAMS,aAAa,GAAGtE,QAAQ,GAAGoE,OAAO,CAACG,OAAO,GAAGV,SAAS,CAAA;IAE5D,IAAMW,WAAW,GAAGC,gBAAgB,CAAC;AACjCrC,MAAAA,SAAS,EAAEG,SAAS;AACpB7B,MAAAA,SAAS,EAAEA,SAAmB;AAC9BgE,MAAAA,WAAW,EAAE9D,MAAAA;AACjB,KAAC,CAAC,CAAA;IAEF,IAAA+D,UAAA,GAA4CC,SAAS,CAAC3C,OAAO,CAAC2B,OAAO,EAAEzB,UAAU,CAACyB,OAAO,EAAE;AACvF;AACA;QACAlD,SAAS,EAAEoD,WAAW,GAChB,CAAAjE,WAAA,GAAAa,SAAS,CAAC,CAAC,CAAC,MAAAb,IAAAA,IAAAA,WAAA,eAAZA,WAAA,CAAcgF,QAAQ,CAAC,OAAO,CAAC,GAC3B,YAAY,GACZ,MAAM,GACTnE,SAA8B;AACrCoE,QAAAA,SAAS,EAAE,CACP;AACIC,UAAAA,IAAI,EAAE,iBAAiB;AACvBC,UAAAA,OAAO,EAAE;AACLC,YAAAA,QAAQ,EAAE9D,eAAAA;AACd,WAAA;AACJ,SAAC,EACD;AAAE4D,UAAAA,IAAI,EAAE,QAAQ;AAAEC,UAAAA,OAAO,EAAE;YAAEpE,MAAM,EAAE,CAAC4D,WAAW,CAAC,CAAC,CAAC,EAAEA,WAAW,CAAC,CAAC,CAAC,CAAA;AAAE,WAAA;AAAE,SAAC,EACzE;AACIO,UAAAA,IAAI,EAAE,MAAM;AACZG,UAAAA,OAAO,EAAEjB,MAAM;AACfe,UAAAA,OAAO,EAAE;AACLG,YAAAA,qBAAqB,EAAErB,WAAW,GAAIpD,SAAS,GAA0B,EAAA;AAC7E,WAAA;AACJ,SAAC,EACD;AACIqE,UAAAA,IAAI,EAAE,OAAO;AACbC,UAAAA,OAAO,EAAE;AACLI,YAAAA,OAAO,EAAEnC,YAAAA;AACb,WAAA;SACH,CAAA;AAET,OAAC,CAAC;MA9BMoC,MAAM,GAAAV,UAAA,CAANU,MAAM;MAAEC,UAAU,GAAAX,UAAA,CAAVW,UAAU;MAAEC,WAAW,GAAAZ,UAAA,CAAXY,WAAW,CAAA;AAgCvC,IAAA,IAAMC,QAAQ,GAAGC,WAAW,CACxB,UAACC,KAAoB,EAAK;MACtB,IAAI3D,WAAW,IAAId,UAAU,IAAIyE,KAAK,CAACC,OAAO,KAAKrG,cAAc,EAAE;QAC/DkC,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,KAAK,EAAEkE,KAAK,CAAC,CAAA;AAC5B,OAAA;KACH,EACD,CAACzE,UAAU,EAAEc,WAAW,EAAEP,QAAQ,CACtC,CAAC,CAAA;AAED,IAAA,IAAMoE,eAAe,GAAGH,WAAW,CAC/B,UAACC,KAAiB,EAAK;AACnB,MAAA,IAAI3D,WAAW,IAAIJ,mBAAmB,IAAIH,QAAQ,EAAE;QAAA,IAAAqE,gBAAA,EAAAC,mBAAA,CAAA;QAChD,IAAMC,YAAY,GAAGL,KAAK,CAAC5F,MAAM,KAAKmC,OAAO,CAAC2B,OAAO,CAAA;AACrD,QAAA,IAAMoC,aAAa,GAAAH,CAAAA,gBAAA,GAAG5D,OAAO,CAAC2B,OAAO,MAAA,IAAA,IAAAiC,gBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,gBAAA,CAAiBI,QAAQ,CAACP,KAAK,CAAC5F,MAAiB,CAAC,CAAA;AACxE,QAAA,IAAMoG,oBAAoB,GAAAJ,CAAAA,mBAAA,GAAG3D,UAAU,CAACyB,OAAO,MAAA,IAAA,IAAAkC,mBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAlBA,mBAAA,CAAoBG,QAAQ,CAACP,KAAK,CAAC5F,MAAiB,CAAC,CAAA;QAElF,IAAI,CAACiG,YAAY,IAAI,CAACC,aAAa,IAAI,CAACE,oBAAoB,EAAE;AAC1D1E,UAAAA,QAAQ,CAAC,KAAK,EAAEkE,KAAK,CAAC,CAAA;AAC1B,SAAA;AACJ,OAAA;KACH,EACD,CAAC/D,mBAAmB,EAAEI,WAAW,EAAEP,QAAQ,CAC/C,CAAC,CAAA;AAED,IAAA,IAAM2E,OAAO,GAAGV,WAAW,CACvB,UAACC,KAAK,EAAK;MACP,IAAItF,OAAO,KAAK,OAAO,EAAE;AAAA,QAAA,IAAAgG,oBAAA,CAAA;QACrB,IAAMC,eAAe,GAAGX,KAAK,CAAC5F,MAAM,KAAKqC,UAAU,CAACyB,OAAO,CAAA;AAC3D,QAAA,IAAMoC,aAAa,GAAAI,CAAAA,oBAAA,GAAGjE,UAAU,CAACyB,OAAO,MAAA,IAAA,IAAAwC,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAlBA,oBAAA,CAAoBH,QAAQ,CAACP,KAAK,CAAC5F,MAAiB,CAAC,CAAA;AAE3E,QAAA,IAAI,CAACuG,eAAe,IAAI,CAACL,aAAa,EAAE;UACpCxE,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,CAACO,WAAW,EAAE2D,KAAK,CAAC,CAAA;AACnC,SAAA;AACJ,OAAA;KACH,EACD,CAACtF,OAAO,EAAE2B,WAAW,EAAEP,QAAQ,CACnC,CAAC,CAAA;AAED,IAAA,IAAM8E,YAAY,GAAGb,WAAW,CAC5B,UAACC,KAAK,EAAK;MACP,IAAItF,OAAO,KAAK,OAAO,EAAE;QACrBoB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,IAAI,EAAEkE,KAAK,CAAC,CAAA;AAC3B,OAAA;AACJ,KAAC,EACD,CAACtF,OAAO,EAAEoB,QAAQ,CACtB,CAAC,CAAA;AAED,IAAA,IAAM+E,YAAY,GAAGd,WAAW,CAC5B,UAACC,KAAK,EAAK;MACP,IAAItF,OAAO,KAAK,OAAO,EAAE;QACrBoB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,KAAK,EAAEkE,KAAK,CAAC,CAAA;AAC5B,OAAA;AACJ,KAAC,EACD,CAACtF,OAAO,EAAEoB,QAAQ,CACtB,CAAC,CAAA;AAED,IAAA,IAAMgF,OAAO,GAAGf,WAAW,CACvB,UAACC,KAAK,EAAK;MACP,IAAItF,OAAO,KAAK,OAAO,EAAE;QACrBoB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,IAAI,EAAEkE,KAAK,CAAC,CAAA;AAC3B,OAAA;AACJ,KAAC,EACD,CAACtF,OAAO,EAAEoB,QAAQ,CACtB,CAAC,CAAA;AAED,IAAA,IAAMiF,MAAM,GAAGhB,WAAW,CACtB,UAACC,KAAK,EAAK;MACP,IAAItF,OAAO,KAAK,OAAO,EAAE;QACrBoB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAG,KAAK,EAAEkE,KAAK,CAAC,CAAA;AAC5B,OAAA;AACJ,KAAC,EACD,CAACtF,OAAO,EAAEoB,QAAQ,CACtB,CAAC,CAAA;AAEDkF,IAAAA,SAAS,CAAC,YAAM;AACZC,MAAAA,QAAQ,CAACC,gBAAgB,CAAC,OAAO,EAAEhB,eAAe,CAAC,CAAA;MACnD,OAAO,YAAA;AAAA,QAAA,OAAMe,QAAQ,CAACE,mBAAmB,CAAC,OAAO,EAAEjB,eAAe,CAAC,CAAA;AAAA,OAAA,CAAA;AACvE,KAAC,EAAE,CAAC7D,WAAW,EAAEP,QAAQ,CAAC,CAAC,CAAA;AAE3BkF,IAAAA,SAAS,CAAC,YAAM;AACZI,MAAAA,MAAM,CAACF,gBAAgB,CAAC,SAAS,EAAEpB,QAAQ,CAAC,CAAA;MAC5C,OAAO,YAAA;AAAA,QAAA,OAAMsB,MAAM,CAACD,mBAAmB,CAAC,SAAS,EAAErB,QAAQ,CAAC,CAAA;AAAA,OAAA,CAAA;KAC/D,EAAE,CAACvE,UAAU,EAAEc,WAAW,EAAEP,QAAQ,CAAC,CAAC,CAAA;AAEvCkF,IAAAA,SAAS,CAAC,YAAM;AACZ,MAAA,IAAIK,MAAM,GAAGJ,QAAQ,CAACK,cAAc,CAACzH,iBAAiB,CAAC,CAAA;MAEvD,IAAI,OAAOgB,KAAK,KAAK,QAAQ,IAAIA,KAAK,IAAIA,KAAK,CAACqD,OAAO,EAAE;QACrDmD,MAAM,GAAGxG,KAAK,CAACqD,OAAO,CAAA;AAC1B,OAAA;AAEA,MAAA,IAAI,OAAOrD,KAAK,KAAK,QAAQ,IAAIA,KAAK,EAAE;AACpCwG,QAAAA,MAAM,GAAGJ,QAAQ,CAACK,cAAc,CAACzG,KAAK,CAAC,CAAA;AAC3C,OAAA;AAEA,MAAA,IAAI,CAACc,SAAS,iBAAI4F,cAAc,CAACnH,MAAM,CAAC,EAAE;QACtCiH,MAAM,GAAG9E,OAAO,CAAC2B,OAAO,CAAA;AAC5B,OAAA;MAEA,IAAI,CAACmD,MAAM,EAAE;QACT,IAAMG,QAAQ,MAAAC,MAAA,CAAM5H,iBAAiB,EAAA4H,GAAAA,CAAAA,CAAAA,MAAA,CAAIzE,IAAI,CAAE,CAAA;AAE/CqE,QAAAA,MAAM,GAAGJ,QAAQ,CAACS,aAAa,CAAC,KAAK,CAAC,CAAA;AACtCL,QAAAA,MAAM,CAACM,YAAY,CAAC,IAAI,EAAEH,QAAQ,CAAC,CAAA;QAEnC,IAAI,OAAO3G,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,UAAU,EAAE;AAAA,UAAA,IAAA+G,qBAAA,CAAA;AACnD,UAAA,CAAAA,qBAAA,GAAAX,QAAQ,CAACK,cAAc,CAACzG,KAAK,CAAC,MAAA+G,IAAAA,IAAAA,qBAAA,eAA9BA,qBAAA,CAAgCC,WAAW,CAACR,MAAM,CAAC,CAAA;AACvD,SAAC,MAAM;AACHJ,UAAAA,QAAQ,CAACa,IAAI,CAACD,WAAW,CAACR,MAAM,CAAC,CAAA;AACrC,SAAA;AACJ,OAAA;MAEAzE,SAAS,CAACsB,OAAO,GAAGmD,MAAM,CAAA;;AAE1B;AAChB;AACA;AACA;MACgB1D,WAAW,CAAC,IAAI,CAAC,CAAA;KACpB,EAAE,EAAE,CAAC,CAAA;AAENqD,IAAAA,SAAS,CAAC,YAAM;AACZ,MAAA,IAAI,CAAC3E,WAAW,IAAI,CAACwD,WAAW,EAAE;AAC9B,QAAA,OAAA;AACJ,OAAA;;AAEA;AAChB;AACA;AACA;AACA;AACA;MACgBkC,OAAO,CAACC,OAAO,EAAE,CAACC,IAAI,CAACpC,WAAW,CAAC,CAAA;KACtC,EAAE,CAACxD,WAAW,EAAEhC,QAAQ,EAAEwF,WAAW,CAAC,CAAC,CAAA;AAExC,IAAA,IAAMqC,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;MAC9B,IAAI,CAAC7F,WAAW,EAAE;QACd0B,eAAe,CAAC,KAAK,CAAC,CAAA;AAC1B,OAAA;KACH,CAAA;AAEDiD,IAAAA,SAAS,CAAC,YAAM;AACZ,MAAA,IAAI3E,WAAW,EAAE;QACb0B,eAAe,CAAC,IAAI,CAAC,CAAA;AACzB,OAAA;AACJ,KAAC,EAAE,CAAC1B,WAAW,CAAC,CAAC,CAAA;AAEjB,IAAA,oBACI8F,KAAA,CAAAT,aAAA,CAACU,MAAM,EAAA;AAACC,MAAAA,SAAS,EAAErE,eAAgB;MAACsE,QAAQ,eAAEf,cAAc,CAACnH,MAAM,CAAA;AAAE,KAAA,eACjE+H,KAAA,CAAAT,aAAA,CAACa,aAAa,EAAA;AACVzH,MAAAA,SAAS,EAAE0H,EAAE,CAAC9D,OAAO,CAAC+D,OAAO,EAAE,eAAClB,cAAc,CAACnH,MAAM,CAAC,IAAIsE,OAAO,CAACgE,WAAW,CAAE;AAC/E9B,MAAAA,YAAY,EAAEA,YAAa;AAC3BC,MAAAA,YAAY,EAAEA,YAAa;AAC3B8B,MAAAA,GAAG,EAAE9F,SAAAA;AAAU,KAAA,eAEfsF,KAAA,CAAAT,aAAA,CAACkB,UAAU,EAAA;AACPD,MAAAA,GAAG,EAAEjG,SAAU;AACf+D,MAAAA,OAAO,EAAEA,OAAQ;AACjBK,MAAAA,OAAO,EAAEA,OAAQ;AACjBC,MAAAA,MAAM,EAAEA,MAAO;AACfjG,MAAAA,SAAS,EAAE0H,EAAE,CAAC1H,SAAS,EAAE4D,OAAO,CAACtE,MAAM,CAAA;AAAE,KAAA,eAExCmH,cAAc,CAACnH,MAAM,CAAC,IAAIA,MACnB,CAAC,EACZC,QAAQ,IAAIuC,SAAS,CAACsB,OAAO,iBAC1BiE,KAAA,CAAAT,aAAA,CAACU,MAAM,EAAA;MAACC,SAAS,EAAEzF,SAAS,CAACsB,OAAAA;AAAQ,KAAA,eACjCiE,KAAA,CAAAT,aAAA,CAAC3H,IAAI,EAAA8I,QAAA,CAAA;AAAChH,MAAAA,IAAI,EAAEA,IAAK;AAACf,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,EAAKoB,IAAI,CAAA,eAC5CiG,KAAA,CAAAT,aAAA,CAACoB,aAAa,EAAAD,QAAA,CAAA,EAAA,EACNjD,UAAU,CAACmD,MAAM,EAAA;AACrBC,MAAAA,eAAe,EAAEd,mBAAoB;MACrCpH,SAAS,EAAE0H,EAAE,CAAC9D,OAAO,CAACuE,IAAI,EAAExE,SAAS,EAAEG,aAAa,CAAE;AACtD+D,MAAAA,GAAG,EAAEzF,cAAe;AACpBgG,MAAAA,KAAK,EAAAC,cAAA,CAAAA,cAAA,CACExD,EAAAA,EAAAA,MAAM,CAACoD,MAAM,CAAA,EAAA,EAAA,EAAA;AAChBK,QAAAA,OAAO,EAAEtF,YAAY,IAAIzB,WAAW,GAAG,OAAO,GAAG,MAAA;OACnD,CAAA;AACFlB,MAAAA,MAAM,EAAEA,MAAAA;KAEPR,CAAAA,EAAAA,QAAQ,iBACLwH,KAAA,CAAAT,aAAA,CAAC2B,WAAW,EAAAR,QAAA,CAAA;MACR/H,SAAS,EAAE4D,OAAO,CAAC4E,KAAM;AACzBX,MAAAA,GAAG,EAAEnF,eAAgB;MACrB0F,KAAK,EAAEvD,MAAM,CAAC2D,KAAAA;KACV1D,EAAAA,UAAU,CAAC0D,KAAK,CACvB,CACJ,eACDnB,KAAA,CAAAT,aAAA,CAAC6B,SAAS,EAAA;AACN3H,MAAAA,SAAS,EAAEA,SAAU;AACrBG,MAAAA,aAAa,EAAEA,aAAc;AAC7BC,MAAAA,WAAW,EAAEA,WAAAA;AAAY,KAAA,EAExB3B,QACM,CACA,CACb,CACF,CAED,CACX,CAAC,CAAA;AAEjB,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMmJ,aAAa,GAAG;AACzBnE,EAAAA,IAAI,EAAE,SAAS;AACfoE,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAE5J,WAAW;AACnB6J,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACR/H,IAAAA,IAAI,EAAE;AACFgI,MAAAA,GAAG,EAAEC,IAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNlI,IAAAA,IAAI,EAAE,SAAA;AACV,GAAA;AACJ;;;;"}
1
+ {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useRef, useCallback, useEffect, useState, forwardRef, isValidElement } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { useFocusTrap } from '../../hooks';\nimport { cx, safeUseId } from '../../utils';\nimport { Portal } from '../Portal';\nimport { Resizable } from '../_Resizable';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport type { PopoverPlacement, PopoverProps } from './Popover.types';\nimport { StyledArrow, StyledPopover, StyledRoot, StyledWrapper } from './Popover.styles';\nimport { classes } from './Popover.tokens';\nimport { usePopoverOffset } from './hooks/usePopoverOffset';\n\nexport const ESCAPE_KEYCODE = 27;\nexport const POPOVER_PORTAL_ID = 'plasma-popover-root';\n\n/**\n * Всплывающее окно с возможностью позиционирования\n * и вызова по клику либо ховеру.\n */\nexport const popoverRoot = (Root: RootProps<HTMLDivElement, PopoverProps>) =>\n forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n target,\n children,\n animated,\n isOpen,\n opened,\n trigger = 'click',\n hasArrow,\n frame = 'document',\n className,\n placement = 'auto',\n offset = [0, 0],\n zIndex,\n isFocusTrapped = true,\n closeOnEsc = true,\n preventOverflow = true,\n usePortal = false,\n resizable,\n view,\n onToggle,\n onResizeStart,\n onResizeEnd,\n closeOnOverlayClick,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n\n const rootRef = useRef<HTMLDivElement | null>(null);\n const popoverRef = useRef<HTMLDivElement | null>(null);\n const handleRef = useForkRef<HTMLDivElement>(rootRef, outerRootRef);\n const portalRef = useRef<HTMLElement | null>(null);\n const targetRef = useRef<HTMLDivElement | null>(null);\n\n const trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);\n const uuid = safeUseId();\n\n const popoverForkRef = useForkRef<HTMLDivElement>(popoverRef, trapRef);\n\n const [arrowElement, setArrowElement] = useState<HTMLSpanElement | null>(null);\n\n const [, forceRender] = useState(false);\n const [shouldRender, setShouldRender] = useState(innerIsOpen);\n\n const portalContainer =\n (typeof target === 'object' && target !== null && 'current' in target && target.current) || undefined;\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const openClass = innerIsOpen && shouldRender ? classes.open : undefined;\n const animatedClass = animated ? classes.animate : undefined;\n\n const offsetInner = usePopoverOffset({\n handleRef: targetRef,\n placement: placement as string,\n offsetOuter: offset,\n });\n\n const { styles, attributes, forceUpdate } = usePopper(rootRef.current, popoverRef.current, {\n // TODO: #1121\n // eslint-disable-next-line no-nested-ternary\n placement: isAutoArray\n ? placement[0]?.endsWith('start')\n ? 'auto-start'\n : 'auto'\n : (placement as PopoverPlacement),\n modifiers: [\n {\n name: 'preventOverflow',\n options: {\n mainAxis: preventOverflow,\n },\n },\n { name: 'offset', options: { offset: [offsetInner[0], offsetInner[1]] } },\n {\n name: 'flip',\n enabled: isAuto,\n options: {\n allowedAutoPlacements: isAutoArray ? (placement as PopoverPlacement[]) : [],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrowElement,\n },\n },\n ],\n });\n\n const onEscape = useCallback(\n (event: KeyboardEvent) => {\n if (innerIsOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {\n onToggle?.(false, event);\n }\n },\n [closeOnEsc, innerIsOpen, onToggle],\n );\n\n const onDocumentClick = useCallback(\n (event: MouseEvent) => {\n if (innerIsOpen && closeOnOverlayClick && onToggle) {\n const targetIsRoot = event.target === rootRef.current;\n const rootHasTarget = rootRef.current?.contains(event.target as Element);\n const popoverRootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsRoot && !rootHasTarget && !popoverRootHasTarget) {\n onToggle(false, event);\n }\n }\n },\n [closeOnOverlayClick, innerIsOpen, onToggle],\n );\n\n const onClick = useCallback<React.MouseEventHandler>(\n (event) => {\n event.persist();\n if (trigger === 'click') {\n const targetIsPopover = event.target === popoverRef.current;\n const rootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n onToggle?.(!innerIsOpen, event);\n }\n }\n },\n [trigger, innerIsOpen, onToggle],\n );\n\n const onMouseEnter = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onMouseLeave = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onBlur = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n useEffect(() => {\n document.addEventListener('click', onDocumentClick);\n return () => document.removeEventListener('click', onDocumentClick);\n }, [innerIsOpen, onToggle]);\n\n useEffect(() => {\n window.addEventListener('keydown', onEscape);\n return () => window.removeEventListener('keydown', onEscape);\n }, [closeOnEsc, innerIsOpen, onToggle]);\n\n useEffect(() => {\n let portal = document.getElementById(POPOVER_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (typeof frame === 'string' && frame) {\n portal = document.getElementById(frame);\n }\n\n if (!usePortal && isValidElement(target)) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n const portalId = `${POPOVER_PORTAL_ID}-${uuid}`;\n\n portal = document.createElement('div');\n portal.setAttribute('id', portalId);\n\n if (typeof frame === 'string' && frame !== 'document') {\n document.getElementById(frame)?.appendChild(portal);\n } else {\n document.body.appendChild(portal);\n }\n }\n\n portalRef.current = portal;\n\n /**\n * Изменение стейта нужно для того, чтобы Popup\n * отобразился после записи DOM элемента в portalRef.current\n */\n forceRender(true);\n }, []);\n\n useEffect(() => {\n if (!innerIsOpen || !forceUpdate) {\n return;\n }\n\n /*\n * INFO: Метод forceUpdate содержит в себе flushSync и приводит\n * к повторному рендеру компонента, который уже находится в процессе рендера.\n * Данный хак, нужен для того, чтобы это поведение избежать и перенаправить\n * вызов метода в очередь микрозадач.\n */\n Promise.resolve().then(forceUpdate);\n }, [innerIsOpen, children, forceUpdate]);\n\n const handleTransitionEnd = () => {\n if (!innerIsOpen) {\n setShouldRender(false);\n }\n };\n\n useEffect(() => {\n if (innerIsOpen) {\n setShouldRender(true);\n }\n }, [innerIsOpen]);\n\n return (\n <Portal container={portalContainer} disabled={isValidElement(target)}>\n <StyledWrapper\n className={cx(classes.wrapper, !isValidElement(target) && classes.targetAsRef)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={targetRef}\n >\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {isValidElement(target) && target}\n </StyledRoot>\n {children && portalRef.current && (\n <Portal container={portalRef.current}>\n <Root view={view} className={className} {...rest}>\n <StyledPopover\n {...attributes.popper}\n onTransitionEnd={handleTransitionEnd}\n className={cx(classes.root, openClass, animatedClass)}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n display: shouldRender || innerIsOpen ? 'block' : 'none',\n }}\n zIndex={zIndex}\n >\n {hasArrow && (\n <StyledArrow\n className={classes.arrow}\n ref={setArrowElement}\n style={styles.arrow}\n {...attributes.arrow}\n />\n )}\n <Resizable\n resizable={resizable}\n onResizeStart={onResizeStart}\n onResizeEnd={onResizeEnd}\n >\n {children}\n </Resizable>\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\n </Portal>\n );\n },\n );\n\nexport const popoverConfig = {\n name: 'Popover',\n tag: 'div',\n layout: popoverRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["ESCAPE_KEYCODE","POPOVER_PORTAL_ID","popoverRoot","Root","forwardRef","_ref","outerRootRef","_placement$","target","children","animated","isOpen","opened","_ref$trigger","trigger","hasArrow","_ref$frame","frame","className","_ref$placement","placement","_ref$offset","offset","zIndex","_ref$isFocusTrapped","isFocusTrapped","_ref$closeOnEsc","closeOnEsc","_ref$preventOverflow","preventOverflow","_ref$usePortal","usePortal","resizable","view","onToggle","onResizeStart","onResizeEnd","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","targetRef","trapRef","useFocusTrap","uuid","safeUseId","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","_useState5","_useState6","shouldRender","setShouldRender","portalContainer","_typeof","current","undefined","isAutoArray","Array","isArray","isAuto","startsWith","openClass","classes","open","animatedClass","animate","offsetInner","usePopoverOffset","offsetOuter","_usePopper","usePopper","endsWith","modifiers","name","options","mainAxis","enabled","allowedAutoPlacements","element","styles","attributes","forceUpdate","onEscape","useCallback","event","keyCode","onDocumentClick","_rootRef$current","_popoverRef$current","targetIsRoot","rootHasTarget","contains","popoverRootHasTarget","onClick","persist","_popoverRef$current2","targetIsPopover","onMouseEnter","onMouseLeave","onFocus","onBlur","useEffect","document","addEventListener","removeEventListener","window","portal","getElementById","isValidElement","portalId","concat","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","handleTransitionEnd","React","Portal","container","disabled","StyledWrapper","cx","wrapper","targetAsRef","ref","StyledRoot","_extends","StyledPopover","popper","onTransitionEnd","root","style","_objectSpread","display","StyledArrow","arrow","Resizable","popoverConfig","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
@@ -168,6 +168,25 @@
168
168
  .SelectAll_styles_ql2mqj_d19w91z6__b71a8639{background:var(--surface-solid-card);}
169
169
  .SelectAll_styles_ql2mqj_d1nbef5q__b71a8639{height:0.0625rem;margin-top:var(--d1nbef5q-0);margin-right:var(--plasma-select-divider-margin-right);margin-left:var(--plasma-select-divider-margin-left);background:var(--plasma-select-divider-color);}
170
170
 
171
+
172
+ .Item_styles_i0dby2_s14rxgk6__158876c7{--plasma-cell-title-color:var(--s14rxgk6-0);--plasma-cell-background-color:var(--surface-clear);--plasma-cell-padding:var(--plasma-select-cell-padding);--plasma-cell-padding-left-content:var(--plasma-select-cell-padding-left-content);--plasma-cell-padding-content:var(--plasma-select-cell-padding-content);--plasma-cell-padding-right-content:var(--plasma-select-cell-padding-right-content);--plasma-cell-textbox-gap:var(--plasma-select-cell-textbox-gap);--plasma-cell-gap:var(--plasma-select-cell-gap);--plasma-cell-title-font-family:var(--plasma-select-cell-title-font-family);--plasma-cell-title-font-size:var(--plasma-select-cell-title-font-size);--plasma-cell-title-font-style:var(--plasma-select-cell-title-font-style);--plasma-cell-title-font-weight:var(--plasma-select-cell-title-font-weight);--plasma-cell-title-letter-spacing:var(--plasma-select-cell-title-letter-spacing);--plasma-cell-title-line-height:var(--plasma-select-cell-title-line-height);width:100%;}.Item_styles_i0dby2_s14rxgk6__158876c7 div.Item_styles_i0dby2_cellContent__158876c7,.Item_styles_i0dby2_s14rxgk6__158876c7 div.Item_styles_i0dby2_cellTextbox__158876c7{-webkit-flex:1;-ms-flex:1;flex:1;}.Item_styles_i0dby2_s14rxgk6__158876c7 div.Item_styles_i0dby2_cellTextboxTitle__158876c7{position:relative;}.Item_styles_i0dby2_s14rxgk6__158876c7 div.Item_styles_i0dby2_cellTextboxTitle__158876c7:before{content:'&nbsp;';visibility:hidden;}.Item_styles_i0dby2_s14rxgk6__158876c7 div.Item_styles_i0dby2_cellTextboxTitle__158876c7 span{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
173
+
174
+ .Item_styles_i0dby2_s1t6abbl__158876c7{--plasma-checkbox-trigger-size:var(--plasma-select-checkbox-trigger-size);--plasma-checkbox-trigger-border-radius:var(--plasma-select-checkbox-trigger-border-radius);--plasma-checkbox-fill-color:var(--plasma-select-checkbox-fill-color);--plasma-checkbox-icon-color:var(--plasma-select-checkbox-icon-color);--plasma-checkbox-trigger-border-width:var(--plasma-select-checkbox-trigger-border-width);--plasma-checkbox-trigger-border-color:var(--plasma-select-checkbox-trigger-border-color);--plasma-checkbox-trigger-border-checked-color:var(--plasma-select-checkbox-trigger-border-checked-color);}
175
+ .Item_styles_i0dby2_swduayr__158876c7{--plasma-indicator-size:var(--plasma-select-indicator-size);--plasma-indicator-color:var(--plasma-select-item-icon-color);}
176
+ .Item_styles_i0dby2_s1r3fsvz__158876c7{width:var(--s1r3fsvz-0);height:var(--s1r3fsvz-0);}.Item_styles_i0dby2_s1r3fsvz__158876c7.Item_styles_i0dby2_arrowInverse__158876c7{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}
177
+ .Item_styles_i0dby2_s1us4s6s__158876c7{width:var(--s1us4s6s-0);height:var(--s1us4s6s-0);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}.Item_styles_i0dby2_s1us4s6s__158876c7.Item_styles_i0dby2_arrowInverse__158876c7{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);}
178
+ .Item_styles_i0dby2_s14lzt5m__158876c7{width:var(--s14lzt5m-0);height:var(--s14lzt5m-0);}
179
+ .Item_styles_i0dby2_d1178nq__158876c7{line-height:0;color:var(--plasma-select-disclosure-icon-color);visibility:var(--d1178nq-0);}.Item_styles_i0dby2_d1178nq__158876c7:hover{color:var(--plasma-select-disclosure-icon-color-hover);}
180
+ .Item_styles_i0dby2_i1noc5rg__158876c7{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex:none;-ms-flex:none;flex:none;width:var(--i1noc5rg-0);height:var(--i1noc5rg-0);line-height:0;color:var(--plasma-select-item-icon-color);}
181
+ .Item_styles_i0dby2_s1azt70o__158876c7{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
182
+ .Item_styles_i0dby2_wa9o46g__158876c7{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--plasma-select-item-gap);min-height:var(--plasma-select-item-height);margin:0;box-sizing:content-box;padding:var(--wa9o46g-0);font-family:var(--plasma-select-font-family);font-size:var(--plasma-select-font-size);font-style:var(--plasma-select-font-style);font-weight:var(--plasma-select-font-weight);-webkit-letter-spacing:var(--plasma-select-font-letter-spacing);-moz-letter-spacing:var(--plasma-select-font-letter-spacing);-ms-letter-spacing:var(--plasma-select-font-letter-spacing);letter-spacing:var(--plasma-select-font-letter-spacing);line-height:var(--plasma-select-font-line-height);background-color:var(--surface-clear);color:var(--text-primary);border-radius:calc(var(--plasma-select-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-clip:padding-box;position:relative;}.Item_styles_i0dby2_wa9o46g__158876c7:hover:not(.Item_styles_i0dby2_dropdownItemIsDisabled__158876c7){cursor:pointer;background-color:var(--plasma-select-item-background-hover);}.Item_styles_i0dby2_wa9o46g__158876c7.Item_styles_i0dby2_dropdownItemIsActive__158876c7{background-color:var(--plasma-select-item-background-hover);}.Item_styles_i0dby2_wa9o46g__158876c7.Item_styles_i0dby2_dropdownItemIsDisabled__158876c7{opacity:var(--plasma-select-item-disabled-opacity);color:var(--plasma-select-item-disabled-color);cursor:not-allowed;}.Item_styles_i0dby2_wa9o46g__158876c7:focus{outline:none;}.Item_styles_i0dby2_wa9o46g__158876c7::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0 solid transparent;border-radius:calc(var(--plasma-select-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-transition:none;transition:none;pointer-events:none;}.Item_styles_i0dby2_wa9o46g__158876c7.Item_styles_i0dby2_dropdownItemIsFocused__158876c7:before{outline:none;box-shadow:inset 0 0 0 0.0625rem var(--surface-accent);}
183
+
184
+
185
+ .Item_styles_i0dby2_o1888l7c__158876c7{width:calc(var(--o1888l7c-0) * var(--plasma-select-item-tree-offset-width));-webkit-flex:none;-ms-flex:none;flex:none;margin-right:calc(var(--plasma-select-item-gap) * -1);}
186
+
187
+ .TreeList_styles_1t38mek_lm92bs9__3097faae{width:100%;padding:calc(var(--plasma-select-padding) + var(--plasma-select-dropdown-border-width,0rem));border-radius:var(--plasma-select-border-radius);box-sizing:border-box;background:var(--surface-solid-card);box-shadow:0px 4px 14px -4px rgba(8,8,8,0.08),0px 1px 4px -1px rgba(0,0,0,0.04), inset 0 0 0 var(--plasma-select-dropdown-border-width,0rem) var(--plasma-select-dropdown-border-color,transparent);}
188
+ .TreeList_styles_1t38mek_s12qznqt__3097faae{max-height:var(--s12qznqt-0);overflow-x:hidden;overflow-y:auto;border-radius:calc(var(--plasma-select-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));}
189
+
171
190
  .Select_styles_dta4dl_lpxbau6__559b5dde{width:var(--lpxbau6-0);padding:calc(var(--plasma-select-padding) + var(--plasma-select-dropdown-border-width,0rem));border-radius:var(--plasma-select-border-radius);box-sizing:border-box;background:var(--surface-solid-card);box-shadow:0px 4px 14px -4px rgba(8,8,8,0.08),0px 1px 4px -1px rgba(0,0,0,0.04), inset 0 0 0 var(--plasma-select-dropdown-border-width,0rem) var(--plasma-select-dropdown-border-color,transparent);}
172
191
  .Select_styles_dta4dl_u1yey2x3__559b5dde{max-height:var(--u1yey2x3-0);overflow-x:hidden;overflow-y:var(--u1yey2x3-1);border-radius:calc(var(--plasma-select-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));margin:0;padding:0;}
173
192
 
@@ -8,6 +8,7 @@ import { SelectNative } from './ui/SelectNative/SelectNative.js';
8
8
  import { Context } from './Select.context.js';
9
9
  import { initialItemsTransform } from './utils/initialItemsTransform.js';
10
10
  import { pathReducer } from './reducers/pathReducer.js';
11
+ import { treePathReducer } from './reducers/treePathReducer.js';
11
12
  import { focusedPathReducer } from './reducers/focusedPathReducer.js';
12
13
  import { safeUseId } from '../../utils/react.js';
13
14
  import { useOutsideClick } from '../../hooks/useOutsideClick.js';
@@ -16,12 +17,13 @@ import { updateDescendants } from './utils/updateDescendants.js';
16
17
  import { updateAncestors } from './utils/updateAncestors.js';
17
18
  import { updateSingleAncestors } from './utils/updateSingleAncestors.js';
18
19
  import { Target } from './ui/Target/Target.js';
20
+ import { TreeList } from './ui/TreeList/TreeList.js';
19
21
  import { SelectAll } from './ui/SelectAll/SelectAll.js';
20
22
  import { VirtualList } from './ui/VirtualList/VirtualList.js';
21
23
  import { Inner } from './ui/Inner/Inner.js';
22
24
  import { getView } from './utils/getView.js';
23
25
 
24
- var _excluded = ["id", "value", "onChange", "target", "items", "placement", "label", "labelPlacement", "placeholder", "helperText", "disabled", "readOnly", "view", "size", "listOverflow", "listHeight", "listMaxHeight", "listWidth", "contentLeft", "onScrollBottom", "onScroll", "chipView", "variant", "portal", "renderValue", "renderItem", "status", "onItemSelect", "separator", "closeAfterSelect", "isTargetAmount", "beforeList", "afterList", "zIndex", "name", "defaultValue", "virtual", "onToggle", "chipType", "multiselect", "mode", "chipClickArea", "_offset", "required", "requiredPlacement", "hasRequiredIndicator", "optional", "hintText", "hintTrigger", "hintView", "hintSize", "hintTargetPlacement", "hintPlacement", "hintWidth", "hintHasArrow", "hasHint"];
26
+ var _excluded = ["id", "value", "onChange", "target", "items", "treeView", "arrowPlacement", "placement", "label", "labelPlacement", "placeholder", "helperText", "disabled", "readOnly", "view", "size", "listOverflow", "listHeight", "listMaxHeight", "listWidth", "contentLeft", "onScrollBottom", "onScroll", "chipView", "variant", "portal", "renderValue", "renderItem", "status", "onItemSelect", "separator", "closeAfterSelect", "isTargetAmount", "beforeList", "afterList", "zIndex", "name", "defaultValue", "virtual", "onToggle", "chipType", "multiselect", "mode", "chipClickArea", "_offset", "required", "requiredPlacement", "hasRequiredIndicator", "optional", "hintText", "hintTrigger", "hintView", "hintSize", "hintTargetPlacement", "hintPlacement", "hintWidth", "hintHasArrow", "hasHint"];
25
27
 
26
28
  /**
27
29
  * Выпадающий список. Поддерживает выбор одного или нескольких значений.
@@ -34,6 +36,10 @@ var selectRoot = function selectRoot(Root) {
34
36
  _props$target = props.target,
35
37
  target = _props$target === void 0 ? 'textfield-like' : _props$target,
36
38
  items = props.items,
39
+ _props$treeView = props.treeView,
40
+ treeView = _props$treeView === void 0 ? false : _props$treeView,
41
+ _props$arrowPlacement = props.arrowPlacement,
42
+ arrowPlacement = _props$arrowPlacement === void 0 ? 'left' : _props$arrowPlacement,
37
43
  _props$placement = props.placement,
38
44
  placement = _props$placement === void 0 ? 'bottom' : _props$placement,
39
45
  label = props.label,
@@ -94,11 +100,12 @@ var selectRoot = function selectRoot(Root) {
94
100
 
95
101
  // Создаем структуры для быстрой работы с деревом
96
102
  var _usePathMaps = usePathMaps(transformedItems),
97
- _usePathMaps2 = _slicedToArray(_usePathMaps, 4),
103
+ _usePathMaps2 = _slicedToArray(_usePathMaps, 5),
98
104
  pathMap = _usePathMaps2[0],
99
105
  focusedToValueMap = _usePathMaps2[1],
100
106
  valueToCheckedMap = _usePathMaps2[2],
101
- valueToItemMap = _usePathMaps2[3];
107
+ valueToItemMap = _usePathMaps2[3],
108
+ valueToPathMap = _usePathMaps2[4];
102
109
  var _useState = useState(props.multiselect ? [] : ''),
103
110
  _useState2 = _slicedToArray(_useState, 2),
104
111
  internalValue = _useState2[0],
@@ -111,10 +118,14 @@ var selectRoot = function selectRoot(Root) {
111
118
  _useReducer2 = _slicedToArray(_useReducer, 2),
112
119
  path = _useReducer2[0],
113
120
  dispatchPath = _useReducer2[1];
114
- var _useReducer3 = useReducer(focusedPathReducer, []),
121
+ var _useReducer3 = useReducer(treePathReducer, {}),
115
122
  _useReducer4 = _slicedToArray(_useReducer3, 2),
116
- focusedPath = _useReducer4[0],
117
- dispatchFocusedPath = _useReducer4[1];
123
+ treePath = _useReducer4[0],
124
+ dispatchTreePath = _useReducer4[1];
125
+ var _useReducer5 = useReducer(focusedPathReducer, []),
126
+ _useReducer6 = _slicedToArray(_useReducer5, 2),
127
+ focusedPath = _useReducer6[0],
128
+ dispatchFocusedPath = _useReducer6[1];
118
129
  var _useState3 = useState(valueToCheckedMap),
119
130
  _useState4 = _slicedToArray(_useState3, 2),
120
131
  checked = _useState4[0],
@@ -189,6 +200,9 @@ var selectRoot = function selectRoot(Root) {
189
200
  dispatchPath({
190
201
  type: 'reset'
191
202
  });
203
+ dispatchTreePath({
204
+ type: 'reset'
205
+ });
192
206
 
193
207
  // Скроллим чипы к левому краю при закрытии компонента
194
208
  var el = rootRef === null || rootRef === void 0 || (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.querySelector('.input-scrollable-wrapper');
@@ -249,6 +263,9 @@ var selectRoot = function selectRoot(Root) {
249
263
  dispatchFocusedPath({
250
264
  type: 'reset'
251
265
  });
266
+ dispatchTreePath({
267
+ type: 'reset'
268
+ });
252
269
  }
253
270
  if (onChange) {
254
271
  onChange(newValues, item);
@@ -273,6 +290,9 @@ var selectRoot = function selectRoot(Root) {
273
290
  dispatchFocusedPath({
274
291
  type: 'reset'
275
292
  });
293
+ dispatchTreePath({
294
+ type: 'reset'
295
+ });
276
296
  }
277
297
 
278
298
  // Закрываем список, если элемент уже выбран.
@@ -311,7 +331,11 @@ var selectRoot = function selectRoot(Root) {
311
331
  pathMap: pathMap,
312
332
  focusedToValueMap: focusedToValueMap,
313
333
  handleListToggle: handleListToggle,
314
- handlePressDown: handlePressDown
334
+ handlePressDown: handlePressDown,
335
+ treePath: treePath,
336
+ dispatchTreePath: dispatchTreePath,
337
+ treeView: treeView,
338
+ valueToPathMap: valueToPathMap
315
339
  }),
316
340
  onKeyDown = _useKeyNavigation.onKeyDown;
317
341
 
@@ -383,7 +407,11 @@ var selectRoot = function selectRoot(Root) {
383
407
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
384
408
  // @ts-ignore
385
409
  // eslint-disable-next-line no-underscore-dangle
386
- _checkboxAppearance: rest._checkboxAppearance
410
+ _checkboxAppearance: rest._checkboxAppearance,
411
+ treePath: treePath,
412
+ dispatchTreePath: dispatchTreePath,
413
+ arrowPlacement: arrowPlacement,
414
+ valueToPathMap: valueToPathMap
387
415
  }
388
416
  }, /*#__PURE__*/React.createElement(FloatingPopover, {
389
417
  ref: floatingPopoverRef,
@@ -432,7 +460,14 @@ var selectRoot = function selectRoot(Root) {
432
460
  chipView: chipView,
433
461
  disabled: disabled,
434
462
  readOnly: readOnly
435
- }, rest), /*#__PURE__*/React.createElement(ListWrapper, {
463
+ }, rest), treeView ? /*#__PURE__*/React.createElement(TreeList, {
464
+ items: items,
465
+ listMaxHeight: listMaxHeight,
466
+ onScroll: virtual ? undefined : handleScroll,
467
+ virtual: virtual,
468
+ beforeList: beforeList,
469
+ afterList: afterList
470
+ }) : /*#__PURE__*/React.createElement(ListWrapper, {
436
471
  ref: listWrapperRef,
437
472
  listWidth: listWidth
438
473
  }, /*#__PURE__*/React.createElement(Ul, {
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n chipClickArea,\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n const rootRef = useRef<HTMLInputElement>(null);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n /* Логика работы при клике за пределами выпадающего списка */\n useOutsideClick(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n handleListToggle(false);\n }, [floatingPopoverRef, listWrapperRef]);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\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 const el = rootRef?.current?.querySelector('.input-scrollable-wrapper');\n if (multiselect && value.length > 0 && el) {\n el.scrollLeft = 0;\n }\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n switch (checkedCopy.get(item.value)) {\n // Если чекбокс в состоянии indeterminate\n case 'indeterminate': {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n break;\n }\n // Если чекбокс в состоянии checked\n case true: {\n updateDescendants(item, checkedCopy, false, valueToItemMap);\n checkedCopy.set(item.value, false);\n break;\n }\n // Если чекбокс в состоянии unchecked\n case false: {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n checkedCopy.set(item.value, true);\n break;\n }\n default: {\n break;\n }\n }\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(valueToCheckedMap);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n ref={rootRef}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n transformedItems.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 portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","multiselect","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useState","useState","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","rootRef","requiredProps","hintProps","useOutsideClick","handleListToggle","onChange","newValue","item","Array","isArray","_typeof","opened","type","_rootRef$current","el","current","querySelector","length","scrollLeft","handleCheckboxChange","checkedCopy","Map","get","updateDescendants","set","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateAncestors","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA4BA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAoE,EAAA;AAAA,EAAA,oBAC3FC,UAAU,CAAuC,UAACC,KAAK,EAAEC,GAAG,EAAK;AAAA,IAAA,IAAAC,iBAAA,CAAA;AAC7D,IAAA,IAEIC,EAAE,GAyEFH,KAAK,CAzELG,EAAE,CAAA;MACKC,UAAU,GAwEjBJ,KAAK,CAxELK,KAAK,CAAA;MACGC,aAAA,GAuERN,KAAK,CAtELO,MAAM,CAAA;AAANA,MAAAA,MAAM,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,gBAAgB,GAAAA,aAAA,CAAA;MACzBE,KAAK,GAqELR,KAAK,CArELQ,KAAK,CAAA;MAAAC,gBAAA,GAqELT,KAAK,CApELU,SAAS,CAAA;AAATA,MAAAA,SAAS,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,gBAAA,CAAA;MACpBE,KAAK,GAmELX,KAAK,CAnELW,KAAK,CAAA;MACLC,cAAc,GAkEdZ,KAAK,CAlELY,cAAc,CAAA;MACdC,WAAW,GAiEXb,KAAK,CAjELa,WAAW,CAAA;MACXC,UAAU,GAgEVd,KAAK,CAhELc,UAAU,CAAA;MAAAC,eAAA,GAgEVf,KAAK,CA/DLgB,QAAQ,CAAA;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;MAAAE,eAAA,GA+DhBjB,KAAK,CA9DLkB,QAAQ,CAAA;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;MACVE,SAAS,GA6DfnB,KAAK,CA7DLoB,IAAI,CAAA;MACJC,IAAI,GA4DJrB,KAAK,CA5DLqB,IAAI,CAAA;MAEJC,UAAU,GA0DVtB,KAAK,CA1DLsB,UAAU,CAAA;MACVC,aAAa,GAyDbvB,KAAK,CAzDLuB,aAAa,CAAA;MACbC,SAAS,GAwDTxB,KAAK,CAxDLwB,SAAS,CAAA;MACTC,WAAW,GAuDXzB,KAAK,CAvDLyB,WAAW,CAAA;MACXC,cAAc,GAsDd1B,KAAK,CAtDL0B,cAAc,CAAA;MACdC,QAAQ,GAqDR3B,KAAK,CArDL2B,QAAQ,CAAA;MACRC,QAAQ,GAoDR5B,KAAK,CApDL4B,QAAQ,CAAA;MAAAC,cAAA,GAoDR7B,KAAK,CAnDL8B,OAAO,CAAA;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,cAAA,CAAA;MAClBE,MAAM,GAkDN/B,KAAK,CAlDL+B,MAAM,CAAA;MACNC,WAAW,GAiDXhC,KAAK,CAjDLgC,WAAW,CAAA;MACXC,UAAU,GAgDVjC,KAAK,CAhDLiC,UAAU,CAAA;MACVC,MAAM,GA+CNlC,KAAK,CA/CLkC,MAAM,CAAA;MACNC,YAAY,GA8CZnC,KAAK,CA9CLmC,YAAY,CAAA;MACZC,SAAS,GA6CTpC,KAAK,CA7CLoC,SAAS,CAAA;MACSC,qBAAqB,GA4CvCrC,KAAK,CA5CLsC,gBAAgB,CAAA;MAChBC,cAAc,GA2CdvC,KAAK,CA3CLuC,cAAc,CAAA;MACdC,UAAU,GA0CVxC,KAAK,CA1CLwC,UAAU,CAAA;MACVC,SAAS,GAyCTzC,KAAK,CAzCLyC,SAAS,CAAA;MACTC,MAAM,GAwCN1C,KAAK,CAxCL0C,MAAM,CAAA;MACNC,IAAI,GAuCJ3C,KAAK,CAvCL2C,IAAI,CAAA;MACJC,YAAY,GAsCZ5C,KAAK,CAtCL4C,YAAY,CAAA;MAAAC,cAAA,GAsCZ7C,KAAK,CArCL8C,OAAO,CAAA;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA,CAAA;MACfE,QAAQ,GAoCR/C,KAAK,CApCL+C,QAAQ,CAAA;MAERC,WAAW,GAkCXhD,KAAK,CAlCLgD,WAAW,CAAA;MAAAC,WAAA,GAkCXjD,KAAK,CAjCLkD,IAAI,CAAA;AAAJA,MAAAA,IAAI,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,WAAA,CAAA;MAGhBE,OAAO,GA8BPnD,KAAK,CA9BLmD,OAAO,CAAA;MAIPC,QAAQ,GA0BRpD,KAAK,CA1BLoD,QAAQ,CAAA;MAERC,iBAAiB,GAwBjBrD,KAAK,CAxBLqD,iBAAiB,CAAA;MAEjBC,oBAAoB,GAsBpBtD,KAAK,CAtBLsD,oBAAoB,CAAA;MAEpBC,QAAQ,GAoBRvD,KAAK,CApBLuD,QAAQ,CAAA;MAERC,QAAQ,GAkBRxD,KAAK,CAlBLwD,QAAQ,CAAA;MAERC,WAAW,GAgBXzD,KAAK,CAhBLyD,WAAW,CAAA;MAEXC,QAAQ,GAcR1D,KAAK,CAdL0D,QAAQ,CAAA;MAERC,QAAQ,GAYR3D,KAAK,CAZL2D,QAAQ,CAAA;MAERC,mBAAmB,GAUnB5D,KAAK,CAVL4D,mBAAmB,CAAA;MAEnBC,aAAa,GAQb7D,KAAK,CARL6D,aAAa,CAAA;MAEbC,SAAS,GAMT9D,KAAK,CANL8D,SAAS,CAAA;MAETC,YAAY,GAIZ/D,KAAK,CAJL+D,YAAY,CAAA;MAGTC,IAAI,GAAAC,wBAAA,CACPjE,KAAK,EAAAkE,SAAA,EAAA;IACT,IAAMC,gBAAgB,GAAGC,OAAO,CAAC,YAAA;AAAA,MAAA,OAAMC,qBAAqB,CAAC7D,KAAK,IAAI,EAAE,CAAC,CAAA;KAAE,EAAA,CAACA,KAAK,CAAC,CAAC,CAAA;;AAEnF;AACA,IAAA,IAAA8D,YAAA,GAAwEC,WAAW,CAACJ,gBAAgB,CAAC;MAAAK,aAAA,GAAAC,cAAA,CAAAH,YAAA,EAAA,CAAA,CAAA;AAA9FI,MAAAA,OAAO,GAAAF,aAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,iBAAiB,GAAAH,aAAA,CAAA,CAAA,CAAA;AAAEI,MAAAA,iBAAiB,GAAAJ,aAAA,CAAA,CAAA,CAAA;AAAEK,MAAAA,cAAc,GAAAL,aAAA,CAAA,CAAA,CAAA,CAAA;IAEpE,IAAAM,SAAA,GAA0CC,QAAQ,CAC9C/E,KAAK,CAACgD,WAAW,GAAG,EAAE,GAAG,EAC7B,CAAC;MAAAgC,UAAA,GAAAP,cAAA,CAAAK,SAAA,EAAA,CAAA,CAAA;AAFMG,MAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAItC,IAAA,IAAM3E,KAAK,GAAGD,UAAU,KAAK,IAAI,IAAIA,UAAU,KAAK+E,SAAS,GAAG/E,UAAU,GAAG6E,aAAa,CAAA;AAE1F,IAAA,IAAMG,kBAAkB,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;;AAEvD;AACA,IAAA,IAAAC,WAAA,GAA6BC,UAAU,CAACC,WAAW,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAAhB,cAAA,CAAAa,WAAA,EAAA,CAAA,CAAA;AAAjDI,MAAAA,IAAI,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,YAAY,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACzB,IAAA,IAAAG,YAAA,GAA2CL,UAAU,CAACM,kBAAkB,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAArB,cAAA,CAAAmB,YAAA,EAAA,CAAA,CAAA;AAAtEG,MAAAA,WAAW,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,mBAAmB,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACvC,IAAA,IAAAG,UAAA,GAA8BlB,QAAQ,CAACH,iBAAiB,CAAC;MAAAsB,UAAA,GAAAzB,cAAA,CAAAwB,UAAA,EAAA,CAAA,CAAA;AAAlDE,MAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAE1B,IAAMG,iBAAiB,GAAGC,OAAO,CAACZ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1C,IAAMa,yBAAyB,GAAG,CAAArG,CAAAA,iBAAA,GAAAsG,gBAAgB,CAACT,WAAW,EAAEpB,iBAAiB,CAAC,cAAAzE,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhDA,iBAAA,CAAkDG,KAAK,CAACoG,QAAQ,EAAE,KAAI,EAAE,CAAA;IAC1G,IAAMnE,gBAAgB,GAAGD,qBAAqB,KAArBA,IAAAA,IAAAA,qBAAqB,KAArBA,KAAAA,CAAAA,GAAAA,qBAAqB,GAAI,CAACrC,KAAK,CAACgD,WAAW,CAAA;AACpE,IAAA,IAAM0D,MAAM,GAAGC,SAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,cAAc,GAAGvB,MAAM,CAAiB,IAAI,CAAC,CAAA;AACnD,IAAA,IAAMjE,IAAI,GAAGb,MAAM,KAAK,gBAAgB,KAAKS,QAAQ,IAAIE,QAAQ,CAAC,GAAG,SAAS,GAAG2F,OAAO,CAAC3E,MAAM,EAAEf,SAAS,CAAC,CAAA;AAC3G,IAAA,IAAM2F,OAAO,GAAGzB,MAAM,CAAmB,IAAI,CAAC,CAAA;;AAE9C;IACA,IAAM0B,aAAa,GACf/G,KAAK,CAACO,MAAM,KAAK,aAAa,GACxB4E,SAAS,GACR;AACG/B,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBC,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBC,MAAAA,QAAQ,EAARA,QAAAA;KACe,CAAA;;AAE7B;IACA,IAAMyD,SAAS,GACXhH,KAAK,CAACO,MAAM,KAAK,aAAa,GACxB4E,SAAS,GACR;AACG3B,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,WAAW,EAAXA,WAAW;AACXC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBC,MAAAA,aAAa,EAAbA,aAAa;AACbC,MAAAA,SAAS,EAATA,SAAS;AACTC,MAAAA,YAAY,EAAZA,YAAAA;KACW,CAAA;;AAEzB;AACAkD,IAAAA,eAAe,CAAC,YAAM;MAClB,IAAI,CAACZ,iBAAiB,EAAE;AACpB,QAAA,OAAA;AACJ,OAAA;MAEAa,gBAAgB,CAAC,KAAK,CAAC,CAAA;AAC3B,KAAC,EAAE,CAAC9B,kBAAkB,EAAEwB,cAAc,CAAC,CAAC,CAAA;IAExC,IAAMO,QAAQ,GAAG,SAAXA,QAAQA,CACVC,QAA2F,EAC3FC,IAA2C,EAC1C;MACD,IAAIrH,KAAK,CAACmH,QAAQ,EAAE;AAChB;AACA,QAAA,IAAI,CAACnH,KAAK,CAAC2C,IAAI,KAAK,OAAOyE,QAAQ,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,CAAC,EAAE;UAC1EpH,KAAK,CAACmH,QAAQ,CAACC,QAAQ,EAASC,IAAI,IAAI,IAAI,CAAC,CAAA;AACjD,SAAA;;AAEA;AACA;AACA,QAAA,IAAIrH,KAAK,CAAC2C,IAAI,IAAI6E,OAAA,CAAOJ,QAAQ,CAAA,KAAK,QAAQ,IAAI,CAACE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,EAAE;UACxEpH,KAAK,CAACmH,QAAQ,CAACC,QAAQ,EAASC,IAAI,IAAI,IAAI,CAAC,CAAA;AACjD,SAAA;AACJ,OAAA;;AAEA;MACA,IAAI,OAAOD,QAAQ,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,EAAE;QACzDlC,gBAAgB,CAACkC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACH,CAAA;AAED,IAAA,IAAMF,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIO,MAAe,EAAK;MAC1C,IAAIzG,QAAQ,IAAIE,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIuG,MAAM,EAAE;AACR9B,QAAAA,YAAY,CAAC;AAAE+B,UAAAA,IAAI,EAAE,oBAAA;AAAqB,SAAC,CAAC,CAAA;AAChD,OAAC,MAAM;AAAA,QAAA,IAAAC,gBAAA,CAAA;AACH3B,QAAAA,mBAAmB,CAAC;AAAE0B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACtC/B,QAAAA,YAAY,CAAC;AAAE+B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;;AAE/B;AACA,QAAA,IAAME,EAAE,GAAGd,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,IAAA,CAAAa,gBAAA,GAAPb,OAAO,CAAEe,OAAO,MAAA,IAAA,IAAAF,gBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAA,CAAkBG,aAAa,CAAC,2BAA2B,CAAC,CAAA;QACvE,IAAI9E,WAAW,IAAI3C,KAAK,CAAC0H,MAAM,GAAG,CAAC,IAAIH,EAAE,EAAE;UACvCA,EAAE,CAACI,UAAU,GAAG,CAAC,CAAA;AACrB,SAAA;AACJ,OAAA;AAEA,MAAA,IAAIjF,QAAQ,EAAE;QACVA,QAAQ,CAAC0E,MAAM,CAAC,CAAA;AACpB,OAAA;KACH,CAAA;AAED,IAAA,IAAMQ,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIZ,IAAmC,EAAK;AAClE,MAAA,IAAI,CAACrH,KAAK,CAACgD,WAAW,EAAE;AACpB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAMkF,WAAW,GAAG,IAAIC,GAAG,CAAChC,OAAO,CAAC,CAAA;AAEpC,MAAA,QAAQ+B,WAAW,CAACE,GAAG,CAACf,IAAI,CAAChH,KAAK,CAAC;AAC/B;AACA,QAAA,KAAK,eAAe;AAAE,UAAA;YAClBgI,iBAAiB,CAAChB,IAAI,EAAEa,WAAW,EAAE,IAAI,EAAErD,cAAc,CAAC,CAAA;AAC1D,YAAA,MAAA;AACJ,WAAA;AACA;AACA,QAAA,KAAK,IAAI;AAAE,UAAA;YACPwD,iBAAiB,CAAChB,IAAI,EAAEa,WAAW,EAAE,KAAK,EAAErD,cAAc,CAAC,CAAA;YAC3DqD,WAAW,CAACI,GAAG,CAACjB,IAAI,CAAChH,KAAK,EAAE,KAAK,CAAC,CAAA;AAClC,YAAA,MAAA;AACJ,WAAA;AACA;AACA,QAAA,KAAK,KAAK;AAAE,UAAA;YACRgI,iBAAiB,CAAChB,IAAI,EAAEa,WAAW,EAAE,IAAI,EAAErD,cAAc,CAAC,CAAA;YAC1DqD,WAAW,CAACI,GAAG,CAACjB,IAAI,CAAChH,KAAK,EAAE,IAAI,CAAC,CAAA;AACjC,YAAA,MAAA;AACJ,WAAA;AAIJ,OAAA;MAEA,IAAMkI,SAAiC,GAAG,EAAE,CAAA;AAE5C1D,MAAAA,cAAc,CAAC2D,OAAO,CAAC,UAACnB,IAAI,EAAEoB,GAAG,EAAK;AAClC,QAAA,IAAIP,WAAW,CAACE,GAAG,CAACK,GAAG,CAAC,EAAE;AACtBF,UAAAA,SAAS,CAACG,IAAI,CAACrB,IAAI,CAAChH,KAAK,CAAC,CAAA;AAC9B,SAAA;AACJ,OAAC,CAAC,CAAA;;AAEF;AACA,MAAA,IAAIiH,KAAK,CAACC,OAAO,CAAClH,KAAK,CAAC,EAAE;AACtBA,QAAAA,KAAK,CAACmI,OAAO,CAAC,UAACG,GAAW,EAAK;AAC3B,UAAA,IAAI,CAAC9D,cAAc,CAAC+D,GAAG,CAACD,GAAG,CAAC,EAAE;AAC1BJ,YAAAA,SAAS,CAACG,IAAI,CAACC,GAAG,CAAC,CAAA;AACvB,WAAA;AACJ,SAAC,CAAC,CAAA;AACN,OAAA;AAEA,MAAA,IAAIrG,gBAAgB,EAAE;AAClBqD,QAAAA,YAAY,CAAC;AAAE+B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/B1B,QAAAA,mBAAmB,CAAC;AAAE0B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;AAEA,MAAA,IAAIP,QAAQ,EAAE;AACVA,QAAAA,QAAQ,CAACoB,SAAS,EAAElB,IAAI,CAAC,CAAA;AAC7B,OAAA;KACH,CAAA;IAED,IAAMwB,eAAe,GAAG,SAAlBA,eAAeA,CAAIxB,IAAmC,EAAEyB,CAAiC,EAAK;MAChG,IAAI,CAACC,OAAO,CAAC1B,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAE7G,KAAK,CAAC,EAAE;AACvB,QAAA,OAAA;AACJ,OAAA;MAEA,IAAIR,KAAK,CAACgD,WAAW,EAAE;QACnBiF,oBAAoB,CAACZ,IAAI,CAAC,CAAA;AAC1B,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIyB,CAAC,EAAE;QACHA,CAAC,CAACE,eAAe,EAAE,CAAA;AACvB,OAAA;MAEA,IAAMC,gBAAgB,GAAG9C,OAAO,CAACiC,GAAG,CAACf,IAAI,CAAChH,KAAK,CAAC,CAAA;AAEhD,MAAA,IAAIiC,gBAAgB,EAAE;AAClBqD,QAAAA,YAAY,CAAC;AAAE+B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/B1B,QAAAA,mBAAmB,CAAC;AAAE0B,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;;AAEA;AACA,MAAA,IAAIxE,IAAI,KAAK,OAAO,IAAI+F,gBAAgB,EAAE;AACtC,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAI9B,QAAQ,EAAE;QACVA,QAAQ,CAAC8B,gBAAgB,GAAG,EAAE,GAAG5B,IAAI,CAAChH,KAAK,EAAEgH,IAAI,CAAC,CAAA;AACtD,OAAA;AAEA,MAAA,IAAIlF,YAAY,EAAE;AACdA,QAAAA,YAAY,CAACkF,IAAI,EAAEyB,CAAE,CAAC,CAAA;AAC1B,OAAA;KACH,CAAA;IAED,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAI7B,IAAmC,EAAEyB,CAAiC,EAAK;AAChG,MAAA,IAAIC,OAAO,CAAC1B,IAAI,CAAC7G,KAAK,CAAC,EAAE;AACrBqI,QAAAA,eAAe,CAACxB,IAAI,EAAEyB,CAAC,CAAC,CAAA;AAC5B,OAAC,MAAM,IAAI9I,KAAK,CAACgD,WAAW,EAAE;QAC1BiF,oBAAoB,CAACZ,IAAI,CAAC,CAAA;AAC9B,OAAA;KACH,CAAA;AAED,IAAA,IAAM8B,YAAY,GAAG,SAAfA,YAAYA,CAAIL,CAAkC,EAAK;AACzD,MAAA,IAAInH,QAAQ,EAAE;QACVA,QAAQ,CAACmH,CAAC,CAAC,CAAA;AACf,OAAA;MAEA,IAAI,CAACpH,cAAc,EAAE,OAAA;AAErB,MAAA,IAAQnB,MAAM,GAAKuI,CAAC,CAAZvI,MAAM,CAAA;MAEd,IACKA,MAAM,CAAiB6I,YAAY,GAAI7I,MAAM,CAAiB8I,SAAS,KACvE9I,MAAM,CAAiB+I,YAAY,EACtC;QACE5H,cAAc,CAACoH,CAAC,CAAC,CAAA;AACrB,OAAA;KACH,CAAA;IAED,IAAAS,iBAAA,GAAsBC,gBAAgB,CAAC;AACnCzD,QAAAA,WAAW,EAAXA,WAAW;AACXC,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBN,QAAAA,IAAI,EAAJA,IAAI;AACJC,QAAAA,YAAY,EAAZA,YAAY;AACZjB,QAAAA,OAAO,EAAPA,OAAO;AACPC,QAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBuC,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBgC,QAAAA,eAAe,EAAfA,eAAAA;AACJ,OAAC,CAAC;MATMO,SAAS,GAAAF,iBAAA,CAATE,SAAS,CAAA;;AAWjB;AACA;AACAC,IAAAA,eAAe,CAAC,YAAM;AAClB,MAAA,IAAMxB,WAAW,GAAG,IAAIC,GAAG,CAACvD,iBAAiB,CAAC,CAAA;AAE9CsD,MAAAA,WAAW,CAACM,OAAO,CAAC,UAACmB,CAAC,EAAElB,GAAG,EAAK;AAC5BP,QAAAA,WAAW,CAACI,GAAG,CAACG,GAAG,EAAE,KAAK,CAAC,CAAA;AAC/B,OAAC,CAAC,CAAA;MAEF,IAAI,CAACM,OAAO,CAAC1I,KAAK,CAAC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;AAC9C,QAAA,IAAIiH,KAAK,CAACC,OAAO,CAAClH,KAAK,CAAC,EAAE;AACtBA,UAAAA,KAAK,CAACmI,OAAO,CAAC,UAACG,GAAG,EAAK;AACnB;AACA,YAAA,IAAI9D,cAAc,CAAC+D,GAAG,CAACD,GAAG,CAAC,EAAE;AACzBT,cAAAA,WAAW,CAACI,GAAG,CAACK,GAAG,EAAE,IAAI,CAAC,CAAA;cAC1BN,iBAAiB,CAACxD,cAAc,CAACuD,GAAG,CAACO,GAAG,CAAC,EAAGT,WAAW,EAAE,IAAI,CAAC,CAAA;cAC9D0B,eAAe,CAAC/E,cAAc,CAACuD,GAAG,CAACO,GAAG,CAAC,EAAGT,WAAW,CAAC,CAAA;AAC1D,aAAA;AACJ,WAAC,CAAC,CAAA;AACN,SAAC,MAAM;AACH;AACA;AACA,UAAA,IAAIrD,cAAc,CAAC+D,GAAG,CAACvI,KAAK,CAAC,EAAE;AAC3B6H,YAAAA,WAAW,CAACI,GAAG,CAACjI,KAAK,EAAE,MAAM,CAAC,CAAA;YAC9BwJ,qBAAqB,CAAChF,cAAc,CAACuD,GAAG,CAAC/H,KAAK,CAAC,EAAG6H,WAAW,EAAE,KAAK,CAAC,CAAA;AACzE,WAAA;AACJ,SAAA;AACJ,OAAA;MAEA9B,UAAU,CAAC8B,WAAW,CAAC,CAAA;;AAEvB;AACA;AACA;KACH,EAAE,CAAC9H,UAAU,EAAE6E,aAAa,EAAEzE,KAAK,CAAC,CAAC,CAAA;AAEtCkJ,IAAAA,eAAe,CAAC,YAAM;AAClB,MAAA,IAAI9G,YAAY,EAAE;QACdsC,gBAAgB,CAACtC,YAAiC,CAAC,CAAA;AACvD,OAAA;AACJ,KAAC,EAAE,CAACA,YAAY,CAAC,CAAC,CAAA;AAElB,IAAA,oBACIkH,KAAA,CAAAC,aAAA,CAACjK,IAAI,EAAAkK,QAAA,CAAA;AACD5I,MAAAA,IAAI,EAAEA,IAAK;AACXC,MAAAA,IAAI,EAAEA,IAAK;AACXT,MAAAA,cAAc,EAAEA,cAAe;AAC/BgB,MAAAA,QAAQ,EAAEA,QAAS;AACnBZ,MAAAA,QAAQ,EAAEA,QAAS;AACnBE,MAAAA,QAAQ,EAAEA,QAAS;AACnBf,MAAAA,EAAE,EAAEA,EAAG;AACPF,MAAAA,GAAG,EAAE6G,OAAAA;KACA9C,EAAAA,IAAI,GAERrB,IAAI,iBACDmH,KAAA,CAAAC,aAAA,CAACE,YAAY,EAAA;AACTzJ,MAAAA,KAAK,EAAEqE,cAAe;AACtBlC,MAAAA,IAAI,EAAEA,IAAK;AACXtC,MAAAA,KAAK,EAAE4E,aAAc;MACrBjC,WAAW,EAAEhD,KAAK,CAACgD,WAAY;AAC/BmE,MAAAA,QAAQ,EAAEA,QAAS;AACnB+C,MAAAA,UAAU,EAAEhF,gBAAiB;AAC7BjF,MAAAA,GAAG,EAAEA,GAAAA;KACR,CACJ,eACD6J,KAAA,CAAAC,aAAA,CAACI,OAAO,CAACC,QAAQ,EAAA;AACb/J,MAAAA,KAAK,EAAE;AACH0F,QAAAA,WAAW,EAAXA,WAAW;AACXI,QAAAA,OAAO,EAAPA,OAAO;QACPnD,WAAW,EAAEhD,KAAK,CAACgD,WAAW;AAC9B3B,QAAAA,IAAI,EAAJA,IAAI;AACJ4G,QAAAA,oBAAoB,EAApBA,oBAAoB;AACpBY,QAAAA,eAAe,EAAfA,eAAe;AACf/G,QAAAA,OAAO,EAAPA,OAAO;AACPG,QAAAA,UAAU,EAAVA,UAAU;AACVyE,QAAAA,MAAM,EAANA,MAAM;AACN;AACA;AACA;QACA2D,mBAAmB,EAAGrG,IAAI,CAASqG,mBAAAA;AACvC,OAAA;AAAE,KAAA,eAEFP,KAAA,CAAAC,aAAA,CAACO,eAAe,EAAA;AACZrK,MAAAA,GAAG,EAAEmF,kBAAmB;AACxBqC,MAAAA,MAAM,EAAEpB,iBAAkB;AAC1BtD,MAAAA,QAAQ,EAAEmE,gBAAiB;AAC3BxG,MAAAA,SAAS,EAAEA,SAAU;AACrBqB,MAAAA,MAAM,EAAEA,MAAO;AACfP,MAAAA,SAAS,EAAEA,SAAU;AACrB+I,MAAAA,MAAM,EAAEpH,OAAQ;MAChB5C,MAAM,EAAE,SAAAA,MAAAA,CAACiK,YAAY,EAAA;AAAA,QAAA,oBACjBV,KAAA,CAAAC,aAAA,CAACU,MAAM,EAAA;AACHxK,UAAAA,GAAG,EAAE0C,IAAI,GAAG,IAAI,GAAG1C,GAAI;AACvBI,UAAAA,KAAK,EAAEA,KAAM;AACboH,UAAAA,MAAM,EAAEpB,iBAAkB;AAC1BxB,UAAAA,cAAc,EAAEA,cAAe;AAC/BlE,UAAAA,KAAK,EAAEA,KAAM;AACbE,UAAAA,WAAW,EAAEA,WAAY;AACzB4I,UAAAA,SAAS,EAAEA,SAAU;AACrB7I,UAAAA,cAAc,EAAEA,cAAe;AAC/BS,UAAAA,IAAI,EAAEA,IAAK;AACXI,UAAAA,WAAW,EAAEA,WAAY;AACzBT,UAAAA,QAAQ,EAAEA,QAAS;AACnBE,UAAAA,QAAQ,EAAEA,QAAS;AACnBc,UAAAA,WAAW,EAAEA,WAAY;AACzB0I,UAAAA,WAAW,EAAE1K,KAAM;AACnB2K,UAAAA,eAAe,EAAEH,YAAuD;UACxExH,WAAW,EAAEhD,KAAK,CAACgD,WAAY;AAC/B5B,UAAAA,IAAI,EAAEA,IAAK;AACXN,UAAAA,UAAU,EAAEA,UAAW;AACvB4F,UAAAA,MAAM,EAAEA,MAAO;AACfH,UAAAA,yBAAyB,EAAEA,yBAA0B;AACrDhE,UAAAA,cAAc,EAAEA,cAAe;AAC/B4E,UAAAA,QAAQ,EAAEA,QAAS;AACnBvF,UAAAA,QAAQ,EAAEA,QAAS;AACnBQ,UAAAA,SAAS,EAAEA,SAAU;AACrB2E,UAAAA,aAAa,EAAEA,aAAc;AAC7BC,UAAAA,SAAS,EAAEA,SAAAA;AAAU,SACxB,CAAC,CAAA;OACJ;AACFtE,MAAAA,MAAM,EAAEA,MAAO;AACfkI,MAAAA,OAAO,EAAE,KAAA;AAAM,KAAA,eAEfd,KAAA,CAAAC,aAAA,CAACjK,IAAI,EAAAkK,QAAA,CAAA;AACD5I,MAAAA,IAAI,EAAEA,IAAK;AACXC,MAAAA,IAAI,EAAEA,IAAK;AACXT,MAAAA,cAAc,EAAEA,cAAe;AAC/BgB,MAAAA,QAAQ,EAAEA,QAAS;AACnBZ,MAAAA,QAAQ,EAAEA,QAAS;AACnBE,MAAAA,QAAQ,EAAEA,QAAAA;AAAS,KAAA,EACd8C,IAAI,CAET8F,eAAAA,KAAA,CAAAC,aAAA,CAACc,WAAW,EAAA;AAAC5K,MAAAA,GAAG,EAAE2G,cAAe;AAACpF,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,eACnDsI,KAAA,CAAAC,aAAA,CAACe,EAAE,EAAA;AACCC,MAAAA,IAAI,EAAC,MAAM;AACX5K,MAAAA,EAAE,EAAA6K,EAAAA,CAAAA,MAAA,CAAKtE,MAAM,EAAgB,eAAA,CAAA;AAC7B,MAAA,sBAAA,EAAsBJ,OAAO,CAACtG,KAAK,CAACgD,WAAW,CAAE;MACjDzB,aAAa,EAAEA,aAAa,IAAID,UAAW;AAC3CK,MAAAA,QAAQ,EAAEmB,OAAO,GAAGqC,SAAS,GAAGgE,YAAa;AAC7CrG,MAAAA,OAAO,EAAEA,OAAAA;KAERN,EAAAA,UAAU,EAEVxC,KAAK,CAACgD,WAAW,IAAIhD,KAAK,CAACiL,gBAAgB;AAAA;AACxC;IACAnB,KAAA,CAAAC,aAAA,CAACmB,SAAS,EAAA;MAACD,gBAAgB,EAAEjL,KAAK,CAACiL,gBAAiB;AAACnJ,MAAAA,OAAO,EAAEA,OAAAA;KAAU,CAC3E,EAEAgB,OAAO,gBACJgH,KAAA,CAAAC,aAAA,CAACoB,WAAW,EAAA;AACR3K,MAAAA,KAAK,EAAE2D,gBAAiB;MACxB5C,aAAa,EAAEA,aAAa,IAAID,UAAW;AAC3CK,MAAAA,QAAQ,EAAEA,QAAAA;KACb,CAAC,GAEFwC,gBAAgB,CAACiH,GAAG,CAAC,UAAC/D,IAAI,EAAEgE,KAAK,EAAA;AAAA,MAAA,oBAC7BvB,KAAA,CAAAC,aAAA,CAACuB,KAAK,EAAA;AACF7C,QAAAA,GAAG,EAAAuC,EAAAA,CAAAA,MAAA,CAAKK,KAAK,EAAK,IAAA,CAAA;AAClBhE,QAAAA,IAAI,EAAEA,IAAK;AACXkE,QAAAA,YAAY,EAAE,CAAE;AAChB7F,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3B0F,QAAAA,KAAK,EAAEA,KAAM;AACb7J,QAAAA,SAAS,EAAEA,SAAU;AACrBO,QAAAA,MAAM,EAAE6E,cAAAA;AAAe,OAC1B,CAAC,CAAA;KACL,CACJ,EACAnE,SACD,CACK,CACX,CACO,CACH,CAChB,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAM+I,YAAY,GAAG;AACxB7I,EAAAA,IAAI,EAAE,QAAQ;AACd8I,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAE7L,UAAU;AAClB8L,EAAAA,IAAI,EAAJA,IAAI;EACJC,UAAU,EAAE,EAAE;AACdC,EAAAA,QAAQ,EAAE;AACNzK,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAG;AACTT,IAAAA,cAAc,EAAE,OAAO;AACvBgB,IAAAA,QAAQ,EAAE,SAAA;AACd,GAAA;AACJ;;;;"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll, TreeList } from './ui';\nimport { pathReducer, focusedPathReducer, treePathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n treeView = false,\n arrowPlacement = 'left',\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n chipClickArea,\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, valueToPathMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [treePath, dispatchTreePath] = useReducer(treePathReducer, {});\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n const rootRef = useRef<HTMLInputElement>(null);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n /* Логика работы при клике за пределами выпадающего списка */\n useOutsideClick(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n handleListToggle(false);\n }, [floatingPopoverRef, listWrapperRef]);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\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 dispatchTreePath({ type: 'reset' });\n\n // Скроллим чипы к левому краю при закрытии компонента\n const el = rootRef?.current?.querySelector('.input-scrollable-wrapper');\n if (multiselect && value.length > 0 && el) {\n el.scrollLeft = 0;\n }\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n switch (checkedCopy.get(item.value)) {\n // Если чекбокс в состоянии indeterminate\n case 'indeterminate': {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n break;\n }\n // Если чекбокс в состоянии checked\n case true: {\n updateDescendants(item, checkedCopy, false, valueToItemMap);\n checkedCopy.set(item.value, false);\n break;\n }\n // Если чекбокс в состоянии unchecked\n case false: {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n checkedCopy.set(item.value, true);\n break;\n }\n default: {\n break;\n }\n }\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n dispatchTreePath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n dispatchTreePath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n treePath,\n dispatchTreePath,\n treeView,\n valueToPathMap,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(valueToCheckedMap);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n ref={rootRef}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n treePath,\n dispatchTreePath,\n arrowPlacement,\n valueToPathMap,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n {treeView ? (\n <TreeList\n items={items}\n listMaxHeight={listMaxHeight}\n onScroll={virtual ? undefined : handleScroll}\n virtual={virtual}\n beforeList={beforeList}\n afterList={afterList}\n />\n ) : (\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n transformedItems.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 portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n )}\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$treeView","treeView","_props$arrowPlacement","arrowPlacement","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","multiselect","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","valueToPathMap","_useState","useState","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","treePathReducer","_useReducer4","treePath","dispatchTreePath","_useReducer5","focusedPathReducer","_useReducer6","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","rootRef","requiredProps","hintProps","useOutsideClick","handleListToggle","onChange","newValue","item","Array","isArray","_typeof","opened","type","_rootRef$current","el","current","querySelector","length","scrollLeft","handleCheckboxChange","checkedCopy","Map","get","updateDescendants","set","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateAncestors","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","TreeList","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
@@ -33,6 +33,8 @@ var tokens = {
33
33
  itemDisabledOpacity: '--plasma-select-item-disabled-opacity',
34
34
  itemDisabledColor: '--plasma-select-item-disabled-color',
35
35
  itemIconColor: '--plasma-select-item-icon-color',
36
+ itemGap: '--plasma-select-item-gap',
37
+ itemTreeOffsetWidth: '--plasma-select-item-tree-offset-width',
36
38
  cellPadding: '--plasma-select-cell-padding',
37
39
  cellPaddingLeftContent: '--plasma-select-cell-padding-left-content',
38
40
  cellPaddingContent: '--plasma-select-cell-padding-content',