@salutejs/plasma-new-hope 0.121.1-canary.1351.10354359507.0 → 0.122.0-canary.1335.10360300775.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (293) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +1 -1
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Combobox/Combobox.js +9 -9
  4. package/cjs/components/Combobox/Combobox.js.map +1 -1
  5. package/cjs/components/DatePicker/RangeDate/RangeDate.js +7 -7
  6. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  7. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  8. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  9. package/cjs/components/DatePicker/SingleDate/SingleDate.js +7 -7
  10. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  11. package/cjs/components/Drawer/Drawer.js +5 -3
  12. package/cjs/components/Drawer/Drawer.js.map +1 -1
  13. package/cjs/components/Dropdown/Dropdown.js +1 -1
  14. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  15. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  16. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  17. package/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  18. package/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js.map +1 -1
  19. package/cjs/components/Modal/Modal.js +5 -3
  20. package/cjs/components/Modal/Modal.js.map +1 -1
  21. package/cjs/components/Notification/NotificationsPortal.js +1 -1
  22. package/cjs/components/Notification/NotificationsPortal.js.map +1 -1
  23. package/cjs/components/Popover/Popover.js +17 -15
  24. package/cjs/components/Popover/Popover.js.map +1 -1
  25. package/cjs/components/Popup/Popup.js +6 -3
  26. package/cjs/components/Popup/Popup.js.map +1 -1
  27. package/cjs/components/Select/Select.js +1 -1
  28. package/cjs/components/Select/Select.js.map +1 -1
  29. package/cjs/components/Select/ui/Inner/Inner.js +1 -1
  30. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  31. package/cjs/components/Sheet/utils/handleTransition.js.map +1 -1
  32. package/cjs/components/Tooltip/Tooltip.js +5 -4
  33. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  34. package/emotion/cjs/components/Autocomplete/Autocomplete.js +1 -1
  35. package/emotion/cjs/components/Combobox/Combobox.js +9 -9
  36. package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +3 -3
  37. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +7 -7
  38. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  39. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +7 -7
  40. package/emotion/cjs/components/Drawer/Drawer.js +5 -3
  41. package/emotion/cjs/components/Drawer/Drawer.template-doc.mdx +13 -13
  42. package/emotion/cjs/components/Dropdown/Dropdown.js +1 -1
  43. package/emotion/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  44. package/emotion/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  45. package/emotion/cjs/components/Modal/Modal.js +5 -3
  46. package/emotion/cjs/components/Modal/Modal.template-doc.mdx +2 -2
  47. package/emotion/cjs/components/Notification/NotificationsPortal.js +2 -2
  48. package/emotion/cjs/components/Popover/Popover.js +17 -15
  49. package/emotion/cjs/components/Popover/Popover.template-doc.mdx +1 -1
  50. package/emotion/cjs/components/Popup/Popup.js +6 -3
  51. package/emotion/cjs/components/Popup/Popup.template-doc.mdx +3 -3
  52. package/emotion/cjs/components/Select/Select.js +1 -1
  53. package/emotion/cjs/components/Select/ui/Inner/Inner.js +1 -1
  54. package/emotion/cjs/components/Sheet/Sheet.template-doc.mdx +2 -2
  55. package/emotion/cjs/components/Tooltip/Tooltip.js +6 -5
  56. package/emotion/cjs/components/Tooltip/Tooltip.template-doc.mdx +1 -1
  57. package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +3 -3
  58. package/emotion/cjs/examples/plasma_b2c/components/Drawer/Drawer.stories.tsx +1 -1
  59. package/emotion/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +4 -4
  60. package/emotion/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +1 -1
  61. package/emotion/cjs/examples/plasma_b2c/components/Popover/Popover.stories.tsx +1 -1
  62. package/emotion/cjs/examples/plasma_b2c/components/Popup/Popup.stories.tsx +2 -2
  63. package/emotion/cjs/examples/plasma_b2c/components/Tabs/TabItem.config.js +15 -15
  64. package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.config.js +15 -15
  65. package/emotion/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +1 -1
  66. package/emotion/cjs/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +9 -9
  67. package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +3 -3
  68. package/emotion/cjs/examples/plasma_web/components/Drawer/Drawer.stories.tsx +1 -1
  69. package/emotion/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +4 -4
  70. package/emotion/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +1 -1
  71. package/emotion/cjs/examples/plasma_web/components/Popover/Popover.stories.tsx +1 -1
  72. package/emotion/cjs/examples/plasma_web/components/Popup/Popup.stories.tsx +2 -2
  73. package/emotion/cjs/examples/plasma_web/components/Tabs/TabItem.config.js +15 -15
  74. package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.config.js +15 -15
  75. package/emotion/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +1 -1
  76. package/emotion/cjs/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +9 -9
  77. package/emotion/cjs/examples/sds_engineer/components/Drawer/Drawer.stories.tsx +1 -1
  78. package/emotion/cjs/examples/sds_engineer/components/Modal/Modal.stories.tsx +3 -3
  79. package/emotion/cjs/examples/sds_engineer/components/Notification/Notification.stories.tsx +1 -1
  80. package/emotion/cjs/examples/sds_engineer/components/Popover/Popover.stories.tsx +1 -1
  81. package/emotion/cjs/examples/sds_engineer/components/Popup/Popup.stories.tsx +2 -2
  82. package/emotion/cjs/examples/sds_engineer/components/Toast/Toast.stories.tsx +1 -1
  83. package/emotion/cjs/examples/sds_engineer/components/Tooltip/Tooltip.stories.tsx +9 -9
  84. package/emotion/es/components/Autocomplete/Autocomplete.js +1 -1
  85. package/emotion/es/components/Combobox/Combobox.js +9 -9
  86. package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +3 -3
  87. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +7 -7
  88. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  89. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +7 -7
  90. package/emotion/es/components/Drawer/Drawer.js +5 -3
  91. package/emotion/es/components/Drawer/Drawer.template-doc.mdx +13 -13
  92. package/emotion/es/components/Dropdown/Dropdown.js +1 -1
  93. package/emotion/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  94. package/emotion/es/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  95. package/emotion/es/components/Modal/Modal.js +5 -3
  96. package/emotion/es/components/Modal/Modal.template-doc.mdx +2 -2
  97. package/emotion/es/components/Notification/NotificationsPortal.js +2 -2
  98. package/emotion/es/components/Popover/Popover.js +17 -15
  99. package/emotion/es/components/Popover/Popover.template-doc.mdx +1 -1
  100. package/emotion/es/components/Popup/Popup.js +6 -3
  101. package/emotion/es/components/Popup/Popup.template-doc.mdx +3 -3
  102. package/emotion/es/components/Select/Select.js +1 -1
  103. package/emotion/es/components/Select/ui/Inner/Inner.js +1 -1
  104. package/emotion/es/components/Sheet/Sheet.template-doc.mdx +2 -2
  105. package/emotion/es/components/Tooltip/Tooltip.js +6 -5
  106. package/emotion/es/components/Tooltip/Tooltip.template-doc.mdx +1 -1
  107. package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +3 -3
  108. package/emotion/es/examples/plasma_b2c/components/Drawer/Drawer.stories.tsx +1 -1
  109. package/emotion/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +4 -4
  110. package/emotion/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +1 -1
  111. package/emotion/es/examples/plasma_b2c/components/Popover/Popover.stories.tsx +1 -1
  112. package/emotion/es/examples/plasma_b2c/components/Popup/Popup.stories.tsx +2 -2
  113. package/emotion/es/examples/plasma_b2c/components/Tabs/TabItem.config.js +15 -15
  114. package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.config.js +15 -15
  115. package/emotion/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +1 -1
  116. package/emotion/es/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +9 -9
  117. package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +3 -3
  118. package/emotion/es/examples/plasma_web/components/Drawer/Drawer.stories.tsx +1 -1
  119. package/emotion/es/examples/plasma_web/components/Modal/Modal.stories.tsx +4 -4
  120. package/emotion/es/examples/plasma_web/components/Notification/Notification.stories.tsx +1 -1
  121. package/emotion/es/examples/plasma_web/components/Popover/Popover.stories.tsx +1 -1
  122. package/emotion/es/examples/plasma_web/components/Popup/Popup.stories.tsx +2 -2
  123. package/emotion/es/examples/plasma_web/components/Tabs/TabItem.config.js +15 -15
  124. package/emotion/es/examples/plasma_web/components/Tabs/Tabs.config.js +15 -15
  125. package/emotion/es/examples/plasma_web/components/Toast/Toast.stories.tsx +1 -1
  126. package/emotion/es/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +9 -9
  127. package/emotion/es/examples/sds_engineer/components/Drawer/Drawer.stories.tsx +1 -1
  128. package/emotion/es/examples/sds_engineer/components/Modal/Modal.stories.tsx +3 -3
  129. package/emotion/es/examples/sds_engineer/components/Notification/Notification.stories.tsx +1 -1
  130. package/emotion/es/examples/sds_engineer/components/Popover/Popover.stories.tsx +1 -1
  131. package/emotion/es/examples/sds_engineer/components/Popup/Popup.stories.tsx +2 -2
  132. package/emotion/es/examples/sds_engineer/components/Toast/Toast.stories.tsx +1 -1
  133. package/emotion/es/examples/sds_engineer/components/Tooltip/Tooltip.stories.tsx +9 -9
  134. package/es/components/Autocomplete/Autocomplete.js +1 -1
  135. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  136. package/es/components/Combobox/Combobox.js +9 -9
  137. package/es/components/Combobox/Combobox.js.map +1 -1
  138. package/es/components/DatePicker/RangeDate/RangeDate.js +7 -7
  139. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  140. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  141. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  142. package/es/components/DatePicker/SingleDate/SingleDate.js +7 -7
  143. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  144. package/es/components/Drawer/Drawer.js +5 -3
  145. package/es/components/Drawer/Drawer.js.map +1 -1
  146. package/es/components/Dropdown/Dropdown.js +1 -1
  147. package/es/components/Dropdown/Dropdown.js.map +1 -1
  148. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  149. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  150. package/es/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  151. package/es/components/Dropdown/ui/DropdownOld/DropdownOld.js.map +1 -1
  152. package/es/components/Modal/Modal.js +5 -3
  153. package/es/components/Modal/Modal.js.map +1 -1
  154. package/es/components/Notification/NotificationsPortal.js +1 -1
  155. package/es/components/Notification/NotificationsPortal.js.map +1 -1
  156. package/es/components/Popover/Popover.js +17 -15
  157. package/es/components/Popover/Popover.js.map +1 -1
  158. package/es/components/Popup/Popup.js +6 -3
  159. package/es/components/Popup/Popup.js.map +1 -1
  160. package/es/components/Select/Select.js +1 -1
  161. package/es/components/Select/Select.js.map +1 -1
  162. package/es/components/Select/ui/Inner/Inner.js +1 -1
  163. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  164. package/es/components/Sheet/utils/handleTransition.js.map +1 -1
  165. package/es/components/Tooltip/Tooltip.js +5 -4
  166. package/es/components/Tooltip/Tooltip.js.map +1 -1
  167. package/package.json +4 -4
  168. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +1 -1
  169. package/styled-components/cjs/components/Combobox/Combobox.js +9 -9
  170. package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +3 -3
  171. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +7 -7
  172. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  173. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +7 -7
  174. package/styled-components/cjs/components/Drawer/Drawer.js +5 -3
  175. package/styled-components/cjs/components/Drawer/Drawer.template-doc.mdx +13 -13
  176. package/styled-components/cjs/components/Dropdown/Dropdown.js +1 -1
  177. package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  178. package/styled-components/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  179. package/styled-components/cjs/components/Modal/Modal.js +5 -3
  180. package/styled-components/cjs/components/Modal/Modal.template-doc.mdx +2 -2
  181. package/styled-components/cjs/components/Notification/NotificationsPortal.js +1 -1
  182. package/styled-components/cjs/components/Popover/Popover.js +17 -15
  183. package/styled-components/cjs/components/Popover/Popover.template-doc.mdx +1 -1
  184. package/styled-components/cjs/components/Popup/Popup.js +6 -3
  185. package/styled-components/cjs/components/Popup/Popup.template-doc.mdx +3 -3
  186. package/styled-components/cjs/components/Select/Select.js +1 -1
  187. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +1 -1
  188. package/styled-components/cjs/components/Sheet/Sheet.template-doc.mdx +2 -2
  189. package/styled-components/cjs/components/Tooltip/Tooltip.js +5 -4
  190. package/styled-components/cjs/components/Tooltip/Tooltip.template-doc.mdx +1 -1
  191. package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +3 -3
  192. package/styled-components/cjs/examples/plasma_b2c/components/Drawer/Drawer.stories.tsx +1 -1
  193. package/styled-components/cjs/examples/plasma_b2c/components/Modal/Modal.stories.tsx +4 -4
  194. package/styled-components/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +1 -1
  195. package/styled-components/cjs/examples/plasma_b2c/components/Popover/Popover.stories.tsx +1 -1
  196. package/styled-components/cjs/examples/plasma_b2c/components/Popup/Popup.stories.tsx +2 -2
  197. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/TabItem.config.js +4 -4
  198. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.config.js +3 -3
  199. package/styled-components/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +1 -1
  200. package/styled-components/cjs/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +9 -9
  201. package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +3 -3
  202. package/styled-components/cjs/examples/plasma_web/components/Drawer/Drawer.stories.tsx +1 -1
  203. package/styled-components/cjs/examples/plasma_web/components/Modal/Modal.stories.tsx +4 -4
  204. package/styled-components/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +1 -1
  205. package/styled-components/cjs/examples/plasma_web/components/Popover/Popover.stories.tsx +1 -1
  206. package/styled-components/cjs/examples/plasma_web/components/Popup/Popup.stories.tsx +2 -2
  207. package/styled-components/cjs/examples/plasma_web/components/Tabs/TabItem.config.js +4 -4
  208. package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.config.js +3 -3
  209. package/styled-components/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +1 -1
  210. package/styled-components/cjs/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +9 -9
  211. package/styled-components/cjs/examples/sds_engineer/components/Drawer/Drawer.stories.tsx +1 -1
  212. package/styled-components/cjs/examples/sds_engineer/components/Modal/Modal.stories.tsx +3 -3
  213. package/styled-components/cjs/examples/sds_engineer/components/Notification/Notification.stories.tsx +1 -1
  214. package/styled-components/cjs/examples/sds_engineer/components/Popover/Popover.stories.tsx +1 -1
  215. package/styled-components/cjs/examples/sds_engineer/components/Popup/Popup.stories.tsx +2 -2
  216. package/styled-components/cjs/examples/sds_engineer/components/Toast/Toast.stories.tsx +1 -1
  217. package/styled-components/cjs/examples/sds_engineer/components/Tooltip/Tooltip.stories.tsx +9 -9
  218. package/styled-components/es/components/Autocomplete/Autocomplete.js +1 -1
  219. package/styled-components/es/components/Combobox/Combobox.js +9 -9
  220. package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +3 -3
  221. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +7 -7
  222. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +4 -2
  223. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +7 -7
  224. package/styled-components/es/components/Drawer/Drawer.js +5 -3
  225. package/styled-components/es/components/Drawer/Drawer.template-doc.mdx +13 -13
  226. package/styled-components/es/components/Dropdown/Dropdown.js +1 -1
  227. package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  228. package/styled-components/es/components/Dropdown/ui/DropdownOld/DropdownOld.js +6 -3
  229. package/styled-components/es/components/Modal/Modal.js +5 -3
  230. package/styled-components/es/components/Modal/Modal.template-doc.mdx +2 -2
  231. package/styled-components/es/components/Notification/NotificationsPortal.js +1 -1
  232. package/styled-components/es/components/Popover/Popover.js +17 -15
  233. package/styled-components/es/components/Popover/Popover.template-doc.mdx +1 -1
  234. package/styled-components/es/components/Popup/Popup.js +6 -3
  235. package/styled-components/es/components/Popup/Popup.template-doc.mdx +3 -3
  236. package/styled-components/es/components/Select/Select.js +1 -1
  237. package/styled-components/es/components/Select/ui/Inner/Inner.js +1 -1
  238. package/styled-components/es/components/Sheet/Sheet.template-doc.mdx +2 -2
  239. package/styled-components/es/components/Tooltip/Tooltip.js +5 -4
  240. package/styled-components/es/components/Tooltip/Tooltip.template-doc.mdx +1 -1
  241. package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +3 -3
  242. package/styled-components/es/examples/plasma_b2c/components/Drawer/Drawer.stories.tsx +1 -1
  243. package/styled-components/es/examples/plasma_b2c/components/Modal/Modal.stories.tsx +4 -4
  244. package/styled-components/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +1 -1
  245. package/styled-components/es/examples/plasma_b2c/components/Popover/Popover.stories.tsx +1 -1
  246. package/styled-components/es/examples/plasma_b2c/components/Popup/Popup.stories.tsx +2 -2
  247. package/styled-components/es/examples/plasma_b2c/components/Tabs/TabItem.config.js +4 -4
  248. package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.config.js +3 -3
  249. package/styled-components/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +1 -1
  250. package/styled-components/es/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +9 -9
  251. package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +3 -3
  252. package/styled-components/es/examples/plasma_web/components/Drawer/Drawer.stories.tsx +1 -1
  253. package/styled-components/es/examples/plasma_web/components/Modal/Modal.stories.tsx +4 -4
  254. package/styled-components/es/examples/plasma_web/components/Notification/Notification.stories.tsx +1 -1
  255. package/styled-components/es/examples/plasma_web/components/Popover/Popover.stories.tsx +1 -1
  256. package/styled-components/es/examples/plasma_web/components/Popup/Popup.stories.tsx +2 -2
  257. package/styled-components/es/examples/plasma_web/components/Tabs/TabItem.config.js +4 -4
  258. package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.config.js +3 -3
  259. package/styled-components/es/examples/plasma_web/components/Toast/Toast.stories.tsx +1 -1
  260. package/styled-components/es/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +9 -9
  261. package/styled-components/es/examples/sds_engineer/components/Drawer/Drawer.stories.tsx +1 -1
  262. package/styled-components/es/examples/sds_engineer/components/Modal/Modal.stories.tsx +3 -3
  263. package/styled-components/es/examples/sds_engineer/components/Notification/Notification.stories.tsx +1 -1
  264. package/styled-components/es/examples/sds_engineer/components/Popover/Popover.stories.tsx +1 -1
  265. package/styled-components/es/examples/sds_engineer/components/Popup/Popup.stories.tsx +2 -2
  266. package/styled-components/es/examples/sds_engineer/components/Toast/Toast.stories.tsx +1 -1
  267. package/styled-components/es/examples/sds_engineer/components/Tooltip/Tooltip.stories.tsx +9 -9
  268. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +2 -2
  269. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  270. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  271. package/types/components/DatePicker/SingleDate/SingleDate.d.ts +2 -2
  272. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +5 -0
  273. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  274. package/types/components/Drawer/Drawer.d.ts.map +1 -1
  275. package/types/components/Dropdown/ui/DropdownOld/Dropdown.types.d.ts +7 -0
  276. package/types/components/Dropdown/ui/DropdownOld/Dropdown.types.d.ts.map +1 -1
  277. package/types/components/Dropdown/ui/DropdownOld/DropdownOld.d.ts.map +1 -1
  278. package/types/components/Modal/Modal.d.ts.map +1 -1
  279. package/types/components/Popover/Popover.d.ts.map +1 -1
  280. package/types/components/Popover/Popover.types.d.ts +5 -1
  281. package/types/components/Popover/Popover.types.d.ts.map +1 -1
  282. package/types/components/Popup/Popup.d.ts.map +1 -1
  283. package/types/components/Popup/Popup.types.d.ts +7 -3
  284. package/types/components/Popup/Popup.types.d.ts.map +1 -1
  285. package/types/components/Select/ui/Target/Target.types.d.ts +1 -0
  286. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  287. package/types/components/Sheet/Sheet.types.d.ts +1 -1
  288. package/types/components/Sheet/Sheet.types.d.ts.map +1 -1
  289. package/types/components/Sheet/utils/handleTransition.d.ts +1 -1
  290. package/types/components/Tooltip/Tooltip.d.ts +2 -2
  291. package/types/components/Tooltip/Tooltip.d.ts.map +1 -1
  292. package/types/components/Tooltip/Tooltip.types.d.ts +6 -1
  293. package/types/components/Tooltip/Tooltip.types.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownInner.js","sources":["../../../../../src/components/Dropdown/ui/DropdownInner/DropdownInner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\n\nimport { DropdownItem } from '..';\nimport { Ul, StyledPopover } from '../../Dropdown.styles';\n\nimport { DropdownInnerProps } from './DropdownInner.type';\n\nconst DropdownInner: FC<DropdownInnerProps> = ({\n item,\n currentLevel,\n focusedPath,\n path,\n dispatchPath,\n index,\n trigger,\n itemRole,\n listHeight,\n listOverflow,\n handleGlobalToggle,\n closeOnSelect,\n onHover,\n onItemSelect,\n onItemClick,\n listWidth,\n variant,\n hasArrow,\n size,\n}) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const listId = `tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (item?.items) {\n return (\n <StyledPopover\n isOpen={isCurrentListOpen}\n usePortal={false}\n placement=\"right-start\"\n trigger={trigger}\n target={\n <DropdownItem\n item={item}\n index={index}\n path={path}\n focusedPath={focusedPath}\n currentLevel={currentLevel}\n itemRole={itemRole}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n variant={variant}\n hasArrow={hasArrow}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n size={size}\n />\n }\n onToggle={handleToggle}\n isFocusTrapped={false}\n preventOverflow={false}\n >\n <Ul\n listHeight={listHeight}\n listOverflow={listOverflow}\n role=\"group\"\n id={listId}\n listWidth={listWidth}\n isInnerUl\n >\n {item.items.map((innerItem, innerIndex) => (\n <DropdownInner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n focusedPath={focusedPath}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n trigger={trigger}\n itemRole={itemRole}\n listHeight={listHeight}\n listOverflow={listOverflow}\n handleGlobalToggle={handleGlobalToggle}\n closeOnSelect={closeOnSelect}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n listWidth={listWidth}\n variant={variant}\n hasArrow={hasArrow}\n size={size}\n />\n ))}\n </Ul>\n </StyledPopover>\n );\n }\n\n return (\n <DropdownItem\n item={item}\n index={index}\n focusedPath={focusedPath}\n currentLevel={currentLevel}\n itemRole={itemRole}\n handleGlobalToggle={handleGlobalToggle}\n closeOnSelect={closeOnSelect}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n variant={variant}\n size={size}\n />\n );\n};\n\nexport { DropdownInner };\n"],"names":["DropdownInner","_ref","item","currentLevel","focusedPath","path","dispatchPath","index","trigger","itemRole","listHeight","listOverflow","handleGlobalToggle","closeOnSelect","onHover","onItemSelect","onItemClick","listWidth","variant","hasArrow","size","handleToggle","opened","type","value","toString","level","isCurrentListOpen","listId","concat","nextLevel","items","React","createElement","StyledPopover","isOpen","usePortal","placement","target","DropdownItem","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","onToggle","isFocusTrapped","preventOverflow","Ul","role","id","isInnerUl","map","innerItem","innerIndex","key"],"mappings":";;;;;;;;;;;;AAQA,IAAMA,aAAqC,GAAG,SAAxCA,aAAqCA,CAAAC,IAAA,EAoBrC;AAAA,EAAA,IAnBFC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IACZC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;IACJC,YAAY,GAAAL,IAAA,CAAZK,YAAY;IACZC,KAAK,GAAAN,IAAA,CAALM,KAAK;IACLC,OAAO,GAAAP,IAAA,CAAPO,OAAO;IACPC,QAAQ,GAAAR,IAAA,CAARQ,QAAQ;IACRC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,YAAY,GAAAV,IAAA,CAAZU,YAAY;IACZC,kBAAkB,GAAAX,IAAA,CAAlBW,kBAAkB;IAClBC,aAAa,GAAAZ,IAAA,CAAbY,aAAa;IACbC,OAAO,GAAAb,IAAA,CAAPa,OAAO;IACPC,YAAY,GAAAd,IAAA,CAAZc,YAAY;IACZC,WAAW,GAAAf,IAAA,CAAXe,WAAW;IACXC,SAAS,GAAAhB,IAAA,CAATgB,SAAS;IACTC,OAAO,GAAAjB,IAAA,CAAPiB,OAAO;IACPC,QAAQ,GAAAlB,IAAA,CAARkB,QAAQ;IACRC,IAAI,GAAAnB,IAAA,CAAJmB,IAAI,CAAA;AAEJ,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,MAAe,EAAW;AAC5C,IAAA,IAAIA,MAAM,EAAE;AACRhB,MAAAA,YAAY,CAAC;AAAEiB,QAAAA,IAAI,EAAE,kBAAkB;AAAEC,QAAAA,KAAK,EAAEtB,IAAI,CAACsB,KAAK,CAACC,QAAQ,EAAE;QAAEC,KAAK,EAAEvB,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACrG,KAAC,MAAM;AACHG,MAAAA,YAAY,CAAC;AAAEiB,QAAAA,IAAI,EAAE,cAAc;QAAEG,KAAK,EAAEvB,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACnE,KAAA;GACH,CAAA;AAED,EAAA,IAAMwB,iBAAiB,GAAGtB,IAAI,CAACF,YAAY,GAAG,CAAC,CAAC,KAAKD,IAAI,CAACsB,KAAK,CAACC,QAAQ,EAAE,CAAA;AAE1E,EAAA,IAAMG,MAAM,GAAAC,aAAAA,CAAAA,MAAA,CAAiB1B,YAAY,GAAG,CAAC,CAAE,CAAA;AAC/C,EAAA,IAAM2B,SAAS,GAAG3B,YAAY,GAAG,CAAC,CAAA;AAElC,EAAA,IAAID,IAAI,KAAJA,IAAAA,IAAAA,IAAI,eAAJA,IAAI,CAAE6B,KAAK,EAAE;AACb,IAAA,oBACIC,KAAA,CAAAC,aAAA,CAACC,aAAa,EAAA;AACVC,MAAAA,MAAM,EAAER,iBAAkB;AAC1BS,MAAAA,SAAS,EAAE,KAAM;AACjBC,MAAAA,SAAS,EAAC,aAAa;AACvB7B,MAAAA,OAAO,EAAEA,OAAQ;AACjB8B,MAAAA,MAAM,eACFN,KAAA,CAAAC,aAAA,CAACM,YAAY,EAAA;AACTrC,QAAAA,IAAI,EAAEA,IAAK;AACXK,QAAAA,KAAK,EAAEA,KAAM;AACbF,QAAAA,IAAI,EAAEA,IAAK;AACXD,QAAAA,WAAW,EAAEA,WAAY;AACzBD,QAAAA,YAAY,EAAEA,YAAa;AAC3BM,QAAAA,QAAQ,EAAEA,QAAS;AACnBK,QAAAA,OAAO,EAAEA,OAAQ;AACjBC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,WAAW,EAAEA,WAAY;AACzBE,QAAAA,OAAO,EAAEA,OAAQ;AACjBC,QAAAA,QAAQ,EAAEA,QAAS;AACnBqB,QAAAA,YAAY,EAAEZ,MAAO;AACrBa,QAAAA,YAAY,EAAEd,iBAAkB;AAChCe,QAAAA,SAAS,EAAEZ,SAAU;QACrBa,SAAS,EAAEzC,IAAI,CAAC0C,KAAM;AACtBxB,QAAAA,IAAI,EAAEA,IAAAA;AAAK,OACd,CACJ;AACDyB,MAAAA,QAAQ,EAAExB,YAAa;AACvByB,MAAAA,cAAc,EAAE,KAAM;AACtBC,MAAAA,eAAe,EAAE,KAAA;AAAM,KAAA,eAEvBf,KAAA,CAAAC,aAAA,CAACe,EAAE,EAAA;AACCtC,MAAAA,UAAU,EAAEA,UAAW;AACvBC,MAAAA,YAAY,EAAEA,YAAa;AAC3BsC,MAAAA,IAAI,EAAC,OAAO;AACZC,MAAAA,EAAE,EAAEtB,MAAO;AACXX,MAAAA,SAAS,EAAEA,SAAU;MACrBkC,SAAS,EAAA,IAAA;KAERjD,EAAAA,IAAI,CAAC6B,KAAK,CAACqB,GAAG,CAAC,UAACC,SAAS,EAAEC,UAAU,EAAA;AAAA,MAAA,oBAClCtB,KAAA,CAAAC,aAAA,CAACjC,aAAa,EAAA;QACVuD,GAAG,EAAA,EAAA,CAAA1B,MAAA,CAAKyB,UAAU,OAAAzB,MAAA,CAAI1B,YAAY,CAAG;AACrCD,QAAAA,IAAI,EAAEmD,SAAU;AAChBlD,QAAAA,YAAY,EAAE2B,SAAU;AACxB1B,QAAAA,WAAW,EAAEA,WAAY;AACzBC,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,KAAK,EAAE+C,UAAW;AAClB9C,QAAAA,OAAO,EAAEA,OAAQ;AACjBC,QAAAA,QAAQ,EAAEA,QAAS;AACnBC,QAAAA,UAAU,EAAEA,UAAW;AACvBC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,QAAAA,aAAa,EAAEA,aAAc;AAC7BC,QAAAA,OAAO,EAAEA,OAAQ;AACjBC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,WAAW,EAAEA,WAAY;AACzBC,QAAAA,SAAS,EAAEA,SAAU;AACrBC,QAAAA,OAAO,EAAEA,OAAQ;AACjBC,QAAAA,QAAQ,EAAEA,QAAS;AACnBC,QAAAA,IAAI,EAAEA,IAAAA;AAAK,OACd,CAAC,CAAA;KACL,CACD,CACO,CAAC,CAAA;AAExB,GAAA;AAEA,EAAA,oBACIY,KAAA,CAAAC,aAAA,CAACM,YAAY,EAAA;AACTrC,IAAAA,IAAI,EAAEA,IAAK;AACXK,IAAAA,KAAK,EAAEA,KAAM;AACbH,IAAAA,WAAW,EAAEA,WAAY;AACzBD,IAAAA,YAAY,EAAEA,YAAa;AAC3BM,IAAAA,QAAQ,EAAEA,QAAS;AACnBG,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,IAAAA,aAAa,EAAEA,aAAc;AAC7BC,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,WAAW,EAAEA,WAAY;AACzBE,IAAAA,OAAO,EAAEA,OAAQ;AACjBE,IAAAA,IAAI,EAAEA,IAAAA;AAAK,GACd,CAAC,CAAA;AAEV;;;;"}
1
+ {"version":3,"file":"DropdownInner.js","sources":["../../../../../src/components/Dropdown/ui/DropdownInner/DropdownInner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\n\nimport { DropdownItem } from '..';\nimport { Ul, StyledPopover } from '../../Dropdown.styles';\n\nimport { DropdownInnerProps } from './DropdownInner.type';\n\nconst DropdownInner: FC<DropdownInnerProps> = ({\n item,\n currentLevel,\n focusedPath,\n path,\n dispatchPath,\n index,\n trigger,\n itemRole,\n listHeight,\n listOverflow,\n handleGlobalToggle,\n closeOnSelect,\n onHover,\n onItemSelect,\n onItemClick,\n listWidth,\n variant,\n hasArrow,\n size,\n}) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const listId = `tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (item?.items) {\n return (\n <StyledPopover\n opened={isCurrentListOpen}\n usePortal={false}\n placement=\"right-start\"\n trigger={trigger}\n target={\n <DropdownItem\n item={item}\n index={index}\n path={path}\n focusedPath={focusedPath}\n currentLevel={currentLevel}\n itemRole={itemRole}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n variant={variant}\n hasArrow={hasArrow}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n size={size}\n />\n }\n onToggle={handleToggle}\n isFocusTrapped={false}\n preventOverflow={false}\n >\n <Ul\n listHeight={listHeight}\n listOverflow={listOverflow}\n role=\"group\"\n id={listId}\n listWidth={listWidth}\n isInnerUl\n >\n {item.items.map((innerItem, innerIndex) => (\n <DropdownInner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n focusedPath={focusedPath}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n trigger={trigger}\n itemRole={itemRole}\n listHeight={listHeight}\n listOverflow={listOverflow}\n handleGlobalToggle={handleGlobalToggle}\n closeOnSelect={closeOnSelect}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n listWidth={listWidth}\n variant={variant}\n hasArrow={hasArrow}\n size={size}\n />\n ))}\n </Ul>\n </StyledPopover>\n );\n }\n\n return (\n <DropdownItem\n item={item}\n index={index}\n focusedPath={focusedPath}\n currentLevel={currentLevel}\n itemRole={itemRole}\n handleGlobalToggle={handleGlobalToggle}\n closeOnSelect={closeOnSelect}\n onHover={onHover}\n onItemSelect={onItemSelect}\n onItemClick={onItemClick}\n variant={variant}\n size={size}\n />\n );\n};\n\nexport { DropdownInner };\n"],"names":["DropdownInner","_ref","item","currentLevel","focusedPath","path","dispatchPath","index","trigger","itemRole","listHeight","listOverflow","handleGlobalToggle","closeOnSelect","onHover","onItemSelect","onItemClick","listWidth","variant","hasArrow","size","handleToggle","opened","type","value","toString","level","isCurrentListOpen","listId","concat","nextLevel","items","React","createElement","StyledPopover","usePortal","placement","target","DropdownItem","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","onToggle","isFocusTrapped","preventOverflow","Ul","role","id","isInnerUl","map","innerItem","innerIndex","key"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { base as base$1 } from './variations/_size/base.js';
6
6
  import { StyledPopover, StyledDropdown } from './Dropdown.styles.js';
7
7
  import { getPlacements } from './utils/index.js';
8
8
 
9
- var _excluded = ["id", "target", "children", "hasArrow", "role", "view", "size", "frame", "onToggle", "isFocusTrapped", "isOpen", "placement", "trigger", "offset", "preventOverflow", "closeOnOverlayClick", "closeOnEsc"];
9
+ var _excluded = ["id", "target", "children", "hasArrow", "role", "view", "size", "frame", "onToggle", "isFocusTrapped", "isOpen", "opened", "placement", "trigger", "offset", "preventOverflow", "closeOnOverlayClick", "closeOnEsc"];
10
10
  /**
11
11
  * Выпадающий список без внешнего контроля видимости.
12
12
  */
@@ -25,6 +25,8 @@ var dropdownOldRoot = function dropdownOldRoot(Root) {
25
25
  isFocusTrapped = _ref$isFocusTrapped === void 0 ? true : _ref$isFocusTrapped,
26
26
  _ref$isOpen = _ref.isOpen,
27
27
  isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
28
+ _ref$opened = _ref.opened,
29
+ opened = _ref$opened === void 0 ? false : _ref$opened,
28
30
  _ref$placement = _ref.placement,
29
31
  placement = _ref$placement === void 0 ? 'auto' : _ref$placement,
30
32
  _ref$trigger = _ref.trigger,
@@ -38,16 +40,17 @@ var dropdownOldRoot = function dropdownOldRoot(Root) {
38
40
  _ref$closeOnEsc = _ref.closeOnEsc,
39
41
  closeOnEsc = _ref$closeOnEsc === void 0 ? false : _ref$closeOnEsc,
40
42
  rest = _objectWithoutProperties(_ref, _excluded);
43
+ var innerIsOpen = Boolean(isOpen || opened);
41
44
  var uniqId = useUniqId();
42
45
  var innerId = id || uniqId;
43
46
  var rootRef = useRef(null);
44
47
  var dropdownRef = useRef(null);
45
48
  var handleRef = useForkRef(rootRef, outerRootRef);
46
- var trapRef = useFocusTrap(isOpen && isFocusTrapped);
49
+ var trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);
47
50
  var dropdownForkRef = useForkRef(dropdownRef, trapRef);
48
51
  return /*#__PURE__*/React.createElement(StyledPopover, {
49
52
  role: role,
50
- isOpen: isOpen,
53
+ opened: innerIsOpen,
51
54
  usePortal: false,
52
55
  onToggle: function onToggle(is, event) {
53
56
  return _onToggle === null || _onToggle === void 0 ? void 0 : _onToggle(is, event);
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownOld.js","sources":["../../../../../src/components/Dropdown/ui/DropdownOld/DropdownOld.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useFocusTrap, useForkRef, useUniqId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdown, StyledPopover } from './Dropdown.styles';\nimport { getPlacements } from './utils';\nimport type { DropdownProps } from './Dropdown.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const dropdownOldRoot = (Root: RootProps<HTMLDivElement, DropdownProps>) =>\n forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n id,\n target,\n children,\n hasArrow,\n role,\n view,\n size,\n frame,\n onToggle,\n isFocusTrapped = true,\n isOpen = false,\n placement = 'auto',\n trigger = 'click',\n offset = [0, 6],\n preventOverflow = false,\n closeOnOverlayClick = false,\n closeOnEsc = false,\n ...rest\n },\n outerRootRef,\n ) => {\n const uniqId = useUniqId();\n const innerId = id || uniqId;\n\n const rootRef = useRef<HTMLDivElement | null>(null);\n const dropdownRef = useRef<HTMLDivElement | null>(null);\n const handleRef = useForkRef<HTMLDivElement>(rootRef, outerRootRef);\n\n const trapRef = useFocusTrap(isOpen && isFocusTrapped);\n\n const dropdownForkRef = useForkRef<HTMLDivElement>(dropdownRef, trapRef);\n\n return (\n <StyledPopover\n role={role}\n isOpen={isOpen}\n usePortal={false}\n onToggle={(is, event) => onToggle?.(is, event)}\n id={innerId}\n ref={dropdownForkRef}\n target={target}\n offset={offset}\n preventOverflow={preventOverflow}\n hasArrow={hasArrow}\n placement={getPlacements(placement)}\n trigger={trigger}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n isFocusTrapped={isFocusTrapped}\n frame={frame}\n >\n <Root ref={handleRef} view={view} size={size} {...rest}>\n <StyledDropdown>{children}</StyledDropdown>\n </Root>\n </StyledPopover>\n );\n },\n );\n\nexport const dropdownOldConfig = {\n name: 'Dropdown',\n tag: 'div',\n layout: dropdownOldRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["dropdownOldRoot","Root","forwardRef","_ref","outerRootRef","id","target","children","hasArrow","role","view","size","frame","onToggle","_ref$isFocusTrapped","isFocusTrapped","_ref$isOpen","isOpen","_ref$placement","placement","_ref$trigger","trigger","_ref$offset","offset","_ref$preventOverflow","preventOverflow","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","rest","_objectWithoutProperties","_excluded","uniqId","useUniqId","innerId","rootRef","useRef","dropdownRef","handleRef","useForkRef","trapRef","useFocusTrap","dropdownForkRef","React","createElement","StyledPopover","usePortal","is","event","ref","getPlacements","_extends","StyledDropdown","dropdownOldConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownOld.js","sources":["../../../../../src/components/Dropdown/ui/DropdownOld/DropdownOld.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { useFocusTrap, useForkRef, useUniqId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../../engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdown, StyledPopover } from './Dropdown.styles';\nimport { getPlacements } from './utils';\nimport type { DropdownProps } from './Dropdown.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const dropdownOldRoot = (Root: RootProps<HTMLDivElement, DropdownProps>) =>\n forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n id,\n target,\n children,\n hasArrow,\n role,\n view,\n size,\n frame,\n onToggle,\n isFocusTrapped = true,\n isOpen = false,\n opened = false,\n placement = 'auto',\n trigger = 'click',\n offset = [0, 6],\n preventOverflow = false,\n closeOnOverlayClick = false,\n closeOnEsc = false,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n\n const uniqId = useUniqId();\n const innerId = id || uniqId;\n\n const rootRef = useRef<HTMLDivElement | null>(null);\n const dropdownRef = useRef<HTMLDivElement | null>(null);\n const handleRef = useForkRef<HTMLDivElement>(rootRef, outerRootRef);\n\n const trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);\n\n const dropdownForkRef = useForkRef<HTMLDivElement>(dropdownRef, trapRef);\n\n return (\n <StyledPopover\n role={role}\n opened={innerIsOpen}\n usePortal={false}\n onToggle={(is, event) => onToggle?.(is, event)}\n id={innerId}\n ref={dropdownForkRef}\n target={target}\n offset={offset}\n preventOverflow={preventOverflow}\n hasArrow={hasArrow}\n placement={getPlacements(placement)}\n trigger={trigger}\n closeOnOverlayClick={closeOnOverlayClick}\n closeOnEsc={closeOnEsc}\n isFocusTrapped={isFocusTrapped}\n frame={frame}\n >\n <Root ref={handleRef} view={view} size={size} {...rest}>\n <StyledDropdown>{children}</StyledDropdown>\n </Root>\n </StyledPopover>\n );\n },\n );\n\nexport const dropdownOldConfig = {\n name: 'Dropdown',\n tag: 'div',\n layout: dropdownOldRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["dropdownOldRoot","Root","forwardRef","_ref","outerRootRef","id","target","children","hasArrow","role","view","size","frame","onToggle","_ref$isFocusTrapped","isFocusTrapped","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","placement","_ref$trigger","trigger","_ref$offset","offset","_ref$preventOverflow","preventOverflow","_ref$closeOnOverlayCl","closeOnOverlayClick","_ref$closeOnEsc","closeOnEsc","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","uniqId","useUniqId","innerId","rootRef","useRef","dropdownRef","handleRef","useForkRef","trapRef","useFocusTrap","dropdownForkRef","React","createElement","StyledPopover","usePortal","is","event","ref","getPlacements","_extends","StyledDropdown","dropdownOldConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -14,7 +14,7 @@ import { useModal } from './hooks/useModal.js';
14
14
  import { base } from './variations/_view/base.js';
15
15
  import { getIdLastModal } from './ModalContext.js';
16
16
 
17
- var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "isOpen"];
17
+ var _excluded = ["id", "withAnimation", "onClose", "onOverlayClick", "onEscKeyDown", "closeOnEsc", "closeOnOverlayClick", "withBlur", "initialFocusRef", "focusAfterRef", "zIndex", "popupInfo", "children", "view", "opened", "isOpen"];
18
18
 
19
19
  // issue #823
20
20
  var Popup = /*#__PURE__*/component(popupConfig);
@@ -41,8 +41,10 @@ var modalRoot = function modalRoot(Root) {
41
41
  popupInfo = _ref.popupInfo,
42
42
  children = _ref.children,
43
43
  view = _ref.view,
44
+ opened = _ref.opened,
44
45
  isOpen = _ref.isOpen,
45
46
  rest = _objectWithoutProperties(_ref, _excluded);
47
+ var innerIsOpen = Boolean(isOpen || opened);
46
48
  var trapRef = useFocusTrap(true, initialFocusRef, focusAfterRef, true);
47
49
  var popupController = usePopupContext();
48
50
  var innerRef = useForkRef(trapRef, outerRootRef);
@@ -51,7 +53,7 @@ var modalRoot = function modalRoot(Root) {
51
53
  var overlayBackgroundToken = withBlur ? "var(".concat(tokens.modalOverlayWithBlurColor, ")") : "var(".concat(tokens.modalOverlayColor, ")");
52
54
  var _useModal = useModal({
53
55
  id: innerId,
54
- isOpen: isOpen,
56
+ isOpen: innerIsOpen,
55
57
  closeOnEsc: closeOnEsc,
56
58
  onEscKeyDown: onEscKeyDown,
57
59
  onClose: onClose,
@@ -72,7 +74,7 @@ var modalRoot = function modalRoot(Root) {
72
74
  }, [closeOnOverlayClick, onOverlayClick, onClose]);
73
75
  return /*#__PURE__*/React.createElement(Popup, _extends({
74
76
  id: innerId,
75
- isOpen: isOpen,
77
+ opened: innerIsOpen,
76
78
  ref: innerRef,
77
79
  popupInfo: modalInfo,
78
80
  withAnimation: withAnimation,
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps, component } from '../../engines';\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\nimport { useFocusTrap } from '../../hooks';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n isOpen,\n ...rest\n },\n outerRootRef,\n ) => {\n const trapRef = useFocusTrap(true, initialFocusRef, focusAfterRef, true);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({ id: innerId, isOpen, closeOnEsc, onEscKeyDown, onClose, popupInfo });\n const transparent = useMemo(() => getIdLastModal(popupController.items) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n return (\n <Popup\n id={innerId}\n isOpen={isOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={\n <Root view={view}>\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n </Root>\n }\n {...rest}\n >\n {children}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","isOpen","rest","_objectWithoutProperties","_excluded","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","items","onModalOverlayKeyDown","useCallback","event","React","createElement","_extends","ref","overlay","Overlay","className","classes","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../src/components/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps, component } from '../../engines';\nimport { popupConfig, usePopupContext } from '../Popup';\nimport { Overlay } from '../Overlay';\nimport { DEFAULT_Z_INDEX } from '../Popup/utils';\nimport { useFocusTrap } from '../../hooks';\n\nimport { classes, tokens } from './Modal.tokens';\nimport { ModalProps } from './Modal.types';\nimport { useModal } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { getIdLastModal } from './ModalContext';\n\n// issue #823\nconst Popup = component(popupConfig);\n\n/**\n * Modal.\n * Управляет показом/скрытием, подложкой и анимацией визуальной части модального окна.\n */\nexport const modalRoot = (Root: RootProps<HTMLDivElement, ModalProps>) =>\n forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n id,\n withAnimation,\n onClose,\n onOverlayClick,\n onEscKeyDown,\n closeOnEsc = true,\n closeOnOverlayClick = true,\n withBlur,\n initialFocusRef,\n focusAfterRef,\n zIndex,\n popupInfo,\n children,\n view,\n opened,\n isOpen,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = Boolean(isOpen || opened);\n const trapRef = useFocusTrap(true, initialFocusRef, focusAfterRef, true);\n const popupController = usePopupContext();\n\n const innerRef = useForkRef<HTMLDivElement>(trapRef, outerRootRef);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const overlayBackgroundToken = withBlur\n ? `var(${tokens.modalOverlayWithBlurColor})`\n : `var(${tokens.modalOverlayColor})`;\n\n const { modalInfo } = useModal({\n id: innerId,\n isOpen: innerIsOpen,\n closeOnEsc,\n onEscKeyDown,\n onClose,\n popupInfo,\n });\n const transparent = useMemo(() => getIdLastModal(popupController.items) !== innerId, [\n innerId,\n popupController.items,\n ]);\n\n const onModalOverlayKeyDown = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (onOverlayClick) {\n onOverlayClick(event);\n return;\n }\n\n if (onClose) {\n onClose();\n }\n },\n [closeOnOverlayClick, onOverlayClick, onClose],\n );\n\n return (\n <Popup\n id={innerId}\n opened={innerIsOpen}\n ref={innerRef}\n popupInfo={modalInfo}\n withAnimation={withAnimation}\n zIndex={zIndex}\n overlay={\n <Root view={view}>\n <Overlay\n className={classes.overlay}\n zIndex={zIndex || DEFAULT_Z_INDEX}\n backgroundColorProperty={overlayBackgroundToken}\n withBlur={withBlur}\n transparent={transparent}\n isClickable={closeOnOverlayClick}\n onOverlayClick={onModalOverlayKeyDown}\n />\n </Root>\n }\n {...rest}\n >\n {children}\n </Popup>\n );\n },\n );\n\nexport const modalConfig = {\n name: 'Modal',\n tag: 'div',\n layout: modalRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["Popup","component","popupConfig","modalRoot","Root","forwardRef","_ref","outerRootRef","id","withAnimation","onClose","onOverlayClick","onEscKeyDown","_ref$closeOnEsc","closeOnEsc","_ref$closeOnOverlayCl","closeOnOverlayClick","withBlur","initialFocusRef","focusAfterRef","zIndex","popupInfo","children","view","opened","isOpen","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","trapRef","useFocusTrap","popupController","usePopupContext","innerRef","useForkRef","uniqId","safeUseId","innerId","overlayBackgroundToken","concat","tokens","modalOverlayWithBlurColor","modalOverlayColor","_useModal","useModal","modalInfo","transparent","useMemo","getIdLastModal","items","onModalOverlayKeyDown","useCallback","event","React","createElement","_extends","ref","overlay","Overlay","className","classes","DEFAULT_Z_INDEX","backgroundColorProperty","isClickable","modalConfig","name","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;;;AAeA;AACA,IAAMA,KAAK,gBAAGC,SAAS,CAACC,WAAW,CAAC,CAAA;;AAEpC;AACA;AACA;AACA;IACaC,SAAS,GAAG,SAAZA,SAASA,CAAIC,IAA2C,EAAA;AAAA,EAAA,oBACjEC,UAAU,CACN,UAAAC,IAAA,EAoBIC,YAAY,EACX;AAAA,IAAA,IAnBGC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MACFC,aAAa,GAAAH,IAAA,CAAbG,aAAa;MACbC,OAAO,GAAAJ,IAAA,CAAPI,OAAO;MACPC,cAAc,GAAAL,IAAA,CAAdK,cAAc;MACdC,YAAY,GAAAN,IAAA,CAAZM,YAAY;MAAAC,eAAA,GAAAP,IAAA,CACZQ,UAAU;AAAVA,MAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,eAAA;MAAAE,qBAAA,GAAAT,IAAA,CACjBU,mBAAmB;AAAnBA,MAAAA,mBAAmB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;MAC1BE,QAAQ,GAAAX,IAAA,CAARW,QAAQ;MACRC,eAAe,GAAAZ,IAAA,CAAfY,eAAe;MACfC,aAAa,GAAAb,IAAA,CAAba,aAAa;MACbC,MAAM,GAAAd,IAAA,CAANc,MAAM;MACNC,SAAS,GAAAf,IAAA,CAATe,SAAS;MACTC,QAAQ,GAAAhB,IAAA,CAARgB,QAAQ;MACRC,IAAI,GAAAjB,IAAA,CAAJiB,IAAI;MACJC,MAAM,GAAAlB,IAAA,CAANkB,MAAM;MACNC,MAAM,GAAAnB,IAAA,CAANmB,MAAM;AACHC,MAAAA,IAAI,GAAAC,wBAAA,CAAArB,IAAA,EAAAsB,SAAA,CAAA,CAAA;AAIX,IAAA,IAAMC,WAAW,GAAGC,OAAO,CAACL,MAAM,IAAID,MAAM,CAAC,CAAA;IAC7C,IAAMO,OAAO,GAAGC,YAAY,CAAC,IAAI,EAAEd,eAAe,EAAEC,aAAa,EAAE,IAAI,CAAC,CAAA;AACxE,IAAA,IAAMc,eAAe,GAAGC,eAAe,EAAE,CAAA;AAEzC,IAAA,IAAMC,QAAQ,GAAGC,UAAU,CAAiBL,OAAO,EAAExB,YAAY,CAAC,CAAA;AAElE,IAAA,IAAM8B,MAAM,GAAGC,SAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAG/B,EAAE,IAAI6B,MAAM,CAAA;AAC5B,IAAA,IAAMG,sBAAsB,GAAGvB,QAAQ,GAAA,MAAA,CAAAwB,MAAA,CAC1BC,MAAM,CAACC,yBAAyB,gBAAAF,MAAA,CAChCC,MAAM,CAACE,iBAAiB,EAAG,GAAA,CAAA,CAAA;IAExC,IAAAC,SAAA,GAAsBC,QAAQ,CAAC;AAC3BtC,QAAAA,EAAE,EAAE+B,OAAO;AACXd,QAAAA,MAAM,EAAEI,WAAW;AACnBf,QAAAA,UAAU,EAAVA,UAAU;AACVF,QAAAA,YAAY,EAAZA,YAAY;AACZF,QAAAA,OAAO,EAAPA,OAAO;AACPW,QAAAA,SAAS,EAATA,SAAAA;AACJ,OAAC,CAAC;MAPM0B,SAAS,GAAAF,SAAA,CAATE,SAAS,CAAA;IAQjB,IAAMC,WAAW,GAAGC,OAAO,CAAC,YAAA;AAAA,MAAA,OAAMC,cAAc,CAACjB,eAAe,CAACkB,KAAK,CAAC,KAAKZ,OAAO,CAAA;AAAA,KAAA,EAAE,CACjFA,OAAO,EACPN,eAAe,CAACkB,KAAK,CACxB,CAAC,CAAA;AAEF,IAAA,IAAMC,qBAAqB,GAAGC,WAAW,CACrC,UAACC,KAAuC,EAAK;AACzC,MAAA,IAAI3C,cAAc,EAAE;QAChBA,cAAc,CAAC2C,KAAK,CAAC,CAAA;AACrB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAI5C,OAAO,EAAE;AACTA,QAAAA,OAAO,EAAE,CAAA;AACb,OAAA;KACH,EACD,CAACM,mBAAmB,EAAEL,cAAc,EAAED,OAAO,CACjD,CAAC,CAAA;AAED,IAAA,oBACI6C,KAAA,CAAAC,aAAA,CAACxD,KAAK,EAAAyD,QAAA,CAAA;AACFjD,MAAAA,EAAE,EAAE+B,OAAQ;AACZf,MAAAA,MAAM,EAAEK,WAAY;AACpB6B,MAAAA,GAAG,EAAEvB,QAAS;AACdd,MAAAA,SAAS,EAAE0B,SAAU;AACrBtC,MAAAA,aAAa,EAAEA,aAAc;AAC7BW,MAAAA,MAAM,EAAEA,MAAO;AACfuC,MAAAA,OAAO,eACHJ,KAAA,CAAAC,aAAA,CAACpD,IAAI,EAAA;AAACmB,QAAAA,IAAI,EAAEA,IAAAA;AAAK,OAAA,eACbgC,KAAA,CAAAC,aAAA,CAACI,OAAO,EAAA;QACJC,SAAS,EAAEC,OAAO,CAACH,OAAQ;QAC3BvC,MAAM,EAAEA,MAAM,IAAI2C,eAAgB;AAClCC,QAAAA,uBAAuB,EAAExB,sBAAuB;AAChDvB,QAAAA,QAAQ,EAAEA,QAAS;AACnB+B,QAAAA,WAAW,EAAEA,WAAY;AACzBiB,QAAAA,WAAW,EAAEjD,mBAAoB;AACjCL,QAAAA,cAAc,EAAEyC,qBAAAA;AAAsB,OACzC,CACC,CAAA;KAEN1B,EAAAA,IAAI,CAEPJ,EAAAA,QACE,CAAC,CAAA;AAEhB,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAM4C,WAAW,GAAG;AACvBC,EAAAA,IAAI,EAAE,OAAO;AACbC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAElE,SAAS;AACjBmE,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRhD,IAAAA,IAAI,EAAE;AACFiD,MAAAA,GAAG,EAAEC,IAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNnD,IAAAA,IAAI,EAAE,SAAA;AACV,GAAA;AACJ;;;;"}
@@ -37,7 +37,7 @@ var NotificationsPortal = function NotificationsPortal(_ref) {
37
37
  return component(config);
38
38
  }, []);
39
39
  return /*#__PURE__*/React.createElement(PopupProvider, null, notifications.length > 0 && /*#__PURE__*/React.createElement(StyledPopup, {
40
- isOpen: true,
40
+ opened: true,
41
41
  frame: frame,
42
42
  placement: "bottom-right",
43
43
  zIndex: "9100"
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationsPortal.js","sources":["../../../src/components/Notification/NotificationsPortal.tsx"],"sourcesContent":["import React, { FC, ForwardRefExoticComponent, RefAttributes, useMemo } from 'react';\nimport { useStoreon } from 'storeon/react';\nimport { styled } from '@linaria/react';\nimport { popupBaseRootClass } from '@salutejs/plasma-core';\n\nimport { PopupProvider, popupConfig } from '../Popup';\nimport { component } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { NotificationsState, NotificationsEvents, closeNotification } from './NotificationsStore';\nimport { NotificationPortalProps, NotificationProps } from './Notification.types';\nimport { StyledItemWrapper, StyledRoot } from './Notification.styles';\nimport { classes } from './Notification.tokens';\n\n// issue #823\nconst Popup = component(popupConfig);\n\nconst StyledPopup = styled(Popup)`\n & > .${popupBaseRootClass} {\n overflow: hidden;\n }\n`;\n\n/**\n * Обертка для визуального представления уведомлений.\n */\nexport const NotificationsPortal: FC<NotificationPortalProps> = ({ config, frame }) => {\n const { notifications } = useStoreon<NotificationsState, NotificationsEvents>('notifications');\n\n const Notification = useMemo(\n () => component(config) as ForwardRefExoticComponent<NotificationProps & RefAttributes<HTMLDivElement>>,\n [],\n );\n\n return (\n <PopupProvider>\n {notifications.length > 0 && (\n <StyledPopup isOpen frame={frame} placement=\"bottom-right\" zIndex=\"9100\">\n <StyledRoot>\n {notifications.map(({ id, isHidden, ...rest }) => (\n <StyledItemWrapper\n key={id}\n className={cx(\n isHidden ? classes.notificationItemHidden : classes.notificationItemOpened,\n )}\n isHidden={isHidden || false}\n >\n <Notification\n key={id}\n id={id}\n onCloseButtonClick={() => closeNotification(id)}\n {...rest}\n />\n </StyledItemWrapper>\n ))}\n </StyledRoot>\n </StyledPopup>\n )}\n </PopupProvider>\n );\n};\n"],"names":["Popup","component","popupConfig","_exp","StyledPopup","styled","name","class","propsAsIs","NotificationsPortal","_ref","config","frame","_useStoreon","useStoreon","notifications","Notification","useMemo","React","createElement","PopupProvider","length","isOpen","placement","zIndex","StyledRoot","map","_ref2","id","isHidden","rest","StyledItemWrapper","key","className","cx","classes","notificationItemHidden","notificationItemOpened","_extends","onCloseButtonClick","closeNotification"],"mappings":";;;;;;;;;;;;;;;AAcA;AACA,IAAMA,KAAK,gBAAGC,SAAS,CAACC,WAAW,CAAC,CAAA;AAAC,IAAAC,IAAA,GAdnBA,SAcmBA,IAAAA,GAAA;AAAA,EAAA,OAEVH,KAAK,CAAA;AAAA,CAAA,CAAA;AAAhC,IAAMI,WAAW,gBAAGC,MAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAIzB,CAAA,CAAA;;AAED;AACA;AACA;IACaC,mBAAgD,GAAGA,SAAnDA,mBAAgDA,CAAAC,IAAA,EAA0B;AAAA,EAAA,IAApBC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,KAAAA,GAAAA,IAAAA,CAAAA,KAAAA,CAAAA;AACvE,EAAA,IAAAC,WAAA,GAA0BC,UAAU,CAA0C,eAAe,CAAC;IAAtFC,aAAAA,GAAAA,WAAAA,CAAAA,aAAAA,CAAAA;EAER,IAAMC,YAAY,GAAGC,OAAO,CACxB,YAAA;IAAA,OAAMhB,SAAS,CAACU,MAAM,CAAC,CAAA;GACvB,EAAA,EACJ,CAAC,CAAA;AAED,EAAA,oBACIO,KAAA,CAAAC,aAAA,CAACC,aAAa,QACTL,aAAa,CAACM,MAAM,GAAG,CAAC,iBACrBH,KAAA,CAAAC,aAAA,CAACf,WAAW,EAAA;IAACkB,MAAM,EAAA,IAAA;AAACV,IAAAA,KAAK,EAAEA,KAAM;AAACW,IAAAA,SAAS,EAAC,cAAc;AAACC,IAAAA,MAAM,EAAC,MAAA;GAC9DN,eAAAA,KAAA,CAAAC,aAAA,CAACM,UAAU,EACNV,IAAAA,EAAAA,aAAa,CAACW,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,EAAE,GAAAD,KAAA,CAAFC,EAAE;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;AAAKC,MAAAA,IAAAA,GAAAA,wBAAAA,CAAAA,KAAAA,EAAAA,SAAAA,CAAAA,CAAAA;AAAAA,IAAAA,oBACnCZ,KAAA,CAAAC,aAAA,CAACY,iBAAiB,EAAA;AACdC,MAAAA,GAAG,EAAEJ,EAAG;AACRK,MAAAA,SAAS,EAAEC,EAAE,CACTL,QAAQ,GAAGM,OAAO,CAACC,sBAAsB,GAAGD,OAAO,CAACE,sBACxD,CAAE;MACFR,QAAQ,EAAEA,QAAQ,IAAI,KAAA;AAAM,KAAA,eAE5BX,KAAA,CAAAC,aAAA,CAACH,YAAY,EAAAsB,QAAA,CAAA;AACTN,MAAAA,GAAG,EAAEJ,EAAG;AACRA,MAAAA,EAAE,EAAEA,EAAG;MACPW,kBAAkB,EAAE,SAAAA,kBAAA,GAAA;QAAA,OAAMC,iBAAiB,CAACZ,EAAE,CAAC,CAAA;AAAA,OAAA;KAC3CE,EAAAA,IAAI,CAAC,CAEE,CACtB,CAAA;GACO,CAAA,CACH,CAEN,CAAC,CAAA;AAExB;;;;"}
1
+ {"version":3,"file":"NotificationsPortal.js","sources":["../../../src/components/Notification/NotificationsPortal.tsx"],"sourcesContent":["import React, { FC, ForwardRefExoticComponent, RefAttributes, useMemo } from 'react';\nimport { useStoreon } from 'storeon/react';\nimport { styled } from '@linaria/react';\nimport { popupBaseRootClass } from '@salutejs/plasma-core';\n\nimport { PopupProvider, popupConfig } from '../Popup';\nimport { component } from '../../engines';\nimport { cx } from '../../utils';\n\nimport { NotificationsState, NotificationsEvents, closeNotification } from './NotificationsStore';\nimport { NotificationPortalProps, NotificationProps } from './Notification.types';\nimport { StyledItemWrapper, StyledRoot } from './Notification.styles';\nimport { classes } from './Notification.tokens';\n\n// issue #823\nconst Popup = component(popupConfig);\n\nconst StyledPopup = styled(Popup)`\n & > .${popupBaseRootClass} {\n overflow: hidden;\n }\n`;\n\n/**\n * Обертка для визуального представления уведомлений.\n */\nexport const NotificationsPortal: FC<NotificationPortalProps> = ({ config, frame }) => {\n const { notifications } = useStoreon<NotificationsState, NotificationsEvents>('notifications');\n\n const Notification = useMemo(\n () => component(config) as ForwardRefExoticComponent<NotificationProps & RefAttributes<HTMLDivElement>>,\n [],\n );\n\n return (\n <PopupProvider>\n {notifications.length > 0 && (\n <StyledPopup opened frame={frame} placement=\"bottom-right\" zIndex=\"9100\">\n <StyledRoot>\n {notifications.map(({ id, isHidden, ...rest }) => (\n <StyledItemWrapper\n key={id}\n className={cx(\n isHidden ? classes.notificationItemHidden : classes.notificationItemOpened,\n )}\n isHidden={isHidden || false}\n >\n <Notification\n key={id}\n id={id}\n onCloseButtonClick={() => closeNotification(id)}\n {...rest}\n />\n </StyledItemWrapper>\n ))}\n </StyledRoot>\n </StyledPopup>\n )}\n </PopupProvider>\n );\n};\n"],"names":["Popup","component","popupConfig","_exp","StyledPopup","styled","name","class","propsAsIs","NotificationsPortal","_ref","config","frame","_useStoreon","useStoreon","notifications","Notification","useMemo","React","createElement","PopupProvider","length","opened","placement","zIndex","StyledRoot","map","_ref2","id","isHidden","rest","StyledItemWrapper","key","className","cx","classes","notificationItemHidden","notificationItemOpened","_extends","onCloseButtonClick","closeNotification"],"mappings":";;;;;;;;;;;;;;;AAcA;AACA,IAAMA,KAAK,gBAAGC,SAAS,CAACC,WAAW,CAAC,CAAA;AAAC,IAAAC,IAAA,GAdnBA,SAcmBA,IAAAA,GAAA;AAAA,EAAA,OAEVH,KAAK,CAAA;AAAA,CAAA,CAAA;AAAhC,IAAMI,WAAW,gBAAGC,MAAM,CAAAF,IAAA,EAAA,CAAA,CAAA;AAAAG,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAIzB,CAAA,CAAA;;AAED;AACA;AACA;IACaC,mBAAgD,GAAGA,SAAnDA,mBAAgDA,CAAAC,IAAA,EAA0B;AAAA,EAAA,IAApBC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,KAAAA,GAAAA,IAAAA,CAAAA,KAAAA,CAAAA;AACvE,EAAA,IAAAC,WAAA,GAA0BC,UAAU,CAA0C,eAAe,CAAC;IAAtFC,aAAAA,GAAAA,WAAAA,CAAAA,aAAAA,CAAAA;EAER,IAAMC,YAAY,GAAGC,OAAO,CACxB,YAAA;IAAA,OAAMhB,SAAS,CAACU,MAAM,CAAC,CAAA;GACvB,EAAA,EACJ,CAAC,CAAA;AAED,EAAA,oBACIO,KAAA,CAAAC,aAAA,CAACC,aAAa,QACTL,aAAa,CAACM,MAAM,GAAG,CAAC,iBACrBH,KAAA,CAAAC,aAAA,CAACf,WAAW,EAAA;IAACkB,MAAM,EAAA,IAAA;AAACV,IAAAA,KAAK,EAAEA,KAAM;AAACW,IAAAA,SAAS,EAAC,cAAc;AAACC,IAAAA,MAAM,EAAC,MAAA;GAC9DN,eAAAA,KAAA,CAAAC,aAAA,CAACM,UAAU,EACNV,IAAAA,EAAAA,aAAa,CAACW,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGC,EAAE,GAAAD,KAAA,CAAFC,EAAE;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;AAAKC,MAAAA,IAAAA,GAAAA,wBAAAA,CAAAA,KAAAA,EAAAA,SAAAA,CAAAA,CAAAA;AAAAA,IAAAA,oBACnCZ,KAAA,CAAAC,aAAA,CAACY,iBAAiB,EAAA;AACdC,MAAAA,GAAG,EAAEJ,EAAG;AACRK,MAAAA,SAAS,EAAEC,EAAE,CACTL,QAAQ,GAAGM,OAAO,CAACC,sBAAsB,GAAGD,OAAO,CAACE,sBACxD,CAAE;MACFR,QAAQ,EAAEA,QAAQ,IAAI,KAAA;AAAM,KAAA,eAE5BX,KAAA,CAAAC,aAAA,CAACH,YAAY,EAAAsB,QAAA,CAAA;AACTN,MAAAA,GAAG,EAAEJ,EAAG;AACRA,MAAAA,EAAE,EAAEA,EAAG;MACPW,kBAAkB,EAAE,SAAAA,kBAAA,GAAA;QAAA,OAAMC,iBAAiB,CAACZ,EAAE,CAAC,CAAA;AAAA,OAAA;KAC3CE,EAAAA,IAAI,CAAC,CAEE,CACtB,CAAA;GACO,CAAA,CACH,CAEN,CAAC,CAAA;AAExB;;;;"}
@@ -8,7 +8,7 @@ import { base } from './variations/_view/base.js';
8
8
  import { StyledWrapper, StyledRoot, StyledPopover, StyledArrow } from './Popover.styles.js';
9
9
  import { classes } from './Popover.tokens.js';
10
10
 
11
- var _excluded = ["target", "children", "isOpen", "trigger", "hasArrow", "frame", "className", "placement", "offset", "zIndex", "isFocusTrapped", "closeOnEsc", "preventOverflow", "usePortal", "view", "onToggle", "closeOnOverlayClick"];
11
+ var _excluded = ["target", "children", "isOpen", "opened", "trigger", "hasArrow", "frame", "className", "placement", "offset", "zIndex", "isFocusTrapped", "closeOnEsc", "preventOverflow", "usePortal", "view", "onToggle", "closeOnOverlayClick"];
12
12
  var ESCAPE_KEYCODE = 27;
13
13
  var POPOVER_PORTAL_ID = 'plasma-popover-root';
14
14
 
@@ -22,6 +22,7 @@ var popoverRoot = function popoverRoot(Root) {
22
22
  var target = _ref.target,
23
23
  children = _ref.children,
24
24
  isOpen = _ref.isOpen,
25
+ opened = _ref.opened,
25
26
  _ref$trigger = _ref.trigger,
26
27
  trigger = _ref$trigger === void 0 ? 'click' : _ref$trigger,
27
28
  hasArrow = _ref.hasArrow,
@@ -45,11 +46,12 @@ var popoverRoot = function popoverRoot(Root) {
45
46
  onToggle = _ref.onToggle,
46
47
  closeOnOverlayClick = _ref.closeOnOverlayClick,
47
48
  rest = _objectWithoutProperties(_ref, _excluded);
49
+ var innerIsOpen = Boolean(isOpen || opened);
48
50
  var rootRef = useRef(null);
49
51
  var popoverRef = useRef(null);
50
52
  var handleRef = useForkRef(rootRef, outerRootRef);
51
53
  var portalRef = useRef(null);
52
- var trapRef = useFocusTrap(isOpen && isFocusTrapped);
54
+ var trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);
53
55
  var popoverForkRef = useForkRef(popoverRef, trapRef);
54
56
  var _useState = useState(null),
55
57
  _useState2 = _slicedToArray(_useState, 2),
@@ -61,8 +63,8 @@ var popoverRoot = function popoverRoot(Root) {
61
63
  var isAutoArray = Array.isArray(placement);
62
64
  var isAuto = isAutoArray || placement.startsWith('auto');
63
65
  var initialStyles = {
64
- visibility: isOpen ? 'visible' : 'hidden',
65
- opacity: isOpen ? 1 : 0
66
+ visibility: innerIsOpen ? 'visible' : 'hidden',
67
+ opacity: innerIsOpen ? 1 : 0
66
68
  };
67
69
  var _usePopper = usePopper(rootRef.current, popoverRef.current, {
68
70
  // TODO: #1121
@@ -95,12 +97,12 @@ var popoverRoot = function popoverRoot(Root) {
95
97
  attributes = _usePopper.attributes,
96
98
  forceUpdate = _usePopper.forceUpdate;
97
99
  var onEscape = useCallback(function (event) {
98
- if (isOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {
100
+ if (innerIsOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {
99
101
  onToggle === null || onToggle === void 0 || onToggle(false, event);
100
102
  }
101
- }, [closeOnEsc, isOpen, onToggle]);
103
+ }, [closeOnEsc, innerIsOpen, onToggle]);
102
104
  var onDocumentClick = useCallback(function (event) {
103
- if (isOpen && closeOnOverlayClick && onToggle) {
105
+ if (innerIsOpen && closeOnOverlayClick && onToggle) {
104
106
  var _rootRef$current, _popoverRef$current;
105
107
  var targetIsRoot = event.target === rootRef.current;
106
108
  var rootHasTarget = (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.contains(event.target);
@@ -109,17 +111,17 @@ var popoverRoot = function popoverRoot(Root) {
109
111
  onToggle(false, event);
110
112
  }
111
113
  }
112
- }, [closeOnOverlayClick, isOpen, onToggle]);
114
+ }, [closeOnOverlayClick, innerIsOpen, onToggle]);
113
115
  var onClick = useCallback(function (event) {
114
116
  if (trigger === 'click') {
115
117
  var _popoverRef$current2;
116
118
  var targetIsPopover = event.target === popoverRef.current;
117
119
  var rootHasTarget = (_popoverRef$current2 = popoverRef.current) === null || _popoverRef$current2 === void 0 ? void 0 : _popoverRef$current2.contains(event.target);
118
120
  if (!targetIsPopover && !rootHasTarget) {
119
- onToggle === null || onToggle === void 0 || onToggle(!isOpen, event);
121
+ onToggle === null || onToggle === void 0 || onToggle(!innerIsOpen, event);
120
122
  }
121
123
  }
122
- }, [trigger, isOpen, onToggle]);
124
+ }, [trigger, innerIsOpen, onToggle]);
123
125
  var onMouseEnter = useCallback(function (event) {
124
126
  if (trigger === 'hover') {
125
127
  onToggle === null || onToggle === void 0 || onToggle(true, event);
@@ -145,13 +147,13 @@ var popoverRoot = function popoverRoot(Root) {
145
147
  return function () {
146
148
  return document.removeEventListener('click', onDocumentClick);
147
149
  };
148
- }, [isOpen, onToggle]);
150
+ }, [innerIsOpen, onToggle]);
149
151
  useEffect(function () {
150
152
  window.addEventListener('keydown', onEscape);
151
153
  return function () {
152
154
  return window.removeEventListener('keydown', onEscape);
153
155
  };
154
- }, [closeOnEsc, isOpen, onToggle]);
156
+ }, [closeOnEsc, innerIsOpen, onToggle]);
155
157
  useEffect(function () {
156
158
  var portal = document.getElementById(POPOVER_PORTAL_ID);
157
159
  if (typeof frame !== 'string' && frame && frame.current) {
@@ -179,7 +181,7 @@ var popoverRoot = function popoverRoot(Root) {
179
181
  forceRender(true);
180
182
  }, []);
181
183
  useEffect(function () {
182
- if (!isOpen || !forceUpdate) {
184
+ if (!innerIsOpen || !forceUpdate) {
183
185
  return;
184
186
  }
185
187
 
@@ -190,7 +192,7 @@ var popoverRoot = function popoverRoot(Root) {
190
192
  * вызов метода в очередь микрозадач.
191
193
  */
192
194
  Promise.resolve().then(forceUpdate);
193
- }, [isOpen, children, forceUpdate]);
195
+ }, [innerIsOpen, children, forceUpdate]);
194
196
  return /*#__PURE__*/React.createElement(StyledWrapper, {
195
197
  className: classes.wrapper,
196
198
  onMouseEnter: onMouseEnter,
@@ -210,7 +212,7 @@ var popoverRoot = function popoverRoot(Root) {
210
212
  className: classes.root,
211
213
  ref: popoverForkRef,
212
214
  style: _objectSpread2(_objectSpread2(_objectSpread2({}, styles.popper), {
213
- display: isOpen ? 'block' : 'none'
215
+ display: innerIsOpen ? 'block' : 'none'
214
216
  }), initialStyles),
215
217
  zIndex: zIndex
216
218
  }), hasArrow && /*#__PURE__*/React.createElement(StyledArrow, _extends({
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useRef, useCallback, useEffect, useState, forwardRef } from 'react';\nimport type { CSSProperties } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useFocusTrap, useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\nimport { Portal } from '../Portal';\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';\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 isOpen,\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 view,\n onToggle,\n closeOnOverlayClick,\n ...rest\n },\n outerRootRef,\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\n const trapRef = useFocusTrap(isOpen && isFocusTrapped);\n\n const popoverForkRef = useForkRef<HTMLDivElement>(popoverRef, trapRef);\n\n const [arrowElement, setArrowElement] = useState<HTMLSpanElement | null>(null);\n\n const [, forceRender] = useState(false);\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const initialStyles = {\n visibility: isOpen ? 'visible' : 'hidden',\n opacity: isOpen ? 1 : 0,\n } as CSSProperties;\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: [offset[0], offset[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 (isOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {\n onToggle?.(false, event);\n }\n },\n [closeOnEsc, isOpen, onToggle],\n );\n\n const onDocumentClick = useCallback(\n (event: MouseEvent) => {\n if (isOpen && 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, isOpen, 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?.(!isOpen, event);\n }\n }\n },\n [trigger, isOpen, 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 }, [isOpen, onToggle]);\n\n useEffect(() => {\n window.addEventListener('keydown', onEscape);\n return () => window.removeEventListener('keydown', onEscape);\n }, [closeOnEsc, isOpen, 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 (!usePortal) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n portal = document.createElement('div');\n portal.setAttribute('id', POPOVER_PORTAL_ID);\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 (!isOpen || !forceUpdate) {\n return;\n }\n\n /*\n * INFO: Метод forceUpdate содержит в себе flushSync и приводит\n * к повторному рендеру компонента, который уже находится в процессе рендера.\n * Данный хак, нужен для того, чтобы это поведение избежать и перенаправить\n * вызов метода в очередь микрозадач.\n */\n Promise.resolve().then(forceUpdate);\n }, [isOpen, children, forceUpdate]);\n\n return (\n <StyledWrapper className={classes.wrapper} onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave}>\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {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 className={classes.root}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n ...{ display: isOpen ? 'block' : 'none' },\n ...initialStyles,\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 {children}\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\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","isOpen","_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","view","onToggle","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","trapRef","useFocusTrap","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","isAutoArray","Array","isArray","isAuto","startsWith","initialStyles","visibility","opacity","_usePopper","usePopper","current","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","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","React","StyledWrapper","classes","wrapper","StyledRoot","ref","cx","Portal","container","_extends","StyledPopover","popper","root","style","_objectSpread","display","StyledArrow","arrow","popoverConfig","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useRef, useCallback, useEffect, useState, forwardRef } from 'react';\nimport type { CSSProperties } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useFocusTrap, useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\nimport { Portal } from '../Portal';\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';\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 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 view,\n onToggle,\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\n const trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);\n\n const popoverForkRef = useForkRef<HTMLDivElement>(popoverRef, trapRef);\n\n const [arrowElement, setArrowElement] = useState<HTMLSpanElement | null>(null);\n\n const [, forceRender] = useState(false);\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const initialStyles = {\n visibility: innerIsOpen ? 'visible' : 'hidden',\n opacity: innerIsOpen ? 1 : 0,\n } as CSSProperties;\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: [offset[0], offset[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 (!usePortal) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n portal = document.createElement('div');\n portal.setAttribute('id', POPOVER_PORTAL_ID);\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 return (\n <StyledWrapper className={classes.wrapper} onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave}>\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {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 className={classes.root}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n ...{ display: innerIsOpen ? 'block' : 'none' },\n ...initialStyles,\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 {children}\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\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","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","view","onToggle","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","trapRef","useFocusTrap","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","isAutoArray","Array","isArray","isAuto","startsWith","initialStyles","visibility","opacity","_usePopper","usePopper","current","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","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","React","StyledWrapper","classes","wrapper","StyledRoot","ref","cx","Portal","container","_extends","StyledPopover","popper","root","style","_objectSpread","display","StyledArrow","arrow","popoverConfig","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
@@ -8,7 +8,7 @@ import { PopupRoot } from './PopupRoot.js';
8
8
  import { usePopup } from './hooks/usePopup.js';
9
9
  import { classes } from './Popup.tokens.js';
10
10
 
11
- var _excluded = ["id", "isOpen", "placement", "offset", "frame", "children", "overlay", "role", "zIndex", "popupInfo", "withAnimation", "className"];
11
+ var _excluded = ["id", "isOpen", "opened", "placement", "offset", "frame", "children", "overlay", "role", "zIndex", "popupInfo", "withAnimation", "className"];
12
12
  var handlePosition = function handlePosition(placement, offset) {
13
13
  var x = '0rem';
14
14
  var y = '0rem';
@@ -73,6 +73,8 @@ var popupRoot = function popupRoot(Root) {
73
73
  var id = _ref.id,
74
74
  _ref$isOpen = _ref.isOpen,
75
75
  isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
76
+ _ref$opened = _ref.opened,
77
+ opened = _ref$opened === void 0 ? false : _ref$opened,
76
78
  _ref$placement = _ref.placement,
77
79
  placement = _ref$placement === void 0 ? 'center' : _ref$placement,
78
80
  _ref$offset = _ref.offset,
@@ -87,10 +89,11 @@ var popupRoot = function popupRoot(Root) {
87
89
  withAnimation = _ref$withAnimation === void 0 ? false : _ref$withAnimation,
88
90
  className = _ref.className,
89
91
  rest = _objectWithoutProperties(_ref, _excluded);
92
+ var innerIsOpen = isOpen || opened;
90
93
  var uniqId = safeUseId();
91
94
  var innerId = id || uniqId;
92
95
  var _usePopup = usePopup({
93
- isOpen: isOpen,
96
+ isOpen: innerIsOpen,
94
97
  id: innerId,
95
98
  popupInfo: popupInfo,
96
99
  withAnimation: withAnimation
@@ -132,7 +135,7 @@ var popupRoot = function popupRoot(Root) {
132
135
  */
133
136
  forceRender(true);
134
137
  }, []);
135
- if (!isVisible && !isOpen) {
138
+ if (!isVisible && !innerIsOpen) {
136
139
  return null;
137
140
  }
138
141
  var cls = cx(className, animationInfo !== null && animationInfo !== void 0 && animationInfo.endAnimation ? classes.endAnimation : '', animationInfo !== null && animationInfo !== void 0 && animationInfo.endTransition ? classes.endTransition : '');
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { POPUP_PORTAL_ID } from './PopupContext';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placement: PopupPlacementBasic) => {\n switch (placement) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый копмонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible } = usePopup({\n isOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n const [, forceRender] = useState(false);\n\n useEffect(() => {\n let portal = document.getElementById(POPUP_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (!portal) {\n portal = document.createElement('div');\n portal.setAttribute('id', POPUP_PORTAL_ID);\n /**\n * Нужно для того, чтобы во фрейме не происходило скачков контента\n * при анимации через transform, если есть элемент с шириной/высотой в 100% (Overlay)\n */\n portal.style.width = '0';\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 if (!isVisible && !isOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n return (\n <>\n {portalRef.current && (\n <Portal container={portalRef.current}>\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n frame={frame}\n zIndex={zIndex}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n </Portal>\n )}\n </>\n );\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","portalRef","useRef","contentRef","innerRef","useForkRef","_useState","useState","_useState2","forceRender","useEffect","portal","document","getElementById","POPUP_PORTAL_ID","current","createElement","setAttribute","style","width","_document$getElementB","appendChild","body","cls","cx","endAnimation","classes","endTransition","React","Fragment","Portal","container","_extends","PopupRoot","ref","position","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","sources":["../../../src/components/Popup/Popup.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport { useForkRef, safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport type { PopupPlacementBasic, PopupPlacement, PopupPositionType, PopupProps } from './Popup.types';\nimport { POPUP_PORTAL_ID } from './PopupContext';\nimport { PopupRoot } from './PopupRoot';\nimport { usePopup } from './hooks';\nimport { classes } from './Popup.tokens';\n\nexport const handlePosition = (\n placement: PopupPlacement,\n offset: [number, number] | [string, string],\n): PopupPositionType => {\n let x = '0rem';\n let y = '0rem';\n\n if (offset) {\n const [_x, _y] = offset;\n x = typeof _x === 'number' ? `${_x}rem` : _x;\n y = typeof _y === 'number' ? `${_y}rem` : _y;\n }\n\n if (!placement || placement === 'center') {\n return {\n left: `calc(50% + ${x})`,\n top: `calc(50% - ${y})`,\n transform: 'translate(-50%, -50%)',\n };\n }\n\n let left;\n let right;\n let top;\n let bottom;\n let transform;\n const placements = placement.split('-') as PopupPlacementBasic[];\n\n placements.forEach((placement: PopupPlacementBasic) => {\n switch (placement) {\n case 'left':\n left = x;\n break;\n case 'right':\n right = x;\n break;\n case 'top':\n top = y;\n break;\n case 'bottom':\n bottom = y;\n break;\n default:\n break;\n }\n });\n\n const isCenteredX = left === undefined && right === undefined;\n const isCenteredY = top === undefined && bottom === undefined;\n\n if (isCenteredX) {\n transform = 'translateX(-50%)';\n }\n\n if (isCenteredY) {\n transform = 'translateY(-50%)';\n }\n\n return {\n left: isCenteredX ? `calc(50% + ${x})` : left,\n right,\n top: isCenteredY ? `calc(50% - ${y})` : top,\n bottom,\n transform,\n };\n};\n\n/**\n * Базовый копмонент Popup.\n */\nexport const popupRoot = (Root: RootProps<HTMLDivElement, PopupProps>) =>\n forwardRef<HTMLDivElement, PopupProps>(\n (\n {\n id,\n isOpen = false,\n opened = false,\n placement = 'center',\n offset = [0, 0],\n frame = 'document',\n children,\n overlay,\n role,\n zIndex,\n popupInfo,\n withAnimation = false,\n className,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = isOpen || opened;\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const { isVisible, animationInfo, setVisible } = usePopup({\n isOpen: innerIsOpen,\n id: innerId,\n popupInfo,\n withAnimation,\n });\n\n const portalRef = useRef<HTMLElement | null>(null);\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const innerRef = useForkRef<HTMLDivElement>(contentRef, outerRootRef);\n\n const [, forceRender] = useState(false);\n\n useEffect(() => {\n let portal = document.getElementById(POPUP_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (!portal) {\n portal = document.createElement('div');\n portal.setAttribute('id', POPUP_PORTAL_ID);\n /**\n * Нужно для того, чтобы во фрейме не происходило скачков контента\n * при анимации через transform, если есть элемент с шириной/высотой в 100% (Overlay)\n */\n portal.style.width = '0';\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 if (!isVisible && !innerIsOpen) {\n return null;\n }\n\n const cls = cx(\n className,\n animationInfo?.endAnimation ? classes.endAnimation : '',\n animationInfo?.endTransition ? classes.endTransition : '',\n );\n\n return (\n <>\n {portalRef.current && (\n <Portal container={portalRef.current}>\n <Root className={cls} {...rest}>\n {overlay}\n <PopupRoot\n id={innerId}\n ref={innerRef}\n position={handlePosition(placement, offset)}\n frame={frame}\n zIndex={zIndex}\n animationInfo={animationInfo}\n setVisible={setVisible}\n >\n {children}\n </PopupRoot>\n </Root>\n </Portal>\n )}\n </>\n );\n },\n );\n\nexport const popupConfig = {\n name: 'Popup',\n tag: 'div',\n layout: popupRoot,\n base: '',\n variations: {},\n defaults: {},\n};\n"],"names":["handlePosition","placement","offset","x","y","_offset","_slicedToArray","_x","_y","concat","left","top","transform","right","bottom","placements","split","forEach","isCenteredX","undefined","isCenteredY","popupRoot","Root","forwardRef","_ref","outerRootRef","id","_ref$isOpen","isOpen","_ref$opened","opened","_ref$placement","_ref$offset","_ref$frame","frame","children","overlay","zIndex","popupInfo","_ref$withAnimation","withAnimation","className","rest","_objectWithoutProperties","_excluded","innerIsOpen","uniqId","safeUseId","innerId","_usePopup","usePopup","isVisible","animationInfo","setVisible","portalRef","useRef","contentRef","innerRef","useForkRef","_useState","useState","_useState2","forceRender","useEffect","portal","document","getElementById","POPUP_PORTAL_ID","current","createElement","setAttribute","style","width","_document$getElementB","appendChild","body","cls","cx","endAnimation","classes","endTransition","React","Fragment","Portal","container","_extends","PopupRoot","ref","position","popupConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}