@salutejs/plasma-new-hope 0.191.2-canary.1557.11803291365.0 → 0.192.0-canary.1550.11799501370.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (731) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +21 -22
  2. package/cjs/components/Breadcrumbs/Breadcrumbs.css +3 -3
  3. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +14 -7
  4. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  5. package/cjs/components/Breadcrumbs/{Breadcrumbs.styles_1icsgdr.css → Breadcrumbs.styles_19b6ey4.css} +1 -1
  6. package/cjs/components/Breadcrumbs/utils/index.css +3 -3
  7. package/cjs/components/Cell/Cell.js +3 -1
  8. package/cjs/components/Cell/Cell.js.map +1 -1
  9. package/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  10. package/cjs/components/Cell/ui/CellTextbox/CellTextbox.js.map +1 -1
  11. package/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  12. package/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js.map +1 -1
  13. package/cjs/components/Chip/Chip.js +3 -1
  14. package/cjs/components/Chip/Chip.js.map +1 -1
  15. package/cjs/components/Combobox/ComboboxNew/Combobox.css +21 -22
  16. package/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  17. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  18. package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  19. package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
  20. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  21. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  22. package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  23. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  24. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  25. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.css +21 -22
  26. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +21 -22
  27. package/cjs/components/DatePicker/RangeDate/RangeDate.css +21 -22
  28. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +21 -22
  29. package/cjs/components/DatePicker/SingleDate/SingleDate.css +21 -22
  30. package/cjs/components/Dropdown/FloatingPopover.js.map +1 -1
  31. package/cjs/components/Pagination/Pagination.css +86 -37
  32. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +86 -37
  33. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  34. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  35. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_10zfeps.css +3 -0
  36. package/cjs/components/Range/Range.css +21 -22
  37. package/cjs/components/Select/FloatingPopover.js +87 -0
  38. package/cjs/components/Select/FloatingPopover.js.map +1 -0
  39. package/cjs/components/Select/Select.css +83 -34
  40. package/cjs/components/Select/Select.js +179 -139
  41. package/cjs/components/Select/Select.js.map +1 -1
  42. package/cjs/components/Select/Select.styles.js +17 -50
  43. package/cjs/components/Select/Select.styles.js.map +1 -1
  44. package/cjs/components/Select/Select.styles_1p5c9p3.css +2 -0
  45. package/cjs/components/Select/Select.tokens.js +122 -78
  46. package/cjs/components/Select/Select.tokens.js.map +1 -1
  47. package/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -72
  48. package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  49. package/cjs/components/Select/hooks/usePathMaps.js +4 -1
  50. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  51. package/cjs/components/Select/ui/Inner/Inner.css +83 -34
  52. package/cjs/components/Select/ui/Inner/Inner.js +9 -9
  53. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  54. package/cjs/components/Select/ui/Inner/ui/Item/Item.css +83 -34
  55. package/cjs/components/Select/ui/Inner/ui/Item/Item.js +20 -12
  56. package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  57. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +34 -51
  58. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  59. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles_1x4bzlm.css +9 -0
  60. package/cjs/components/Select/ui/Target/Target.css +58 -17
  61. package/cjs/components/Select/ui/Target/Target.js +34 -16
  62. package/cjs/components/Select/ui/Target/Target.js.map +1 -1
  63. package/cjs/components/Select/ui/Target/ui/Button/Button.css +5 -5
  64. package/cjs/components/Select/ui/Target/ui/Button/Button.js +10 -14
  65. package/cjs/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  66. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +1 -1
  67. package/cjs/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  68. package/cjs/components/Select/ui/Target/ui/Button/Button.styles_10g64me.css +5 -0
  69. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +53 -38
  70. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +84 -97
  71. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  72. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +38 -103
  73. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  74. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles_q4kc1p.css +3 -0
  75. package/cjs/components/Select/utils/getFallbackPlacements.js +15 -0
  76. package/cjs/components/Select/utils/getFallbackPlacements.js.map +1 -0
  77. package/cjs/components/Select/utils/getItemId.js +10 -0
  78. package/cjs/components/Select/utils/getItemId.js.map +1 -0
  79. package/cjs/components/Select/utils/getPlacement.js +13 -0
  80. package/cjs/components/Select/utils/getPlacement.js.map +1 -0
  81. package/cjs/components/Select/utils/getView.js +2 -2
  82. package/cjs/components/Select/utils/getView.js.map +1 -1
  83. package/cjs/components/Slider/Slider.css +21 -22
  84. package/cjs/components/Slider/components/Double/Double.css +21 -22
  85. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +21 -22
  86. package/cjs/components/Switch/Switch.css +7 -11
  87. package/cjs/components/Switch/Switch.js +7 -16
  88. package/cjs/components/Switch/Switch.js.map +1 -1
  89. package/cjs/components/Switch/Switch.styles.js +4 -16
  90. package/cjs/components/Switch/Switch.styles.js.map +1 -1
  91. package/cjs/components/Switch/Switch.styles_1kk0qzz.css +4 -0
  92. package/cjs/components/Switch/Switch.tokens.js +0 -11
  93. package/cjs/components/Switch/Switch.tokens.js.map +1 -1
  94. package/cjs/components/Switch/_focused/base.js +1 -1
  95. package/cjs/components/Switch/_focused/{base_sz3n0x.css → base_j4murk.css} +1 -1
  96. package/cjs/components/Switch/_size/base.js +1 -1
  97. package/cjs/components/Switch/_size/base.js.map +1 -1
  98. package/cjs/components/Switch/_size/base_1rjzpi4.css +1 -0
  99. package/cjs/components/Switch/_view/base.js +1 -1
  100. package/cjs/components/Switch/_view/base.js.map +1 -1
  101. package/cjs/components/Switch/_view/base_1mtyz12.css +1 -0
  102. package/cjs/components/TextField/TextField.js +11 -2
  103. package/cjs/components/TextField/TextField.js.map +1 -1
  104. package/cjs/components/TextField/TextField.styles.js +14 -22
  105. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  106. package/{es/components/TextField/TextField.styles_grgg7q.css → cjs/components/TextField/TextField.styles_j7dqpn.css} +6 -7
  107. package/cjs/components/TextField/TextField.tokens.js +2 -1
  108. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  109. package/cjs/components/TextField/ui/Hint/Hint.css +20 -21
  110. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  111. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -1
  112. package/cjs/components/TextField/variations/_clear/base.js +1 -1
  113. package/cjs/components/TextField/variations/_clear/{base_1i91sjp.css → base_1396md2.css} +1 -1
  114. package/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  115. package/cjs/components/TextField/variations/_label-placement/base_gttvto.css +1 -0
  116. package/cjs/components/TextField/variations/_read-only/base.js +1 -1
  117. package/cjs/components/TextField/variations/_read-only/{base_17ypmu7.css → base_1jvcf9a.css} +1 -1
  118. package/cjs/components/TextField/variations/_size/base.js +1 -1
  119. package/cjs/components/TextField/variations/_size/{base_1xdmaqh.css → base_1tei47x.css} +1 -1
  120. package/cjs/components/TextField/variations/_view/base.js +1 -1
  121. package/cjs/components/TextField/variations/_view/{base_qhyte8.css → base_8ogww5.css} +1 -1
  122. package/cjs/index.css +56 -75
  123. package/cjs/index.js +2 -0
  124. package/cjs/index.js.map +1 -1
  125. package/cjs/utils/fixedForwardRef.js +12 -0
  126. package/cjs/utils/fixedForwardRef.js.map +1 -0
  127. package/cjs/utils/index.js.map +1 -1
  128. package/emotion/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +11 -8
  129. package/emotion/cjs/components/Cell/Cell.js +3 -1
  130. package/emotion/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  131. package/emotion/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  132. package/emotion/cjs/components/Chip/Chip.js +3 -1
  133. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  134. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  135. package/emotion/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +19 -5
  136. package/emotion/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  137. package/emotion/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +3 -3
  138. package/emotion/cjs/components/Select/FloatingPopover.js +91 -0
  139. package/emotion/cjs/components/Select/Select.js +177 -136
  140. package/emotion/cjs/components/Select/Select.styles.js +13 -31
  141. package/emotion/cjs/components/Select/Select.tokens.js +125 -60
  142. package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -73
  143. package/emotion/cjs/components/Select/hooks/usePathMaps.js +4 -1
  144. package/emotion/cjs/components/Select/reducers/index.js +0 -11
  145. package/emotion/cjs/components/Select/ui/Inner/Inner.js +9 -9
  146. package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.js +19 -12
  147. package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +27 -50
  148. package/emotion/cjs/components/Select/ui/Target/Target.js +38 -18
  149. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.js +13 -16
  150. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +6 -6
  151. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +88 -99
  152. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +27 -74
  153. package/emotion/cjs/components/Select/utils/getFallbackPlacements.js +14 -0
  154. package/emotion/cjs/components/Select/utils/getItemId.js +9 -0
  155. package/emotion/cjs/components/Select/utils/getPlacement.js +12 -0
  156. package/emotion/cjs/components/Select/utils/getView.js +2 -2
  157. package/emotion/cjs/components/Select/utils/index.js +22 -1
  158. package/emotion/cjs/components/Switch/Switch.js +8 -17
  159. package/emotion/cjs/components/Switch/Switch.styles.js +5 -21
  160. package/emotion/cjs/components/Switch/Switch.template-doc.mdx +1 -37
  161. package/emotion/cjs/components/Switch/Switch.tokens.js +0 -11
  162. package/emotion/cjs/components/Switch/_size/base.js +1 -1
  163. package/emotion/cjs/components/Switch/_view/base.js +1 -1
  164. package/emotion/cjs/components/TextField/TextField.js +12 -3
  165. package/emotion/cjs/components/TextField/TextField.styles.js +36 -40
  166. package/emotion/cjs/components/TextField/TextField.tokens.js +2 -1
  167. package/emotion/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  168. package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +12 -12
  169. package/emotion/cjs/examples/plasma_b2c/components/Select/Select.config.js +28 -20
  170. package/emotion/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  171. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +4 -11
  172. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
  173. package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +13 -15
  174. package/emotion/cjs/examples/plasma_web/components/Select/Select.config.js +28 -20
  175. package/emotion/cjs/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  176. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +4 -11
  177. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
  178. package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +12 -14
  179. package/emotion/cjs/index.js +11 -0
  180. package/emotion/cjs/types/DistributiveOmit.js +5 -0
  181. package/emotion/cjs/types/DistributivePick.js +5 -0
  182. package/emotion/cjs/utils/fixedForwardRef.js +11 -0
  183. package/emotion/cjs/utils/index.js +9 -1
  184. package/emotion/es/components/Breadcrumbs/Breadcrumbs.styles.js +11 -8
  185. package/emotion/es/components/Cell/Cell.js +3 -1
  186. package/emotion/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  187. package/emotion/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  188. package/emotion/es/components/Chip/Chip.js +3 -1
  189. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  190. package/emotion/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  191. package/emotion/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  192. package/emotion/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  193. package/emotion/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +3 -3
  194. package/emotion/es/components/Select/FloatingPopover.js +84 -0
  195. package/emotion/es/components/Select/Select.js +182 -141
  196. package/emotion/es/components/Select/Select.styles.js +12 -30
  197. package/emotion/es/components/Select/Select.tokens.js +125 -60
  198. package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +18 -72
  199. package/emotion/es/components/Select/hooks/usePathMaps.js +4 -1
  200. package/emotion/es/components/Select/reducers/index.js +1 -2
  201. package/emotion/es/components/Select/ui/Inner/Inner.js +10 -10
  202. package/emotion/es/components/Select/ui/Inner/ui/Item/Item.js +22 -15
  203. package/emotion/es/components/Select/ui/Inner/ui/Item/Item.styles.js +26 -49
  204. package/emotion/es/components/Select/ui/Target/Target.js +35 -17
  205. package/emotion/es/components/Select/ui/Target/ui/Button/Button.js +11 -16
  206. package/emotion/es/components/Select/ui/Target/ui/Button/Button.styles.js +6 -6
  207. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  208. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +27 -74
  209. package/emotion/es/components/Select/utils/getFallbackPlacements.js +8 -0
  210. package/emotion/es/components/Select/utils/getItemId.js +3 -0
  211. package/emotion/es/components/Select/utils/getPlacement.js +6 -0
  212. package/emotion/es/components/Select/utils/getView.js +2 -2
  213. package/emotion/es/components/Select/utils/index.js +4 -1
  214. package/emotion/es/components/Switch/Switch.js +4 -13
  215. package/emotion/es/components/Switch/Switch.styles.js +4 -20
  216. package/emotion/es/components/Switch/Switch.template-doc.mdx +1 -37
  217. package/emotion/es/components/Switch/Switch.tokens.js +0 -11
  218. package/emotion/es/components/Switch/_size/base.js +2 -2
  219. package/emotion/es/components/Switch/_view/base.js +2 -2
  220. package/emotion/es/components/TextField/TextField.js +12 -3
  221. package/emotion/es/components/TextField/TextField.styles.js +36 -40
  222. package/emotion/es/components/TextField/TextField.tokens.js +2 -1
  223. package/emotion/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  224. package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +12 -12
  225. package/emotion/es/examples/plasma_b2c/components/Select/Select.config.js +29 -21
  226. package/emotion/es/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  227. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +4 -11
  228. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
  229. package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +13 -15
  230. package/emotion/es/examples/plasma_web/components/Select/Select.config.js +29 -21
  231. package/emotion/es/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  232. package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +4 -11
  233. package/emotion/es/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
  234. package/emotion/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +12 -14
  235. package/emotion/es/index.js +1 -0
  236. package/emotion/es/types/DistributiveOmit.js +1 -0
  237. package/emotion/es/types/DistributivePick.js +1 -0
  238. package/emotion/es/utils/fixedForwardRef.js +4 -0
  239. package/emotion/es/utils/index.js +2 -1
  240. package/es/components/Autocomplete/Autocomplete.css +21 -22
  241. package/es/components/Breadcrumbs/Breadcrumbs.css +3 -3
  242. package/es/components/Breadcrumbs/Breadcrumbs.styles.js +14 -7
  243. package/es/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  244. package/es/components/Breadcrumbs/{Breadcrumbs.styles_1icsgdr.css → Breadcrumbs.styles_19b6ey4.css} +1 -1
  245. package/es/components/Breadcrumbs/utils/index.css +3 -3
  246. package/es/components/Cell/Cell.js +3 -1
  247. package/es/components/Cell/Cell.js.map +1 -1
  248. package/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  249. package/es/components/Cell/ui/CellTextbox/CellTextbox.js.map +1 -1
  250. package/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  251. package/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js.map +1 -1
  252. package/es/components/Chip/Chip.js +3 -1
  253. package/es/components/Chip/Chip.js.map +1 -1
  254. package/es/components/Combobox/ComboboxNew/Combobox.css +21 -22
  255. package/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  256. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  257. package/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  258. package/es/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
  259. package/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  260. package/es/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  261. package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
  262. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  263. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  264. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.css +21 -22
  265. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +21 -22
  266. package/es/components/DatePicker/RangeDate/RangeDate.css +21 -22
  267. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +21 -22
  268. package/es/components/DatePicker/SingleDate/SingleDate.css +21 -22
  269. package/es/components/Dropdown/FloatingPopover.js.map +1 -1
  270. package/es/components/Pagination/Pagination.css +86 -37
  271. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +86 -37
  272. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  273. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js.map +1 -1
  274. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_10zfeps.css +3 -0
  275. package/es/components/Range/Range.css +21 -22
  276. package/es/components/Select/FloatingPopover.js +83 -0
  277. package/es/components/Select/FloatingPopover.js.map +1 -0
  278. package/es/components/Select/Select.css +83 -34
  279. package/es/components/Select/Select.js +182 -142
  280. package/es/components/Select/Select.js.map +1 -1
  281. package/es/components/Select/Select.styles.js +18 -48
  282. package/es/components/Select/Select.styles.js.map +1 -1
  283. package/es/components/Select/Select.styles_1p5c9p3.css +2 -0
  284. package/es/components/Select/Select.tokens.js +123 -78
  285. package/es/components/Select/Select.tokens.js.map +1 -1
  286. package/es/components/Select/hooks/useKeyboardNavigation.js +19 -73
  287. package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  288. package/es/components/Select/hooks/usePathMaps.js +4 -1
  289. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  290. package/es/components/Select/ui/Inner/Inner.css +83 -34
  291. package/es/components/Select/ui/Inner/Inner.js +10 -10
  292. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  293. package/es/components/Select/ui/Inner/ui/Item/Item.css +83 -34
  294. package/es/components/Select/ui/Inner/ui/Item/Item.js +22 -14
  295. package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  296. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js +33 -50
  297. package/es/components/Select/ui/Inner/ui/Item/Item.styles.js.map +1 -1
  298. package/es/components/Select/ui/Inner/ui/Item/Item.styles_1x4bzlm.css +9 -0
  299. package/es/components/Select/ui/Target/Target.css +58 -17
  300. package/es/components/Select/ui/Target/Target.js +35 -17
  301. package/es/components/Select/ui/Target/Target.js.map +1 -1
  302. package/es/components/Select/ui/Target/ui/Button/Button.css +5 -5
  303. package/es/components/Select/ui/Target/ui/Button/Button.js +11 -15
  304. package/es/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  305. package/es/components/Select/ui/Target/ui/Button/Button.styles.js +1 -1
  306. package/es/components/Select/ui/Target/ui/Button/Button.styles.js.map +1 -1
  307. package/es/components/Select/ui/Target/ui/Button/Button.styles_10g64me.css +5 -0
  308. package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +53 -38
  309. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  310. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  311. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +39 -95
  312. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  313. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles_q4kc1p.css +3 -0
  314. package/es/components/Select/utils/getFallbackPlacements.js +11 -0
  315. package/es/components/Select/utils/getFallbackPlacements.js.map +1 -0
  316. package/es/components/Select/utils/getItemId.js +6 -0
  317. package/es/components/Select/utils/getItemId.js.map +1 -0
  318. package/es/components/Select/utils/getPlacement.js +9 -0
  319. package/es/components/Select/utils/getPlacement.js.map +1 -0
  320. package/es/components/Select/utils/getView.js +2 -2
  321. package/es/components/Select/utils/getView.js.map +1 -1
  322. package/es/components/Slider/Slider.css +21 -22
  323. package/es/components/Slider/components/Double/Double.css +21 -22
  324. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +21 -22
  325. package/es/components/Switch/Switch.css +7 -11
  326. package/es/components/Switch/Switch.js +8 -17
  327. package/es/components/Switch/Switch.js.map +1 -1
  328. package/es/components/Switch/Switch.styles.js +5 -15
  329. package/es/components/Switch/Switch.styles.js.map +1 -1
  330. package/es/components/Switch/Switch.styles_1kk0qzz.css +4 -0
  331. package/es/components/Switch/Switch.tokens.js +0 -11
  332. package/es/components/Switch/Switch.tokens.js.map +1 -1
  333. package/es/components/Switch/_focused/base.js +1 -1
  334. package/es/components/Switch/_focused/{base_sz3n0x.css → base_j4murk.css} +1 -1
  335. package/es/components/Switch/_size/base.js +1 -1
  336. package/es/components/Switch/_size/base.js.map +1 -1
  337. package/es/components/Switch/_size/base_1rjzpi4.css +1 -0
  338. package/es/components/Switch/_view/base.js +1 -1
  339. package/es/components/Switch/_view/base.js.map +1 -1
  340. package/es/components/Switch/_view/base_1mtyz12.css +1 -0
  341. package/es/components/TextField/TextField.js +11 -2
  342. package/es/components/TextField/TextField.js.map +1 -1
  343. package/es/components/TextField/TextField.styles.js +14 -22
  344. package/es/components/TextField/TextField.styles.js.map +1 -1
  345. package/{cjs/components/TextField/TextField.styles_grgg7q.css → es/components/TextField/TextField.styles_j7dqpn.css} +6 -7
  346. package/es/components/TextField/TextField.tokens.js +2 -1
  347. package/es/components/TextField/TextField.tokens.js.map +1 -1
  348. package/es/components/TextField/ui/Hint/Hint.css +20 -21
  349. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  350. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -1
  351. package/es/components/TextField/variations/_clear/base.js +1 -1
  352. package/es/components/TextField/variations/_clear/{base_1i91sjp.css → base_1396md2.css} +1 -1
  353. package/es/components/TextField/variations/_label-placement/base.js +1 -1
  354. package/es/components/TextField/variations/_label-placement/base_gttvto.css +1 -0
  355. package/es/components/TextField/variations/_read-only/base.js +1 -1
  356. package/es/components/TextField/variations/_read-only/{base_17ypmu7.css → base_1jvcf9a.css} +1 -1
  357. package/es/components/TextField/variations/_size/base.js +1 -1
  358. package/es/components/TextField/variations/_size/{base_1xdmaqh.css → base_1tei47x.css} +1 -1
  359. package/es/components/TextField/variations/_view/base.js +1 -1
  360. package/es/components/TextField/variations/_view/{base_qhyte8.css → base_8ogww5.css} +1 -1
  361. package/es/index.css +56 -75
  362. package/es/index.js +1 -0
  363. package/es/index.js.map +1 -1
  364. package/es/utils/fixedForwardRef.js +8 -0
  365. package/es/utils/fixedForwardRef.js.map +1 -0
  366. package/es/utils/index.js.map +1 -1
  367. package/package.json +2 -2
  368. package/styled-components/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +8 -5
  369. package/styled-components/cjs/components/Cell/Cell.js +3 -1
  370. package/styled-components/cjs/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  371. package/styled-components/cjs/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  372. package/styled-components/cjs/components/Chip/Chip.js +3 -1
  373. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +0 -1
  374. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  375. package/styled-components/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +19 -5
  376. package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  377. package/styled-components/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  378. package/styled-components/cjs/components/Select/FloatingPopover.js +91 -0
  379. package/styled-components/cjs/components/Select/Select.js +177 -136
  380. package/styled-components/cjs/components/Select/Select.styles.js +12 -27
  381. package/styled-components/cjs/components/Select/Select.tokens.js +125 -60
  382. package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +19 -73
  383. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +4 -1
  384. package/styled-components/cjs/components/Select/reducers/index.js +0 -11
  385. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +9 -9
  386. package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.js +19 -12
  387. package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +20 -26
  388. package/styled-components/cjs/components/Select/ui/Target/Target.js +38 -18
  389. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.js +13 -16
  390. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.styles.js +3 -3
  391. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +88 -99
  392. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +23 -61
  393. package/styled-components/cjs/components/Select/utils/getFallbackPlacements.js +14 -0
  394. package/styled-components/cjs/components/Select/utils/getItemId.js +9 -0
  395. package/styled-components/cjs/components/Select/utils/getPlacement.js +12 -0
  396. package/styled-components/cjs/components/Select/utils/getView.js +2 -2
  397. package/styled-components/cjs/components/Select/utils/index.js +22 -1
  398. package/styled-components/cjs/components/Switch/Switch.js +8 -17
  399. package/styled-components/cjs/components/Switch/Switch.styles.js +5 -11
  400. package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +1 -37
  401. package/styled-components/cjs/components/Switch/Switch.tokens.js +0 -11
  402. package/styled-components/cjs/components/Switch/_size/base.js +1 -1
  403. package/styled-components/cjs/components/Switch/_view/base.js +1 -1
  404. package/styled-components/cjs/components/TextField/TextField.js +11 -2
  405. package/styled-components/cjs/components/TextField/TextField.styles.js +12 -15
  406. package/styled-components/cjs/components/TextField/TextField.tokens.js +2 -1
  407. package/styled-components/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  408. package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +1 -1
  409. package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.config.js +28 -20
  410. package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  411. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +2 -9
  412. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
  413. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +13 -15
  414. package/styled-components/cjs/examples/plasma_web/components/Select/Select.config.js +28 -20
  415. package/styled-components/cjs/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  416. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +2 -9
  417. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
  418. package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +12 -14
  419. package/styled-components/cjs/index.js +11 -0
  420. package/styled-components/cjs/types/DistributiveOmit.js +5 -0
  421. package/styled-components/cjs/types/DistributivePick.js +5 -0
  422. package/styled-components/cjs/utils/fixedForwardRef.js +11 -0
  423. package/styled-components/cjs/utils/index.js +9 -1
  424. package/styled-components/es/components/Breadcrumbs/Breadcrumbs.styles.js +8 -5
  425. package/styled-components/es/components/Cell/Cell.js +3 -1
  426. package/styled-components/es/components/Cell/ui/CellTextbox/CellTextbox.js +7 -1
  427. package/styled-components/es/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.js +4 -1
  428. package/styled-components/es/components/Chip/Chip.js +3 -1
  429. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +0 -1
  430. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.tokens.js +0 -1
  431. package/styled-components/es/components/Combobox/ComboboxNew/FloatingPopover.js +18 -4
  432. package/styled-components/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +1 -50
  433. package/styled-components/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.js +1 -1
  434. package/styled-components/es/components/Select/FloatingPopover.js +84 -0
  435. package/styled-components/es/components/Select/Select.js +182 -141
  436. package/styled-components/es/components/Select/Select.styles.js +11 -26
  437. package/styled-components/es/components/Select/Select.tokens.js +125 -60
  438. package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +18 -72
  439. package/styled-components/es/components/Select/hooks/usePathMaps.js +4 -1
  440. package/styled-components/es/components/Select/reducers/index.js +1 -2
  441. package/styled-components/es/components/Select/ui/Inner/Inner.js +10 -10
  442. package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.js +22 -15
  443. package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.styles.js +19 -25
  444. package/styled-components/es/components/Select/ui/Target/Target.js +35 -17
  445. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.js +11 -16
  446. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.styles.js +3 -3
  447. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +86 -99
  448. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +23 -61
  449. package/styled-components/es/components/Select/utils/getFallbackPlacements.js +8 -0
  450. package/styled-components/es/components/Select/utils/getItemId.js +3 -0
  451. package/styled-components/es/components/Select/utils/getPlacement.js +6 -0
  452. package/styled-components/es/components/Select/utils/getView.js +2 -2
  453. package/styled-components/es/components/Select/utils/index.js +4 -1
  454. package/styled-components/es/components/Switch/Switch.js +4 -13
  455. package/styled-components/es/components/Switch/Switch.styles.js +4 -10
  456. package/styled-components/es/components/Switch/Switch.template-doc.mdx +1 -37
  457. package/styled-components/es/components/Switch/Switch.tokens.js +0 -11
  458. package/styled-components/es/components/Switch/_size/base.js +2 -2
  459. package/styled-components/es/components/Switch/_view/base.js +2 -2
  460. package/styled-components/es/components/TextField/TextField.js +11 -2
  461. package/styled-components/es/components/TextField/TextField.styles.js +12 -15
  462. package/styled-components/es/components/TextField/TextField.tokens.js +2 -1
  463. package/styled-components/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +7 -1
  464. package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +1 -1
  465. package/styled-components/es/examples/plasma_b2c/components/Select/Select.config.js +29 -21
  466. package/styled-components/es/examples/plasma_b2c/components/Select/Select.stories.tsx +47 -40
  467. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +2 -9
  468. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +1 -7
  469. package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +13 -15
  470. package/styled-components/es/examples/plasma_web/components/Select/Select.config.js +29 -21
  471. package/styled-components/es/examples/plasma_web/components/Select/Select.stories.tsx +47 -40
  472. package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +2 -9
  473. package/styled-components/es/examples/plasma_web/components/Switch/Switch.stories.tsx +1 -14
  474. package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +12 -14
  475. package/styled-components/es/index.js +1 -0
  476. package/styled-components/es/types/DistributiveOmit.js +1 -0
  477. package/styled-components/es/types/DistributivePick.js +1 -0
  478. package/styled-components/es/utils/fixedForwardRef.js +4 -0
  479. package/styled-components/es/utils/index.js +2 -1
  480. package/types/components/Attach/ui/Button/Button.styles.d.ts +2 -2
  481. package/types/components/Attach/ui/IconButton/IconButton.styles.d.ts +4 -4
  482. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +16 -16
  483. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  484. package/types/components/Breadcrumbs/Breadcrumbs.styles.d.ts.map +1 -1
  485. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.d.ts +2 -2
  486. package/types/components/Cell/Cell.d.ts.map +1 -1
  487. package/types/components/Cell/ui/CellTextbox/CellTextbox.d.ts.map +1 -1
  488. package/types/components/Cell/ui/CellTextboxTitle/CellTextboxTitle.d.ts.map +1 -1
  489. package/types/components/Chip/Chip.d.ts.map +1 -1
  490. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  491. package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts +0 -1
  492. package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts.map +1 -1
  493. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +1 -1
  494. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  495. package/types/components/Combobox/ComboboxNew/FloatingPopover.d.ts.map +1 -1
  496. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts +1 -3
  497. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts.map +1 -1
  498. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +16 -16
  499. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  500. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +16 -16
  501. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  502. package/types/components/EmptyState/EmptyState.styles.d.ts +2 -2
  503. package/types/components/Notification/Notification.styles.d.ts +2 -2
  504. package/types/components/NumberInput/ui/ActionButton/ActionButton.styles.d.ts +2 -2
  505. package/types/components/Pagination/Pagination.styles.d.ts +4 -4
  506. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +40 -40
  507. package/types/components/Panel/ui/PanelHeader/PanelHeader.styles.d.ts +2 -2
  508. package/types/components/Range/Range.styles.d.ts +16 -16
  509. package/types/components/Range/Range.styles.d.ts.map +1 -1
  510. package/types/components/Select/FloatingPopover.d.ts +5 -0
  511. package/types/components/Select/FloatingPopover.d.ts.map +1 -0
  512. package/types/components/Select/Select.d.ts +5 -11
  513. package/types/components/Select/Select.d.ts.map +1 -1
  514. package/types/components/Select/Select.styles.d.ts +0 -9
  515. package/types/components/Select/Select.styles.d.ts.map +1 -1
  516. package/types/components/Select/Select.tokens.d.ts +121 -58
  517. package/types/components/Select/Select.tokens.d.ts.map +1 -1
  518. package/types/components/Select/Select.types.d.ts +41 -20
  519. package/types/components/Select/Select.types.d.ts.map +1 -1
  520. package/types/components/Select/hooks/useKeyboardNavigation.d.ts +5 -11
  521. package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
  522. package/types/components/Select/hooks/usePathMaps.d.ts +2 -1
  523. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  524. package/types/components/Select/index.d.ts +1 -1
  525. package/types/components/Select/index.d.ts.map +1 -1
  526. package/types/components/Select/reducers/index.d.ts +0 -1
  527. package/types/components/Select/reducers/index.d.ts.map +1 -1
  528. package/types/components/Select/ui/Inner/Inner.d.ts.map +1 -1
  529. package/types/components/Select/ui/Inner/ui/Item/Item.d.ts.map +1 -1
  530. package/types/components/Select/ui/Inner/ui/Item/Item.styles.d.ts +32 -2
  531. package/types/components/Select/ui/Inner/ui/Item/Item.styles.d.ts.map +1 -1
  532. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts +9 -0
  533. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  534. package/types/components/Select/ui/Target/Target.d.ts +14 -2
  535. package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
  536. package/types/components/Select/ui/Target/Target.types.d.ts +10 -9
  537. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  538. package/types/components/Select/ui/Target/ui/Button/Button.d.ts +1 -1
  539. package/types/components/Select/ui/Target/ui/Button/Button.d.ts.map +1 -1
  540. package/types/components/Select/ui/Target/ui/Button/Button.styles.d.ts +2 -2
  541. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts +1 -1
  542. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts.map +1 -1
  543. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts +1 -1
  544. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  545. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +628 -60
  546. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  547. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -4
  548. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
  549. package/types/components/Select/utils/getFallbackPlacements.d.ts +4 -0
  550. package/types/components/Select/utils/getFallbackPlacements.d.ts.map +1 -0
  551. package/types/components/Select/utils/getItemId.d.ts +2 -0
  552. package/types/components/Select/utils/getItemId.d.ts.map +1 -0
  553. package/types/components/Select/utils/getPlacement.d.ts +4 -0
  554. package/types/components/Select/utils/getPlacement.d.ts.map +1 -0
  555. package/types/components/Select/utils/getView.d.ts +1 -1
  556. package/types/components/Select/utils/getView.d.ts.map +1 -1
  557. package/types/components/Select/utils/index.d.ts +3 -0
  558. package/types/components/Select/utils/index.d.ts.map +1 -1
  559. package/types/components/Slider/components/Double/Double.styles.d.ts +16 -16
  560. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  561. package/types/components/Switch/Switch.d.ts +0 -3
  562. package/types/components/Switch/Switch.d.ts.map +1 -1
  563. package/types/components/Switch/Switch.styles.d.ts +0 -2
  564. package/types/components/Switch/Switch.styles.d.ts.map +1 -1
  565. package/types/components/Switch/Switch.tokens.d.ts +0 -9
  566. package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
  567. package/types/components/Switch/Switch.types.d.ts +2 -10
  568. package/types/components/Switch/Switch.types.d.ts.map +1 -1
  569. package/types/components/Switch/_size/base.d.ts.map +1 -1
  570. package/types/components/Switch/_view/base.d.ts.map +1 -1
  571. package/types/components/TextField/TextField.d.ts.map +1 -1
  572. package/types/components/TextField/TextField.styles.d.ts +1 -3
  573. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  574. package/types/components/TextField/TextField.tokens.d.ts +1 -0
  575. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  576. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts +3 -1
  577. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts.map +1 -1
  578. package/types/components/Toast/Toast.styles.d.ts +2 -2
  579. package/types/components/Toast/utils.d.ts +2 -2
  580. package/types/examples/plasma_b2c/components/Attach/Attach.d.ts +8 -8
  581. package/types/examples/plasma_b2c/components/Button/Button.d.ts +2 -2
  582. package/types/examples/plasma_b2c/components/Combobox/Combobox.d.ts +24 -24
  583. package/types/examples/plasma_b2c/components/IconButton/IconButton.d.ts +2 -2
  584. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +16 -16
  585. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -1
  586. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts +1 -1
  587. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts.map +1 -1
  588. package/types/examples/plasma_b2c/components/Select/Select.config.d.ts +15 -7
  589. package/types/examples/plasma_b2c/components/Select/Select.config.d.ts.map +1 -1
  590. package/types/examples/plasma_b2c/components/Select/Select.d.ts +53 -46
  591. package/types/examples/plasma_b2c/components/Select/Select.d.ts.map +1 -1
  592. package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts +0 -7
  593. package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
  594. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts +0 -6
  595. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts.map +1 -1
  596. package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts +16 -16
  597. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +16 -16
  598. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  599. package/types/examples/plasma_web/components/Attach/Attach.d.ts +8 -8
  600. package/types/examples/plasma_web/components/Button/Button.d.ts +2 -2
  601. package/types/examples/plasma_web/components/Combobox/Combobox.d.ts +24 -24
  602. package/types/examples/plasma_web/components/IconButton/IconButton.d.ts +2 -2
  603. package/types/examples/plasma_web/components/Mask/Mask.d.ts +16 -16
  604. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -1
  605. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts +1 -1
  606. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts.map +1 -1
  607. package/types/examples/plasma_web/components/Select/Select.config.d.ts +15 -7
  608. package/types/examples/plasma_web/components/Select/Select.config.d.ts.map +1 -1
  609. package/types/examples/plasma_web/components/Select/Select.d.ts +53 -46
  610. package/types/examples/plasma_web/components/Select/Select.d.ts.map +1 -1
  611. package/types/examples/plasma_web/components/Switch/Switch.config.d.ts +0 -7
  612. package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
  613. package/types/examples/plasma_web/components/Switch/Switch.d.ts +0 -6
  614. package/types/examples/plasma_web/components/Switch/Switch.d.ts.map +1 -1
  615. package/types/examples/plasma_web/components/TextArea/TextArea.d.ts +16 -16
  616. package/types/examples/plasma_web/components/TextField/TextField.d.ts +16 -16
  617. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  618. package/types/index.d.ts +1 -0
  619. package/types/index.d.ts.map +1 -1
  620. package/types/types/DistributiveOmit.d.ts +2 -0
  621. package/types/types/DistributiveOmit.d.ts.map +1 -0
  622. package/types/types/DistributivePick.d.ts +2 -0
  623. package/types/types/DistributivePick.d.ts.map +1 -0
  624. package/types/types/index.d.ts +2 -0
  625. package/types/types/index.d.ts.map +1 -1
  626. package/types/utils/fixedForwardRef.d.ts +3 -0
  627. package/types/utils/fixedForwardRef.d.ts.map +1 -0
  628. package/types/utils/index.d.ts +1 -0
  629. package/types/utils/index.d.ts.map +1 -1
  630. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_1fesyfv.css +0 -3
  631. package/cjs/components/Select/Select.styles_768h42.css +0 -5
  632. package/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -39
  633. package/cjs/components/Select/reducers/focusedChipIndexReducer.js.map +0 -1
  634. package/cjs/components/Select/ui/Inner/ui/Item/Item.styles_8oe5oy.css +0 -9
  635. package/cjs/components/Select/ui/Target/ui/Button/Button.styles_lxxm4p.css +0 -5
  636. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles_1damf5p.css +0 -12
  637. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.css +0 -21
  638. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -36
  639. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js.map +0 -1
  640. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -22
  641. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +0 -1
  642. package/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles_1a752pa.css +0 -1
  643. package/cjs/components/Select/variations/_size/base.js +0 -9
  644. package/cjs/components/Select/variations/_size/base.js.map +0 -1
  645. package/cjs/components/Select/variations/_size/base_x642ct.css +0 -1
  646. package/cjs/components/Select/variations/_view/base.js +0 -9
  647. package/cjs/components/Select/variations/_view/base.js.map +0 -1
  648. package/cjs/components/Select/variations/_view/base_x642ct.css +0 -1
  649. package/cjs/components/Switch/Switch.styles_bei7bh.css +0 -6
  650. package/cjs/components/Switch/_size/base_1tcl212.css +0 -1
  651. package/cjs/components/Switch/_toggleSize/base.js +0 -9
  652. package/cjs/components/Switch/_toggleSize/base.js.map +0 -1
  653. package/cjs/components/Switch/_toggleSize/base_6i0904.css +0 -1
  654. package/cjs/components/Switch/_view/base_yxkf3s.css +0 -1
  655. package/cjs/components/TextField/variations/_label-placement/base_3domm.css +0 -1
  656. package/emotion/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -38
  657. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -37
  658. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -22
  659. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -16
  660. package/emotion/cjs/components/Select/variations/_size/base.js +0 -8
  661. package/emotion/cjs/components/Select/variations/_size/tokens.json +0 -9
  662. package/emotion/cjs/components/Select/variations/_view/base.js +0 -8
  663. package/emotion/cjs/components/Select/variations/_view/tokens.json +0 -1
  664. package/emotion/cjs/components/Switch/_toggleSize/base.js +0 -10
  665. package/emotion/es/components/Select/reducers/focusedChipIndexReducer.js +0 -32
  666. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -28
  667. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -15
  668. package/emotion/es/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -1
  669. package/emotion/es/components/Select/variations/_size/base.js +0 -2
  670. package/emotion/es/components/Select/variations/_size/tokens.json +0 -9
  671. package/emotion/es/components/Select/variations/_view/base.js +0 -2
  672. package/emotion/es/components/Select/variations/_view/tokens.json +0 -1
  673. package/emotion/es/components/Switch/_toggleSize/base.js +0 -4
  674. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles_1fesyfv.css +0 -3
  675. package/es/components/Select/Select.styles_768h42.css +0 -5
  676. package/es/components/Select/reducers/focusedChipIndexReducer.js +0 -35
  677. package/es/components/Select/reducers/focusedChipIndexReducer.js.map +0 -1
  678. package/es/components/Select/ui/Inner/ui/Item/Item.styles_8oe5oy.css +0 -9
  679. package/es/components/Select/ui/Target/ui/Button/Button.styles_lxxm4p.css +0 -5
  680. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles_1damf5p.css +0 -12
  681. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.css +0 -21
  682. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -32
  683. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js.map +0 -1
  684. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -18
  685. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js.map +0 -1
  686. package/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles_1a752pa.css +0 -1
  687. package/es/components/Select/variations/_size/base.js +0 -5
  688. package/es/components/Select/variations/_size/base.js.map +0 -1
  689. package/es/components/Select/variations/_size/base_x642ct.css +0 -1
  690. package/es/components/Select/variations/_view/base.js +0 -5
  691. package/es/components/Select/variations/_view/base.js.map +0 -1
  692. package/es/components/Select/variations/_view/base_x642ct.css +0 -1
  693. package/es/components/Switch/Switch.styles_bei7bh.css +0 -6
  694. package/es/components/Switch/_size/base_1tcl212.css +0 -1
  695. package/es/components/Switch/_toggleSize/base.js +0 -5
  696. package/es/components/Switch/_toggleSize/base.js.map +0 -1
  697. package/es/components/Switch/_toggleSize/base_6i0904.css +0 -1
  698. package/es/components/Switch/_view/base_yxkf3s.css +0 -1
  699. package/es/components/TextField/variations/_label-placement/base_3domm.css +0 -1
  700. package/styled-components/cjs/components/Select/reducers/focusedChipIndexReducer.js +0 -38
  701. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -37
  702. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -21
  703. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -16
  704. package/styled-components/cjs/components/Select/variations/_size/base.js +0 -8
  705. package/styled-components/cjs/components/Select/variations/_size/tokens.json +0 -9
  706. package/styled-components/cjs/components/Select/variations/_view/base.js +0 -8
  707. package/styled-components/cjs/components/Select/variations/_view/tokens.json +0 -1
  708. package/styled-components/cjs/components/Switch/_toggleSize/base.js +0 -10
  709. package/styled-components/es/components/Select/reducers/focusedChipIndexReducer.js +0 -32
  710. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.js +0 -28
  711. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.js +0 -14
  712. package/styled-components/es/components/Select/ui/Target/ui/Textfield/ui/index.js +0 -1
  713. package/styled-components/es/components/Select/variations/_size/base.js +0 -2
  714. package/styled-components/es/components/Select/variations/_size/tokens.json +0 -9
  715. package/styled-components/es/components/Select/variations/_view/base.js +0 -2
  716. package/styled-components/es/components/Select/variations/_view/tokens.json +0 -1
  717. package/styled-components/es/components/Switch/_toggleSize/base.js +0 -4
  718. package/types/components/Select/reducers/focusedChipIndexReducer.d.ts +0 -11
  719. package/types/components/Select/reducers/focusedChipIndexReducer.d.ts.map +0 -1
  720. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.d.ts +0 -9
  721. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.d.ts.map +0 -1
  722. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.d.ts +0 -3
  723. package/types/components/Select/ui/Target/ui/Textfield/ui/Chip/Chip.styles.d.ts.map +0 -1
  724. package/types/components/Select/ui/Target/ui/Textfield/ui/index.d.ts +0 -2
  725. package/types/components/Select/ui/Target/ui/Textfield/ui/index.d.ts.map +0 -1
  726. package/types/components/Select/variations/_size/base.d.ts +0 -2
  727. package/types/components/Select/variations/_size/base.d.ts.map +0 -1
  728. package/types/components/Select/variations/_view/base.d.ts +0 -2
  729. package/types/components/Select/variations/_view/base.d.ts.map +0 -1
  730. package/types/components/Switch/_toggleSize/base.d.ts +0 -2
  731. package/types/components/Switch/_toggleSize/base.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
- var _excluded = ["value", "onChange", "target", "items", "placement", "label", "labelPlacement", "placeholder", "helperText", "disabled", "view", "size", "listOverflow", "listHeight", "listWidth", "contentLeft", "onScrollBottom", "chipView", "variant", "portal", "renderValue", "renderItem", "status", "onItemSelect", "separator", "closeAfterSelect"];
1
+ var _excluded = ["value", "onChange", "target", "items", "placement", "label", "labelPlacement", "placeholder", "helperText", "disabled", "view", "size", "listOverflow", "listHeight", "listWidth", "contentLeft", "onScrollBottom", "chipView", "variant", "portal", "renderValue", "renderItem", "status", "onItemSelect", "separator", "closeAfterSelect", "isTargetAmount"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
4
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -8,17 +8,17 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
8
8
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9
9
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
10
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
11
- import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect } from 'react';
12
- import { isEmpty, getPlacements } from '../../utils';
11
+ import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';
12
+ import { safeUseId } from '@salutejs/plasma-core';
13
+ import { isEmpty } from '../../utils';
13
14
  import { useOutsideClick } from '../../hooks';
14
- import { useKeyNavigation } from './hooks/useKeyboardNavigation';
15
+ import { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';
15
16
  import { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView, getInitialValue } from './utils';
16
17
  import { Inner, Target } from './ui';
17
- import { pathReducer, focusedPathReducer, focusedChipIndexReducer } from './reducers';
18
+ import { pathReducer, focusedPathReducer } from './reducers';
18
19
  import { usePathMaps } from './hooks/usePathMaps';
19
- import { StyledPopover, Ul, base, OuterLabel, HelperText } from './Select.styles';
20
- import { base as viewCSS } from './variations/_view/base';
21
- import { base as sizeCSS } from './variations/_size/base';
20
+ import { Ul, base } from './Select.styles';
21
+ import { FloatingPopover } from './FloatingPopover';
22
22
  export var Context = /*#__PURE__*/createContext({});
23
23
 
24
24
  /**
@@ -26,21 +26,21 @@ export var Context = /*#__PURE__*/createContext({});
26
26
  */
27
27
  export var selectRoot = function selectRoot(Root) {
28
28
  return /*#__PURE__*/forwardRef(function (props, ref) {
29
+ var _getItemByFocused;
29
30
  var outerValue = props.value,
30
31
  outerOnChange = props.onChange,
31
32
  _props$target = props.target,
32
- target = _props$target === void 0 ? 'textfield-like' : _props$target,
33
+ _target = _props$target === void 0 ? 'textfield-like' : _props$target,
33
34
  items = props.items,
34
35
  _props$placement = props.placement,
35
36
  placement = _props$placement === void 0 ? 'bottom' : _props$placement,
36
37
  label = props.label,
37
- _props$labelPlacement = props.labelPlacement,
38
- labelPlacement = _props$labelPlacement === void 0 ? 'outer' : _props$labelPlacement,
38
+ labelPlacement = props.labelPlacement,
39
39
  placeholder = props.placeholder,
40
40
  helperText = props.helperText,
41
41
  _props$disabled = props.disabled,
42
42
  disabled = _props$disabled === void 0 ? false : _props$disabled,
43
- view = props.view,
43
+ outerView = props.view,
44
44
  size = props.size,
45
45
  listOverflow = props.listOverflow,
46
46
  listHeight = props.listHeight,
@@ -57,22 +57,28 @@ export var selectRoot = function selectRoot(Root) {
57
57
  onItemSelect = props.onItemSelect,
58
58
  separator = props.separator,
59
59
  outerCloseAfterSelect = props.closeAfterSelect,
60
+ isTargetAmount = props.isTargetAmount,
60
61
  rest = _objectWithoutProperties(props, _excluded);
61
62
  var transformedItems = useMemo(function () {
62
63
  return initialItemsTransform(items || []);
63
64
  }, [items]);
65
+
66
+ // Создаем структуры для быстрой работы с деревом
64
67
  var _usePathMaps = usePathMaps(transformedItems),
65
- _usePathMaps2 = _slicedToArray(_usePathMaps, 4),
68
+ _usePathMaps2 = _slicedToArray(_usePathMaps, 5),
66
69
  pathMap = _usePathMaps2[0],
67
70
  focusedToValueMap = _usePathMaps2[1],
68
71
  valueToCheckedMap = _usePathMaps2[2],
69
- valueToItemMap = _usePathMaps2[3];
70
- var value = getInitialValue(outerValue, valueToItemMap);
71
- var onChange = function onChange(e) {
72
- if (outerOnChange) {
73
- outerOnChange(e);
74
- }
75
- };
72
+ valueToItemMap = _usePathMaps2[3],
73
+ labelToItemMap = _usePathMaps2[4];
74
+ var _useState = useState(props.multiselect ? [] : ''),
75
+ _useState2 = _slicedToArray(_useState, 2),
76
+ internalValue = _useState2[0],
77
+ setInternalValue = _useState2[1];
78
+ var value = outerValue !== null && outerValue !== undefined ? getInitialValue(outerValue, valueToItemMap) : internalValue;
79
+ var floatingPopoverRef = useRef(null);
80
+
81
+ // Состояния дерева элементов
76
82
  var _useReducer = useReducer(pathReducer, []),
77
83
  _useReducer2 = _slicedToArray(_useReducer, 2),
78
84
  path = _useReducer2[0],
@@ -81,23 +87,53 @@ export var selectRoot = function selectRoot(Root) {
81
87
  _useReducer4 = _slicedToArray(_useReducer3, 2),
82
88
  focusedPath = _useReducer4[0],
83
89
  dispatchFocusedPath = _useReducer4[1];
84
- var _useReducer5 = useReducer(focusedChipIndexReducer, null),
85
- _useReducer6 = _slicedToArray(_useReducer5, 2),
86
- focusedChipIndex = _useReducer6[0],
87
- dispatchFocusedChipIndex = _useReducer6[1];
88
- var _useState = useState(valueToCheckedMap),
89
- _useState2 = _slicedToArray(_useState, 2),
90
- checked = _useState2[0],
91
- setChecked = _useState2[1];
90
+ var _useState3 = useState(valueToCheckedMap),
91
+ _useState4 = _slicedToArray(_useState3, 2),
92
+ checked = _useState4[0],
93
+ setChecked = _useState4[1];
94
+ var isCurrentListOpen = Boolean(path[0]);
95
+ var activeDescendantItemValue = ((_getItemByFocused = getItemByFocused(focusedPath, focusedToValueMap)) === null || _getItemByFocused === void 0 ? void 0 : _getItemByFocused.value.toString()) || '';
92
96
  var closeAfterSelect = outerCloseAfterSelect !== null && outerCloseAfterSelect !== void 0 ? outerCloseAfterSelect : !props.multiselect;
97
+ var treeId = safeUseId();
98
+ var view = _target === 'textfield-like' && disabled ? 'default' : getView(status, outerView);
93
99
  var targetRef = useOutsideClick(function () {
94
- if (focusedChipIndex != null) {
95
- dispatchFocusedChipIndex({
100
+ if (!isCurrentListOpen) {
101
+ return;
102
+ }
103
+ dispatchPath({
104
+ type: 'reset'
105
+ });
106
+ dispatchFocusedPath({
107
+ type: 'reset'
108
+ });
109
+ }, floatingPopoverRef);
110
+ var onChange = function onChange(newValue) {
111
+ if (outerOnChange) {
112
+ outerOnChange(newValue);
113
+ }
114
+ setInternalValue(newValue);
115
+ };
116
+ var handleClickArrow = function handleClickArrow() {
117
+ if (disabled) {
118
+ return;
119
+ }
120
+ if (isCurrentListOpen) {
121
+ dispatchPath({
96
122
  type: 'reset'
97
123
  });
124
+ } else {
125
+ dispatchPath({
126
+ type: 'opened_first_level'
127
+ });
128
+ }
129
+ dispatchFocusedPath({
130
+ type: 'reset'
131
+ });
132
+ };
133
+ var handleListToggle = function handleListToggle(opened) {
134
+ if (disabled) {
135
+ return;
98
136
  }
99
- });
100
- var handleToggle = function handleToggle(opened) {
101
137
  if (opened) {
102
138
  dispatchPath({
103
139
  type: 'opened_first_level'
@@ -109,39 +145,37 @@ export var selectRoot = function selectRoot(Root) {
109
145
  dispatchPath({
110
146
  type: 'reset'
111
147
  });
112
- dispatchFocusedChipIndex({
113
- type: 'reset'
114
- });
115
148
  }
116
149
  };
117
150
  var handleCheckboxChange = function handleCheckboxChange(item) {
118
- if (props.multiselect) {
119
- var checkedCopy = new Map(checked);
120
- if (!checkedCopy.get(item.value)) {
121
- checkedCopy.set(item.value, true);
122
- updateDescendants(item, checkedCopy, true);
123
- } else {
124
- checkedCopy.set(item.value, false);
125
- updateDescendants(item, checkedCopy, false);
151
+ if (!props.multiselect) {
152
+ return;
153
+ }
154
+ var checkedCopy = new Map(checked);
155
+ if (!checkedCopy.get(item.value)) {
156
+ checkedCopy.set(item.value, true);
157
+ updateDescendants(item, checkedCopy, true);
158
+ } else {
159
+ checkedCopy.set(item.value, false);
160
+ updateDescendants(item, checkedCopy, false);
161
+ }
162
+ updateAncestors(item, checkedCopy);
163
+ var newValues = [];
164
+ valueToItemMap.forEach(function (item, key) {
165
+ if (checkedCopy.get(key)) {
166
+ newValues.push(item.value);
126
167
  }
127
- updateAncestors(item, checkedCopy);
128
- var newValues = [];
129
- valueToItemMap.forEach(function (item, key) {
130
- if (checkedCopy.get(key)) {
131
- newValues.push(item.value);
132
- }
168
+ });
169
+ if (closeAfterSelect) {
170
+ dispatchPath({
171
+ type: 'reset'
133
172
  });
134
- if (closeAfterSelect) {
135
- dispatchPath({
136
- type: 'reset'
137
- });
138
- dispatchFocusedPath({
139
- type: 'reset'
140
- });
141
- }
142
- if (onChange) {
143
- onChange(newValues);
144
- }
173
+ dispatchFocusedPath({
174
+ type: 'reset'
175
+ });
176
+ }
177
+ if (onChange) {
178
+ onChange(newValues);
145
179
  }
146
180
  };
147
181
  var handleItemClick = function handleItemClick(item, e) {
@@ -150,29 +184,26 @@ export var selectRoot = function selectRoot(Root) {
150
184
  }
151
185
  if (props.multiselect) {
152
186
  handleCheckboxChange(item);
153
- } else {
154
- if (e) {
155
- e.stopPropagation();
156
- }
157
- var isCurrentChecked = checked.get(item.value);
158
- if (closeAfterSelect) {
159
- dispatchPath({
160
- type: 'reset'
161
- });
162
- dispatchFocusedPath({
163
- type: 'reset'
164
- });
165
- }
166
- if (onChange) {
167
- onChange(isCurrentChecked ? '' : item.value);
168
- }
169
- if (onItemSelect) {
170
- onItemSelect(item, e);
171
- }
187
+ return;
188
+ }
189
+ if (e) {
190
+ e.stopPropagation();
191
+ }
192
+ var isCurrentChecked = checked.get(item.value);
193
+ if (closeAfterSelect) {
194
+ dispatchPath({
195
+ type: 'reset'
196
+ });
197
+ dispatchFocusedPath({
198
+ type: 'reset'
199
+ });
200
+ }
201
+ if (onChange) {
202
+ onChange(isCurrentChecked ? '' : item.value);
203
+ }
204
+ if (onItemSelect) {
205
+ onItemSelect(item, e);
172
206
  }
173
- };
174
- var handleChipClick = function handleChipClick(currentValue) {
175
- handleCheckboxChange(valueToItemMap.get(currentValue));
176
207
  };
177
208
  var handlePressDown = function handlePressDown(item, e) {
178
209
  if (isEmpty(item.items)) {
@@ -189,25 +220,19 @@ export var selectRoot = function selectRoot(Root) {
189
220
  }
190
221
  };
191
222
  var _useKeyNavigation = useKeyNavigation({
192
- value: value,
193
223
  focusedPath: focusedPath,
194
224
  dispatchFocusedPath: dispatchFocusedPath,
195
225
  path: path,
196
226
  dispatchPath: dispatchPath,
197
227
  pathMap: pathMap,
198
228
  focusedToValueMap: focusedToValueMap,
199
- handleToggle: handleToggle,
200
- handlePressDown: handlePressDown,
201
- focusedChipIndex: focusedChipIndex,
202
- dispatchFocusedChipIndex: dispatchFocusedChipIndex,
203
- valueToItemMap: valueToItemMap,
204
- multiselect: props.multiselect,
205
- isTargetAmount: props.isTargetAmount
229
+ handleListToggle: handleListToggle,
230
+ handlePressDown: handlePressDown
206
231
  }),
207
232
  onKeyDown = _useKeyNavigation.onKeyDown;
208
- var isCurrentListOpen = Boolean(path[0]);
209
233
 
210
- // В данном эффекте мы следим за изменениями value и вносим коррективы в дерево чекбоксов.
234
+ // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.
235
+ // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.
211
236
  useLayoutEffect(function () {
212
237
  var checkedCopy = new Map(checked);
213
238
  checkedCopy.forEach(function (_, key) {
@@ -226,13 +251,18 @@ export var selectRoot = function selectRoot(Root) {
226
251
  }
227
252
  }
228
253
  setChecked(checkedCopy);
229
- }, [outerValue, items]);
254
+
255
+ // В deps мы кладем именно outerValue и internalValue, а не просто value.
256
+ // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.
257
+ // А переменную, содержащую сложные типы данных, нельзя помещать в deps.
258
+ }, [outerValue, internalValue, items]);
230
259
  return /*#__PURE__*/React.createElement(Root, _extends({
231
- ref: ref,
260
+ view: view,
232
261
  size: size,
233
- view: status ? getView(status) : view,
234
- chipView: chipView
235
- }, rest), label && labelPlacement === 'outer' && target !== 'button-like' && /*#__PURE__*/React.createElement(OuterLabel, null, label), /*#__PURE__*/React.createElement(Context.Provider, {
262
+ labelPlacement: labelPlacement,
263
+ chipView: chipView,
264
+ disabled: disabled
265
+ }, rest), /*#__PURE__*/React.createElement(Context.Provider, {
236
266
  value: {
237
267
  focusedPath: focusedPath,
238
268
  checked: checked,
@@ -242,46 +272,63 @@ export var selectRoot = function selectRoot(Root) {
242
272
  handleItemClick: handleItemClick,
243
273
  variant: variant,
244
274
  renderItem: renderItem,
245
- valueToItemMap: valueToItemMap
275
+ valueToItemMap: valueToItemMap,
276
+ treeId: treeId
246
277
  }
247
- }, /*#__PURE__*/React.createElement(StyledPopover, {
248
- ref: targetRef,
278
+ }, /*#__PURE__*/React.createElement(FloatingPopover, {
279
+ ref: floatingPopoverRef,
249
280
  opened: isCurrentListOpen,
250
- placement: getPlacements(placement),
251
- usePortal: Boolean(portal),
252
- frame: portal,
253
- onToggle: handleToggle,
254
- trigger: "click",
255
- target: /*#__PURE__*/React.createElement(Target, {
256
- opened: isCurrentListOpen,
257
- value: value,
258
- valueToItemMap: valueToItemMap,
259
- focusedPath: focusedPath,
260
- focusedToValueMap: focusedToValueMap,
261
- onChipClick: handleChipClick,
262
- label: label,
263
- placeholder: placeholder,
264
- onKeyDown: onKeyDown,
265
- focusedChipIndex: focusedChipIndex,
266
- labelPlacement: labelPlacement,
267
- selectProps: props,
268
- size: size,
269
- contentLeft: contentLeft,
270
- disabled: disabled,
271
- renderValue: renderValue
272
- }),
273
- preventOverflow: false,
274
- closeOnOverlayClick: true,
275
- listWidth: listWidth
276
- }, items && /*#__PURE__*/React.createElement(Root, _extends({
277
- size: size
281
+ onToggle: function onToggle(opened) {
282
+ return opened && handleListToggle(true);
283
+ },
284
+ placement: placement,
285
+ portal: portal,
286
+ listWidth: listWidth,
287
+ target: function target(referenceRef) {
288
+ return /*#__PURE__*/React.createElement(Target, {
289
+ ref: ref,
290
+ target: _target,
291
+ value: value,
292
+ opened: isCurrentListOpen,
293
+ valueToItemMap: valueToItemMap,
294
+ label: label,
295
+ placeholder: placeholder,
296
+ onKeyDown: onKeyDown,
297
+ labelPlacement: labelPlacement,
298
+ size: size,
299
+ contentLeft: contentLeft,
300
+ disabled: disabled,
301
+ renderValue: renderValue,
302
+ selectProps: props,
303
+ inputWrapperRef: referenceRef,
304
+ multiselect: props.multiselect,
305
+ view: view,
306
+ handleClickArrow: handleClickArrow,
307
+ helperText: helperText,
308
+ treeId: treeId,
309
+ activeDescendantItemValue: activeDescendantItemValue,
310
+ isTargetAmount: isTargetAmount,
311
+ onChange: onChange,
312
+ labelToItemMap: labelToItemMap,
313
+ chipView: chipView,
314
+ separator: separator
315
+ });
316
+ }
317
+ }, /*#__PURE__*/React.createElement(Root, _extends({
318
+ view: view,
319
+ size: size,
320
+ labelPlacement: labelPlacement,
321
+ chipView: chipView,
322
+ disabled: disabled
278
323
  }, rest), /*#__PURE__*/React.createElement(Ul, {
279
324
  role: "tree",
280
- id: "tree_level_1",
325
+ id: "".concat(treeId, "_tree_level_1"),
326
+ "aria-multiselectable": Boolean(props.multiselect),
281
327
  listHeight: listHeight,
282
328
  listOverflow: listOverflow,
283
329
  onScroll: handleScroll,
284
- listWidth: listWidth
330
+ listWidth: listWidth,
331
+ ref: targetRef
285
332
  }, transformedItems.map(function (item, index) {
286
333
  return /*#__PURE__*/React.createElement(Inner, {
287
334
  key: "".concat(index, "/0"),
@@ -292,7 +339,7 @@ export var selectRoot = function selectRoot(Root) {
292
339
  index: index,
293
340
  listWidth: listWidth
294
341
  });
295
- }))))), helperText && target === 'textfield-like' && /*#__PURE__*/React.createElement(HelperText, null, helperText));
342
+ }))))));
296
343
  });
297
344
  };
298
345
  export var selectConfig = {
@@ -300,17 +347,11 @@ export var selectConfig = {
300
347
  tag: 'div',
301
348
  layout: selectRoot,
302
349
  base: base,
303
- variations: {
304
- view: {
305
- css: viewCSS
306
- },
307
- size: {
308
- css: sizeCSS
309
- }
310
- },
350
+ variations: {},
311
351
  defaults: {
312
352
  view: 'default',
313
- chipView: 'default',
314
- size: 'm'
353
+ size: 'm',
354
+ labelPlacement: 'outer',
355
+ chipView: 'default'
315
356
  }
316
357
  };
@@ -1,35 +1,20 @@
1
1
  import styled from 'styled-components';
2
2
  import { css } from 'styled-components';
3
- import { component } from '../../engines';
4
- import { popoverClasses, popoverConfig } from '../Popover';
5
3
  import { getCorrectHeight } from './utils';
6
4
  import { tokens, constants } from './Select.tokens';
7
- var Popover = /*#__PURE__*/component(popoverConfig);
8
- export var StyledPopover = /*#__PURE__*/styled(Popover).withConfig({
5
+ export var Ul = /*#__PURE__*/styled.ul.withConfig({
9
6
  componentId: "plasma-new-hope__sc-le54jv-0"
10
- })([".", "{width:", ";}.", "{width:100%;}"], /*#__PURE__*/String(popoverClasses.root), function (_ref) {
7
+ })(["box-sizing:border-box;background:var(", ");box-shadow:", ",inset 0 0 0 var(", ",0rem) var(", ",transparent);border-radius:var(", ");width:", ";height:", ";overflow:", ";margin:", ";padding:calc(var(", ") + var(", ",0rem)) 0;"], constants.background, constants.boxShadow, tokens.dropdownBorderWidth, tokens.dropdownBorderColor, tokens.borderRadius, function (_ref) {
11
8
  var listWidth = _ref.listWidth;
12
9
  return listWidth || '100%';
13
- }, /*#__PURE__*/String(popoverClasses.target));
14
- export var Ul = /*#__PURE__*/styled.ul.withConfig({
15
- componentId: "plasma-new-hope__sc-le54jv-1"
16
- })(["box-sizing:border-box;background:var(", ");box-shadow:", ";border-radius:var(", ");width:", ";height:", ";overflow:", ";border:var(", ") solid var(", ");margin:", ";padding:var(", ");"], constants.background, constants.boxShadow, tokens.borderRadius, function (_ref2) {
17
- var listWidth = _ref2.listWidth;
18
- return listWidth || '100%';
19
- }, function (_ref3) {
20
- var listHeight = _ref3.listHeight;
10
+ }, function (_ref2) {
11
+ var listHeight = _ref2.listHeight;
21
12
  return listHeight ? getCorrectHeight(listHeight) : 'auto';
22
- }, function (_ref4) {
23
- var listOverflow = _ref4.listOverflow;
13
+ }, function (_ref3) {
14
+ var listOverflow = _ref3.listOverflow;
24
15
  return listOverflow || 'initial';
25
- }, tokens.popoverBorderWidth, tokens.popoverBorderColor, function (_ref5) {
26
- var isInnerUl = _ref5.isInnerUl;
27
- return isInnerUl ? "calc(var(".concat(tokens.padding, ") * -1) 0 0 var(").concat(tokens.padding, ")") : 0;
28
- }, tokens.padding);
29
- export var base = /*#__PURE__*/css([".", ",.", "{display:block;}"], popoverClasses.wrapper, popoverClasses.target);
30
- export var OuterLabel = /*#__PURE__*/styled.label.withConfig({
31
- componentId: "plasma-new-hope__sc-le54jv-2"
32
- })(["display:block;margin-bottom:var(", ");color:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.labelOffset, constants.textfieldOuterLabelColor, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelFontLetterSpacing, tokens.labelFontLineHeight);
33
- export var HelperText = /*#__PURE__*/styled.div.withConfig({
34
- componentId: "plasma-new-hope__sc-le54jv-3"
35
- })(["margin-top:var(", ");color:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.helperTextOffset, tokens.helperTextColor, tokens.helperTextFontFamily, tokens.helperTextFontSize, tokens.helperTextFontStyle, tokens.helperTextFontWeight, tokens.helperTextFontLetterSpacing, tokens.helperTextFontLineHeight);
16
+ }, function (_ref4) {
17
+ var isInnerUl = _ref4.isInnerUl;
18
+ return isInnerUl ? "calc(var(".concat(tokens.padding, ") * -1) 0 0 0") : 0;
19
+ }, tokens.padding, tokens.dropdownBorderWidth);
20
+ export var base = /*#__PURE__*/css([""]);