@salutejs/plasma-new-hope 0.132.0-canary.1368.10573194405.0 → 0.132.0-canary.1392.10561765387.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (432) hide show
  1. package/cjs/components/Button/Button.css +1 -1
  2. package/cjs/components/Button/Button.js +1 -2
  3. package/cjs/components/Button/Button.js.map +1 -1
  4. package/cjs/components/Button/Button.tokens.js +1 -3
  5. package/cjs/components/Button/Button.tokens.js.map +1 -1
  6. package/cjs/components/Button/variations/_view/base.js +1 -1
  7. package/cjs/components/Button/variations/_view/base.js.map +1 -1
  8. package/cjs/components/Button/variations/_view/base_x95x4p.css +1 -0
  9. package/cjs/components/ButtonGroup/ButtonGroup.css +1 -1
  10. package/cjs/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  11. package/cjs/components/ButtonGroup/ButtonGroup.tokens.js.map +1 -1
  12. package/cjs/components/ButtonGroup/variations/_view/base.js +1 -1
  13. package/cjs/components/ButtonGroup/variations/_view/base.js.map +1 -1
  14. package/cjs/components/ButtonGroup/variations/_view/base_1n9gznw.css +1 -0
  15. package/cjs/components/Calendar/CalendarBase/CalendarBase.css +2 -2
  16. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.css +2 -2
  17. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.css +2 -2
  18. package/cjs/components/Checkbox/Checkbox.css +7 -7
  19. package/cjs/components/Checkbox/Checkbox.styles.js +1 -1
  20. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  21. package/{es/components/Checkbox/Checkbox.styles_dmi26u.css → cjs/components/Checkbox/Checkbox.styles_1266095.css} +1 -1
  22. package/cjs/components/Checkbox/Checkbox.tokens.js +0 -1
  23. package/cjs/components/Checkbox/Checkbox.tokens.js.map +1 -1
  24. package/cjs/components/DatePicker/RangeDate/RangeDate.css +2 -2
  25. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
  26. package/cjs/components/DatePicker/SingleDate/SingleDate.css +2 -2
  27. package/cjs/components/Drawer/Drawer.css +1 -1
  28. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.css +1 -1
  29. package/cjs/components/EmptyState/EmptyState.css +1 -1
  30. package/cjs/components/IconButton/IconButton.css +2 -2
  31. package/cjs/components/IconButton/IconButton.styles.js +1 -1
  32. package/cjs/components/IconButton/IconButton.styles.js.map +1 -1
  33. package/cjs/components/IconButton/IconButton.styles_7v8g0e.css +1 -0
  34. package/cjs/components/IconButton/IconButton.tokens.js +0 -1
  35. package/cjs/components/IconButton/IconButton.tokens.js.map +1 -1
  36. package/cjs/components/Notification/Notification.css +1 -1
  37. package/cjs/components/Notification/NotificationsProvider.css +1 -1
  38. package/cjs/components/Pagination/Pagination.css +9 -9
  39. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +8 -8
  40. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.css +1 -1
  41. package/cjs/components/Radiobox/Radiobox.css +9 -9
  42. package/cjs/components/Radiobox/Radiobox.styles.js +1 -1
  43. package/cjs/components/Radiobox/Radiobox.styles.js.map +1 -1
  44. package/cjs/components/Radiobox/{Radiobox.styles_520asv.css → Radiobox.styles_1skfuon.css} +1 -1
  45. package/cjs/components/Radiobox/Radiobox.tokens.js +0 -1
  46. package/cjs/components/Radiobox/Radiobox.tokens.js.map +1 -1
  47. package/cjs/components/Segment/tokens.js +14 -1
  48. package/cjs/components/Segment/tokens.js.map +1 -1
  49. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
  50. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +160 -83
  51. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  52. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +37 -1
  53. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  54. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
  55. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +9 -0
  56. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
  57. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
  58. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
  59. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  60. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  61. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +31 -2
  62. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  63. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
  64. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  65. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  66. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
  67. package/cjs/components/Select/Select.css +8 -8
  68. package/cjs/components/Select/ui/Inner/Inner.css +8 -8
  69. package/cjs/components/Select/ui/Inner/ui/Item/Item.css +8 -8
  70. package/cjs/components/Select/ui/Target/Target.css +1 -1
  71. package/cjs/components/Select/ui/Target/ui/Button/Button.css +1 -1
  72. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +1 -1
  73. package/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  74. package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  75. package/cjs/components/Toast/Toast.css +1 -1
  76. package/cjs/components/Toast/ToastController.css +1 -1
  77. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js +22 -0
  78. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
  79. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js +22 -0
  80. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
  81. package/cjs/components/_Icon/Icons/IconDisclosureDown.js +23 -0
  82. package/cjs/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
  83. package/cjs/components/_Icon/Icons/IconDisclosureUp.js +23 -0
  84. package/cjs/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
  85. package/cjs/index.css +29 -19
  86. package/emotion/cjs/components/Button/Button.js +1 -2
  87. package/emotion/cjs/components/Button/Button.tokens.js +1 -3
  88. package/emotion/cjs/components/Button/variations/_view/base.js +1 -1
  89. package/emotion/cjs/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  90. package/emotion/cjs/components/ButtonGroup/variations/_view/base.js +1 -1
  91. package/emotion/cjs/components/Checkbox/Checkbox.styles.js +7 -7
  92. package/emotion/cjs/components/Checkbox/Checkbox.tokens.js +0 -1
  93. package/emotion/cjs/components/IconButton/IconButton.styles.js +2 -2
  94. package/emotion/cjs/components/IconButton/IconButton.tokens.js +0 -1
  95. package/emotion/cjs/components/Radiobox/Radiobox.styles.js +3 -3
  96. package/emotion/cjs/components/Radiobox/Radiobox.tokens.js +0 -1
  97. package/emotion/cjs/components/Segment/README.md +61 -0
  98. package/emotion/cjs/components/Segment/tokens.js +14 -1
  99. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
  100. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
  101. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
  102. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  103. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  104. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +28 -6
  105. package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  106. package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  107. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
  108. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
  109. package/emotion/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
  110. package/emotion/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
  111. package/emotion/cjs/components/_Icon/index.js +14 -0
  112. package/emotion/cjs/examples/plasma_b2c/components/Button/Button.config.js +24 -24
  113. package/emotion/cjs/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +28 -28
  114. package/emotion/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.config.js +12 -12
  115. package/emotion/cjs/examples/plasma_b2c/components/IconButton/IconButton.config.js +20 -20
  116. package/emotion/cjs/examples/plasma_b2c/components/Radiobox/Radiobox.config.js +12 -12
  117. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +13 -10
  118. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  119. package/emotion/cjs/examples/plasma_web/components/Button/Button.config.js +24 -24
  120. package/emotion/cjs/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +28 -28
  121. package/emotion/cjs/examples/plasma_web/components/Checkbox/Checkbox.config.js +12 -12
  122. package/emotion/cjs/examples/plasma_web/components/IconButton/IconButton.config.js +20 -20
  123. package/emotion/cjs/examples/plasma_web/components/Radiobox/Radiobox.config.js +12 -12
  124. package/emotion/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  125. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +15 -9
  126. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  127. package/emotion/cjs/examples/sds_engineer/components/Button/Button.config.js +24 -24
  128. package/emotion/cjs/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +28 -28
  129. package/emotion/cjs/examples/sds_engineer/components/Checkbox/Checkbox.config.js +12 -12
  130. package/emotion/cjs/examples/sds_engineer/components/Radiobox/Radiobox.config.js +12 -12
  131. package/emotion/es/components/Button/Button.js +1 -2
  132. package/emotion/es/components/Button/Button.tokens.js +1 -3
  133. package/emotion/es/components/Button/variations/_view/base.js +2 -2
  134. package/emotion/es/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  135. package/emotion/es/components/ButtonGroup/variations/_view/base.js +1 -1
  136. package/emotion/es/components/Checkbox/Checkbox.styles.js +7 -7
  137. package/emotion/es/components/Checkbox/Checkbox.tokens.js +0 -1
  138. package/emotion/es/components/IconButton/IconButton.styles.js +2 -2
  139. package/emotion/es/components/IconButton/IconButton.tokens.js +0 -1
  140. package/emotion/es/components/Radiobox/Radiobox.styles.js +3 -3
  141. package/emotion/es/components/Radiobox/Radiobox.tokens.js +0 -1
  142. package/emotion/es/components/Segment/README.md +61 -0
  143. package/emotion/es/components/Segment/tokens.js +14 -1
  144. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
  145. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
  146. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
  147. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  148. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  149. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +27 -5
  150. package/emotion/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  151. package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  152. package/emotion/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
  153. package/emotion/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
  154. package/emotion/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
  155. package/emotion/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
  156. package/emotion/es/components/_Icon/index.js +2 -0
  157. package/emotion/es/examples/plasma_b2c/components/Button/Button.config.js +24 -24
  158. package/emotion/es/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +28 -28
  159. package/emotion/es/examples/plasma_b2c/components/Checkbox/Checkbox.config.js +12 -12
  160. package/emotion/es/examples/plasma_b2c/components/IconButton/IconButton.config.js +20 -20
  161. package/emotion/es/examples/plasma_b2c/components/Radiobox/Radiobox.config.js +12 -12
  162. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +13 -10
  163. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  164. package/emotion/es/examples/plasma_web/components/Button/Button.config.js +24 -24
  165. package/emotion/es/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +28 -28
  166. package/emotion/es/examples/plasma_web/components/Checkbox/Checkbox.config.js +12 -12
  167. package/emotion/es/examples/plasma_web/components/IconButton/IconButton.config.js +20 -20
  168. package/emotion/es/examples/plasma_web/components/Radiobox/Radiobox.config.js +12 -12
  169. package/emotion/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  170. package/emotion/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +15 -9
  171. package/emotion/es/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  172. package/emotion/es/examples/sds_engineer/components/Button/Button.config.js +24 -24
  173. package/emotion/es/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +28 -28
  174. package/emotion/es/examples/sds_engineer/components/Checkbox/Checkbox.config.js +12 -12
  175. package/emotion/es/examples/sds_engineer/components/Radiobox/Radiobox.config.js +12 -12
  176. package/es/components/Button/Button.css +1 -1
  177. package/es/components/Button/Button.js +1 -2
  178. package/es/components/Button/Button.js.map +1 -1
  179. package/es/components/Button/Button.tokens.js +1 -3
  180. package/es/components/Button/Button.tokens.js.map +1 -1
  181. package/es/components/Button/variations/_view/base.js +1 -1
  182. package/es/components/Button/variations/_view/base.js.map +1 -1
  183. package/es/components/Button/variations/_view/base_x95x4p.css +1 -0
  184. package/es/components/ButtonGroup/ButtonGroup.css +1 -1
  185. package/es/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  186. package/es/components/ButtonGroup/ButtonGroup.tokens.js.map +1 -1
  187. package/es/components/ButtonGroup/variations/_view/base.js +1 -1
  188. package/es/components/ButtonGroup/variations/_view/base.js.map +1 -1
  189. package/es/components/ButtonGroup/variations/_view/base_1n9gznw.css +1 -0
  190. package/es/components/Calendar/CalendarBase/CalendarBase.css +2 -2
  191. package/es/components/Calendar/CalendarDouble/CalendarDouble.css +2 -2
  192. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.css +2 -2
  193. package/es/components/Checkbox/Checkbox.css +7 -7
  194. package/es/components/Checkbox/Checkbox.styles.js +1 -1
  195. package/es/components/Checkbox/Checkbox.styles.js.map +1 -1
  196. package/{cjs/components/Checkbox/Checkbox.styles_dmi26u.css → es/components/Checkbox/Checkbox.styles_1266095.css} +1 -1
  197. package/es/components/Checkbox/Checkbox.tokens.js +0 -1
  198. package/es/components/Checkbox/Checkbox.tokens.js.map +1 -1
  199. package/es/components/DatePicker/RangeDate/RangeDate.css +2 -2
  200. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -2
  201. package/es/components/DatePicker/SingleDate/SingleDate.css +2 -2
  202. package/es/components/Drawer/Drawer.css +1 -1
  203. package/es/components/Drawer/ui/DrawerContent/DrawerContent.css +1 -1
  204. package/es/components/EmptyState/EmptyState.css +1 -1
  205. package/es/components/IconButton/IconButton.css +2 -2
  206. package/es/components/IconButton/IconButton.styles.js +1 -1
  207. package/es/components/IconButton/IconButton.styles.js.map +1 -1
  208. package/es/components/IconButton/IconButton.styles_7v8g0e.css +1 -0
  209. package/es/components/IconButton/IconButton.tokens.js +0 -1
  210. package/es/components/IconButton/IconButton.tokens.js.map +1 -1
  211. package/es/components/Notification/Notification.css +1 -1
  212. package/es/components/Notification/NotificationsProvider.css +1 -1
  213. package/es/components/Pagination/Pagination.css +9 -9
  214. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +8 -8
  215. package/es/components/Panel/ui/PanelHeader/PanelHeader.css +1 -1
  216. package/es/components/Radiobox/Radiobox.css +9 -9
  217. package/es/components/Radiobox/Radiobox.styles.js +1 -1
  218. package/es/components/Radiobox/Radiobox.styles.js.map +1 -1
  219. package/es/components/Radiobox/{Radiobox.styles_520asv.css → Radiobox.styles_1skfuon.css} +1 -1
  220. package/es/components/Radiobox/Radiobox.tokens.js +0 -1
  221. package/es/components/Radiobox/Radiobox.tokens.js.map +1 -1
  222. package/es/components/Segment/tokens.js +14 -1
  223. package/es/components/Segment/tokens.js.map +1 -1
  224. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
  225. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +163 -87
  226. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  227. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +34 -2
  228. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  229. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
  230. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +5 -0
  231. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
  232. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
  233. package/es/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
  234. package/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  235. package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  236. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +30 -3
  237. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  238. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
  239. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  240. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  241. package/es/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
  242. package/es/components/Select/Select.css +8 -8
  243. package/es/components/Select/ui/Inner/Inner.css +8 -8
  244. package/es/components/Select/ui/Inner/ui/Item/Item.css +8 -8
  245. package/es/components/Select/ui/Target/Target.css +1 -1
  246. package/es/components/Select/ui/Target/ui/Button/Button.css +1 -1
  247. package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +1 -1
  248. package/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  249. package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  250. package/es/components/Toast/Toast.css +1 -1
  251. package/es/components/Toast/ToastController.css +1 -1
  252. package/es/components/_Icon/Icon.assets/DisclosureDown.js +18 -0
  253. package/es/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
  254. package/es/components/_Icon/Icon.assets/DisclosureUp.js +18 -0
  255. package/es/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
  256. package/es/components/_Icon/Icons/IconDisclosureDown.js +19 -0
  257. package/es/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
  258. package/es/components/_Icon/Icons/IconDisclosureUp.js +19 -0
  259. package/es/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
  260. package/es/index.css +29 -19
  261. package/package.json +2 -2
  262. package/styled-components/cjs/components/Button/Button.js +1 -2
  263. package/styled-components/cjs/components/Button/Button.tokens.js +1 -3
  264. package/styled-components/cjs/components/Button/variations/_view/base.js +1 -1
  265. package/styled-components/cjs/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  266. package/styled-components/cjs/components/ButtonGroup/variations/_view/base.js +1 -1
  267. package/styled-components/cjs/components/Checkbox/Checkbox.styles.js +1 -1
  268. package/styled-components/cjs/components/Checkbox/Checkbox.tokens.js +0 -1
  269. package/styled-components/cjs/components/IconButton/IconButton.styles.js +1 -1
  270. package/styled-components/cjs/components/IconButton/IconButton.tokens.js +0 -1
  271. package/styled-components/cjs/components/Radiobox/Radiobox.styles.js +1 -1
  272. package/styled-components/cjs/components/Radiobox/Radiobox.tokens.js +0 -1
  273. package/styled-components/cjs/components/Segment/README.md +61 -0
  274. package/styled-components/cjs/components/Segment/tokens.js +14 -1
  275. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
  276. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
  277. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
  278. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  279. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  280. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +23 -5
  281. package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  282. package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  283. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
  284. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
  285. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
  286. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
  287. package/styled-components/cjs/components/_Icon/index.js +14 -0
  288. package/styled-components/cjs/examples/plasma_b2c/components/Button/Button.config.js +10 -10
  289. package/styled-components/cjs/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +10 -10
  290. package/styled-components/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.config.js +8 -8
  291. package/styled-components/cjs/examples/plasma_b2c/components/IconButton/IconButton.config.js +10 -10
  292. package/styled-components/cjs/examples/plasma_b2c/components/Radiobox/Radiobox.config.js +8 -8
  293. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +7 -4
  294. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  295. package/styled-components/cjs/examples/plasma_web/components/Button/Button.config.js +10 -10
  296. package/styled-components/cjs/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +10 -10
  297. package/styled-components/cjs/examples/plasma_web/components/Checkbox/Checkbox.config.js +8 -8
  298. package/styled-components/cjs/examples/plasma_web/components/IconButton/IconButton.config.js +10 -10
  299. package/styled-components/cjs/examples/plasma_web/components/Radiobox/Radiobox.config.js +8 -8
  300. package/styled-components/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  301. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +10 -4
  302. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  303. package/styled-components/cjs/examples/sds_engineer/components/Button/Button.config.js +10 -10
  304. package/styled-components/cjs/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +10 -10
  305. package/styled-components/cjs/examples/sds_engineer/components/Checkbox/Checkbox.config.js +8 -8
  306. package/styled-components/cjs/examples/sds_engineer/components/Radiobox/Radiobox.config.js +8 -8
  307. package/styled-components/es/components/Button/Button.js +1 -2
  308. package/styled-components/es/components/Button/Button.tokens.js +1 -3
  309. package/styled-components/es/components/Button/variations/_view/base.js +2 -2
  310. package/styled-components/es/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  311. package/styled-components/es/components/ButtonGroup/variations/_view/base.js +1 -1
  312. package/styled-components/es/components/Checkbox/Checkbox.styles.js +1 -1
  313. package/styled-components/es/components/Checkbox/Checkbox.tokens.js +0 -1
  314. package/styled-components/es/components/IconButton/IconButton.styles.js +1 -1
  315. package/styled-components/es/components/IconButton/IconButton.tokens.js +0 -1
  316. package/styled-components/es/components/Radiobox/Radiobox.styles.js +1 -1
  317. package/styled-components/es/components/Radiobox/Radiobox.tokens.js +0 -1
  318. package/styled-components/es/components/Segment/README.md +61 -0
  319. package/styled-components/es/components/Segment/tokens.js +14 -1
  320. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
  321. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
  322. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
  323. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  324. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  325. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +22 -4
  326. package/styled-components/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  327. package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  328. package/styled-components/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
  329. package/styled-components/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
  330. package/styled-components/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
  331. package/styled-components/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
  332. package/styled-components/es/components/_Icon/index.js +2 -0
  333. package/styled-components/es/examples/plasma_b2c/components/Button/Button.config.js +10 -10
  334. package/styled-components/es/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +10 -10
  335. package/styled-components/es/examples/plasma_b2c/components/Checkbox/Checkbox.config.js +8 -8
  336. package/styled-components/es/examples/plasma_b2c/components/IconButton/IconButton.config.js +10 -10
  337. package/styled-components/es/examples/plasma_b2c/components/Radiobox/Radiobox.config.js +8 -8
  338. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +7 -4
  339. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  340. package/styled-components/es/examples/plasma_web/components/Button/Button.config.js +10 -10
  341. package/styled-components/es/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +10 -10
  342. package/styled-components/es/examples/plasma_web/components/Checkbox/Checkbox.config.js +8 -8
  343. package/styled-components/es/examples/plasma_web/components/IconButton/IconButton.config.js +10 -10
  344. package/styled-components/es/examples/plasma_web/components/Radiobox/Radiobox.config.js +8 -8
  345. package/styled-components/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  346. package/styled-components/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +10 -4
  347. package/styled-components/es/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  348. package/styled-components/es/examples/sds_engineer/components/Button/Button.config.js +10 -10
  349. package/styled-components/es/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +10 -10
  350. package/styled-components/es/examples/sds_engineer/components/Checkbox/Checkbox.config.js +8 -8
  351. package/styled-components/es/examples/sds_engineer/components/Radiobox/Radiobox.config.js +8 -8
  352. package/types/components/Button/Button.d.ts.map +1 -1
  353. package/types/components/Button/Button.tokens.d.ts +0 -2
  354. package/types/components/Button/Button.tokens.d.ts.map +1 -1
  355. package/types/components/Button/variations/_view/base.d.ts.map +1 -1
  356. package/types/components/ButtonGroup/ButtonGroup.tokens.d.ts +0 -1
  357. package/types/components/ButtonGroup/ButtonGroup.tokens.d.ts.map +1 -1
  358. package/types/components/ButtonGroup/variations/_view/base.d.ts.map +1 -1
  359. package/types/components/Checkbox/Checkbox.tokens.d.ts +0 -1
  360. package/types/components/Checkbox/Checkbox.tokens.d.ts.map +1 -1
  361. package/types/components/IconButton/IconButton.styles.d.ts.map +1 -1
  362. package/types/components/IconButton/IconButton.tokens.d.ts +0 -1
  363. package/types/components/IconButton/IconButton.tokens.d.ts.map +1 -1
  364. package/types/components/Radiobox/Radiobox.styles.d.ts.map +1 -1
  365. package/types/components/Radiobox/Radiobox.tokens.d.ts +0 -1
  366. package/types/components/Radiobox/Radiobox.tokens.d.ts.map +1 -1
  367. package/types/components/Segment/tokens.d.ts +13 -0
  368. package/types/components/Segment/tokens.d.ts.map +1 -1
  369. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +7 -0
  370. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
  371. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts +12 -0
  372. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts.map +1 -1
  373. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts +5 -1
  374. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts.map +1 -1
  375. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts +2 -0
  376. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts.map +1 -0
  377. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +4 -0
  378. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
  379. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts +9 -1
  380. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts.map +1 -1
  381. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts +8 -0
  382. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts.map +1 -1
  383. package/types/components/Segment/ui/SegmentItem/variations/_view/base.d.ts.map +1 -1
  384. package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
  385. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts +4 -0
  386. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts.map +1 -0
  387. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts +4 -0
  388. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts.map +1 -0
  389. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts +4 -0
  390. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts.map +1 -0
  391. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts +4 -0
  392. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts.map +1 -0
  393. package/types/components/_Icon/index.d.ts +2 -0
  394. package/types/components/_Icon/index.d.ts.map +1 -1
  395. package/types/examples/plasma_b2c/components/Button/Button.config.d.ts.map +1 -1
  396. package/types/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  397. package/types/examples/plasma_b2c/components/Checkbox/Checkbox.config.d.ts.map +1 -1
  398. package/types/examples/plasma_b2c/components/IconButton/IconButton.config.d.ts.map +1 -1
  399. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.config.d.ts.map +1 -1
  400. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts +6 -0
  401. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts.map +1 -1
  402. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts +3 -0
  403. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  404. package/types/examples/plasma_b2c/components/Segment/SegmentItem.config.d.ts.map +1 -1
  405. package/types/examples/plasma_web/components/Button/Button.config.d.ts.map +1 -1
  406. package/types/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  407. package/types/examples/plasma_web/components/Checkbox/Checkbox.config.d.ts.map +1 -1
  408. package/types/examples/plasma_web/components/IconButton/IconButton.config.d.ts.map +1 -1
  409. package/types/examples/plasma_web/components/Radiobox/Radiobox.config.d.ts.map +1 -1
  410. package/types/examples/plasma_web/components/Segment/Segment.d.ts +9 -0
  411. package/types/examples/plasma_web/components/Segment/Segment.d.ts.map +1 -1
  412. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts +6 -0
  413. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  414. package/types/examples/plasma_web/components/Segment/SegmentItem.config.d.ts.map +1 -1
  415. package/types/examples/sds_engineer/components/Button/Button.config.d.ts.map +1 -1
  416. package/types/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  417. package/types/examples/sds_engineer/components/Checkbox/Checkbox.config.d.ts.map +1 -1
  418. package/types/examples/sds_engineer/components/Radiobox/Radiobox.config.d.ts.map +1 -1
  419. package/types/examples/sds_engineer/components/Segment/Segment.d.ts +3 -0
  420. package/types/examples/sds_engineer/components/Segment/Segment.d.ts.map +1 -1
  421. package/cjs/components/Button/variations/_view/base_1x0spnh.css +0 -1
  422. package/cjs/components/ButtonGroup/variations/_view/base_1lhytnr.css +0 -1
  423. package/cjs/components/IconButton/IconButton.styles_sttslf.css +0 -1
  424. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
  425. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
  426. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
  427. package/es/components/Button/variations/_view/base_1x0spnh.css +0 -1
  428. package/es/components/ButtonGroup/variations/_view/base_1lhytnr.css +0 -1
  429. package/es/components/IconButton/IconButton.styles_sttslf.css +0 -1
  430. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
  431. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
  432. package/es/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
@@ -4,5 +4,5 @@ import { baseContent as buttonBase } from '../Button/Button.styles';
4
4
  import { tokens } from './IconButton.tokens';
5
5
 
6
6
  // Переопределние токенов из Button
7
- export var mappingOverride = /*#__PURE__*/"\n ".concat(buttonTokens.buttonPadding, ": 0;\n\n ").concat(buttonTokens.buttonColor, ": var(").concat(tokens.iconButtonColor, ");\n ").concat(buttonTokens.buttonBackgroundColor, ": var(").concat(tokens.iconButtonBackgroundColor, ");\n\n ").concat(buttonTokens.buttonColorHover, ": var(").concat(tokens.iconButtonColorHover, ");\n ").concat(buttonTokens.buttonBackgroundColorHover, ": var(").concat(tokens.iconButtonBackgroundColorHover, ");\n\n ").concat(buttonTokens.buttonColorActive, ": var(").concat(tokens.iconButtonColorActive, ");\n ").concat(buttonTokens.buttonBackgroundColorActive, ": var(").concat(tokens.iconButtonBackgroundColorActive, ");\n\n ").concat(buttonTokens.buttonLoadingBackgroundColor, ": var(").concat(tokens.iconButtonLoadingBackgroundColor, ");\n\n ").concat(buttonTokens.buttonFontFamily, ": var(").concat(tokens.iconButtonFontFamily, ");\n ").concat(buttonTokens.buttonFontSize, ": var(").concat(tokens.iconButtonFontSize, ");\n ").concat(buttonTokens.buttonFontStyle, ": var(").concat(tokens.iconButtonFontStyle, ");\n ").concat(buttonTokens.buttonFontWeight, ":var(").concat(tokens.iconButtonFontWeight, ");\n ").concat(buttonTokens.buttonLetterSpacing, ": var(").concat(tokens.iconButtonLetterSpacing, ");\n ").concat(buttonTokens.buttonLineHeight, ": var(").concat(tokens.iconButtonLineHeight, ");\n\n ").concat(buttonTokens.buttonWidth, ": var(").concat(tokens.iconButtonWidth, ");\n ").concat(buttonTokens.buttonHeight, ": var(").concat(tokens.iconButtonHeight, ");\n ").concat(buttonTokens.buttonRadius, ": var(").concat(tokens.iconButtonRadius, ");\n\n ").concat(buttonTokens.buttonDisabledOpacity, ": var(").concat(tokens.iconButtonDisabledOpacity, ");\n ").concat(buttonTokens.buttonFocusColor, ": var(").concat(tokens.iconButtonFocusColor, ");\n\n ").concat(buttonTokens.buttonSpinnerSize, ": var(").concat(tokens.iconButtonSpinnerSize, ");\n ").concat(buttonTokens.buttonSpinnerColor, ": var(").concat(tokens.iconButtonSpinnerColor, ");\n");
7
+ export var mappingOverride = /*#__PURE__*/"\n ".concat(buttonTokens.buttonPadding, ": 0;\n\n ").concat(buttonTokens.buttonColor, ": var(").concat(tokens.iconButtonColor, ");\n ").concat(buttonTokens.buttonBackgroundColor, ": var(").concat(tokens.iconButtonBackgroundColor, ");\n\n ").concat(buttonTokens.buttonColorHover, ": var(").concat(tokens.iconButtonColorHover, ");\n ").concat(buttonTokens.buttonBackgroundColorHover, ": var(").concat(tokens.iconButtonBackgroundColorHover, ");\n\n ").concat(buttonTokens.buttonColorActive, ": var(").concat(tokens.iconButtonColorActive, ");\n ").concat(buttonTokens.buttonBackgroundColorActive, ": var(").concat(tokens.iconButtonBackgroundColorActive, ");\n\n\n ").concat(buttonTokens.buttonFontFamily, ": var(").concat(tokens.iconButtonFontFamily, ");\n ").concat(buttonTokens.buttonFontSize, ": var(").concat(tokens.iconButtonFontSize, ");\n ").concat(buttonTokens.buttonFontStyle, ": var(").concat(tokens.iconButtonFontStyle, ");\n ").concat(buttonTokens.buttonFontWeight, ":var(").concat(tokens.iconButtonFontWeight, ");\n ").concat(buttonTokens.buttonLetterSpacing, ": var(").concat(tokens.iconButtonLetterSpacing, ");\n ").concat(buttonTokens.buttonLineHeight, ": var(").concat(tokens.iconButtonLineHeight, ");\n\n ").concat(buttonTokens.buttonWidth, ": var(").concat(tokens.iconButtonWidth, ");\n ").concat(buttonTokens.buttonHeight, ": var(").concat(tokens.iconButtonHeight, ");\n ").concat(buttonTokens.buttonRadius, ": var(").concat(tokens.iconButtonRadius, ");\n\n ").concat(buttonTokens.buttonDisabledOpacity, ": var(").concat(tokens.iconButtonDisabledOpacity, ");\n ").concat(buttonTokens.buttonFocusColor, ": var(").concat(tokens.iconButtonFocusColor, ");\n\n ").concat(buttonTokens.buttonSpinnerSize, ": var(").concat(tokens.iconButtonSpinnerSize, ");\n ").concat(buttonTokens.buttonSpinnerColor, ": var(").concat(tokens.iconButtonSpinnerColor, ");\n");
8
8
  export var base = /*#__PURE__*/css(["", ";", ";"], buttonBase, mappingOverride);
@@ -1,7 +1,6 @@
1
1
  export var tokens = {
2
2
  iconButtonColor: '--plasma-icon-button-color',
3
3
  iconButtonBackgroundColor: '--plasma-icon-button-background-color',
4
- iconButtonLoadingBackgroundColor: '--plasma-icon-button-loading-background-color',
5
4
  iconButtonColorHover: '--plasma-icon-button-color-hover',
6
5
  iconButtonBackgroundColorHover: '--plasma-icon-button-background-color-hover',
7
6
  iconButtonColorActive: '--plasma-icon-button-color-active',
@@ -5,7 +5,7 @@ import { applyEllipsis, applyNoUserSelect } from '../../mixins';
5
5
  import { classes, tokens } from './Radiobox.tokens';
6
6
 
7
7
  // NOTE: Необходимое переопределение токенов из компонента Checkbox т.к. используются его части
8
- var mappingOverride = /*#__PURE__*/"\n ".concat(checkboxTokens.labelFontFamily, ": var(").concat(tokens.labelFontFamily, ");\n ").concat(checkboxTokens.labelFontSize, ": var(").concat(tokens.labelFontSize, ");\n ").concat(checkboxTokens.labelFontStyle, ": var(").concat(tokens.labelFontStyle, ");\n ").concat(checkboxTokens.labelFontWeight, ": var(").concat(tokens.labelFontWeight, ");\n ").concat(checkboxTokens.labelLetterSpacing, ": var(").concat(tokens.labelLetterSpacing, ");\n ").concat(checkboxTokens.labelLineHeight, ": var(").concat(tokens.labelLineHeight, ");\n ").concat(checkboxTokens.descriptionMarginTop, ": var(").concat(tokens.descriptionMarginTop, ");\n ").concat(checkboxTokens.descriptionFontFamily, ": var(").concat(tokens.descriptionFontFamily, ");\n ").concat(checkboxTokens.descriptionFontSize, ": var(").concat(tokens.descriptionFontSize, ");\n ").concat(checkboxTokens.descriptionFontStyle, ": var(").concat(tokens.descriptionFontStyle, ");\n ").concat(checkboxTokens.descriptionFontWeight, ": var(").concat(tokens.descriptionFontWeight, ");\n ").concat(checkboxTokens.descriptionLetterSpacing, ": var(").concat(tokens.descriptionLetterSpacing, ");\n ").concat(checkboxTokens.descriptionLineHeight, ": var(").concat(tokens.descriptionLineHeight, ");\n\n ").concat(checkboxTokens.fillColor, ": var(").concat(tokens.fillColor, ");\n ").concat(checkboxTokens.descriptionColor, ": var(").concat(tokens.descriptionColor, ");\n ").concat(checkboxTokens.triggerBorderColor, ": var(").concat(tokens.triggerBorderColor, ");\n ").concat(checkboxTokens.triggerBackgroundColor, ": var(").concat(tokens.triggerBackgroundColor, ");\n\n ").concat(checkboxTokens.contentTopOffset, ": var(").concat(tokens.contentTopOffset, ");\n ").concat(checkboxTokens.contentLeftOffset, ": var(").concat(tokens.contentLeftOffset, ");\n ").concat(checkboxTokens.triggerSize, ": var(").concat(tokens.triggerSize, ");\n ").concat(checkboxTokens.triggerBorderRadius, ": var(").concat(tokens.triggerBorderRadius, ");\n ").concat(checkboxTokens.triggerMargin, ": var(").concat(tokens.triggerMargin, ");\n");
8
+ var mappingOverride = /*#__PURE__*/"\n ".concat(checkboxTokens.labelFontFamily, ": var(").concat(tokens.labelFontFamily, ");\n ").concat(checkboxTokens.labelFontSize, ": var(").concat(tokens.labelFontSize, ");\n ").concat(checkboxTokens.labelFontStyle, ": var(").concat(tokens.labelFontStyle, ");\n ").concat(checkboxTokens.labelFontWeight, ": var(").concat(tokens.labelFontWeight, ");\n ").concat(checkboxTokens.labelLetterSpacing, ": var(").concat(tokens.labelLetterSpacing, ");\n ").concat(checkboxTokens.labelLineHeight, ": var(").concat(tokens.labelLineHeight, ");\n ").concat(checkboxTokens.descriptionMarginTop, ": var(").concat(tokens.descriptionMarginTop, ");\n ").concat(checkboxTokens.descriptionFontFamily, ": var(").concat(tokens.descriptionFontFamily, ");\n ").concat(checkboxTokens.descriptionFontSize, ": var(").concat(tokens.descriptionFontSize, ");\n ").concat(checkboxTokens.descriptionFontStyle, ": var(").concat(tokens.descriptionFontStyle, ");\n ").concat(checkboxTokens.descriptionFontWeight, ": var(").concat(tokens.descriptionFontWeight, ");\n ").concat(checkboxTokens.descriptionLetterSpacing, ": var(").concat(tokens.descriptionLetterSpacing, ");\n ").concat(checkboxTokens.descriptionLineHeight, ": var(").concat(tokens.descriptionLineHeight, ");\n\n ").concat(checkboxTokens.fillColor, ": var(").concat(tokens.fillColor, ");\n ").concat(checkboxTokens.descriptionColor, ": var(").concat(tokens.descriptionColor, ");\n ").concat(checkboxTokens.triggerBorderColor, ": var(").concat(tokens.triggerBorderColor, ");\n\n ").concat(checkboxTokens.contentTopOffset, ": var(").concat(tokens.contentTopOffset, ");\n ").concat(checkboxTokens.contentLeftOffset, ": var(").concat(tokens.contentLeftOffset, ");\n ").concat(checkboxTokens.triggerSize, ": var(").concat(tokens.triggerSize, ");\n ").concat(checkboxTokens.triggerBorderRadius, ": var(").concat(tokens.triggerBorderRadius, ");\n ").concat(checkboxTokens.triggerMargin, ": var(").concat(tokens.triggerMargin, ");\n");
9
9
  export var StyledEllipse = /*#__PURE__*/styled.div.withConfig({
10
10
  componentId: "plasma-new-hope__sc-rqiilp-0"
11
11
  })(["width:var(", ");height:var(", ");border-radius:var(", ");background-color:var(", ");transition:transform 0.3s ease-in-out;transform:scale(0);input:checked + label &{transform:scale(1);}"], tokens.ellipseSize, tokens.ellipseSize, tokens.ellipseSize, tokens.ellipseColor);
@@ -20,7 +20,6 @@ export var tokens = {
20
20
  fillColor: '--plasma-radiobox-fill-color',
21
21
  descriptionColor: '--plasma-radiobox-description-color',
22
22
  triggerBorderColor: '--plasma-radiobox-trigger-border-color',
23
- triggerBackgroundColor: '--plasma-radiobox-trigger-background-color',
24
23
  contentTopOffset: '--plasma-radiobox-content-top-offset',
25
24
  contentLeftOffset: '--plasma-radiobox-content-left-offset',
26
25
  triggerSize: '--plasma-radiobox-trigger-size',
@@ -0,0 +1,61 @@
1
+ https://mui.com/material-ui/api/select/
2
+
3
+ Segment
4
+
5
+ SegmentGroup
6
+ variations/
7
+ SegmentGroup.tsx
8
+ SegmentGroup.styles.ts
9
+ SegmentGroup.types.ts
10
+
11
+ SegmentItem
12
+ variations/
13
+ SegmentItem.tsx
14
+ SegmentItem.styles.ts
15
+ SegmentItem.types.ts
16
+
17
+ ```ts
18
+ type SegmentValue = string | number;
19
+
20
+ interface SegmentItem {
21
+ value: SegmentValue;
22
+ label?: string;
23
+ }
24
+
25
+ interface SegmentGroup {
26
+ defaultValue?: SegmentValue | SegmentValue[];
27
+ value?: SegmentValue | SegmentValue[];
28
+ items: SegmentItem[];
29
+ customItem?: ({ item, selected, vertical }: { item: SegmentItem; selected: boolean; vertical: boolean }) => void;
30
+ onChange?: ({ item, selected }: { item: SegmentItem; selected: boolean }) => void;
31
+ view?: 'clear' | 'filled';
32
+ size?: 'm' | 's' | 'l' | 'xs';
33
+ disabled?: boolean;
34
+ pilled?: boolean;
35
+ filledBackground?: boolean;
36
+ stretch?: boolean;
37
+ vertical?: boolean;
38
+ selectionMode?: 'multiple' | 'single';
39
+ }
40
+
41
+ interface SegmentItem {
42
+ view?: 'clear' | 'filled';
43
+ size?: 'm' | 's' | 'l' | 'xs';
44
+ pilled?: boolean;
45
+ label?: ReactNode;
46
+ stretch?: boolean;
47
+ selectionMode?: 'multiple' | 'single';
48
+ }
49
+ ```
50
+
51
+ ```jsx
52
+ <SegmentGroup
53
+ defaultValue={['a']}
54
+ value={''}
55
+ items={[
56
+ { value: 'a', label: 'A' },
57
+ { value: 'b', label: 'B' },
58
+ ]}
59
+ onChange(({ value }) => void)
60
+ />
61
+ ```
@@ -2,7 +2,11 @@ export var classes = {
2
2
  selectedSegmentItem: 'selected-segment-item',
3
3
  segmentPilled: 'segment-pilled',
4
4
  segmentGroupFilledBackground: 'segment-group-filled-background',
5
- segmentStretch: 'segment-stretched'
5
+ segmentStretch: 'segment-stretched',
6
+ segmentVertical: 'segment-vertical',
7
+ segmentArrowPadding: 'segment-arrow-padding',
8
+ segmentGroupClipScroll: 'segment-group-clip-scroll',
9
+ segmentGroupClipShowAll: 'segment-group-clip-show-all'
6
10
  };
7
11
  export var tokens = {
8
12
  fontFamily: '--plasma-segment-item-font-family',
@@ -17,6 +21,9 @@ export var tokens = {
17
21
  groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',
18
22
  groupWidth: '--plasma-segment-group-width',
19
23
  groupHeight: '--plasma-segment-group-height',
24
+ groupVerticalHeight: '--plasma-segment-group-vertical-height',
25
+ groupArrowPadding: '--plasma-segment-group-arrow-padding',
26
+ groupVerticalArrowPadding: '--plasma-segment-group-vertical-arrow-padding',
20
27
  groupBackgroundColor: '--plasma-segment-group-background-color',
21
28
  groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',
22
29
  itemBorderRadius: '--plasma-segment-item-border-radius',
@@ -25,13 +32,19 @@ export var tokens = {
25
32
  itemHeight: '--plasma-segment-item-height',
26
33
  itemPadding: '--plasma-segment-item-padding',
27
34
  itemMarginLeft: '--plasma-segment-item-margin-left',
35
+ itemContentPadding: '--plasma-segment-item-content-padding',
36
+ itemIconMargin: '--plasma-segment-item-content-icon-margin',
28
37
  itemColor: '--plasma-segment-item-color',
29
38
  itemBackgroundColor: '--plasma-segment-item-background-color',
30
39
  itemColorHover: '--plasma-segment-item-color-hover',
31
40
  itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',
41
+ itemAdditionalColor: '--plasma-segment-item-additional-color',
42
+ itemAdditionalColorHover: '--plasma-segment-item-additional-color-hover',
32
43
  itemSelectedColor: '--plasma-segment-item-selected-color',
33
44
  itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',
34
45
  itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',
35
46
  itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',
47
+ itemSelectedAdditionalColor: '--plasma-segment-item-selected-additional-color',
48
+ itemSelectedAdditionalColorHover: '--plasma-segment-item-selected-additional-color-hover',
36
49
  disabledOpacity: '--plasma-segment-disabled-opacity'
37
50
  };
@@ -1,4 +1,4 @@
1
- var _excluded = ["id", "selectionMode", "pilled", "stretch", "filledBackground", "disabled", "size", "view", "children"];
1
+ var _excluded = ["id", "selectionMode", "pilled", "stretch", "vertical", "filledBackground", "disabled", "size", "view", "children"];
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,9 +8,9 @@ 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, useCallback, useMemo, useState, Children, useEffect } from 'react';
12
- import { safeUseId, useCarousel } from '@salutejs/plasma-core';
13
- import { IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';
11
+ import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef } from 'react';
12
+ import { safeUseId } from '@salutejs/plasma-core';
13
+ import { IconDisclosureLeft, IconDisclosureRight, IconDisclosureDown, IconDisclosureUp } from '../../../_Icon';
14
14
  import { classes, tokens } from '../../tokens';
15
15
  import { cx } from '../../../../utils';
16
16
  import { useSegmentInner } from '../../SegmentProvider/SegmentProvider';
@@ -20,13 +20,26 @@ import { base as disabledCSS } from './variations/_disabled/base';
20
20
  import { base as pilledCSS } from './variations/_pilled/base';
21
21
  import { base as filledBackgroundCSS } from './variations/_filledBackgound/base';
22
22
  import { base as stretchCSS } from './variations/_stretch/base';
23
- import { StyledArrow, StyledContent, StyledContentWrapper, base } from './SegmentGroup.styles';
23
+ import { base as verticalCSS } from './variations/_vertical/base';
24
+ import { StyledContent, StyledContentWrapper, base, StyledLeftArrow, StyledRightArrow, StyledTopArrow, StyledBottomArrow } from './SegmentGroup.styles';
25
+ var Keys = /*#__PURE__*/function (Keys) {
26
+ Keys[Keys["end"] = 35] = "end";
27
+ Keys[Keys["home"] = 36] = "home";
28
+ Keys[Keys["left"] = 37] = "left";
29
+ Keys[Keys["right"] = 39] = "right";
30
+ return Keys;
31
+ }(Keys || {});
32
+ export var getChildNodes = function getChildNodes(wrapper) {
33
+ var container = wrapper === null || wrapper === void 0 ? void 0 : wrapper.firstChild;
34
+ return container ? Array.from(container === null || container === void 0 ? void 0 : container.childNodes) : [];
35
+ };
24
36
  export var segmentGroupRoot = function segmentGroupRoot(Root) {
25
37
  return /*#__PURE__*/forwardRef(function (props, outerRef) {
26
38
  var id = props.id,
27
39
  selectionMode = props.selectionMode,
28
40
  pilled = props.pilled,
29
41
  stretch = props.stretch,
42
+ vertical = props.vertical,
30
43
  _props$filledBackgrou = props.filledBackground,
31
44
  filledBackground = _props$filledBackgrou === void 0 ? false : _props$filledBackgrou,
32
45
  _props$disabled = props.disabled,
@@ -35,132 +48,189 @@ export var segmentGroupRoot = function segmentGroupRoot(Root) {
35
48
  view = props.view,
36
49
  children = props.children,
37
50
  rest = _objectWithoutProperties(props, _excluded);
51
+ var scrollRef = useRef(null);
52
+ var trackRef = useRef(null);
53
+ var leftArrowRef = useRef(null);
38
54
  var _useSegmentInner = useSegmentInner(),
39
55
  setSelectionMode = _useSegmentInner.setSelectionMode,
40
56
  setDisabledGroup = _useSegmentInner.setDisabledGroup;
41
- var _useState = useState(0),
57
+ var _useState = useState(true),
42
58
  _useState2 = _slicedToArray(_useState, 2),
43
- index = _useState2[0],
44
- setIndex = _useState2[1];
45
- var _useState3 = useState(false),
59
+ firstItemVisible = _useState2[0],
60
+ setFirstItemVisible = _useState2[1];
61
+ var _useState3 = useState(true),
46
62
  _useState4 = _slicedToArray(_useState3, 2),
47
- firstItemVisible = _useState4[0],
48
- setFirstItemVisible = _useState4[1];
49
- var _useState5 = useState(false),
50
- _useState6 = _slicedToArray(_useState5, 2),
51
- lastItemVisible = _useState6[0],
52
- setLastItemVisible = _useState6[1];
63
+ lastItemVisible = _useState4[0],
64
+ setLastItemVisible = _useState4[1];
53
65
  var uniqId = safeUseId();
54
66
  var segmentGroupId = id || uniqId;
55
67
  var pilledAttr = view !== 'clear' && pilled;
56
68
  var filledBackgroundAttr = view !== 'clear' && filledBackground;
69
+ var clipScrollClass = !stretch ? classes.segmentGroupClipScroll : undefined;
70
+ var clipShowAllClass = stretch ? classes.segmentGroupClipShowAll : undefined;
57
71
  var pilledClass = pilledAttr ? classes.segmentPilled : undefined;
58
72
  var filledClass = filledBackgroundAttr ? classes.segmentGroupFilledBackground : undefined;
59
73
  var stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.segmentStretch : undefined;
60
- var items = (Children === null || Children === void 0 ? void 0 : Children.map(children, function (child) {
61
- return child;
62
- })) || [];
74
+ var verticalClass = vertical ? classes.segmentVertical : undefined;
63
75
  var onPrev = useCallback(function () {
64
- !disabled && setIndex(function (prevIndex) {
65
- return prevIndex > 0 ? prevIndex - 1 : 0;
76
+ if (disabled || !scrollRef.current) {
77
+ return;
78
+ }
79
+ var childNodes = getChildNodes(scrollRef.current);
80
+ var scrollLeft = Math.round(scrollRef.current.scrollLeft);
81
+ var firstOverflowingTab = childNodes.slice().reverse().find(function (child) {
82
+ if (!child || child.offsetLeft === undefined) {
83
+ return;
84
+ }
85
+ var tabStartX = child.offsetLeft;
86
+ return tabStartX < scrollLeft;
66
87
  });
67
- }, [disabled]);
88
+ firstOverflowingTab === null || firstOverflowingTab === void 0 || firstOverflowingTab.scrollIntoView({
89
+ block: 'nearest',
90
+ inline: 'nearest'
91
+ });
92
+ }, [disabled, scrollRef]);
68
93
  var onNext = useCallback(function () {
69
- !disabled && setIndex(function (prevIndex) {
70
- return prevIndex < items.length - 1 ? prevIndex + 1 : prevIndex;
94
+ if (disabled || !scrollRef.current) {
95
+ return;
96
+ }
97
+ var scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);
98
+ var childNodes = getChildNodes(scrollRef.current);
99
+ var lastOverflowingChild = childNodes.find(function (child) {
100
+ if (!child || child.offsetLeft === undefined) {
101
+ return;
102
+ }
103
+ var tabEndX = child.offsetLeft + child.offsetWidth;
104
+ return tabEndX > scrollRight;
71
105
  });
72
- }, [disabled]);
73
- var onIntersecting = function onIntersecting(setVisible) {
74
- return function (entries) {
75
- /*
76
- * Пробегаемся по элементам на которых есть слушатель события появления.
77
- * Если элемент находится в зоне видимости или выходит из нее, меняем значение флага видимости
78
- */
79
- entries.forEach(function (entry) {
80
- if (entry.isIntersecting) {
81
- setVisible(true);
82
- } else {
83
- setVisible(false);
84
- }
106
+ lastOverflowingChild === null || lastOverflowingChild === void 0 || lastOverflowingChild.scrollIntoView({
107
+ block: 'nearest',
108
+ inline: 'nearest'
109
+ });
110
+ }, [disabled, scrollRef]);
111
+ var onKeyDown = useCallback(function (event) {
112
+ var childNodes = getChildNodes(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current);
113
+ var index = childNodes.findIndex(function (child) {
114
+ return document.activeElement === child;
115
+ });
116
+ var minIndex = 0;
117
+ var maxIndex = childNodes.length - 1;
118
+ var nextIndex;
119
+ switch (event.keyCode) {
120
+ case Keys.end:
121
+ nextIndex = maxIndex;
122
+ break;
123
+ case Keys.left:
124
+ nextIndex = index > minIndex ? index - 1 : index;
125
+ break;
126
+ case Keys.right:
127
+ nextIndex = index < maxIndex ? index + 1 : index;
128
+ break;
129
+ case Keys.home:
130
+ nextIndex = minIndex;
131
+ break;
132
+ default:
133
+ return;
134
+ }
135
+ if (nextIndex !== index) {
136
+ var _childNodes$nextIndex, _childNodes$nextIndex2;
137
+ event.preventDefault();
138
+ (_childNodes$nextIndex = childNodes[nextIndex]) === null || _childNodes$nextIndex === void 0 || _childNodes$nextIndex.focus();
139
+ (_childNodes$nextIndex2 = childNodes[nextIndex]) === null || _childNodes$nextIndex2 === void 0 || _childNodes$nextIndex2.scrollIntoView({
140
+ block: 'center',
141
+ inline: 'center',
142
+ behavior: 'smooth'
85
143
  });
86
- };
87
- };
88
- var _useCarousel = useCarousel({
89
- index: index,
90
- axis: 'x',
91
- scrollAlign: 'start',
92
- detectActive: true,
93
- debounceMs: 250,
94
- onIndexChange: setIndex
95
- }),
96
- scrollRef = _useCarousel.scrollRef,
97
- trackRef = _useCarousel.trackRef;
144
+ }
145
+ }, []);
146
+ var handleScroll = useCallback(function (event) {
147
+ event.stopPropagation();
148
+ if (vertical) {
149
+ var maxScrollTop = event.currentTarget.scrollHeight - event.currentTarget.clientHeight;
150
+ var scrollTop = Math.round(event.currentTarget.scrollTop);
151
+ setFirstItemVisible(scrollTop <= 0);
152
+ setLastItemVisible(scrollTop >= maxScrollTop);
153
+ return;
154
+ }
155
+ var maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;
156
+ var scrollLeft = Math.round(event.currentTarget.scrollLeft);
157
+ setFirstItemVisible(scrollLeft <= 0);
158
+ setLastItemVisible(scrollLeft >= maxScrollLeft);
159
+ }, [vertical]);
160
+ useEffect(function () {
161
+ var _scrollRef$current3, _scrollRef$current4;
162
+ if (vertical) {
163
+ var _scrollRef$current, _scrollRef$current2;
164
+ setLastItemVisible(((_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollHeight) === ((_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientHeight));
165
+ return;
166
+ }
167
+ setLastItemVisible(((_scrollRef$current3 = scrollRef.current) === null || _scrollRef$current3 === void 0 ? void 0 : _scrollRef$current3.scrollWidth) === ((_scrollRef$current4 = scrollRef.current) === null || _scrollRef$current4 === void 0 ? void 0 : _scrollRef$current4.clientWidth));
168
+ }, [vertical]);
169
+
170
+ // Этот хук компенсирует появление левой/верхней стрелки при прокрутке
171
+ useEffect(function () {
172
+ if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {
173
+ return;
174
+ }
175
+ if (vertical) {
176
+ scrollRef.current.scrollTo({
177
+ top: Math.round(scrollRef.current.scrollTop + leftArrowRef.current.clientHeight)
178
+ });
179
+ return;
180
+ }
181
+ scrollRef.current.scrollTo({
182
+ left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
183
+ });
184
+ }, [firstItemVisible, vertical]);
98
185
  var PreviousButton = useMemo(function () {
99
- return /*#__PURE__*/React.createElement(StyledArrow, {
186
+ var ArrowNode = vertical ? StyledTopArrow : StyledLeftArrow;
187
+ return /*#__PURE__*/React.createElement(ArrowNode, {
100
188
  type: "button",
101
189
  "aria-label": "\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
102
190
  onClick: onPrev,
103
191
  tabIndex: disabled ? -1 : 0,
104
192
  disabled: disabled
105
- }, /*#__PURE__*/React.createElement(IconDisclosureLeft, {
193
+ }, vertical ? /*#__PURE__*/React.createElement(IconDisclosureUp, {
194
+ color: "var(".concat(tokens.arrowColor, ")"),
195
+ size: "s"
196
+ }) : /*#__PURE__*/React.createElement(IconDisclosureLeft, {
106
197
  color: "var(".concat(tokens.arrowColor, ")")
107
198
  }));
108
- }, [onPrev]);
199
+ }, [onPrev, vertical]);
109
200
  var NextButton = useMemo(function () {
110
- return /*#__PURE__*/React.createElement(StyledArrow, {
201
+ var ArrowNode = vertical ? StyledBottomArrow : StyledRightArrow;
202
+ return /*#__PURE__*/React.createElement(ArrowNode, {
111
203
  type: "button",
112
204
  "aria-label": "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
113
205
  onClick: onNext,
114
206
  tabIndex: disabled ? -1 : 0,
115
207
  disabled: disabled
116
- }, /*#__PURE__*/React.createElement(IconDisclosureRight, {
208
+ }, vertical ? /*#__PURE__*/React.createElement(IconDisclosureDown, {
209
+ color: "var(".concat(tokens.arrowColor, ")"),
210
+ size: "s"
211
+ }) : /*#__PURE__*/React.createElement(IconDisclosureRight, {
117
212
  color: "var(".concat(tokens.arrowColor, ")")
118
213
  }));
119
- }, [onNext]);
214
+ }, [onNext, vertical]);
120
215
  useEffect(function () {
121
216
  selectionMode && setSelectionMode(selectionMode);
122
217
  setDisabledGroup(disabled);
123
218
  }, [selectionMode, disabled]);
124
- useEffect(function () {
125
- var _trackRef$current;
126
- // Intersection observer для первого сегмента
127
- var observeFirstItem = new IntersectionObserver(onIntersecting(setFirstItemVisible), {
128
- root: null,
129
- rootMargin: '0px',
130
- threshold: 0.5
131
- });
132
-
133
- // Intersection observer для последнего сегмента
134
- var observeLastItem = new IntersectionObserver(onIntersecting(setLastItemVisible), {
135
- root: null,
136
- rootMargin: '0px',
137
- threshold: 0.5
138
- });
139
-
140
- // получаем список сегментов внутри SegmentGroup
141
- var childrenArray = Array.from(((_trackRef$current = trackRef.current) === null || _trackRef$current === void 0 ? void 0 : _trackRef$current.children) || []);
142
- if (childrenArray.length) {
143
- // подписываемся на событие появление внутри SegmentGroup
144
- observeFirstItem.observe(childrenArray[0]);
145
- observeLastItem.observe(childrenArray[childrenArray.length - 1]);
146
- }
147
- return function () {
148
- // отписываемся от события появления внутри SegmentGroup
149
- observeFirstItem.disconnect();
150
- observeLastItem.disconnect();
151
- };
152
- }, [children]);
153
219
  return /*#__PURE__*/React.createElement(Root, _extends({
154
220
  view: view,
155
221
  size: size,
222
+ vertical: vertical,
156
223
  id: segmentGroupId,
157
224
  ref: outerRef,
158
225
  filledBackground: filledBackgroundAttr,
159
226
  disabled: disabled,
160
227
  pilled: pilledAttr,
161
- className: cx(pilledClass, filledClass, stretchClass)
228
+ className: cx(pilledClass, filledClass, stretchClass, verticalClass),
229
+ onKeyDown: onKeyDown
162
230
  }, rest), !firstItemVisible && PreviousButton, /*#__PURE__*/React.createElement(StyledContentWrapper, {
163
- ref: scrollRef
231
+ className: cx(clipScrollClass, clipShowAllClass),
232
+ ref: scrollRef,
233
+ onScroll: handleScroll
164
234
  }, /*#__PURE__*/React.createElement(StyledContent, {
165
235
  ref: trackRef
166
236
  }, children)), !lastItemVisible && NextButton);
@@ -190,6 +260,10 @@ export var segmentGroupConfig = {
190
260
  css: stretchCSS,
191
261
  attrs: true
192
262
  },
263
+ vertical: {
264
+ css: verticalCSS,
265
+ attrs: true
266
+ },
193
267
  filledBackground: {
194
268
  css: filledBackgroundCSS,
195
269
  attrs: true
@@ -3,19 +3,31 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
3
3
  import { css } from 'styled-components';
4
4
  import styled from 'styled-components';
5
5
  import { addFocus } from '../../../../mixins';
6
- import { tokens } from '../../tokens';
6
+ import { classes, tokens } from '../../tokens';
7
7
  export var base = /*#__PURE__*/css(_templateObject || (_templateObject = /*#__PURE__*/_taggedTemplateLiteral(["\n display: inline-flex;\n align-items: center;\n"])));
8
8
  export var StyledContent = /*#__PURE__*/styled.div.withConfig({
9
9
  componentId: "plasma-new-hope__sc-1kj8wok-0"
10
10
  })(["display:inline-flex;flex-direction:row;align-items:center;"]);
11
11
  export var StyledContentWrapper = /*#__PURE__*/styled.div.withConfig({
12
12
  componentId: "plasma-new-hope__sc-1kj8wok-1"
13
- })(["position:relative;height:100%;margin:0;padding:0.25rem;::-webkit-scrollbar{display:none;}overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;"]);
13
+ })(["margin:-0.125rem;padding:0.125rem;box-sizing:content-box;position:relative;height:100%;width:100%;display:flex;align-items:center;&.", "{overflow:scroll;scroll-padding:0.25rem;overscroll-behavior:contain;scrollbar-width:none;::-webkit-scrollbar{display:none;}}&.", "{overflow:visible;}"], classes.segmentGroupClipScroll, classes.segmentGroupClipShowAll);
14
14
  export var StyledArrow = /*#__PURE__*/styled.button.withConfig({
15
15
  componentId: "plasma-new-hope__sc-1kj8wok-2"
16
- })(["display:flex;cursor:pointer;border:none;background-color:transparent;padding:0;outline:none;", ";&[disabled]{cursor:not-allowed;}"], /*#__PURE__*/addFocus({
16
+ })(["display:flex;cursor:pointer;border:none;background-color:transparent;outline:none;", ";&[disabled]{cursor:not-allowed;}"], /*#__PURE__*/addFocus({
17
17
  outlineSize: '0.063rem',
18
18
  outlineOffset: '-0.125rem',
19
19
  outlineColor: /*#__PURE__*/"var(".concat(tokens.outlineFocusColor, ")"),
20
20
  outlineRadius: 'calc(var(--plasma_private-outline-radius) - 0.063rem)'
21
- }));
21
+ }));
22
+ export var StyledLeftArrow = /*#__PURE__*/styled(StyledArrow).withConfig({
23
+ componentId: "plasma-new-hope__sc-1kj8wok-3"
24
+ })(["padding:var(", ");padding-right:0;margin-right:0.1875rem;"], tokens.groupArrowPadding);
25
+ export var StyledRightArrow = /*#__PURE__*/styled(StyledArrow).withConfig({
26
+ componentId: "plasma-new-hope__sc-1kj8wok-4"
27
+ })(["padding:var(", ");padding-left:0;margin-left:0.1875rem;"], tokens.groupArrowPadding);
28
+ export var StyledTopArrow = /*#__PURE__*/styled(StyledArrow).withConfig({
29
+ componentId: "plasma-new-hope__sc-1kj8wok-5"
30
+ })(["padding:var(", ");padding-bottom:0;margin-bottom:0.1875rem;"], tokens.groupVerticalArrowPadding);
31
+ export var StyledBottomArrow = /*#__PURE__*/styled(StyledArrow).withConfig({
32
+ componentId: "plasma-new-hope__sc-1kj8wok-6"
33
+ })(["padding:var(", ");padding-top:0;margin-top:0.1875rem;"], tokens.groupVerticalArrowPadding);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { classes, tokens } from '../../../../tokens';
3
+ import { StyledContent, StyledContentWrapper } from '../../SegmentGroup.styles';
4
+ export var base = /*#__PURE__*/css(["&.", "{flex-direction:column;max-height:var(", ");", "{flex-direction:column;}", "{flex-direction:column;}}"], classes.segmentVertical, tokens.groupVerticalHeight, StyledContentWrapper, StyledContent);
@@ -1,4 +1,4 @@
1
- var _excluded = ["size", "view", "id", "label", "value", "pilled", "customHandleSelect", "aria-label"];
1
+ var _excluded = ["size", "view", "id", "label", "value", "pilled", "contentLeft", "contentRight", "customHandleSelect", "aria-label"];
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 _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; }
4
4
  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,7 +11,7 @@ import { base as sizeCSS } from './variations/_size/base';
11
11
  import { base as viewCSS } from './variations/_view/base';
12
12
  import { base as disabledCSS } from './variations/_disabled/base';
13
13
  import { base as pilledCSS } from './variations/_pilled/base';
14
- import { StyledContent, base } from './SegmentItem.styles';
14
+ import { StyledContent, base, LeftContent, RightContent } from './SegmentItem.styles';
15
15
  export var segmentItemRoot = function segmentItemRoot(Root) {
16
16
  return /*#__PURE__*/forwardRef(function (props, outerRef) {
17
17
  var size = props.size,
@@ -20,6 +20,8 @@ export var segmentItemRoot = function segmentItemRoot(Root) {
20
20
  label = props.label,
21
21
  value = props.value,
22
22
  pilled = props.pilled,
23
+ contentLeft = props.contentLeft,
24
+ contentRight = props.contentRight,
23
25
  customHandleSelect = props.customHandleSelect,
24
26
  ariaLabelExternal = props['aria-label'],
25
27
  rest = _objectWithoutProperties(props, _excluded);
@@ -56,7 +58,7 @@ export var segmentItemRoot = function segmentItemRoot(Root) {
56
58
  onClick: handleSelectSegment,
57
59
  tabIndex: disabledGroup ? -1 : 0,
58
60
  disabled: disabledGroup
59
- }, rest), /*#__PURE__*/React.createElement(StyledContent, null, label || value));
61
+ }, rest), contentLeft && /*#__PURE__*/React.createElement(LeftContent, null, contentLeft), /*#__PURE__*/React.createElement(StyledContent, null, label || value), contentRight && /*#__PURE__*/React.createElement(RightContent, null, contentRight));
60
62
  });
61
63
  };
62
64
  export var segmentItemConfig = {
@@ -2,13 +2,31 @@ import styled from 'styled-components';
2
2
  import { css } from 'styled-components';
3
3
  import { addFocus, applyEllipsis } from '../../../../mixins';
4
4
  import { tokens } from '../../tokens';
5
- export var base = /*#__PURE__*/css(["position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;align-items:center;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(", ");-webkit-tap-highlight-color:rgba(0,0,0,0);&:first-child{margin-left:0;}", ";"], tokens.itemMarginLeft, /*#__PURE__*/addFocus({
5
+ export var base = /*#__PURE__*/css(["position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(", ");-webkit-tap-highlight-color:rgba(0,0,0,0);&:first-child{margin-left:0;}", ";"], tokens.itemMarginLeft, /*#__PURE__*/addFocus({
6
6
  outlineSize: '0.063rem',
7
- outlineOffset: '-0.125rem',
7
+ outlineOffset: '0.063rem',
8
8
  outlineColor: /*#__PURE__*/"var(".concat(tokens.outlineFocusColor, ")"),
9
9
  outlineRadius: 'calc(var(--plasma_private-outline-radius) + 0.063rem)',
10
10
  customFocusRules: /*#__PURE__*/"\n &.focus-visible:focus,\n &[data-focus-visible-added] {\n &::before {\n z-index: 1;\n outline: none;\n box-shadow: 0 0 0 0.063rem var(".concat(tokens.outlineFocusColor, ");\n }\n }\n ")
11
11
  }));
12
- export var StyledContent = /*#__PURE__*/styled.div.withConfig({
12
+ export var StyledLeftIcon = /*#__PURE__*/styled.div.withConfig({
13
13
  componentId: "plasma-new-hope__sc-m3m328-0"
14
- })(["display:inline-block;width:fit-content;", ";"], /*#__PURE__*/applyEllipsis());
14
+ })(["margin-right:var(", ");"], tokens.itemIconMargin);
15
+ export var StyledRightIcon = /*#__PURE__*/styled.div.withConfig({
16
+ componentId: "plasma-new-hope__sc-m3m328-1"
17
+ })(["margin-left:var(", ");"], tokens.itemIconMargin);
18
+ export var StyledContent = /*#__PURE__*/styled.div.withConfig({
19
+ componentId: "plasma-new-hope__sc-m3m328-2"
20
+ })(["display:inline-block;width:fit-content;padding:var(", ");", ";margin-right:", ";margin-left:", ";"], tokens.itemContentPadding, /*#__PURE__*/applyEllipsis(), function (_ref) {
21
+ var hasRightMargin = _ref.hasRightMargin;
22
+ return hasRightMargin ? "var(".concat(tokens.itemIconMargin, ")") : '0';
23
+ }, function (_ref2) {
24
+ var hasLeftMargin = _ref2.hasLeftMargin;
25
+ return hasLeftMargin ? "var(".concat(tokens.itemIconMargin, ")") : '0';
26
+ });
27
+ export var RightContent = /*#__PURE__*/styled.div.withConfig({
28
+ componentId: "plasma-new-hope__sc-m3m328-3"
29
+ })(["display:flex;margin-left:var(", ");color:var(", ");"], tokens.itemIconMargin, tokens.itemAdditionalColor);
30
+ export var LeftContent = /*#__PURE__*/styled.div.withConfig({
31
+ componentId: "plasma-new-hope__sc-m3m328-4"
32
+ })(["display:flex;margin-right:var(", ");color:inherit;"], tokens.itemIconMargin);
@@ -1,3 +1,4 @@
1
1
  import { css } from 'styled-components';
2
2
  import { classes, tokens } from '../../../../tokens';
3
- export var base = /*#__PURE__*/css(["color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");}&.", "{color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");}}"], tokens.itemColor, tokens.itemBackgroundColor, tokens.itemColorHover, tokens.itemBackgroundColorHover, /*#__PURE__*/String(classes.selectedSegmentItem), tokens.itemSelectedColor, tokens.itemSelectedBackgroundColor, tokens.itemSelectedColorHover, tokens.itemSelectedBackgroundColorHover);
3
+ import { RightContent } from '../../SegmentItem.styles';
4
+ export var base = /*#__PURE__*/css(["color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");", "{color:var(", ");}}&.", "{color:var(", ");background-color:var(", ");", "{color:var(", ");}&:hover{color:var(", ");background-color:var(", ");", "{color:var(", ");}}}"], tokens.itemColor, tokens.itemBackgroundColor, tokens.itemColorHover, tokens.itemBackgroundColorHover, RightContent, tokens.itemAdditionalColorHover, /*#__PURE__*/String(classes.selectedSegmentItem), tokens.itemSelectedColor, tokens.itemSelectedBackgroundColor, RightContent, tokens.itemSelectedAdditionalColor, tokens.itemSelectedColorHover, tokens.itemSelectedBackgroundColorHover, RightContent, tokens.itemSelectedAdditionalColorHover);
@@ -136,7 +136,7 @@ export var tabsRoot = function tabsRoot(Root) {
136
136
  var scrollLeft = Math.round(event.currentTarget.scrollLeft);
137
137
  setFirstItemVisible(scrollLeft <= 0);
138
138
  setLastItemVisible(scrollLeft >= maxScrollLeft);
139
- }, [setFirstItemVisible, setLastItemVisible]);
139
+ }, []);
140
140
  var onKeyDown = useCallback(function (event) {
141
141
  if (index === undefined) {
142
142
  return;
@@ -184,7 +184,7 @@ export var tabsRoot = function tabsRoot(Root) {
184
184
  scrollRef.current.scrollTo({
185
185
  left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
186
186
  });
187
- }, [firstItemVisible, scrollRef, leftArrowRef]);
187
+ }, [firstItemVisible]);
188
188
  return /*#__PURE__*/React.createElement(TabsContext.Provider, {
189
189
  value: refs
190
190
  }, /*#__PURE__*/React.createElement(Root, _extends({