@salutejs/plasma-new-hope 0.336.0-canary.2220.17673344609.0 → 0.336.0-canary.2222.17762952669.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (325) hide show
  1. package/cjs/components/CodeField/CodeField.css +7 -6
  2. package/cjs/components/CodeField/CodeField.js +63 -27
  3. package/cjs/components/CodeField/CodeField.js.map +1 -1
  4. package/cjs/components/CodeField/CodeField.styles.js +7 -1
  5. package/cjs/components/CodeField/CodeField.styles.js.map +1 -1
  6. package/cjs/components/CodeField/{CodeField.styles_ebdpd0.css → CodeField.styles_14p25hi.css} +1 -0
  7. package/cjs/components/CodeField/hooks/useWebOTP.js +95 -0
  8. package/cjs/components/CodeField/hooks/useWebOTP.js.map +1 -0
  9. package/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  10. package/cjs/components/CodeField/utils/handleCodeError.js.map +1 -1
  11. package/cjs/components/CodeField/utils/handleItemError.js +14 -4
  12. package/cjs/components/CodeField/utils/handleItemError.js.map +1 -1
  13. package/cjs/components/CodeField/utils/isWebOTPSupported.js +10 -0
  14. package/cjs/components/CodeField/utils/isWebOTPSupported.js.map +1 -0
  15. package/cjs/components/Combobox/ComboboxNew/Combobox.js +11 -10
  16. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  17. package/cjs/components/DatePicker/RangeDate/RangeDate.js +30 -22
  18. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  19. package/cjs/components/Drawer/Drawer.css +2 -2
  20. package/cjs/components/Drawer/Drawer.js +10 -7
  21. package/cjs/components/Drawer/Drawer.js.map +1 -1
  22. package/cjs/components/Drawer/Drawer.styles.js +10 -2
  23. package/cjs/components/Drawer/Drawer.styles.js.map +1 -1
  24. package/{es/components/Drawer/Drawer.styles_h5od79.css → cjs/components/Drawer/Drawer.styles_pltzxq.css} +1 -1
  25. package/cjs/components/Drawer/Drawer.tokens.js +10 -0
  26. package/cjs/components/Drawer/Drawer.tokens.js.map +1 -1
  27. package/cjs/components/Pagination/Pagination.css +12 -10
  28. package/cjs/components/Pagination/Pagination.js +57 -5
  29. package/cjs/components/Pagination/Pagination.js.map +1 -1
  30. package/cjs/components/Pagination/Pagination.styles.js +19 -7
  31. package/cjs/components/Pagination/Pagination.styles.js.map +1 -1
  32. package/{es/components/Pagination/Pagination.styles_ska0td.css → cjs/components/Pagination/Pagination.styles_qhyqps.css} +5 -3
  33. package/cjs/components/Pagination/Pagination.tokens.js +3 -0
  34. package/cjs/components/Pagination/Pagination.tokens.js.map +1 -1
  35. package/cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.css +3 -3
  36. package/cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +1 -1
  37. package/cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js.map +1 -1
  38. package/{es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles_89ax1q.css → cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles_1sw6ww1.css} +2 -2
  39. package/cjs/components/Popover/Popover.js +4 -1
  40. package/cjs/components/Popover/Popover.js.map +1 -1
  41. package/cjs/components/Select/Select.js +12 -10
  42. package/cjs/components/Select/Select.js.map +1 -1
  43. package/cjs/components/Switch/Switch.css +6 -6
  44. package/cjs/components/Switch/Switch.js +5 -2
  45. package/cjs/components/Switch/Switch.js.map +1 -1
  46. package/cjs/components/Switch/Switch.styles.js +1 -1
  47. package/cjs/components/Switch/Switch.styles.js.map +1 -1
  48. package/cjs/components/Switch/{Switch.styles_qjefea.css → Switch.styles_158fwwl.css} +1 -1
  49. package/cjs/components/Switch/Switch.tokens.js +2 -1
  50. package/cjs/components/Switch/Switch.tokens.js.map +1 -1
  51. package/cjs/components/TextField/TextField.js +1 -1
  52. package/cjs/components/TextField/TextField.js.map +1 -1
  53. package/cjs/components/TextField/TextField.tokens.js +1 -0
  54. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  55. package/cjs/components/Tree/Tree.css +7 -6
  56. package/cjs/components/Tree/Tree.js +42 -1
  57. package/cjs/components/Tree/Tree.js.map +1 -1
  58. package/cjs/components/Tree/Tree.styles.js +17 -2
  59. package/cjs/components/Tree/Tree.styles.js.map +1 -1
  60. package/cjs/components/Tree/Tree.styles_1bw3k0r.css +8 -0
  61. package/cjs/components/Tree/Tree.tokens.js +5 -2
  62. package/cjs/components/Tree/Tree.tokens.js.map +1 -1
  63. package/cjs/components/Tree/utils/traverseTree.js +3 -3
  64. package/cjs/components/Tree/utils/traverseTree.js.map +1 -1
  65. package/cjs/engines/common.js.map +1 -1
  66. package/cjs/engines/index.js.map +1 -1
  67. package/cjs/index.css +34 -30
  68. package/emotion/cjs/components/CodeField/CodeField.js +61 -23
  69. package/emotion/cjs/components/CodeField/CodeField.styles.js +18 -11
  70. package/emotion/cjs/components/CodeField/hooks/useWebOTP.js +246 -0
  71. package/emotion/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  72. package/emotion/cjs/components/CodeField/utils/handleItemError.js +12 -3
  73. package/emotion/cjs/components/CodeField/utils/index.js +4 -0
  74. package/emotion/cjs/components/CodeField/utils/isWebOTPSupported.js +13 -0
  75. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +10 -10
  76. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +24 -22
  77. package/emotion/cjs/components/Drawer/Drawer.js +13 -4
  78. package/emotion/cjs/components/Drawer/Drawer.styles.js +7 -4
  79. package/emotion/cjs/components/Drawer/Drawer.tokens.js +12 -0
  80. package/emotion/cjs/components/Pagination/Pagination.js +53 -5
  81. package/emotion/cjs/components/Pagination/Pagination.styles.js +28 -14
  82. package/emotion/cjs/components/Pagination/Pagination.tokens.js +3 -0
  83. package/emotion/cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +6 -6
  84. package/emotion/cjs/components/Popover/Popover.js +3 -1
  85. package/emotion/cjs/components/Select/Select.js +10 -10
  86. package/emotion/cjs/components/Switch/Switch.js +4 -2
  87. package/emotion/cjs/components/Switch/Switch.styles.js +11 -11
  88. package/emotion/cjs/components/Switch/Switch.tokens.js +2 -1
  89. package/emotion/cjs/components/TextField/TextField.js +2 -2
  90. package/emotion/cjs/components/TextField/TextField.tokens.js +1 -0
  91. package/emotion/cjs/components/Tree/Tree.js +31 -1
  92. package/emotion/cjs/components/Tree/Tree.styles.js +23 -13
  93. package/emotion/cjs/components/Tree/Tree.tokens.js +5 -2
  94. package/emotion/cjs/components/Tree/utils/traverseTree.js +3 -3
  95. package/emotion/cjs/examples/components/Combobox/Combobox.js +15 -0
  96. package/emotion/cjs/examples/components/Pagination/Pagination.config.js +12 -12
  97. package/emotion/cjs/examples/components/Range/Range.config.js +8 -7
  98. package/emotion/cjs/examples/components/Tree/Tree.config.js +5 -5
  99. package/emotion/es/components/CodeField/CodeField.js +64 -26
  100. package/emotion/es/components/CodeField/CodeField.styles.js +15 -11
  101. package/emotion/es/components/CodeField/hooks/useWebOTP.js +236 -0
  102. package/emotion/es/components/CodeField/utils/handleCodeError.js +2 -2
  103. package/emotion/es/components/CodeField/utils/handleItemError.js +12 -3
  104. package/emotion/es/components/CodeField/utils/index.js +1 -0
  105. package/emotion/es/components/CodeField/utils/isWebOTPSupported.js +3 -0
  106. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +10 -10
  107. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +24 -22
  108. package/emotion/es/components/Drawer/Drawer.js +9 -5
  109. package/emotion/es/components/Drawer/Drawer.styles.js +8 -5
  110. package/emotion/es/components/Drawer/Drawer.tokens.js +9 -0
  111. package/emotion/es/components/Pagination/Pagination.js +55 -7
  112. package/emotion/es/components/Pagination/Pagination.styles.js +23 -15
  113. package/emotion/es/components/Pagination/Pagination.tokens.js +3 -0
  114. package/emotion/es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +6 -6
  115. package/emotion/es/components/Popover/Popover.js +4 -2
  116. package/emotion/es/components/Select/Select.js +10 -10
  117. package/emotion/es/components/Switch/Switch.js +4 -2
  118. package/emotion/es/components/Switch/Switch.styles.js +11 -11
  119. package/emotion/es/components/Switch/Switch.tokens.js +2 -1
  120. package/emotion/es/components/TextField/TextField.js +2 -2
  121. package/emotion/es/components/TextField/TextField.tokens.js +1 -0
  122. package/emotion/es/components/Tree/Tree.js +32 -2
  123. package/emotion/es/components/Tree/Tree.styles.js +20 -13
  124. package/emotion/es/components/Tree/Tree.tokens.js +5 -2
  125. package/emotion/es/components/Tree/utils/traverseTree.js +3 -3
  126. package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
  127. package/emotion/es/examples/components/Pagination/Pagination.config.js +12 -12
  128. package/emotion/es/examples/components/Range/Range.config.js +8 -7
  129. package/emotion/es/examples/components/Tree/Tree.config.js +5 -5
  130. package/es/components/CodeField/CodeField.css +7 -6
  131. package/es/components/CodeField/CodeField.js +66 -30
  132. package/es/components/CodeField/CodeField.js.map +1 -1
  133. package/es/components/CodeField/CodeField.styles.js +7 -2
  134. package/es/components/CodeField/CodeField.styles.js.map +1 -1
  135. package/es/components/CodeField/{CodeField.styles_ebdpd0.css → CodeField.styles_14p25hi.css} +1 -0
  136. package/es/components/CodeField/hooks/useWebOTP.js +91 -0
  137. package/es/components/CodeField/hooks/useWebOTP.js.map +1 -0
  138. package/es/components/CodeField/utils/handleCodeError.js +2 -2
  139. package/es/components/CodeField/utils/handleCodeError.js.map +1 -1
  140. package/es/components/CodeField/utils/handleItemError.js +14 -4
  141. package/es/components/CodeField/utils/handleItemError.js.map +1 -1
  142. package/es/components/CodeField/utils/isWebOTPSupported.js +6 -0
  143. package/es/components/CodeField/utils/isWebOTPSupported.js.map +1 -0
  144. package/es/components/Combobox/ComboboxNew/Combobox.js +11 -10
  145. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  146. package/es/components/DatePicker/RangeDate/RangeDate.js +30 -22
  147. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  148. package/es/components/Drawer/Drawer.css +2 -2
  149. package/es/components/Drawer/Drawer.js +8 -6
  150. package/es/components/Drawer/Drawer.js.map +1 -1
  151. package/es/components/Drawer/Drawer.styles.js +10 -2
  152. package/es/components/Drawer/Drawer.styles.js.map +1 -1
  153. package/{cjs/components/Drawer/Drawer.styles_h5od79.css → es/components/Drawer/Drawer.styles_pltzxq.css} +1 -1
  154. package/es/components/Drawer/Drawer.tokens.js +10 -1
  155. package/es/components/Drawer/Drawer.tokens.js.map +1 -1
  156. package/es/components/Pagination/Pagination.css +12 -10
  157. package/es/components/Pagination/Pagination.js +59 -7
  158. package/es/components/Pagination/Pagination.js.map +1 -1
  159. package/es/components/Pagination/Pagination.styles.js +18 -8
  160. package/es/components/Pagination/Pagination.styles.js.map +1 -1
  161. package/{cjs/components/Pagination/Pagination.styles_ska0td.css → es/components/Pagination/Pagination.styles_qhyqps.css} +5 -3
  162. package/es/components/Pagination/Pagination.tokens.js +3 -0
  163. package/es/components/Pagination/Pagination.tokens.js.map +1 -1
  164. package/es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.css +3 -3
  165. package/es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +1 -1
  166. package/es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js.map +1 -1
  167. package/{cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles_89ax1q.css → es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles_1sw6ww1.css} +2 -2
  168. package/es/components/Popover/Popover.js +4 -1
  169. package/es/components/Popover/Popover.js.map +1 -1
  170. package/es/components/Select/Select.js +12 -10
  171. package/es/components/Select/Select.js.map +1 -1
  172. package/es/components/Switch/Switch.css +6 -6
  173. package/es/components/Switch/Switch.js +5 -2
  174. package/es/components/Switch/Switch.js.map +1 -1
  175. package/es/components/Switch/Switch.styles.js +1 -1
  176. package/es/components/Switch/Switch.styles.js.map +1 -1
  177. package/es/components/Switch/{Switch.styles_qjefea.css → Switch.styles_158fwwl.css} +1 -1
  178. package/es/components/Switch/Switch.tokens.js +2 -1
  179. package/es/components/Switch/Switch.tokens.js.map +1 -1
  180. package/es/components/TextField/TextField.js +1 -1
  181. package/es/components/TextField/TextField.js.map +1 -1
  182. package/es/components/TextField/TextField.tokens.js +1 -0
  183. package/es/components/TextField/TextField.tokens.js.map +1 -1
  184. package/es/components/Tree/Tree.css +7 -6
  185. package/es/components/Tree/Tree.js +43 -2
  186. package/es/components/Tree/Tree.js.map +1 -1
  187. package/es/components/Tree/Tree.styles.js +17 -3
  188. package/es/components/Tree/Tree.styles.js.map +1 -1
  189. package/es/components/Tree/Tree.styles_1bw3k0r.css +8 -0
  190. package/es/components/Tree/Tree.tokens.js +5 -2
  191. package/es/components/Tree/Tree.tokens.js.map +1 -1
  192. package/es/components/Tree/utils/traverseTree.js +3 -3
  193. package/es/components/Tree/utils/traverseTree.js.map +1 -1
  194. package/es/engines/common.js.map +1 -1
  195. package/es/engines/index.js.map +1 -1
  196. package/es/index.css +34 -30
  197. package/package.json +4 -4
  198. package/styled-components/cjs/components/CodeField/CodeField.js +61 -23
  199. package/styled-components/cjs/components/CodeField/CodeField.styles.js +14 -5
  200. package/styled-components/cjs/components/CodeField/hooks/useWebOTP.js +246 -0
  201. package/styled-components/cjs/components/CodeField/utils/handleCodeError.js +2 -2
  202. package/styled-components/cjs/components/CodeField/utils/handleItemError.js +12 -3
  203. package/styled-components/cjs/components/CodeField/utils/index.js +4 -0
  204. package/styled-components/cjs/components/CodeField/utils/isWebOTPSupported.js +13 -0
  205. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +10 -10
  206. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +24 -22
  207. package/styled-components/cjs/components/Drawer/Drawer.js +13 -4
  208. package/styled-components/cjs/components/Drawer/Drawer.styles.js +14 -4
  209. package/styled-components/cjs/components/Drawer/Drawer.tokens.js +12 -0
  210. package/styled-components/cjs/components/Pagination/Pagination.js +53 -5
  211. package/styled-components/cjs/components/Pagination/Pagination.styles.js +39 -12
  212. package/styled-components/cjs/components/Pagination/Pagination.tokens.js +3 -0
  213. package/styled-components/cjs/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +5 -5
  214. package/styled-components/cjs/components/Popover/Popover.js +3 -1
  215. package/styled-components/cjs/components/Select/Select.js +10 -10
  216. package/styled-components/cjs/components/Switch/Switch.js +4 -2
  217. package/styled-components/cjs/components/Switch/Switch.styles.js +9 -8
  218. package/styled-components/cjs/components/Switch/Switch.tokens.js +2 -1
  219. package/styled-components/cjs/components/TextField/TextField.js +1 -1
  220. package/styled-components/cjs/components/TextField/TextField.tokens.js +1 -0
  221. package/styled-components/cjs/components/Tree/Tree.js +31 -1
  222. package/styled-components/cjs/components/Tree/Tree.styles.js +24 -8
  223. package/styled-components/cjs/components/Tree/Tree.tokens.js +5 -2
  224. package/styled-components/cjs/components/Tree/utils/traverseTree.js +3 -3
  225. package/styled-components/cjs/examples/components/Pagination/Pagination.config.js +18 -11
  226. package/styled-components/cjs/examples/components/Range/Range.config.js +46 -0
  227. package/styled-components/cjs/examples/components/Tree/Tree.config.js +6 -2
  228. package/styled-components/es/components/CodeField/CodeField.js +64 -26
  229. package/styled-components/es/components/CodeField/CodeField.styles.js +11 -5
  230. package/styled-components/es/components/CodeField/hooks/useWebOTP.js +236 -0
  231. package/styled-components/es/components/CodeField/utils/handleCodeError.js +2 -2
  232. package/styled-components/es/components/CodeField/utils/handleItemError.js +12 -3
  233. package/styled-components/es/components/CodeField/utils/index.js +1 -0
  234. package/styled-components/es/components/CodeField/utils/isWebOTPSupported.js +3 -0
  235. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +10 -10
  236. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +24 -22
  237. package/styled-components/es/components/Drawer/Drawer.js +9 -5
  238. package/styled-components/es/components/Drawer/Drawer.styles.js +15 -5
  239. package/styled-components/es/components/Drawer/Drawer.tokens.js +9 -0
  240. package/styled-components/es/components/Pagination/Pagination.js +55 -7
  241. package/styled-components/es/components/Pagination/Pagination.styles.js +34 -13
  242. package/styled-components/es/components/Pagination/Pagination.tokens.js +3 -0
  243. package/styled-components/es/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.js +5 -5
  244. package/styled-components/es/components/Popover/Popover.js +4 -2
  245. package/styled-components/es/components/Select/Select.js +10 -10
  246. package/styled-components/es/components/Switch/Switch.js +4 -2
  247. package/styled-components/es/components/Switch/Switch.styles.js +9 -8
  248. package/styled-components/es/components/Switch/Switch.tokens.js +2 -1
  249. package/styled-components/es/components/TextField/TextField.js +1 -1
  250. package/styled-components/es/components/TextField/TextField.tokens.js +1 -0
  251. package/styled-components/es/components/Tree/Tree.js +32 -2
  252. package/styled-components/es/components/Tree/Tree.styles.js +21 -8
  253. package/styled-components/es/components/Tree/Tree.tokens.js +5 -2
  254. package/styled-components/es/components/Tree/utils/traverseTree.js +3 -3
  255. package/styled-components/es/examples/components/Combobox/Combobox.js +7 -0
  256. package/styled-components/es/examples/components/Pagination/Pagination.config.js +18 -11
  257. package/styled-components/es/examples/components/Range/Range.config.js +46 -0
  258. package/styled-components/es/examples/components/Tree/Tree.config.js +6 -2
  259. package/types/components/CodeField/CodeField.d.ts.map +1 -1
  260. package/types/components/CodeField/CodeField.styles.d.ts +1 -0
  261. package/types/components/CodeField/CodeField.styles.d.ts.map +1 -1
  262. package/types/components/CodeField/hooks/useWebOTP.d.ts +20 -0
  263. package/types/components/CodeField/hooks/useWebOTP.d.ts.map +1 -0
  264. package/types/components/CodeField/utils/handleCodeError.d.ts +2 -2
  265. package/types/components/CodeField/utils/handleCodeError.d.ts.map +1 -1
  266. package/types/components/CodeField/utils/handleItemError.d.ts +3 -2
  267. package/types/components/CodeField/utils/handleItemError.d.ts.map +1 -1
  268. package/types/components/CodeField/utils/index.d.ts +1 -0
  269. package/types/components/CodeField/utils/index.d.ts.map +1 -1
  270. package/types/components/CodeField/utils/isWebOTPSupported.d.ts +2 -0
  271. package/types/components/CodeField/utils/isWebOTPSupported.d.ts.map +1 -0
  272. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  273. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  274. package/types/components/Drawer/Drawer.d.ts +2 -0
  275. package/types/components/Drawer/Drawer.d.ts.map +1 -1
  276. package/types/components/Drawer/Drawer.styles.d.ts +2 -1
  277. package/types/components/Drawer/Drawer.styles.d.ts.map +1 -1
  278. package/types/components/Drawer/Drawer.tokens.d.ts +9 -0
  279. package/types/components/Drawer/Drawer.tokens.d.ts.map +1 -1
  280. package/types/components/Drawer/Drawer.types.d.ts +16 -0
  281. package/types/components/Drawer/Drawer.types.d.ts.map +1 -1
  282. package/types/components/Pagination/Pagination.d.ts.map +1 -1
  283. package/types/components/Pagination/Pagination.styles.d.ts +2 -0
  284. package/types/components/Pagination/Pagination.styles.d.ts.map +1 -1
  285. package/types/components/Pagination/Pagination.tokens.d.ts +3 -0
  286. package/types/components/Pagination/Pagination.tokens.d.ts.map +1 -1
  287. package/types/components/Pagination/Pagination.types.d.ts +6 -0
  288. package/types/components/Pagination/Pagination.types.d.ts.map +1 -1
  289. package/types/components/Pagination/ui/PaginationQuickJumpToPage/PaginationQuickJumpToPage.styles.d.ts.map +1 -1
  290. package/types/components/Popover/Popover.d.ts.map +1 -1
  291. package/types/components/Select/Select.d.ts.map +1 -1
  292. package/types/components/Switch/Switch.d.ts.map +1 -1
  293. package/types/components/Switch/Switch.styles.d.ts.map +1 -1
  294. package/types/components/Switch/Switch.tokens.d.ts +1 -0
  295. package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
  296. package/types/components/Switch/Switch.types.d.ts +5 -0
  297. package/types/components/Switch/Switch.types.d.ts.map +1 -1
  298. package/types/components/TextField/TextField.tokens.d.ts +1 -0
  299. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  300. package/types/components/Tree/Tree.d.ts +3 -3
  301. package/types/components/Tree/Tree.d.ts.map +1 -1
  302. package/types/components/Tree/Tree.styles.d.ts +3 -0
  303. package/types/components/Tree/Tree.styles.d.ts.map +1 -1
  304. package/types/components/Tree/Tree.tokens.d.ts +3 -0
  305. package/types/components/Tree/Tree.tokens.d.ts.map +1 -1
  306. package/types/components/Tree/Tree.types.d.ts +50 -1
  307. package/types/components/Tree/Tree.types.d.ts.map +1 -1
  308. package/types/components/Tree/utils/traverseTree.d.ts.map +1 -1
  309. package/types/engines/common.d.ts +3 -3
  310. package/types/engines/common.d.ts.map +1 -1
  311. package/types/engines/index.d.ts +1 -1
  312. package/types/engines/index.d.ts.map +1 -1
  313. package/types/engines/types.d.ts +4 -0
  314. package/types/engines/types.d.ts.map +1 -1
  315. package/types/examples/components/Drawer/Drawer.d.ts +1 -0
  316. package/types/examples/components/Drawer/Drawer.d.ts.map +1 -1
  317. package/types/examples/components/Pagination/Pagination.config.d.ts.map +1 -1
  318. package/types/examples/components/Range/Range.config.d.ts +1 -0
  319. package/types/examples/components/Range/Range.config.d.ts.map +1 -1
  320. package/types/examples/components/Range/Range.d.ts +1 -0
  321. package/types/examples/components/Range/Range.d.ts.map +1 -1
  322. package/types/examples/components/Tree/Tree.config.d.ts.map +1 -1
  323. package/types/examples/components/Tree/Tree.d.ts.map +1 -1
  324. package/cjs/components/Tree/Tree.styles_6sla5y.css +0 -7
  325. package/es/components/Tree/Tree.styles_6sla5y.css +0 -7
@@ -12,6 +12,7 @@ var Popover_styles = require('./Popover.styles.js');
12
12
  var Popover_tokens = require('./Popover.tokens.js');
13
13
  var usePopoverOffset = require('./hooks/usePopoverOffset.js');
14
14
  var useFocusTrap = require('../../hooks/useFocusTrap.js');
15
+ var react = require('../../utils/react.js');
15
16
  var Portal = require('../Portal/Portal.js');
16
17
 
17
18
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
@@ -64,6 +65,7 @@ var popoverRoot = function popoverRoot(Root) {
64
65
  var portalRef = React.useRef(null);
65
66
  var targetRef = React.useRef(null);
66
67
  var trapRef = useFocusTrap.useFocusTrap(innerIsOpen && isFocusTrapped);
68
+ var uuid = react.safeUseId();
67
69
  var popoverForkRef = plasmaCore.useForkRef(popoverRef, trapRef);
68
70
  var _useState = React.useState(null),
69
71
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
@@ -186,8 +188,9 @@ var popoverRoot = function popoverRoot(Root) {
186
188
  portal = rootRef.current;
187
189
  }
188
190
  if (!portal) {
191
+ var portalId = "".concat(POPOVER_PORTAL_ID, "-").concat(uuid);
189
192
  portal = document.createElement('div');
190
- portal.setAttribute('id', POPOVER_PORTAL_ID);
193
+ portal.setAttribute('id', portalId);
191
194
  if (typeof frame === 'string' && frame !== 'document') {
192
195
  var _document$getElementB;
193
196
  (_document$getElementB = document.getElementById(frame)) === null || _document$getElementB === void 0 || _document$getElementB.appendChild(portal);
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useRef, useCallback, useEffect, useState, forwardRef, isValidElement } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { useFocusTrap } from '../../hooks';\nimport { cx } 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';\nimport { usePopoverOffset } from './hooks/usePopoverOffset';\n\nexport const ESCAPE_KEYCODE = 27;\nexport const POPOVER_PORTAL_ID = 'plasma-popover-root';\n\n/**\n * Всплывающее окно с возможностью позиционирования\n * и вызова по клику либо ховеру.\n */\nexport const popoverRoot = (Root: RootProps<HTMLDivElement, PopoverProps>) =>\n forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n target,\n children,\n animated,\n isOpen,\n opened,\n trigger = 'click',\n hasArrow,\n frame = 'document',\n className,\n placement = 'auto',\n offset = [0, 0],\n zIndex,\n isFocusTrapped = true,\n closeOnEsc = true,\n preventOverflow = true,\n usePortal = false,\n 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 const targetRef = useRef<HTMLDivElement | 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 const [shouldRender, setShouldRender] = useState(innerIsOpen);\n\n const portalContainer =\n (typeof target === 'object' && target !== null && 'current' in target && target.current) || undefined;\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const openClass = innerIsOpen && shouldRender ? classes.open : undefined;\n const animatedClass = animated ? classes.animate : undefined;\n\n const offsetInner = usePopoverOffset({\n handleRef: targetRef,\n placement: placement as string,\n offsetOuter: offset,\n });\n\n const { styles, attributes, forceUpdate } = usePopper(rootRef.current, popoverRef.current, {\n // TODO: #1121\n // eslint-disable-next-line no-nested-ternary\n placement: isAutoArray\n ? placement[0]?.endsWith('start')\n ? 'auto-start'\n : 'auto'\n : (placement as PopoverPlacement),\n modifiers: [\n {\n name: 'preventOverflow',\n options: {\n mainAxis: preventOverflow,\n },\n },\n { name: 'offset', options: { offset: [offsetInner[0], offsetInner[1]] } },\n {\n name: 'flip',\n enabled: isAuto,\n options: {\n allowedAutoPlacements: isAutoArray ? (placement as PopoverPlacement[]) : [],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrowElement,\n },\n },\n ],\n });\n\n const onEscape = useCallback(\n (event: KeyboardEvent) => {\n if (innerIsOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {\n onToggle?.(false, event);\n }\n },\n [closeOnEsc, innerIsOpen, onToggle],\n );\n\n const onDocumentClick = useCallback(\n (event: MouseEvent) => {\n if (innerIsOpen && closeOnOverlayClick && onToggle) {\n const targetIsRoot = event.target === rootRef.current;\n const rootHasTarget = rootRef.current?.contains(event.target as Element);\n const popoverRootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsRoot && !rootHasTarget && !popoverRootHasTarget) {\n onToggle(false, event);\n }\n }\n },\n [closeOnOverlayClick, innerIsOpen, onToggle],\n );\n\n const onClick = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'click') {\n const targetIsPopover = event.target === popoverRef.current;\n const rootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n onToggle?.(!innerIsOpen, event);\n }\n }\n },\n [trigger, innerIsOpen, onToggle],\n );\n\n const onMouseEnter = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onMouseLeave = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onBlur = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n useEffect(() => {\n document.addEventListener('click', onDocumentClick);\n return () => document.removeEventListener('click', onDocumentClick);\n }, [innerIsOpen, onToggle]);\n\n useEffect(() => {\n window.addEventListener('keydown', onEscape);\n return () => window.removeEventListener('keydown', onEscape);\n }, [closeOnEsc, innerIsOpen, onToggle]);\n\n useEffect(() => {\n let portal = document.getElementById(POPOVER_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (typeof frame === 'string' && frame) {\n portal = document.getElementById(frame);\n }\n\n if (!usePortal && isValidElement(target)) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n 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 const handleTransitionEnd = () => {\n if (!innerIsOpen) {\n setShouldRender(false);\n }\n };\n\n useEffect(() => {\n if (innerIsOpen) {\n setShouldRender(true);\n }\n }, [innerIsOpen]);\n\n return (\n <Portal container={portalContainer} disabled={isValidElement(target)}>\n <StyledWrapper\n className={cx(classes.wrapper, !isValidElement(target) && classes.targetAsRef)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={targetRef}\n >\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {isValidElement(target) && target}\n </StyledRoot>\n {children && portalRef.current && (\n <Portal container={portalRef.current}>\n <Root view={view} className={className} {...rest}>\n <StyledPopover\n {...attributes.popper}\n onTransitionEnd={handleTransitionEnd}\n className={cx(classes.root, openClass, animatedClass)}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n display: shouldRender || innerIsOpen ? 'block' : 'none',\n }}\n zIndex={zIndex}\n >\n {hasArrow && (\n <StyledArrow\n className={classes.arrow}\n ref={setArrowElement}\n style={styles.arrow}\n {...attributes.arrow}\n />\n )}\n {children}\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\n </Portal>\n );\n },\n );\n\nexport const popoverConfig = {\n name: 'Popover',\n tag: 'div',\n layout: popoverRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["ESCAPE_KEYCODE","POPOVER_PORTAL_ID","popoverRoot","Root","forwardRef","_ref","outerRootRef","_placement$","target","children","animated","isOpen","opened","_ref$trigger","trigger","hasArrow","_ref$frame","frame","className","_ref$placement","placement","_ref$offset","offset","zIndex","_ref$isFocusTrapped","isFocusTrapped","_ref$closeOnEsc","closeOnEsc","_ref$preventOverflow","preventOverflow","_ref$usePortal","usePortal","view","onToggle","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","targetRef","trapRef","useFocusTrap","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","_useState5","_useState6","shouldRender","setShouldRender","portalContainer","_typeof","current","undefined","isAutoArray","Array","isArray","isAuto","startsWith","openClass","classes","open","animatedClass","animate","offsetInner","usePopoverOffset","offsetOuter","_usePopper","usePopper","endsWith","modifiers","name","options","mainAxis","enabled","allowedAutoPlacements","element","styles","attributes","forceUpdate","onEscape","useCallback","event","keyCode","onDocumentClick","_rootRef$current","_popoverRef$current","targetIsRoot","rootHasTarget","contains","popoverRootHasTarget","onClick","_popoverRef$current2","targetIsPopover","onMouseEnter","onMouseLeave","onFocus","onBlur","useEffect","document","addEventListener","removeEventListener","window","portal","getElementById","isValidElement","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","handleTransitionEnd","React","Portal","container","disabled","StyledWrapper","cx","wrapper","targetAsRef","ref","StyledRoot","_extends","StyledPopover","popper","onTransitionEnd","root","style","_objectSpread","display","StyledArrow","arrow","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, isValidElement } from 'react';\nimport { usePopper } from 'react-popper';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { useFocusTrap } from '../../hooks';\nimport { cx, safeUseId } from '../../utils';\nimport { Portal } from '../Portal';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport type { PopoverPlacement, PopoverProps } from './Popover.types';\nimport { StyledArrow, StyledPopover, StyledRoot, StyledWrapper } from './Popover.styles';\nimport { classes } from './Popover.tokens';\nimport { usePopoverOffset } from './hooks/usePopoverOffset';\n\nexport const ESCAPE_KEYCODE = 27;\nexport const POPOVER_PORTAL_ID = 'plasma-popover-root';\n\n/**\n * Всплывающее окно с возможностью позиционирования\n * и вызова по клику либо ховеру.\n */\nexport const popoverRoot = (Root: RootProps<HTMLDivElement, PopoverProps>) =>\n forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n target,\n children,\n animated,\n isOpen,\n opened,\n trigger = 'click',\n hasArrow,\n frame = 'document',\n className,\n placement = 'auto',\n offset = [0, 0],\n zIndex,\n isFocusTrapped = true,\n closeOnEsc = true,\n preventOverflow = true,\n usePortal = false,\n 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 const targetRef = useRef<HTMLDivElement | null>(null);\n\n const trapRef = useFocusTrap(innerIsOpen && isFocusTrapped);\n const uuid = safeUseId();\n\n const popoverForkRef = useForkRef<HTMLDivElement>(popoverRef, trapRef);\n\n const [arrowElement, setArrowElement] = useState<HTMLSpanElement | null>(null);\n\n const [, forceRender] = useState(false);\n const [shouldRender, setShouldRender] = useState(innerIsOpen);\n\n const portalContainer =\n (typeof target === 'object' && target !== null && 'current' in target && target.current) || undefined;\n\n const isAutoArray = Array.isArray(placement);\n const isAuto = isAutoArray || (placement as PopoverPlacement).startsWith('auto');\n\n const openClass = innerIsOpen && shouldRender ? classes.open : undefined;\n const animatedClass = animated ? classes.animate : undefined;\n\n const offsetInner = usePopoverOffset({\n handleRef: targetRef,\n placement: placement as string,\n offsetOuter: offset,\n });\n\n const { styles, attributes, forceUpdate } = usePopper(rootRef.current, popoverRef.current, {\n // TODO: #1121\n // eslint-disable-next-line no-nested-ternary\n placement: isAutoArray\n ? placement[0]?.endsWith('start')\n ? 'auto-start'\n : 'auto'\n : (placement as PopoverPlacement),\n modifiers: [\n {\n name: 'preventOverflow',\n options: {\n mainAxis: preventOverflow,\n },\n },\n { name: 'offset', options: { offset: [offsetInner[0], offsetInner[1]] } },\n {\n name: 'flip',\n enabled: isAuto,\n options: {\n allowedAutoPlacements: isAutoArray ? (placement as PopoverPlacement[]) : [],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrowElement,\n },\n },\n ],\n });\n\n const onEscape = useCallback(\n (event: KeyboardEvent) => {\n if (innerIsOpen && closeOnEsc && event.keyCode === ESCAPE_KEYCODE) {\n onToggle?.(false, event);\n }\n },\n [closeOnEsc, innerIsOpen, onToggle],\n );\n\n const onDocumentClick = useCallback(\n (event: MouseEvent) => {\n if (innerIsOpen && closeOnOverlayClick && onToggle) {\n const targetIsRoot = event.target === rootRef.current;\n const rootHasTarget = rootRef.current?.contains(event.target as Element);\n const popoverRootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsRoot && !rootHasTarget && !popoverRootHasTarget) {\n onToggle(false, event);\n }\n }\n },\n [closeOnOverlayClick, innerIsOpen, onToggle],\n );\n\n const onClick = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'click') {\n const targetIsPopover = event.target === popoverRef.current;\n const rootHasTarget = popoverRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n onToggle?.(!innerIsOpen, event);\n }\n }\n },\n [trigger, innerIsOpen, onToggle],\n );\n\n const onMouseEnter = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onMouseLeave = useCallback<React.MouseEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onFocus = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(true, event);\n }\n },\n [trigger, onToggle],\n );\n\n const onBlur = useCallback<React.FocusEventHandler>(\n (event) => {\n if (trigger === 'hover') {\n onToggle?.(false, event);\n }\n },\n [trigger, onToggle],\n );\n\n useEffect(() => {\n document.addEventListener('click', onDocumentClick);\n return () => document.removeEventListener('click', onDocumentClick);\n }, [innerIsOpen, onToggle]);\n\n useEffect(() => {\n window.addEventListener('keydown', onEscape);\n return () => window.removeEventListener('keydown', onEscape);\n }, [closeOnEsc, innerIsOpen, onToggle]);\n\n useEffect(() => {\n let portal = document.getElementById(POPOVER_PORTAL_ID);\n\n if (typeof frame !== 'string' && frame && frame.current) {\n portal = frame.current;\n }\n\n if (typeof frame === 'string' && frame) {\n portal = document.getElementById(frame);\n }\n\n if (!usePortal && isValidElement(target)) {\n portal = rootRef.current;\n }\n\n if (!portal) {\n const portalId = `${POPOVER_PORTAL_ID}-${uuid}`;\n\n portal = document.createElement('div');\n portal.setAttribute('id', portalId);\n\n if (typeof frame === 'string' && frame !== 'document') {\n document.getElementById(frame)?.appendChild(portal);\n } else {\n document.body.appendChild(portal);\n }\n }\n\n portalRef.current = portal;\n\n /**\n * Изменение стейта нужно для того, чтобы Popup\n * отобразился после записи DOM элемента в portalRef.current\n */\n forceRender(true);\n }, []);\n\n useEffect(() => {\n if (!innerIsOpen || !forceUpdate) {\n return;\n }\n\n /*\n * INFO: Метод forceUpdate содержит в себе flushSync и приводит\n * к повторному рендеру компонента, который уже находится в процессе рендера.\n * Данный хак, нужен для того, чтобы это поведение избежать и перенаправить\n * вызов метода в очередь микрозадач.\n */\n Promise.resolve().then(forceUpdate);\n }, [innerIsOpen, children, forceUpdate]);\n\n const handleTransitionEnd = () => {\n if (!innerIsOpen) {\n setShouldRender(false);\n }\n };\n\n useEffect(() => {\n if (innerIsOpen) {\n setShouldRender(true);\n }\n }, [innerIsOpen]);\n\n return (\n <Portal container={portalContainer} disabled={isValidElement(target)}>\n <StyledWrapper\n className={cx(classes.wrapper, !isValidElement(target) && classes.targetAsRef)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={targetRef}\n >\n <StyledRoot\n ref={handleRef}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(className, classes.target)}\n >\n {isValidElement(target) && target}\n </StyledRoot>\n {children && portalRef.current && (\n <Portal container={portalRef.current}>\n <Root view={view} className={className} {...rest}>\n <StyledPopover\n {...attributes.popper}\n onTransitionEnd={handleTransitionEnd}\n className={cx(classes.root, openClass, animatedClass)}\n ref={popoverForkRef}\n style={{\n ...styles.popper,\n display: shouldRender || innerIsOpen ? 'block' : 'none',\n }}\n zIndex={zIndex}\n >\n {hasArrow && (\n <StyledArrow\n className={classes.arrow}\n ref={setArrowElement}\n style={styles.arrow}\n {...attributes.arrow}\n />\n )}\n {children}\n </StyledPopover>\n </Root>\n </Portal>\n )}\n </StyledWrapper>\n </Portal>\n );\n },\n );\n\nexport const popoverConfig = {\n name: 'Popover',\n tag: 'div',\n layout: popoverRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'default',\n },\n};\n"],"names":["ESCAPE_KEYCODE","POPOVER_PORTAL_ID","popoverRoot","Root","forwardRef","_ref","outerRootRef","_placement$","target","children","animated","isOpen","opened","_ref$trigger","trigger","hasArrow","_ref$frame","frame","className","_ref$placement","placement","_ref$offset","offset","zIndex","_ref$isFocusTrapped","isFocusTrapped","_ref$closeOnEsc","closeOnEsc","_ref$preventOverflow","preventOverflow","_ref$usePortal","usePortal","view","onToggle","closeOnOverlayClick","rest","_objectWithoutProperties","_excluded","innerIsOpen","Boolean","rootRef","useRef","popoverRef","handleRef","useForkRef","portalRef","targetRef","trapRef","useFocusTrap","uuid","safeUseId","popoverForkRef","_useState","useState","_useState2","_slicedToArray","arrowElement","setArrowElement","_useState3","_useState4","forceRender","_useState5","_useState6","shouldRender","setShouldRender","portalContainer","_typeof","current","undefined","isAutoArray","Array","isArray","isAuto","startsWith","openClass","classes","open","animatedClass","animate","offsetInner","usePopoverOffset","offsetOuter","_usePopper","usePopper","endsWith","modifiers","name","options","mainAxis","enabled","allowedAutoPlacements","element","styles","attributes","forceUpdate","onEscape","useCallback","event","keyCode","onDocumentClick","_rootRef$current","_popoverRef$current","targetIsRoot","rootHasTarget","contains","popoverRootHasTarget","onClick","_popoverRef$current2","targetIsPopover","onMouseEnter","onMouseLeave","onFocus","onBlur","useEffect","document","addEventListener","removeEventListener","window","portal","getElementById","isValidElement","portalId","concat","createElement","setAttribute","_document$getElementB","appendChild","body","Promise","resolve","then","handleTransitionEnd","React","Portal","container","disabled","StyledWrapper","cx","wrapper","targetAsRef","ref","StyledRoot","_extends","StyledPopover","popper","onTransitionEnd","root","style","_objectSpread","display","StyledArrow","arrow","popoverConfig","tag","layout","base","variations","css","viewCSS","defaults"],"mappings":"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"}
@@ -79,6 +79,7 @@ var selectRoot = function selectRoot(Root) {
79
79
  _props$virtual = props.virtual,
80
80
  virtual = _props$virtual === void 0 ? false : _props$virtual,
81
81
  onToggle = props.onToggle,
82
+ multiselect = props.multiselect,
82
83
  _props$mode = props.mode,
83
84
  mode = _props$mode === void 0 ? 'default' : _props$mode,
84
85
  _offset = props._offset,
@@ -132,6 +133,7 @@ var selectRoot = function selectRoot(Root) {
132
133
  var treeId = react.safeUseId();
133
134
  var listWrapperRef = React.useRef(null);
134
135
  var view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView.getView(status, outerView);
136
+ var rootRef = React.useRef(null);
135
137
 
136
138
  // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.
137
139
  var requiredProps = props.target === 'button-like' ? undefined : {
@@ -156,15 +158,7 @@ var selectRoot = function selectRoot(Root) {
156
158
  if (!isCurrentListOpen) {
157
159
  return;
158
160
  }
159
- dispatchPath({
160
- type: 'reset'
161
- });
162
- dispatchFocusedPath({
163
- type: 'reset'
164
- });
165
- if (onToggle) {
166
- onToggle(false);
167
- }
161
+ handleListToggle(false);
168
162
  }, floatingPopoverRef);
169
163
  var onChange = function onChange(newValue, item) {
170
164
  if (props.onChange) {
@@ -194,12 +188,19 @@ var selectRoot = function selectRoot(Root) {
194
188
  type: 'opened_first_level'
195
189
  });
196
190
  } else {
191
+ var _rootRef$current;
197
192
  dispatchFocusedPath({
198
193
  type: 'reset'
199
194
  });
200
195
  dispatchPath({
201
196
  type: 'reset'
202
197
  });
198
+
199
+ // Скроллим чипы к левому краю при закрытии компонента
200
+ var el = rootRef === null || rootRef === void 0 || (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.querySelector('.input-scrollable-wrapper');
201
+ if (multiselect && value.length > 0 && el) {
202
+ el.scrollLeft = 0;
203
+ }
203
204
  }
204
205
  if (onToggle) {
205
206
  onToggle(opened);
@@ -364,7 +365,8 @@ var selectRoot = function selectRoot(Root) {
364
365
  chipView: chipView,
365
366
  disabled: disabled,
366
367
  readOnly: readOnly,
367
- id: id
368
+ id: id,
369
+ ref: rootRef
368
370
  }, rest), name && /*#__PURE__*/React__default.default.createElement(SelectNative.SelectNative, {
369
371
  items: valueToItemMap,
370
372
  name: name,
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false);\n }\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n switch (checkedCopy.get(item.value)) {\n // Если чекбокс в состоянии indeterminate\n case 'indeterminate': {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n break;\n }\n // Если чекбокс в состоянии checked\n case true: {\n updateDescendants(item, checkedCopy, false, valueToItemMap);\n checkedCopy.set(item.value, false);\n break;\n }\n // Если чекбокс в состоянии unchecked\n case false: {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n checkedCopy.set(item.value, true);\n break;\n }\n default: {\n break;\n }\n }\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n ref={targetRef}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","requiredProps","hintProps","targetRef","useOutsideClick","type","onChange","newValue","item","Array","isArray","_typeof","handleListToggle","opened","handleCheckboxChange","checkedCopy","Map","get","updateDescendants","set","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateAncestors","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n const rootRef = useRef<HTMLInputElement>(null);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n handleListToggle(false);\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n\n // Скроллим чипы к левому краю при закрытии компонента\n const el = rootRef?.current?.querySelector('.input-scrollable-wrapper');\n if (multiselect && value.length > 0 && el) {\n el.scrollLeft = 0;\n }\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n switch (checkedCopy.get(item.value)) {\n // Если чекбокс в состоянии indeterminate\n case 'indeterminate': {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n break;\n }\n // Если чекбокс в состоянии checked\n case true: {\n updateDescendants(item, checkedCopy, false, valueToItemMap);\n checkedCopy.set(item.value, false);\n break;\n }\n // Если чекбокс в состоянии unchecked\n case false: {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n checkedCopy.set(item.value, true);\n break;\n }\n default: {\n break;\n }\n }\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n ref={rootRef}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n ref={targetRef}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","multiselect","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useState","useState","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","rootRef","requiredProps","hintProps","targetRef","useOutsideClick","handleListToggle","onChange","newValue","item","Array","isArray","_typeof","opened","type","_rootRef$current","el","current","querySelector","length","scrollLeft","handleCheckboxChange","checkedCopy","Map","get","updateDescendants","set","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateAncestors","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
@@ -8,9 +8,9 @@
8
8
 
9
9
  .base_15j754u_bnochw__b189000a{opacity:var(--plasma-switch-disabled-opacity);}.base_15j754u_bnochw__b189000a[disabled]{cursor:not-allowed;}
10
10
 
11
- .Switch_styles_qjefea_b1fcyfkl__60191d72{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--plasma-switch-vertical-gap);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}.Switch_styles_qjefea_b1fcyfkl__60191d72:focus{outline:0 none;}
12
- .Switch_styles_qjefea_s10fscgc__60191d72{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.Switch_styles_qjefea_s10fscgc__60191d72.Switch_styles_qjefea_switchLabelPositionBefore__60191d72{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;--plasma_private-switch__label-offset:0 var(--plasma-switch__label-offset) 0 0;}.Switch_styles_qjefea_s10fscgc__60191d72.Switch_styles_qjefea_switchLabelPositionAfter__60191d72{-webkit-box-pack:start;-webkit-justify-content:start;-ms-flex-pack:start;justify-content:start;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;--plasma_private-switch__label-offset:0 0 0 var(--plasma-switch__label-offset);}
13
- .Switch_styles_qjefea_sdjnckq__60191d72{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:-webkit-box;line-clamp:var(--plasma-switch__description-max-lines);-webkit-line-clamp:var(--plasma-switch__description-max-lines);-webkit-box-orient:vertical;white-space:wrap;}
14
- .Switch_styles_qjefea_ssthlx1__60191d72{position:absolute;right:0;margin:0;opacity:0;}.Switch_styles_qjefea_ssthlx1__60191d72:focus{outline:0 none;}
15
- .Switch_styles_qjefea_s1ilr5eq__60191d72{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
16
- .Switch_styles_qjefea_s2cs3kf__60191d72{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:background-color 0.15s ease-in-out 0.1s;transition:background-color 0.15s ease-in-out 0.1s;}.Switch_styles_qjefea_s2cs3kf__60191d72::after{content:'';position:absolute;right:auto;left:0;-webkit-transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;}.Switch_styles_qjefea_ssthlx1__60191d72:checked ~ .Switch_styles_qjefea_s2cs3kf__60191d72::after{right:0;left:auto;}
11
+ .Switch_styles_158fwwl_b1fcyfkl__6a3591ec{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--plasma-switch-vertical-gap);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}.Switch_styles_158fwwl_b1fcyfkl__6a3591ec:focus{outline:0 none;}
12
+ .Switch_styles_158fwwl_s10fscgc__6a3591ec{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.Switch_styles_158fwwl_s10fscgc__6a3591ec.Switch_styles_158fwwl_switchLabelPositionBefore__6a3591ec{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;--plasma_private-switch__label-offset:0 var(--plasma-switch__label-offset) 0 0;}.Switch_styles_158fwwl_s10fscgc__6a3591ec.Switch_styles_158fwwl_switchLabelPositionAfter__6a3591ec{-webkit-box-pack:start;-webkit-justify-content:start;-ms-flex-pack:start;justify-content:start;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;--plasma_private-switch__label-offset:0 0 0 var(--plasma-switch__label-offset);}
13
+ .Switch_styles_158fwwl_sdjnckq__6a3591ec{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:-webkit-box;line-clamp:var(--plasma-switch__description-max-lines);-webkit-line-clamp:var(--plasma-switch__description-max-lines);-webkit-box-orient:vertical;white-space:wrap;}
14
+ .Switch_styles_158fwwl_ssthlx1__6a3591ec{position:absolute;right:0;margin:0;opacity:0;}.Switch_styles_158fwwl_ssthlx1__6a3591ec:focus{outline:0 none;}
15
+ .Switch_styles_158fwwl_s1ilr5eq__6a3591ec{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.Switch_styles_158fwwl_s1ilr5eq__6a3591ec.Switch_styles_158fwwl_switchSingleLine__6a3591ec{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
16
+ .Switch_styles_158fwwl_s2cs3kf__6a3591ec{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:background-color 0.15s ease-in-out 0.1s;transition:background-color 0.15s ease-in-out 0.1s;}.Switch_styles_158fwwl_s2cs3kf__6a3591ec::after{content:'';position:absolute;right:auto;left:0;-webkit-transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;}.Switch_styles_158fwwl_ssthlx1__6a3591ec:checked ~ .Switch_styles_158fwwl_s2cs3kf__6a3591ec::after{right:0;left:auto;}
@@ -18,7 +18,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
18
18
  var React__default = /*#__PURE__*/_interopDefault(React);
19
19
 
20
20
  var _StyledTrigger;
21
- var _excluded = ["size", "toggleSize", "view", "focused", "outlined", "disabled", "labelPosition", "label", "description", "id", "style", "className", "checked", "pressed", "defaultChecked"];
21
+ var _excluded = ["size", "toggleSize", "view", "focused", "outlined", "disabled", "labelPosition", "label", "description", "singleLine", "id", "style", "className", "checked", "pressed", "defaultChecked"];
22
22
  var switchRoot = function switchRoot(Root) {
23
23
  return /*#__PURE__*/React.forwardRef(function (props, ref) {
24
24
  var size = props.size,
@@ -30,6 +30,8 @@ var switchRoot = function switchRoot(Root) {
30
30
  labelPosition = props.labelPosition,
31
31
  label = props.label,
32
32
  description = props.description,
33
+ _props$singleLine = props.singleLine,
34
+ singleLine = _props$singleLine === void 0 ? true : _props$singleLine,
33
35
  id = props.id,
34
36
  style = props.style,
35
37
  className = props.className,
@@ -59,7 +61,8 @@ var switchRoot = function switchRoot(Root) {
59
61
  defaultChecked: defaultChecked,
60
62
  disabled: disabled
61
63
  })), /*#__PURE__*/React__default.default.createElement(Switch_styles.StyledLabel, {
62
- tabIndex: -1
64
+ tabIndex: -1,
65
+ className: singleLine ? Switch_tokens.classes.singleLine : ''
63
66
  }, label), _StyledTrigger || (_StyledTrigger = /*#__PURE__*/React__default.default.createElement(Switch_styles.StyledTrigger, {
64
67
  "aria-hidden": true
65
68
  }))), description && /*#__PURE__*/React__default.default.createElement(Switch_styles.StyledDescription, null, description));
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.js","sources":["../../../src/components/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { base as sizeCSS } from '../Switch/_size/base';\nimport { base as toggleSizeCSS } from '../Switch/_toggleSize/base';\nimport { base as viewCSS } from '../Switch/_view/base';\nimport { base as focusedCSS } from '../Switch/_focused/base';\nimport { base as disabledCSS } from '../Switch/_disabled/base';\nimport { cx } from '../../utils';\n\nimport { StyledContent, StyledDescription, StyledInput, StyledLabel, StyledTrigger, base } from './Switch.styles';\nimport { SwitchProps } from './Switch.types';\nimport { classes } from './Switch.tokens';\n\nexport const switchRoot = (Root: RootProps<HTMLInputElement, SwitchProps>) =>\n forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const {\n size,\n toggleSize,\n view,\n focused,\n outlined,\n disabled,\n labelPosition,\n\n label,\n description,\n\n id,\n style,\n className,\n\n // singleLine,\n\n checked,\n pressed,\n defaultChecked,\n\n ...rest\n } = props;\n\n const exactChecked = Boolean((checked ?? pressed) !== undefined ? checked ?? pressed : defaultChecked);\n\n return (\n <Root\n view={view}\n size={size}\n toggleSize={toggleSize}\n disabled={disabled}\n focused={focused ?? outlined}\n labelPosition={labelPosition}\n id={id}\n style={style}\n className={cx(className)}\n >\n <StyledContent className={cx(classes[`${labelPosition}SwitchLabelPosition` as keyof typeof classes])}>\n <StyledInput\n {...rest}\n ref={ref}\n role=\"switch\"\n aria-checked={exactChecked}\n type=\"checkbox\"\n checked={checked ?? pressed}\n defaultChecked={defaultChecked}\n disabled={disabled}\n />\n <StyledLabel tabIndex={-1}>{label}</StyledLabel>\n <StyledTrigger aria-hidden />\n </StyledContent>\n {description && <StyledDescription>{description}</StyledDescription>}\n </Root>\n );\n });\n\nexport const switchConfig = {\n name: 'Switch',\n tag: 'label',\n base,\n layout: switchRoot,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n toggleSize: {\n css: toggleSizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n focused: {\n css: focusedCSS,\n },\n },\n defaults: {\n size: 's',\n view: 'default',\n },\n};\n"],"names":["switchRoot","Root","forwardRef","props","ref","size","toggleSize","view","focused","outlined","disabled","labelPosition","label","description","id","style","className","checked","pressed","defaultChecked","rest","_objectWithoutProperties","_excluded","exactChecked","Boolean","undefined","React","createElement","cx","StyledContent","classes","concat","StyledInput","_extends","role","type","StyledLabel","tabIndex","_StyledTrigger","StyledTrigger","StyledDescription","switchConfig","name","tag","base","layout","variations","css","sizeCSS","viewCSS","toggleSizeCSS","disabledCSS","attrs","focusedCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Switch.js","sources":["../../../src/components/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { base as sizeCSS } from '../Switch/_size/base';\nimport { base as toggleSizeCSS } from '../Switch/_toggleSize/base';\nimport { base as viewCSS } from '../Switch/_view/base';\nimport { base as focusedCSS } from '../Switch/_focused/base';\nimport { base as disabledCSS } from '../Switch/_disabled/base';\nimport { cx } from '../../utils';\n\nimport { StyledContent, StyledDescription, StyledInput, StyledLabel, StyledTrigger, base } from './Switch.styles';\nimport { SwitchProps } from './Switch.types';\nimport { classes } from './Switch.tokens';\n\nexport const switchRoot = (Root: RootProps<HTMLInputElement, SwitchProps>) =>\n forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const {\n size,\n toggleSize,\n view,\n focused,\n outlined,\n disabled,\n labelPosition,\n\n label,\n description,\n singleLine = true,\n\n id,\n style,\n className,\n\n // singleLine,\n\n checked,\n pressed,\n defaultChecked,\n\n ...rest\n } = props;\n\n const exactChecked = Boolean((checked ?? pressed) !== undefined ? checked ?? pressed : defaultChecked);\n\n return (\n <Root\n view={view}\n size={size}\n toggleSize={toggleSize}\n disabled={disabled}\n focused={focused ?? outlined}\n labelPosition={labelPosition}\n id={id}\n style={style}\n className={cx(className)}\n >\n <StyledContent className={cx(classes[`${labelPosition}SwitchLabelPosition` as keyof typeof classes])}>\n <StyledInput\n {...rest}\n ref={ref}\n role=\"switch\"\n aria-checked={exactChecked}\n type=\"checkbox\"\n checked={checked ?? pressed}\n defaultChecked={defaultChecked}\n disabled={disabled}\n />\n <StyledLabel tabIndex={-1} className={singleLine ? classes.singleLine : ''}>\n {label}\n </StyledLabel>\n <StyledTrigger aria-hidden />\n </StyledContent>\n {description && <StyledDescription>{description}</StyledDescription>}\n </Root>\n );\n });\n\nexport const switchConfig = {\n name: 'Switch',\n tag: 'label',\n base,\n layout: switchRoot,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n toggleSize: {\n css: toggleSizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n focused: {\n css: focusedCSS,\n },\n },\n defaults: {\n size: 's',\n view: 'default',\n },\n};\n"],"names":["switchRoot","Root","forwardRef","props","ref","size","toggleSize","view","focused","outlined","disabled","labelPosition","label","description","_props$singleLine","singleLine","id","style","className","checked","pressed","defaultChecked","rest","_objectWithoutProperties","_excluded","exactChecked","Boolean","undefined","React","createElement","cx","StyledContent","classes","concat","StyledInput","_extends","role","type","StyledLabel","tabIndex","_StyledTrigger","StyledTrigger","StyledDescription","switchConfig","name","tag","base","layout","variations","css","sizeCSS","viewCSS","toggleSizeCSS","disabledCSS","attrs","focusedCSS","defaults"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- require('./Switch.styles_qjefea.css');
1
+ require('./Switch.styles_158fwwl.css');
2
2
  'use strict';
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.styles.js","sources":["../../../src/components/Switch/Switch.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\n\nimport { applyEllipsis } from '../../mixins';\n\nimport { classes, tokens } from './Switch.tokens';\n\nexport const base = css`\n position: relative;\n display: flex;\n flex-direction: column;\n gap: var(${tokens.verticalGap});\n\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n &:focus {\n outline: 0 none;\n }\n`;\n\nexport const StyledContent = styled.div`\n width: 100%;\n position: relative;\n display: flex;\n align-items: center;\n\n &.${classes.beforeSwitchLabelPosition} {\n justify-content: space-between;\n\n ${tokens.labelOffsetPrivate}: 0 var(${tokens.labelOffset}) 0 0;\n }\n\n &.${classes.afterSwitchLabelPosition} {\n justify-content: start;\n flex-direction: row-reverse;\n\n ${tokens.labelOffsetPrivate}: 0 0 0 var(${tokens.labelOffset});\n }\n`;\n\nexport const StyledDescription = styled.div`\n position: relative;\n\n ${applyEllipsis()}\n\n display: -webkit-box;\n line-clamp: var(${tokens.descriptionMaxLines});\n -webkit-line-clamp: var(${tokens.descriptionMaxLines}); /* Ограничиваем количество строк */\n -webkit-box-orient: vertical;\n white-space: wrap;\n`;\n\nexport const StyledInput = styled.input`\n position: absolute;\n right: 0;\n margin: 0;\n opacity: 0;\n\n &:focus {\n outline: 0 none;\n }\n`;\n\nexport const StyledLabel = styled.span`\n user-select: none;\n\n // TODO: multiline switch\n ${applyEllipsis()}\n`;\n\nexport const StyledTrigger = styled.div`\n position: relative;\n display: flex;\n align-items: center;\n transition: background-color 0.15s ease-in-out 0.1s;\n\n ::after {\n content: '';\n position: absolute;\n right: auto;\n left: 0;\n\n transition: width 0.15s ease-in-out 0s, left 0.3s ease-in-out 0s, right 0.3s ease-in-out 0s;\n }\n\n ${StyledInput}:checked ~ &::after {\n right: 0;\n left: auto;\n }\n`;\n"],"names":["base","StyledContent","styled","name","class","propsAsIs","StyledDescription","StyledInput","StyledLabel","StyledTrigger"],"mappings":";;;;;;AAOO,IAAMA,IAAI,GAYhB,WAAA;AAEM,IAAMC,aAAa,gBAAGC,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAkBlC,EAAA;AAEM,IAAMC,iBAAiB,gBAAGJ,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,mBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAUtC,EAAA;AAEM,IAAME,WAAW,gBAAGL,YAAM,CAAA,OAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAShC,EAAA;AAEM,IAAMG,WAAW,gBAAGN,YAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAKhC,EAAA;AAEM,IAAMI,aAAa,gBAAGP,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAmBlC;;;;;;;;;"}
1
+ {"version":3,"file":"Switch.styles.js","sources":["../../../src/components/Switch/Switch.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { css } from '@linaria/core';\n\nimport { applyEllipsis } from '../../mixins';\n\nimport { classes, tokens } from './Switch.tokens';\n\nexport const base = css`\n position: relative;\n display: flex;\n flex-direction: column;\n gap: var(${tokens.verticalGap});\n\n cursor: pointer;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n\n &:focus {\n outline: 0 none;\n }\n`;\n\nexport const StyledContent = styled.div`\n width: 100%;\n position: relative;\n display: flex;\n align-items: center;\n\n &.${classes.beforeSwitchLabelPosition} {\n justify-content: space-between;\n\n ${tokens.labelOffsetPrivate}: 0 var(${tokens.labelOffset}) 0 0;\n }\n\n &.${classes.afterSwitchLabelPosition} {\n justify-content: start;\n flex-direction: row-reverse;\n\n ${tokens.labelOffsetPrivate}: 0 0 0 var(${tokens.labelOffset});\n }\n`;\n\nexport const StyledDescription = styled.div`\n position: relative;\n\n ${applyEllipsis()}\n\n display: -webkit-box;\n line-clamp: var(${tokens.descriptionMaxLines});\n -webkit-line-clamp: var(${tokens.descriptionMaxLines}); /* Ограничиваем количество строк */\n -webkit-box-orient: vertical;\n white-space: wrap;\n`;\n\nexport const StyledInput = styled.input`\n position: absolute;\n right: 0;\n margin: 0;\n opacity: 0;\n\n &:focus {\n outline: 0 none;\n }\n`;\n\nexport const StyledLabel = styled.span`\n user-select: none;\n\n &.${classes.singleLine} {\n ${applyEllipsis()}\n }\n`;\n\nexport const StyledTrigger = styled.div`\n position: relative;\n display: flex;\n align-items: center;\n transition: background-color 0.15s ease-in-out 0.1s;\n\n ::after {\n content: '';\n position: absolute;\n right: auto;\n left: 0;\n\n transition: width 0.15s ease-in-out 0s, left 0.3s ease-in-out 0s, right 0.3s ease-in-out 0s;\n }\n\n ${StyledInput}:checked ~ &::after {\n right: 0;\n left: auto;\n }\n`;\n"],"names":["base","StyledContent","styled","name","class","propsAsIs","StyledDescription","StyledInput","StyledLabel","StyledTrigger"],"mappings":";;;;;;AAOO,IAAMA,IAAI,GAYhB,WAAA;AAEM,IAAMC,aAAa,gBAAGC,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAkBlC,EAAA;AAEM,IAAMC,iBAAiB,gBAAGJ,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,mBAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAUtC,EAAA;AAEM,IAAME,WAAW,gBAAGL,YAAM,CAAA,OAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAShC,EAAA;AAEM,IAAMG,WAAW,gBAAGN,YAAM,CAAA,MAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAMhC,EAAA;AAEM,IAAMI,aAAa,gBAAGP,YAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,eAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAmBlC;;;;;;;;;"}
@@ -2,5 +2,5 @@
2
2
  .s10fscgc{width:100%;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.s10fscgc.switch-label-position-before{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;--plasma_private-switch__label-offset:0 var(--plasma-switch__label-offset) 0 0;}.s10fscgc.switch-label-position-after{-webkit-box-pack:start;-webkit-justify-content:start;-ms-flex-pack:start;justify-content:start;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;--plasma_private-switch__label-offset:0 0 0 var(--plasma-switch__label-offset);}
3
3
  .sdjnckq{position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:-webkit-box;line-clamp:var(--plasma-switch__description-max-lines);-webkit-line-clamp:var(--plasma-switch__description-max-lines);-webkit-box-orient:vertical;white-space:wrap;}
4
4
  .ssthlx1{position:absolute;right:0;margin:0;opacity:0;}.ssthlx1:focus{outline:0 none;}
5
- .s1ilr5eq{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
5
+ .s1ilr5eq{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.s1ilr5eq.switch-single-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
6
6
  .s2cs3kf{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:background-color 0.15s ease-in-out 0.1s;transition:background-color 0.15s ease-in-out 0.1s;}.s2cs3kf::after{content:'';position:absolute;right:auto;left:0;-webkit-transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;transition:width 0.15s ease-in-out 0s,left 0.3s ease-in-out 0s,right 0.3s ease-in-out 0s;}.ssthlx1:checked ~ .s2cs3kf::after{right:0;left:auto;}
@@ -54,7 +54,8 @@ var tokens = {
54
54
  };
55
55
  var classes = {
56
56
  beforeSwitchLabelPosition: 'switch-label-position-before',
57
- afterSwitchLabelPosition: 'switch-label-position-after'
57
+ afterSwitchLabelPosition: 'switch-label-position-after',
58
+ singleLine: 'switch-single-line'
58
59
  };
59
60
 
60
61
  exports.classes = classes;