@salutejs/plasma-new-hope 0.156.0-canary.1392.11055092483.0 → 0.156.0-canary.1421.11066611075.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (479) hide show
  1. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +2 -2
  2. package/cjs/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  3. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +5 -5
  4. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  5. package/cjs/components/DatePicker/RangeDate/RangeDate.js +63 -4
  6. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  7. package/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  8. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  9. package/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  10. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  11. package/cjs/components/DatePicker/utils/setInitValue.js +12 -0
  12. package/cjs/components/DatePicker/utils/setInitValue.js.map +1 -0
  13. package/cjs/components/Segment/tokens.js +1 -14
  14. package/cjs/components/Segment/tokens.js.map +1 -1
  15. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.css +8 -7
  16. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +112 -68
  17. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  18. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +7 -1
  19. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  20. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +4 -0
  21. package/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  22. package/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js.map +1 -1
  23. package/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base_escgtx.css +1 -0
  24. package/cjs/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  25. package/cjs/components/Segment/ui/SegmentGroup/variations/_size/base.js.map +1 -1
  26. package/cjs/components/Segment/ui/SegmentGroup/variations/_size/base_m358nl.css +1 -0
  27. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.css +4 -6
  28. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +7 -17
  29. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  30. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +1 -30
  31. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  32. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +2 -0
  33. package/cjs/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  34. package/cjs/components/Segment/ui/SegmentItem/variations/_pilled/base.js.map +1 -1
  35. package/cjs/components/Segment/ui/SegmentItem/variations/_pilled/{base_omc5u1.css → base_15s0fel.css} +1 -1
  36. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  37. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  38. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +1 -0
  39. package/cjs/components/Slider/Slider.js +20 -6
  40. package/cjs/components/Slider/Slider.js.map +1 -1
  41. package/cjs/components/Slider/components/Double/Double.js +40 -2
  42. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  43. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +101 -0
  44. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -0
  45. package/cjs/components/Slider/components/Single/Single.js +49 -13
  46. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  47. package/cjs/components/Slider/utils/index.js +6 -0
  48. package/cjs/components/Slider/utils/index.js.map +1 -1
  49. package/cjs/components/Tabs/ui/Tabs/Tabs.js +6 -6
  50. package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  51. package/cjs/components/TextArea/TextArea.js +3 -2
  52. package/cjs/components/TextArea/TextArea.js.map +1 -1
  53. package/cjs/components/_Icon/Icon.assets/{DisclosureLeftCentered.js → DisclosureLeft.js} +3 -3
  54. package/cjs/components/_Icon/Icon.assets/DisclosureLeft.js.map +1 -0
  55. package/cjs/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  56. package/cjs/components/_Icon/Icon.assets/DisclosureRight.js.map +1 -1
  57. package/cjs/components/_Icon/Icons/{IconDisclosureLeftCentered.js → IconDisclosureLeft.js} +5 -5
  58. package/cjs/components/_Icon/Icons/IconDisclosureLeft.js.map +1 -0
  59. package/cjs/hooks/useForm.js +131 -0
  60. package/cjs/hooks/useForm.js.map +1 -0
  61. package/cjs/index.css +10 -13
  62. package/cjs/index.js +5 -0
  63. package/cjs/index.js.map +1 -1
  64. package/cjs/utils/index.js.map +1 -1
  65. package/cjs/utils/inputHidden.js +12 -0
  66. package/cjs/utils/inputHidden.js.map +1 -0
  67. package/cjs/utils/setRefList.js +28 -0
  68. package/cjs/utils/setRefList.js.map +1 -0
  69. package/emotion/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  70. package/emotion/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +2 -2
  71. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +63 -4
  72. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  73. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  74. package/emotion/cjs/components/DatePicker/utils/setInitValue.js +11 -0
  75. package/emotion/cjs/components/Segment/tokens.js +1 -14
  76. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +115 -66
  77. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +33 -15
  78. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  79. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  80. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +7 -17
  81. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +6 -20
  82. package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  83. package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  84. package/emotion/cjs/components/Slider/Slider.js +15 -6
  85. package/emotion/cjs/components/Slider/components/Double/Double.js +40 -2
  86. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +104 -0
  87. package/emotion/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +5 -0
  88. package/emotion/cjs/components/Slider/components/Single/Single.js +44 -8
  89. package/emotion/cjs/components/Slider/components/index.js +11 -0
  90. package/emotion/cjs/components/Slider/utils/index.js +6 -1
  91. package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +4 -4
  92. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  93. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureLeft.js +4 -3
  94. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  95. package/emotion/cjs/components/_Icon/index.js +0 -21
  96. package/emotion/cjs/examples/plasma_b2c/components/Editable/Editable.stories.tsx +2 -2
  97. package/emotion/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +193 -0
  98. package/emotion/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +3 -6
  99. package/emotion/cjs/examples/plasma_b2c/components/Segment/Segment.stories.tsx +42 -118
  100. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +10 -13
  101. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  102. package/emotion/cjs/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +2 -2
  103. package/emotion/cjs/examples/plasma_web/components/Editable/Editable.stories.tsx +2 -2
  104. package/emotion/cjs/examples/plasma_web/components/Form/Form.stories.tsx +193 -0
  105. package/emotion/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +3 -6
  106. package/emotion/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +42 -119
  107. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +9 -15
  108. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  109. package/emotion/cjs/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +2 -2
  110. package/emotion/cjs/hooks/index.js +8 -1
  111. package/emotion/cjs/hooks/useForm.js +137 -0
  112. package/emotion/cjs/types/FormType.js +5 -0
  113. package/emotion/cjs/utils/index.js +15 -0
  114. package/emotion/cjs/utils/inputHidden.js +11 -0
  115. package/emotion/cjs/utils/setRefList.js +27 -0
  116. package/emotion/es/components/Breadcrumbs/Breadcrumbs.styles.js +5 -5
  117. package/emotion/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +3 -3
  118. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +63 -4
  119. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  120. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  121. package/emotion/es/components/DatePicker/utils/setInitValue.js +5 -0
  122. package/emotion/es/components/Segment/tokens.js +1 -14
  123. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +118 -69
  124. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +32 -14
  125. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  126. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  127. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +8 -18
  128. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +6 -20
  129. package/emotion/es/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  130. package/emotion/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  131. package/emotion/es/components/Slider/Slider.js +16 -6
  132. package/emotion/es/components/Slider/components/Double/Double.js +41 -3
  133. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +95 -0
  134. package/emotion/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +1 -0
  135. package/emotion/es/components/Slider/components/Single/Single.js +45 -9
  136. package/emotion/es/components/Slider/components/index.js +1 -0
  137. package/emotion/es/components/Slider/utils/index.js +5 -0
  138. package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +5 -5
  139. package/emotion/es/components/TextArea/TextArea.js +4 -4
  140. package/emotion/es/components/_Icon/Icon.assets/DisclosureLeft.js +4 -3
  141. package/emotion/es/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  142. package/emotion/es/components/_Icon/index.js +0 -3
  143. package/emotion/es/examples/plasma_b2c/components/Editable/Editable.stories.tsx +2 -2
  144. package/emotion/es/examples/plasma_b2c/components/Form/Form.stories.tsx +193 -0
  145. package/emotion/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +3 -6
  146. package/emotion/es/examples/plasma_b2c/components/Segment/Segment.stories.tsx +42 -118
  147. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +10 -13
  148. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  149. package/emotion/es/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +2 -2
  150. package/emotion/es/examples/plasma_web/components/Editable/Editable.stories.tsx +2 -2
  151. package/emotion/es/examples/plasma_web/components/Form/Form.stories.tsx +193 -0
  152. package/emotion/es/examples/plasma_web/components/Notification/Notification.stories.tsx +3 -6
  153. package/emotion/es/examples/plasma_web/components/Segment/Segment.stories.tsx +42 -119
  154. package/emotion/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +9 -15
  155. package/emotion/es/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  156. package/emotion/es/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +2 -2
  157. package/emotion/es/hooks/index.js +2 -1
  158. package/emotion/es/hooks/useForm.js +128 -0
  159. package/emotion/es/types/FormType.js +1 -0
  160. package/emotion/es/utils/index.js +1 -0
  161. package/emotion/es/utils/inputHidden.js +4 -0
  162. package/emotion/es/utils/setRefList.js +20 -0
  163. package/es/components/Breadcrumbs/Breadcrumbs.styles.js +2 -2
  164. package/es/components/Breadcrumbs/Breadcrumbs.styles.js.map +1 -1
  165. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +5 -5
  166. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  167. package/es/components/DatePicker/RangeDate/RangeDate.js +63 -4
  168. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  169. package/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  170. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  171. package/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  172. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  173. package/es/components/DatePicker/utils/setInitValue.js +8 -0
  174. package/es/components/DatePicker/utils/setInitValue.js.map +1 -0
  175. package/es/components/Segment/tokens.js +1 -14
  176. package/es/components/Segment/tokens.js.map +1 -1
  177. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.css +8 -7
  178. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +118 -73
  179. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  180. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +7 -2
  181. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  182. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +4 -0
  183. package/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  184. package/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js.map +1 -1
  185. package/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base_escgtx.css +1 -0
  186. package/es/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  187. package/es/components/Segment/ui/SegmentGroup/variations/_size/base.js.map +1 -1
  188. package/es/components/Segment/ui/SegmentGroup/variations/_size/base_m358nl.css +1 -0
  189. package/es/components/Segment/ui/SegmentItem/SegmentItem.css +4 -6
  190. package/es/components/Segment/ui/SegmentItem/SegmentItem.js +8 -18
  191. package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  192. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +2 -29
  193. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  194. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +2 -0
  195. package/es/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  196. package/es/components/Segment/ui/SegmentItem/variations/_pilled/base.js.map +1 -1
  197. package/es/components/Segment/ui/SegmentItem/variations/_pilled/{base_omc5u1.css → base_15s0fel.css} +1 -1
  198. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  199. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  200. package/es/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +1 -0
  201. package/es/components/Slider/Slider.js +21 -7
  202. package/es/components/Slider/Slider.js.map +1 -1
  203. package/es/components/Slider/components/Double/Double.js +41 -3
  204. package/es/components/Slider/components/Double/Double.js.map +1 -1
  205. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +97 -0
  206. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js.map +1 -0
  207. package/es/components/Slider/components/Single/Single.js +45 -9
  208. package/es/components/Slider/components/Single/Single.js.map +1 -1
  209. package/es/components/Slider/utils/index.js +6 -1
  210. package/es/components/Slider/utils/index.js.map +1 -1
  211. package/es/components/Tabs/ui/Tabs/Tabs.js +6 -6
  212. package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  213. package/es/components/TextArea/TextArea.js +3 -2
  214. package/es/components/TextArea/TextArea.js.map +1 -1
  215. package/es/components/_Icon/Icon.assets/{DisclosureLeftCentered.js → DisclosureLeft.js} +3 -3
  216. package/es/components/_Icon/Icon.assets/DisclosureLeft.js.map +1 -0
  217. package/es/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  218. package/es/components/_Icon/Icon.assets/DisclosureRight.js.map +1 -1
  219. package/es/components/_Icon/Icons/{IconDisclosureLeftCentered.js → IconDisclosureLeft.js} +5 -5
  220. package/es/components/_Icon/Icons/IconDisclosureLeft.js.map +1 -0
  221. package/es/hooks/useForm.js +127 -0
  222. package/es/hooks/useForm.js.map +1 -0
  223. package/es/index.css +10 -13
  224. package/es/index.js +2 -0
  225. package/es/index.js.map +1 -1
  226. package/es/utils/index.js.map +1 -1
  227. package/es/utils/inputHidden.js +8 -0
  228. package/es/utils/inputHidden.js.map +1 -0
  229. package/es/utils/setRefList.js +23 -0
  230. package/es/utils/setRefList.js.map +1 -0
  231. package/package.json +3 -2
  232. package/styled-components/cjs/components/Breadcrumbs/Breadcrumbs.styles.js +1 -1
  233. package/styled-components/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +2 -2
  234. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +63 -4
  235. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -3
  236. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +34 -1
  237. package/styled-components/cjs/components/DatePicker/utils/setInitValue.js +11 -0
  238. package/styled-components/cjs/components/Segment/tokens.js +1 -14
  239. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +115 -66
  240. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +13 -4
  241. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  242. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  243. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +7 -17
  244. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +4 -16
  245. package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  246. package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  247. package/styled-components/cjs/components/Slider/Slider.js +15 -6
  248. package/styled-components/cjs/components/Slider/components/Double/Double.js +40 -2
  249. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +104 -0
  250. package/styled-components/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +5 -0
  251. package/styled-components/cjs/components/Slider/components/Single/Single.js +44 -8
  252. package/styled-components/cjs/components/Slider/components/index.js +11 -0
  253. package/styled-components/cjs/components/Slider/utils/index.js +6 -1
  254. package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +4 -4
  255. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  256. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureLeft.js +4 -3
  257. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  258. package/styled-components/cjs/components/_Icon/index.js +0 -21
  259. package/styled-components/cjs/examples/plasma_b2c/components/Editable/Editable.stories.tsx +2 -2
  260. package/styled-components/cjs/examples/plasma_b2c/components/Form/Form.stories.tsx +193 -0
  261. package/styled-components/cjs/examples/plasma_b2c/components/Notification/Notification.stories.tsx +3 -6
  262. package/styled-components/cjs/examples/plasma_b2c/components/Segment/Segment.stories.tsx +42 -118
  263. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +7 -10
  264. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  265. package/styled-components/cjs/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +2 -2
  266. package/styled-components/cjs/examples/plasma_web/components/Editable/Editable.stories.tsx +2 -2
  267. package/styled-components/cjs/examples/plasma_web/components/Form/Form.stories.tsx +193 -0
  268. package/styled-components/cjs/examples/plasma_web/components/Notification/Notification.stories.tsx +3 -6
  269. package/styled-components/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +42 -119
  270. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -13
  271. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  272. package/styled-components/cjs/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +2 -2
  273. package/styled-components/cjs/hooks/index.js +8 -1
  274. package/styled-components/cjs/hooks/useForm.js +137 -0
  275. package/styled-components/cjs/types/FormType.js +5 -0
  276. package/styled-components/cjs/utils/index.js +15 -0
  277. package/styled-components/cjs/utils/inputHidden.js +11 -0
  278. package/styled-components/cjs/utils/setRefList.js +27 -0
  279. package/styled-components/es/components/Breadcrumbs/Breadcrumbs.styles.js +2 -2
  280. package/styled-components/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +3 -3
  281. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +63 -4
  282. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +31 -3
  283. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +34 -1
  284. package/styled-components/es/components/DatePicker/utils/setInitValue.js +5 -0
  285. package/styled-components/es/components/Segment/tokens.js +1 -14
  286. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +118 -69
  287. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +12 -3
  288. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.js +1 -1
  289. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_size/base.js +1 -1
  290. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +8 -18
  291. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +4 -16
  292. package/styled-components/es/components/Segment/ui/SegmentItem/variations/_pilled/base.js +1 -1
  293. package/styled-components/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  294. package/styled-components/es/components/Slider/Slider.js +16 -6
  295. package/styled-components/es/components/Slider/components/Double/Double.js +41 -3
  296. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.js +95 -0
  297. package/styled-components/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.js +1 -0
  298. package/styled-components/es/components/Slider/components/Single/Single.js +45 -9
  299. package/styled-components/es/components/Slider/components/index.js +1 -0
  300. package/styled-components/es/components/Slider/utils/index.js +5 -0
  301. package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +5 -5
  302. package/styled-components/es/components/TextArea/TextArea.js +3 -3
  303. package/styled-components/es/components/_Icon/Icon.assets/DisclosureLeft.js +4 -3
  304. package/styled-components/es/components/_Icon/Icon.assets/DisclosureRight.js +4 -3
  305. package/styled-components/es/components/_Icon/index.js +0 -3
  306. package/styled-components/es/examples/plasma_b2c/components/Editable/Editable.stories.tsx +2 -2
  307. package/styled-components/es/examples/plasma_b2c/components/Form/Form.stories.tsx +193 -0
  308. package/styled-components/es/examples/plasma_b2c/components/Notification/Notification.stories.tsx +3 -6
  309. package/styled-components/es/examples/plasma_b2c/components/Segment/Segment.stories.tsx +42 -118
  310. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +7 -10
  311. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  312. package/styled-components/es/examples/plasma_b2c/components/Tooltip/Tooltip.stories.tsx +2 -2
  313. package/styled-components/es/examples/plasma_web/components/Editable/Editable.stories.tsx +2 -2
  314. package/styled-components/es/examples/plasma_web/components/Form/Form.stories.tsx +193 -0
  315. package/styled-components/es/examples/plasma_web/components/Notification/Notification.stories.tsx +3 -6
  316. package/styled-components/es/examples/plasma_web/components/Segment/Segment.stories.tsx +42 -119
  317. package/styled-components/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -13
  318. package/styled-components/es/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  319. package/styled-components/es/examples/plasma_web/components/Tooltip/Tooltip.stories.tsx +2 -2
  320. package/styled-components/es/hooks/index.js +2 -1
  321. package/styled-components/es/hooks/useForm.js +128 -0
  322. package/styled-components/es/types/FormType.js +1 -0
  323. package/styled-components/es/utils/index.js +1 -0
  324. package/styled-components/es/utils/inputHidden.js +4 -0
  325. package/styled-components/es/utils/setRefList.js +20 -0
  326. package/types/components/DatePicker/DatePickerBase.types.d.ts +7 -0
  327. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  328. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +14 -0
  329. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  330. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +10 -0
  331. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
  332. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  333. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +10 -0
  334. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  335. package/types/components/DatePicker/hooks/useDatePicker.d.ts +1 -1
  336. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  337. package/types/components/DatePicker/utils/setInitValue.d.ts +2 -0
  338. package/types/components/DatePicker/utils/setInitValue.d.ts.map +1 -0
  339. package/types/components/Segment/tokens.d.ts +0 -13
  340. package/types/components/Segment/tokens.d.ts.map +1 -1
  341. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +1 -10
  342. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
  343. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts +1 -0
  344. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts.map +1 -1
  345. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts +1 -19
  346. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts.map +1 -1
  347. package/types/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base.d.ts.map +1 -1
  348. package/types/components/Segment/ui/SegmentGroup/variations/_size/base.d.ts.map +1 -1
  349. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +2 -8
  350. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
  351. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts +1 -7
  352. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts.map +1 -1
  353. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts +1 -14
  354. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts.map +1 -1
  355. package/types/components/Segment/ui/SegmentItem/variations/_pilled/base.d.ts.map +1 -1
  356. package/types/components/Segment/ui/SegmentItem/variations/_view/base.d.ts.map +1 -1
  357. package/types/components/Slider/Slider.d.ts.map +1 -1
  358. package/types/components/Slider/Slider.types.d.ts +2 -2
  359. package/types/components/Slider/Slider.types.d.ts.map +1 -1
  360. package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
  361. package/types/components/Slider/components/Double/Double.types.d.ts +2 -0
  362. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  363. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts +4 -0
  364. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.d.ts.map +1 -0
  365. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts +40 -0
  366. package/types/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.types.d.ts.map +1 -0
  367. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  368. package/types/components/Slider/components/Single/Single.types.d.ts +35 -5
  369. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  370. package/types/components/Slider/components/index.d.ts +2 -0
  371. package/types/components/Slider/components/index.d.ts.map +1 -1
  372. package/types/components/Slider/utils/index.d.ts +1 -0
  373. package/types/components/Slider/utils/index.d.ts.map +1 -1
  374. package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
  375. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  376. package/types/components/_Icon/Icon.assets/DisclosureLeft.d.ts.map +1 -1
  377. package/types/components/_Icon/Icon.assets/DisclosureRight.d.ts.map +1 -1
  378. package/types/components/_Icon/index.d.ts +0 -3
  379. package/types/components/_Icon/index.d.ts.map +1 -1
  380. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +7 -0
  381. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
  382. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts +1 -10
  383. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts.map +1 -1
  384. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts +0 -3
  385. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  386. package/types/examples/plasma_b2c/components/Segment/SegmentItem.config.d.ts.map +1 -1
  387. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +47 -1
  388. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
  389. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +7 -0
  390. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
  391. package/types/examples/plasma_web/components/Segment/Segment.d.ts +1 -13
  392. package/types/examples/plasma_web/components/Segment/Segment.d.ts.map +1 -1
  393. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts +0 -6
  394. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  395. package/types/examples/plasma_web/components/Segment/SegmentItem.config.d.ts.map +1 -1
  396. package/types/examples/plasma_web/components/Slider/Slider.d.ts +47 -1
  397. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
  398. package/types/hooks/index.d.ts +1 -0
  399. package/types/hooks/index.d.ts.map +1 -1
  400. package/types/hooks/useForm.d.ts +10 -0
  401. package/types/hooks/useForm.d.ts.map +1 -0
  402. package/types/types/FormType.d.ts +13 -0
  403. package/types/types/FormType.d.ts.map +1 -0
  404. package/types/utils/index.d.ts +1 -0
  405. package/types/utils/index.d.ts.map +1 -1
  406. package/types/utils/inputHidden.d.ts +2 -0
  407. package/types/utils/inputHidden.d.ts.map +1 -0
  408. package/types/utils/setRefList.d.ts +6 -0
  409. package/types/utils/setRefList.d.ts.map +1 -0
  410. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_6y4o38.css +0 -3
  411. package/cjs/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base_a7w5s0.css +0 -1
  412. package/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -9
  413. package/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/base.js.map +0 -1
  414. package/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/base_1ejecy9.css +0 -1
  415. package/cjs/components/Segment/ui/SegmentGroup/variations/_size/base_1dfesjp.css +0 -1
  416. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_1tv52dl.css +0 -4
  417. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_dettiq.css +0 -1
  418. package/cjs/components/_Icon/Icon.assets/DisclosureLeftCentered.js.map +0 -1
  419. package/cjs/components/_Icon/Icons/IconDisclosureLeftCentered.js.map +0 -1
  420. package/emotion/cjs/components/Segment/README.md +0 -61
  421. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -10
  422. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/tokens.json +0 -1
  423. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureDown.js +0 -21
  424. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureLeftCentered.js +0 -22
  425. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureUp.js +0 -21
  426. package/emotion/cjs/components/_Icon/Icons/IconDisclosureDown.js +0 -22
  427. package/emotion/cjs/components/_Icon/Icons/IconDisclosureLeftCentered.js +0 -22
  428. package/emotion/cjs/components/_Icon/Icons/IconDisclosureUp.js +0 -22
  429. package/emotion/es/components/Segment/README.md +0 -61
  430. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -4
  431. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_orientation/tokens.json +0 -1
  432. package/emotion/es/components/_Icon/Icon.assets/DisclosureDown.js +0 -14
  433. package/emotion/es/components/_Icon/Icon.assets/DisclosureLeftCentered.js +0 -15
  434. package/emotion/es/components/_Icon/Icon.assets/DisclosureUp.js +0 -14
  435. package/emotion/es/components/_Icon/Icons/IconDisclosureDown.js +0 -15
  436. package/emotion/es/components/_Icon/Icons/IconDisclosureLeftCentered.js +0 -15
  437. package/emotion/es/components/_Icon/Icons/IconDisclosureUp.js +0 -15
  438. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_6y4o38.css +0 -3
  439. package/es/components/Segment/ui/SegmentGroup/variations/_filledBackgound/base_a7w5s0.css +0 -1
  440. package/es/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -5
  441. package/es/components/Segment/ui/SegmentGroup/variations/_orientation/base.js.map +0 -1
  442. package/es/components/Segment/ui/SegmentGroup/variations/_orientation/base_1ejecy9.css +0 -1
  443. package/es/components/Segment/ui/SegmentGroup/variations/_size/base_1dfesjp.css +0 -1
  444. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_1tv52dl.css +0 -4
  445. package/es/components/Segment/ui/SegmentItem/variations/_view/base_dettiq.css +0 -1
  446. package/es/components/_Icon/Icon.assets/DisclosureLeftCentered.js.map +0 -1
  447. package/es/components/_Icon/Icons/IconDisclosureLeftCentered.js.map +0 -1
  448. package/styled-components/cjs/components/Segment/README.md +0 -61
  449. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -10
  450. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_orientation/tokens.json +0 -1
  451. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureDown.js +0 -21
  452. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureLeftCentered.js +0 -22
  453. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureUp.js +0 -21
  454. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureDown.js +0 -22
  455. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureLeftCentered.js +0 -22
  456. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureUp.js +0 -22
  457. package/styled-components/es/components/Segment/README.md +0 -61
  458. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_orientation/base.js +0 -4
  459. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_orientation/tokens.json +0 -1
  460. package/styled-components/es/components/_Icon/Icon.assets/DisclosureDown.js +0 -14
  461. package/styled-components/es/components/_Icon/Icon.assets/DisclosureLeftCentered.js +0 -15
  462. package/styled-components/es/components/_Icon/Icon.assets/DisclosureUp.js +0 -14
  463. package/styled-components/es/components/_Icon/Icons/IconDisclosureDown.js +0 -15
  464. package/styled-components/es/components/_Icon/Icons/IconDisclosureLeftCentered.js +0 -15
  465. package/styled-components/es/components/_Icon/Icons/IconDisclosureUp.js +0 -15
  466. package/types/components/Segment/ui/SegmentGroup/variations/_orientation/base.d.ts +0 -2
  467. package/types/components/Segment/ui/SegmentGroup/variations/_orientation/base.d.ts.map +0 -1
  468. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts +0 -4
  469. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts.map +0 -1
  470. package/types/components/_Icon/Icon.assets/DisclosureLeftCentered.d.ts +0 -4
  471. package/types/components/_Icon/Icon.assets/DisclosureLeftCentered.d.ts.map +0 -1
  472. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts +0 -4
  473. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts.map +0 -1
  474. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts +0 -4
  475. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts.map +0 -1
  476. package/types/components/_Icon/Icons/IconDisclosureLeftCentered.d.ts +0 -4
  477. package/types/components/_Icon/Icons/IconDisclosureLeftCentered.d.ts.map +0 -1
  478. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts +0 -4
  479. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/ui/Tabs/Tabs.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef, KeyboardEvent } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { IconDisclosureLeftCentered, IconDisclosureRightCentered } from '../../../_Icon';\nimport { classes, tokens } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabItemRefs, TabsContext } from '../../TabsContext';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as stretchCSS } from './variations/_stretch/base';\nimport { StyledArrow, StyledContent, StyledContentWrapper, base } from './Tabs.styles';\nimport type { TabsProps } from './Tabs.types';\n\nenum Keys {\n end = 35,\n home = 36,\n left = 37,\n right = 39,\n}\n\nexport const tabsRoot = (Root: RootProps<HTMLDivElement, TabsProps>) =>\n forwardRef<HTMLDivElement, TabsProps>((props, outerRef) => {\n const {\n id,\n stretch = false,\n disabled = false,\n clip = 'scroll',\n size,\n view,\n children,\n pilled = false,\n index,\n className,\n ...rest\n } = props;\n const [firstItemVisible, setFirstItemVisible] = useState(true);\n const [lastItemVisible, setLastItemVisible] = useState(true);\n\n const refs = useMemo(() => new TabItemRefs(index), []);\n\n const uniqId = safeUseId();\n const tabsId = id || uniqId;\n\n const isFilled = view === 'filled'; // outer padding is only for filled view\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n\n const stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.tabsStretch : undefined;\n const hasLeftArrowClass = !firstItemVisible ? classes.tabsHasLeftArrow : undefined;\n const hasRightArrowClass = !lastItemVisible ? classes.tabsHasRightArrow : undefined;\n const clipScrollClass = clip === 'scroll' ? classes.tabsClipScroll : undefined;\n const clipShowAllClass = clip === 'showAll' ? classes.tabsClipShowAll : undefined;\n\n const scrollRef = useRef<HTMLElement | null>(null);\n const trackRef = useRef<HTMLElement | null>(null);\n const leftArrowRef = useRef<HTMLButtonElement | null>(null);\n\n const onPrev = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollLeft = Math.round(scrollRef.current.scrollLeft);\n const firstOverflowingTab = refs.items\n .slice()\n .reverse()\n .find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabStartX = item.current.offsetLeft;\n\n return tabStartX < scrollLeft;\n });\n\n firstOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const onNext = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);\n const lastOverflowingTab = refs.items.find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabEndX = item.current.offsetLeft + item.current.offsetWidth;\n\n return tabEndX > scrollRight;\n });\n\n lastOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Предыдущий таб\"\n onClick={onPrev}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n ref={leftArrowRef}\n isLeftArrow\n >\n <IconDisclosureLeftCentered color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onPrev, disabled, isFilled],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Следующий таб\"\n onClick={onNext}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n >\n <IconDisclosureRightCentered color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onNext, disabled, isFilled],\n );\n\n const handleScroll = useCallback((event: React.UIEvent<HTMLElement>): void => {\n event.stopPropagation();\n const maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;\n const scrollLeft = Math.round(event.currentTarget.scrollLeft);\n\n setFirstItemVisible(scrollLeft <= 0);\n setLastItemVisible(scrollLeft >= maxScrollLeft);\n }, []);\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (index === undefined) {\n return;\n }\n\n const minIndex = 0;\n const maxIndex = refs.items.length - 1;\n let nextIndex: number;\n\n switch (event.keyCode) {\n case Keys.end:\n nextIndex = maxIndex;\n break;\n case Keys.left:\n nextIndex = index > minIndex ? index - 1 : index;\n break;\n case Keys.right:\n nextIndex = index < maxIndex ? index + 1 : index;\n break;\n case Keys.home:\n nextIndex = minIndex;\n break;\n default:\n return;\n }\n\n if (nextIndex !== index) {\n event.preventDefault();\n refs.items[nextIndex].current?.focus();\n refs.items[nextIndex].current?.scrollIntoView({\n block: 'center',\n inline: 'center',\n behavior: 'smooth',\n });\n }\n },\n [index],\n );\n\n useEffect(() => {\n setLastItemVisible(scrollRef.current?.scrollWidth === scrollRef.current?.clientWidth);\n }, []);\n\n // Этот хук компенсирует появление левой стрелки при прокрутке\n useEffect(() => {\n if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {\n return;\n }\n\n scrollRef.current.scrollTo({\n left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth),\n });\n }, [firstItemVisible]);\n\n return (\n <TabsContext.Provider value={refs}>\n <Root\n view={view}\n role=\"tablist\"\n size={size}\n pilled={pilled}\n id={tabsId}\n ref={outerRef}\n disabled={disabled}\n className={cx(pilledClass, stretchClass, hasLeftArrowClass, hasRightArrowClass, className)}\n onKeyDown={onKeyDown}\n {...rest}\n >\n {!firstItemVisible && PreviousButton}\n <StyledContentWrapper\n className={cx(clipScrollClass, clipShowAllClass)}\n ref={scrollRef as MutableRefObject<HTMLDivElement | null>}\n onScroll={handleScroll}\n >\n <StyledContent ref={trackRef as MutableRefObject<HTMLDivElement | null>}>\n {children}\n </StyledContent>\n </StyledContentWrapper>\n {!lastItemVisible && NextButton}\n </Root>\n </TabsContext.Provider>\n );\n });\n\nexport const tabsConfig = {\n name: 'Tabs',\n tag: 'div',\n layout: tabsRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n stretch: {\n css: stretchCSS,\n attrs: true,\n },\n pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["Keys","tabsRoot","Root","forwardRef","props","outerRef","id","_props$stretch","stretch","_props$disabled","disabled","_props$clip","clip","size","view","children","_props$pilled","pilled","index","className","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","firstItemVisible","setFirstItemVisible","_useState3","_useState4","lastItemVisible","setLastItemVisible","refs","useMemo","TabItemRefs","uniqId","safeUseId","tabsId","isFilled","pilledAttr","pilledClass","classes","tabsPilled","undefined","stretchClass","tabsStretch","hasLeftArrowClass","tabsHasLeftArrow","hasRightArrowClass","tabsHasRightArrow","clipScrollClass","tabsClipScroll","clipShowAllClass","tabsClipShowAll","scrollRef","useRef","trackRef","leftArrowRef","onPrev","useCallback","_firstOverflowingTab$","current","scrollLeft","Math","round","firstOverflowingTab","items","slice","reverse","find","item","offsetLeft","tabStartX","scrollIntoView","block","inline","onNext","_lastOverflowingTab$c","scrollRight","clientWidth","lastOverflowingTab","tabEndX","offsetWidth","PreviousButton","React","createElement","StyledArrow","type","onClick","tabIndex","ref","isLeftArrow","IconDisclosureLeftCentered","color","concat","tokens","arrowColor","NextButton","IconDisclosureRightCentered","handleScroll","event","stopPropagation","maxScrollLeft","currentTarget","scrollWidth","onKeyDown","minIndex","maxIndex","length","nextIndex","keyCode","end","left","right","home","_refs$items$nextIndex","_refs$items$nextIndex2","preventDefault","focus","behavior","useEffect","_scrollRef$current","_scrollRef$current2","scrollTo","TabsContext","Provider","value","_extends","role","cx","StyledContentWrapper","onScroll","StyledContent","tabsConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","stretchCSS","pilledCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAeuF,IAGlFA,IAAI,0BAAJA,IAAI,EAAA;AAAJA,EAAAA,IAAI,CAAJA,IAAI,CAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAA,KAAA,CAAA;AAAJA,EAAAA,IAAI,CAAJA,IAAI,CAAA,MAAA,CAAA,GAAA,EAAA,CAAA,GAAA,MAAA,CAAA;AAAJA,EAAAA,IAAI,CAAJA,IAAI,CAAA,MAAA,CAAA,GAAA,EAAA,CAAA,GAAA,MAAA,CAAA;AAAJA,EAAAA,IAAI,CAAJA,IAAI,CAAA,OAAA,CAAA,GAAA,EAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAAJA,IAAI,CAAA;AAAA,CAAA,CAAJA,IAAI,IAAA,EAAA,CAAA,CAAA;IAOIC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,IAA0C,EAAA;AAAA,EAAA,oBAC/DC,gBAAU,CAA4B,UAACC,KAAK,EAAEC,QAAQ,EAAK;AACvD,IAAA,IACIC,EAAE,GAWFF,KAAK,CAXLE,EAAE;MAAAC,cAAA,GAWFH,KAAK,CAVLI,OAAO;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;MAAAE,eAAA,GAUfL,KAAK,CATLM,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;MAAAE,WAAA,GAShBP,KAAK,CARLQ,IAAI;AAAJA,MAAAA,IAAI,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,WAAA;MACfE,IAAI,GAOJT,KAAK,CAPLS,IAAI;MACJC,IAAI,GAMJV,KAAK,CANLU,IAAI;MACJC,QAAQ,GAKRX,KAAK,CALLW,QAAQ;MAAAC,aAAA,GAKRZ,KAAK,CAJLa,MAAM;AAANA,MAAAA,MAAM,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;MACdE,OAAK,GAGLd,KAAK,CAHLc,KAAK;MACLC,SAAS,GAETf,KAAK,CAFLe,SAAS;AACNC,MAAAA,IAAI,GAAAC,iDAAA,CACPjB,KAAK,EAAAkB,SAAA,CAAA,CAAA;AACT,IAAA,IAAAC,SAAA,GAAgDC,cAAQ,CAAC,IAAI,CAAC;MAAAC,UAAA,GAAAC,uCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAvDI,MAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,mBAAmB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,IAAA,IAAAI,UAAA,GAA8CL,cAAQ,CAAC,IAAI,CAAC;MAAAM,UAAA,GAAAJ,uCAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAArDE,MAAAA,eAAe,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,kBAAkB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAE1C,IAAMG,IAAI,GAAGC,aAAO,CAAC,YAAA;AAAA,MAAA,OAAM,IAAIC,uBAAW,CAACjB,OAAK,CAAC,CAAA;AAAA,KAAA,EAAE,EAAE,CAAC,CAAA;AAEtD,IAAA,IAAMkB,MAAM,GAAGC,oBAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,MAAM,GAAGhC,EAAE,IAAI8B,MAAM,CAAA;AAE3B,IAAA,IAAMG,QAAQ,GAAGzB,IAAI,KAAK,QAAQ,CAAC;AACnC,IAAA,IAAM0B,UAAU,GAAG1B,IAAI,KAAK,OAAO,IAAIG,MAAM,CAAA;IAC7C,IAAMwB,WAAW,GAAGD,UAAU,GAAGE,cAAO,CAACC,UAAU,GAAGC,SAAS,CAAA;AAE/D,IAAA,IAAMC,YAAY,GAAGlB,gBAAgB,IAAII,eAAe,IAAIvB,OAAO,GAAGkC,cAAO,CAACI,WAAW,GAAGF,SAAS,CAAA;IACrG,IAAMG,iBAAiB,GAAG,CAACpB,gBAAgB,GAAGe,cAAO,CAACM,gBAAgB,GAAGJ,SAAS,CAAA;IAClF,IAAMK,kBAAkB,GAAG,CAAClB,eAAe,GAAGW,cAAO,CAACQ,iBAAiB,GAAGN,SAAS,CAAA;IACnF,IAAMO,eAAe,GAAGvC,IAAI,KAAK,QAAQ,GAAG8B,cAAO,CAACU,cAAc,GAAGR,SAAS,CAAA;IAC9E,IAAMS,gBAAgB,GAAGzC,IAAI,KAAK,SAAS,GAAG8B,cAAO,CAACY,eAAe,GAAGV,SAAS,CAAA;AAEjF,IAAA,IAAMW,SAAS,GAAGC,YAAM,CAAqB,IAAI,CAAC,CAAA;AAClD,IAAA,IAAMC,QAAQ,GAAGD,YAAM,CAAqB,IAAI,CAAC,CAAA;AACjD,IAAA,IAAME,YAAY,GAAGF,YAAM,CAA2B,IAAI,CAAC,CAAA;AAE3D,IAAA,IAAMG,MAAM,GAAGC,iBAAW,CAAC,YAAM;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAC7B,MAAA,IAAInD,QAAQ,IAAI,CAAC6C,SAAS,CAACO,OAAO,EAAE;AAChC,QAAA,OAAA;AACJ,OAAA;MAEA,IAAMC,UAAU,GAAGC,IAAI,CAACC,KAAK,CAACV,SAAS,CAACO,OAAO,CAACC,UAAU,CAAC,CAAA;AAC3D,MAAA,IAAMG,mBAAmB,GAAGjC,IAAI,CAACkC,KAAK,CACjCC,KAAK,EAAE,CACPC,OAAO,EAAE,CACTC,IAAI,CAAC,UAACC,IAA0C,EAAK;AAClD,QAAA,IAAI,CAACA,IAAI,CAACT,OAAO,IAAIS,IAAI,CAACT,OAAO,CAACU,UAAU,KAAK5B,SAAS,EAAE;AACxD,UAAA,OAAA;AACJ,SAAA;AACA,QAAA,IAAM6B,SAAS,GAAGF,IAAI,CAACT,OAAO,CAACU,UAAU,CAAA;QAEzC,OAAOC,SAAS,GAAGV,UAAU,CAAA;AACjC,OAAC,CAAC,CAAA;AAENG,MAAAA,mBAAmB,KAAnBA,IAAAA,IAAAA,mBAAmB,KAAAL,KAAAA,CAAAA,IAAAA,CAAAA,qBAAA,GAAnBK,mBAAmB,CAAEJ,OAAO,MAAA,IAAA,IAAAD,qBAAA,KAAA,KAAA,CAAA,IAA5BA,qBAAA,CAA8Ba,cAAc,CAAC;AAAEC,QAAAA,KAAK,EAAE,SAAS;AAAEC,QAAAA,MAAM,EAAE,SAAA;AAAU,OAAC,CAAC,CAAA;KACxF,EAAE,CAAClE,QAAQ,EAAE6C,SAAS,EAAEtB,IAAI,CAAC,CAAC,CAAA;AAE/B,IAAA,IAAM4C,MAAM,GAAGjB,iBAAW,CAAC,YAAM;AAAA,MAAA,IAAAkB,qBAAA,CAAA;AAC7B,MAAA,IAAIpE,QAAQ,IAAI,CAAC6C,SAAS,CAACO,OAAO,EAAE;AAChC,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAMiB,WAAW,GAAGf,IAAI,CAACC,KAAK,CAACV,SAAS,CAACO,OAAO,CAACC,UAAU,GAAGR,SAAS,CAACO,OAAO,CAACkB,WAAW,CAAC,CAAA;MAC5F,IAAMC,kBAAkB,GAAGhD,IAAI,CAACkC,KAAK,CAACG,IAAI,CAAC,UAACC,IAA0C,EAAK;AACvF,QAAA,IAAI,CAACA,IAAI,CAACT,OAAO,IAAIS,IAAI,CAACT,OAAO,CAACU,UAAU,KAAK5B,SAAS,EAAE;AACxD,UAAA,OAAA;AACJ,SAAA;AACA,QAAA,IAAMsC,OAAO,GAAGX,IAAI,CAACT,OAAO,CAACU,UAAU,GAAGD,IAAI,CAACT,OAAO,CAACqB,WAAW,CAAA;QAElE,OAAOD,OAAO,GAAGH,WAAW,CAAA;AAChC,OAAC,CAAC,CAAA;AAEFE,MAAAA,kBAAkB,KAAlBA,IAAAA,IAAAA,kBAAkB,KAAAH,KAAAA,CAAAA,IAAAA,CAAAA,qBAAA,GAAlBG,kBAAkB,CAAEnB,OAAO,MAAA,IAAA,IAAAgB,qBAAA,KAAA,KAAA,CAAA,IAA3BA,qBAAA,CAA6BJ,cAAc,CAAC;AAAEC,QAAAA,KAAK,EAAE,SAAS;AAAEC,QAAAA,MAAM,EAAE,SAAA;AAAU,OAAC,CAAC,CAAA;KACvF,EAAE,CAAClE,QAAQ,EAAE6C,SAAS,EAAEtB,IAAI,CAAC,CAAC,CAAA;IAE/B,IAAMmD,cAAc,GAAGlD,aAAO,CAC1B,YAAA;AAAA,MAAA,oBACImD,KAAA,CAAAC,aAAA,CAACC,uBAAW,EAAA;AACRC,QAAAA,IAAI,EAAC,QAAQ;AACb,QAAA,YAAA,EAAW,iFAAgB;AAC3BC,QAAAA,OAAO,EAAE9B,MAAO;AAChB+B,QAAAA,QAAQ,EAAEhF,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAE;AAC5BA,QAAAA,QAAQ,EAAEA,QAAS;AACnB6B,QAAAA,QAAQ,EAAEA,QAAS;AACnBoD,QAAAA,GAAG,EAAEjC,YAAa;QAClBkC,WAAW,EAAA,IAAA;AAAA,OAAA,eAEXP,KAAA,CAAAC,aAAA,CAACO,qDAA0B,EAAA;AAACC,QAAAA,KAAK,EAAAC,MAAAA,CAAAA,MAAA,CAASC,aAAM,CAACC,UAAU,EAAA,GAAA,CAAA;AAAI,OAAE,CACxD,CAAC,CAAA;KACjB,EACD,CAACtC,MAAM,EAAEjD,QAAQ,EAAE6B,QAAQ,CAC/B,CAAC,CAAA;IAED,IAAM2D,UAAU,GAAGhE,aAAO,CACtB,YAAA;AAAA,MAAA,oBACImD,KAAA,CAAAC,aAAA,CAACC,uBAAW,EAAA;AACRC,QAAAA,IAAI,EAAC,QAAQ;AACb,QAAA,YAAA,EAAW,2EAAe;AAC1BC,QAAAA,OAAO,EAAEZ,MAAO;AAChBa,QAAAA,QAAQ,EAAEhF,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAE;AAC5BA,QAAAA,QAAQ,EAAEA,QAAS;AACnB6B,QAAAA,QAAQ,EAAEA,QAAAA;AAAS,OAAA,eAEnB8C,KAAA,CAAAC,aAAA,CAACa,uDAA2B,EAAA;AAACL,QAAAA,KAAK,EAAAC,MAAAA,CAAAA,MAAA,CAASC,aAAM,CAACC,UAAU,EAAA,GAAA,CAAA;AAAI,OAAE,CACzD,CAAC,CAAA;KACjB,EACD,CAACpB,MAAM,EAAEnE,QAAQ,EAAE6B,QAAQ,CAC/B,CAAC,CAAA;AAED,IAAA,IAAM6D,YAAY,GAAGxC,iBAAW,CAAC,UAACyC,KAAiC,EAAW;MAC1EA,KAAK,CAACC,eAAe,EAAE,CAAA;AACvB,MAAA,IAAMC,aAAa,GAAGF,KAAK,CAACG,aAAa,CAACC,WAAW,GAAGJ,KAAK,CAACG,aAAa,CAACxB,WAAW,CAAA;MACvF,IAAMjB,UAAU,GAAGC,IAAI,CAACC,KAAK,CAACoC,KAAK,CAACG,aAAa,CAACzC,UAAU,CAAC,CAAA;AAE7DnC,MAAAA,mBAAmB,CAACmC,UAAU,IAAI,CAAC,CAAC,CAAA;AACpC/B,MAAAA,kBAAkB,CAAC+B,UAAU,IAAIwC,aAAa,CAAC,CAAA;KAClD,EAAE,EAAE,CAAC,CAAA;AAEN,IAAA,IAAMG,SAAS,GAAG9C,iBAAW,CACzB,UAACyC,KAAoC,EAAK;MACtC,IAAInF,OAAK,KAAK0B,SAAS,EAAE;AACrB,QAAA,OAAA;AACJ,OAAA;MAEA,IAAM+D,QAAQ,GAAG,CAAC,CAAA;MAClB,IAAMC,QAAQ,GAAG3E,IAAI,CAACkC,KAAK,CAAC0C,MAAM,GAAG,CAAC,CAAA;AACtC,MAAA,IAAIC,SAAiB,CAAA;MAErB,QAAQT,KAAK,CAACU,OAAO;QACjB,KAAK/G,IAAI,CAACgH,GAAG;AACTF,UAAAA,SAAS,GAAGF,QAAQ,CAAA;AACpB,UAAA,MAAA;QACJ,KAAK5G,IAAI,CAACiH,IAAI;UACVH,SAAS,GAAG5F,OAAK,GAAGyF,QAAQ,GAAGzF,OAAK,GAAG,CAAC,GAAGA,OAAK,CAAA;AAChD,UAAA,MAAA;QACJ,KAAKlB,IAAI,CAACkH,KAAK;UACXJ,SAAS,GAAG5F,OAAK,GAAG0F,QAAQ,GAAG1F,OAAK,GAAG,CAAC,GAAGA,OAAK,CAAA;AAChD,UAAA,MAAA;QACJ,KAAKlB,IAAI,CAACmH,IAAI;AACVL,UAAAA,SAAS,GAAGH,QAAQ,CAAA;AACpB,UAAA,MAAA;AACJ,QAAA;AACI,UAAA,OAAA;AACR,OAAA;MAEA,IAAIG,SAAS,KAAK5F,OAAK,EAAE;QAAA,IAAAkG,qBAAA,EAAAC,sBAAA,CAAA;QACrBhB,KAAK,CAACiB,cAAc,EAAE,CAAA;AACtB,QAAA,CAAAF,qBAAA,GAAAnF,IAAI,CAACkC,KAAK,CAAC2C,SAAS,CAAC,CAAChD,OAAO,cAAAsD,qBAAA,KAAA,KAAA,CAAA,IAA7BA,qBAAA,CAA+BG,KAAK,EAAE,CAAA;AACtC,QAAA,CAAAF,sBAAA,GAAApF,IAAI,CAACkC,KAAK,CAAC2C,SAAS,CAAC,CAAChD,OAAO,cAAAuD,sBAAA,KAAA,KAAA,CAAA,IAA7BA,sBAAA,CAA+B3C,cAAc,CAAC;AAC1CC,UAAAA,KAAK,EAAE,QAAQ;AACfC,UAAAA,MAAM,EAAE,QAAQ;AAChB4C,UAAAA,QAAQ,EAAE,QAAA;AACd,SAAC,CAAC,CAAA;AACN,OAAA;AACJ,KAAC,EACD,CAACtG,OAAK,CACV,CAAC,CAAA;AAEDuG,IAAAA,eAAS,CAAC,YAAM;MAAA,IAAAC,kBAAA,EAAAC,mBAAA,CAAA;MACZ3F,kBAAkB,CAAC,CAAA0F,CAAAA,kBAAA,GAAAnE,SAAS,CAACO,OAAO,MAAA,IAAA,IAAA4D,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,kBAAA,CAAmBjB,WAAW,OAAAkB,CAAAA,mBAAA,GAAKpE,SAAS,CAACO,OAAO,MAAA6D,IAAAA,IAAAA,mBAAA,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAA,CAAmB3C,WAAW,CAAC,CAAA,CAAA;KACxF,EAAE,EAAE,CAAC,CAAA;;AAEN;AACAyC,IAAAA,eAAS,CAAC,YAAM;MACZ,IAAI9F,gBAAgB,IAAI,CAAC4B,SAAS,CAACO,OAAO,IAAI,CAACJ,YAAY,CAACI,OAAO,EAAE;AACjE,QAAA,OAAA;AACJ,OAAA;AAEAP,MAAAA,SAAS,CAACO,OAAO,CAAC8D,QAAQ,CAAC;AACvBX,QAAAA,IAAI,EAAEjD,IAAI,CAACC,KAAK,CAACV,SAAS,CAACO,OAAO,CAACC,UAAU,GAAGL,YAAY,CAACI,OAAO,CAACkB,WAAW,CAAA;AACpF,OAAC,CAAC,CAAA;AACN,KAAC,EAAE,CAACrD,gBAAgB,CAAC,CAAC,CAAA;AAEtB,IAAA,oBACI0D,KAAA,CAAAC,aAAA,CAACuC,uBAAW,CAACC,QAAQ,EAAA;AAACC,MAAAA,KAAK,EAAE9F,IAAAA;AAAK,KAAA,eAC9BoD,KAAA,CAAAC,aAAA,CAACpF,IAAI,EAAA8H,iCAAA,CAAA;AACDlH,MAAAA,IAAI,EAAEA,IAAK;AACXmH,MAAAA,IAAI,EAAC,SAAS;AACdpH,MAAAA,IAAI,EAAEA,IAAK;AACXI,MAAAA,MAAM,EAAEA,MAAO;AACfX,MAAAA,EAAE,EAAEgC,MAAO;AACXqD,MAAAA,GAAG,EAAEtF,QAAS;AACdK,MAAAA,QAAQ,EAAEA,QAAS;AACnBS,MAAAA,SAAS,EAAE+G,QAAE,CAACzF,WAAW,EAAEI,YAAY,EAAEE,iBAAiB,EAAEE,kBAAkB,EAAE9B,SAAS,CAAE;AAC3FuF,MAAAA,SAAS,EAAEA,SAAAA;KACPtF,EAAAA,IAAI,CAEP,EAAA,CAACO,gBAAgB,IAAIyD,cAAc,eACpCC,KAAA,CAAAC,aAAA,CAAC6C,gCAAoB,EAAA;AACjBhH,MAAAA,SAAS,EAAE+G,QAAE,CAAC/E,eAAe,EAAEE,gBAAgB,CAAE;AACjDsC,MAAAA,GAAG,EAAEpC,SAAqD;AAC1D6E,MAAAA,QAAQ,EAAEhC,YAAAA;AAAa,KAAA,eAEvBf,KAAA,CAAAC,aAAA,CAAC+C,yBAAa,EAAA;AAAC1C,MAAAA,GAAG,EAAElC,QAAAA;KACf1C,EAAAA,QACU,CACG,CAAC,EACtB,CAACgB,eAAe,IAAImE,UACnB,CACY,CAAC,CAAA;AAE/B,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMoC,UAAU,GAAG;AACtBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAExI,QAAQ;AAChByI,EAAAA,IAAI,EAAJA,gBAAI;AACJC,EAAAA,UAAU,EAAE;AACR9H,IAAAA,IAAI,EAAE;AACF+H,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACD/H,IAAAA,IAAI,EAAE;AACF8H,MAAAA,GAAG,EAAEE,WAAAA;KACR;AACDpI,IAAAA,QAAQ,EAAE;AACNkI,MAAAA,GAAG,EAAEG,WAAW;AAChBC,MAAAA,KAAK,EAAE,IAAA;KACV;AACDxI,IAAAA,OAAO,EAAE;AACLoI,MAAAA,GAAG,EAAEK,WAAU;AACfD,MAAAA,KAAK,EAAE,IAAA;KACV;AACD/H,IAAAA,MAAM,EAAE;AACJ2H,MAAAA,GAAG,EAAEM,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNrI,IAAAA,IAAI,EAAE,OAAO;AACbD,IAAAA,IAAI,EAAE,IAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/ui/Tabs/Tabs.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef, KeyboardEvent } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../engines/types';\nimport { IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';\nimport { classes, tokens } from '../../tokens';\nimport { cx } from '../../../../utils';\nimport { TabItemRefs, TabsContext } from '../../TabsContext';\n\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport { base as stretchCSS } from './variations/_stretch/base';\nimport { StyledArrow, StyledContent, StyledContentWrapper, base } from './Tabs.styles';\nimport type { TabsProps } from './Tabs.types';\n\nenum Keys {\n end = 35,\n home = 36,\n left = 37,\n right = 39,\n}\n\nexport const tabsRoot = (Root: RootProps<HTMLDivElement, TabsProps>) =>\n forwardRef<HTMLDivElement, TabsProps>((props, outerRef) => {\n const {\n id,\n stretch = false,\n disabled = false,\n clip = 'scroll',\n size,\n view,\n children,\n pilled = false,\n index,\n className,\n ...rest\n } = props;\n const [firstItemVisible, setFirstItemVisible] = useState(true);\n const [lastItemVisible, setLastItemVisible] = useState(true);\n\n const refs = useMemo(() => new TabItemRefs(index), []);\n\n const uniqId = safeUseId();\n const tabsId = id || uniqId;\n\n const isFilled = view === 'filled'; // outer padding is only for filled view\n const pilledAttr = view !== 'clear' && pilled;\n const pilledClass = pilledAttr ? classes.tabsPilled : undefined;\n\n const stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.tabsStretch : undefined;\n const hasLeftArrowClass = !firstItemVisible ? classes.tabsHasLeftArrow : undefined;\n const hasRightArrowClass = !lastItemVisible ? classes.tabsHasRightArrow : undefined;\n const clipScrollClass = clip === 'scroll' ? classes.tabsClipScroll : undefined;\n const clipShowAllClass = clip === 'showAll' ? classes.tabsClipShowAll : undefined;\n\n const scrollRef = useRef<HTMLElement | null>(null);\n const trackRef = useRef<HTMLElement | null>(null);\n const leftArrowRef = useRef<HTMLButtonElement | null>(null);\n\n const onPrev = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollLeft = Math.round(scrollRef.current.scrollLeft);\n const firstOverflowingTab = refs.items\n .slice()\n .reverse()\n .find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabStartX = item.current.offsetLeft;\n\n return tabStartX < scrollLeft;\n });\n\n firstOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const onNext = useCallback(() => {\n if (disabled || !scrollRef.current) {\n return;\n }\n\n const scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);\n const lastOverflowingTab = refs.items.find((item: MutableRefObject<HTMLElement | null>) => {\n if (!item.current || item.current.offsetLeft === undefined) {\n return;\n }\n const tabEndX = item.current.offsetLeft + item.current.offsetWidth;\n\n return tabEndX > scrollRight;\n });\n\n lastOverflowingTab?.current?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [disabled, scrollRef, refs]);\n\n const PreviousButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Предыдущий таб\"\n onClick={onPrev}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n ref={leftArrowRef}\n isLeftArrow\n >\n <IconDisclosureLeft color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onPrev, disabled, isFilled],\n );\n\n const NextButton = useMemo(\n () => (\n <StyledArrow\n type=\"button\"\n aria-label=\"Следующий таб\"\n onClick={onNext}\n tabIndex={disabled ? -1 : 0}\n disabled={disabled}\n isFilled={isFilled}\n >\n <IconDisclosureRight color={`var(${tokens.arrowColor})`} />\n </StyledArrow>\n ),\n [onNext, disabled, isFilled],\n );\n\n const handleScroll = useCallback(\n (event: React.UIEvent<HTMLElement>): void => {\n event.stopPropagation();\n const maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;\n const scrollLeft = Math.round(event.currentTarget.scrollLeft);\n\n setFirstItemVisible(scrollLeft <= 0);\n setLastItemVisible(scrollLeft >= maxScrollLeft);\n },\n [setFirstItemVisible, setLastItemVisible],\n );\n\n const onKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (index === undefined) {\n return;\n }\n\n const minIndex = 0;\n const maxIndex = refs.items.length - 1;\n let nextIndex: number;\n\n switch (event.keyCode) {\n case Keys.end:\n nextIndex = maxIndex;\n break;\n case Keys.left:\n nextIndex = index > minIndex ? index - 1 : index;\n break;\n case Keys.right:\n nextIndex = index < maxIndex ? index + 1 : index;\n break;\n case Keys.home:\n nextIndex = minIndex;\n break;\n default:\n return;\n }\n\n if (nextIndex !== index) {\n event.preventDefault();\n refs.items[nextIndex].current?.focus();\n refs.items[nextIndex].current?.scrollIntoView({\n block: 'center',\n inline: 'center',\n behavior: 'smooth',\n });\n }\n },\n [index],\n );\n\n useEffect(() => {\n setLastItemVisible(scrollRef.current?.scrollWidth === scrollRef.current?.clientWidth);\n }, []);\n\n // Этот хук компенсирует появление левой стрелки при прокрутке\n useEffect(() => {\n if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {\n return;\n }\n\n scrollRef.current.scrollTo({\n left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth),\n });\n }, [firstItemVisible, scrollRef, leftArrowRef]);\n\n return (\n <TabsContext.Provider value={refs}>\n <Root\n view={view}\n role=\"tablist\"\n size={size}\n pilled={pilled}\n id={tabsId}\n ref={outerRef}\n disabled={disabled}\n className={cx(pilledClass, stretchClass, hasLeftArrowClass, hasRightArrowClass, className)}\n onKeyDown={onKeyDown}\n {...rest}\n >\n {!firstItemVisible && PreviousButton}\n <StyledContentWrapper\n className={cx(clipScrollClass, clipShowAllClass)}\n ref={scrollRef as MutableRefObject<HTMLDivElement | null>}\n onScroll={handleScroll}\n >\n <StyledContent ref={trackRef as MutableRefObject<HTMLDivElement | null>}>\n {children}\n </StyledContent>\n </StyledContentWrapper>\n {!lastItemVisible && NextButton}\n </Root>\n </TabsContext.Provider>\n );\n });\n\nexport const tabsConfig = {\n name: 'Tabs',\n tag: 'div',\n layout: tabsRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n stretch: {\n css: stretchCSS,\n attrs: true,\n },\n pilled: {\n css: pilledCSS,\n },\n },\n defaults: {\n view: 'clear',\n size: 'xs',\n },\n};\n"],"names":["Keys","tabsRoot","Root","forwardRef","props","outerRef","id","_props$stretch","stretch","_props$disabled","disabled","_props$clip","clip","size","view","children","_props$pilled","pilled","index","className","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","firstItemVisible","setFirstItemVisible","_useState3","_useState4","lastItemVisible","setLastItemVisible","refs","useMemo","TabItemRefs","uniqId","safeUseId","tabsId","isFilled","pilledAttr","pilledClass","classes","tabsPilled","undefined","stretchClass","tabsStretch","hasLeftArrowClass","tabsHasLeftArrow","hasRightArrowClass","tabsHasRightArrow","clipScrollClass","tabsClipScroll","clipShowAllClass","tabsClipShowAll","scrollRef","useRef","trackRef","leftArrowRef","onPrev","useCallback","_firstOverflowingTab$","current","scrollLeft","Math","round","firstOverflowingTab","items","slice","reverse","find","item","offsetLeft","tabStartX","scrollIntoView","block","inline","onNext","_lastOverflowingTab$c","scrollRight","clientWidth","lastOverflowingTab","tabEndX","offsetWidth","PreviousButton","React","createElement","StyledArrow","type","onClick","tabIndex","ref","isLeftArrow","IconDisclosureLeft","color","concat","tokens","arrowColor","NextButton","IconDisclosureRight","handleScroll","event","stopPropagation","maxScrollLeft","currentTarget","scrollWidth","onKeyDown","minIndex","maxIndex","length","nextIndex","keyCode","end","left","right","home","_refs$items$nextIndex","_refs$items$nextIndex2","preventDefault","focus","behavior","useEffect","_scrollRef$current","_scrollRef$current2","scrollTo","TabsContext","Provider","value","_extends","role","cx","StyledContentWrapper","onScroll","StyledContent","tabsConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","stretchCSS","pilledCSS","defaults"],"mappings":"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"}
@@ -13,6 +13,7 @@ var TextArea_tokens = require('./TextArea.tokens.js');
13
13
  var base$2 = require('./variations/_view/base.js');
14
14
  var base$1 = require('./variations/_size/base.js');
15
15
  var base$3 = require('./variations/_disabled/base.js');
16
+ var setRefList = require('../../utils/setRefList.js');
16
17
 
17
18
  var _excluded = ["helperText", "status", "resize", "rightHelper", "leftHelper", "contentRight", "autoResize", "minAuto", "maxAuto", "label", "labelPlacement", "placeholder", "defaultValue", "height", "width", "value", "disabled", "required", "requiredPlacement", "optional", "size", "view", "id", "style", "className", "readOnly", "rows", "cols", "onChange"];
18
19
  var innerPlaceholderUp = TextArea_tokens.classes.innerPlaceholderUp,
@@ -104,7 +105,7 @@ var textAreaRoot = function textAreaRoot(Root) {
104
105
  _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
105
106
  uncontrolledValue = _useState6[0],
106
107
  setUncontrolledValue = _useState6[1];
107
- var outerRef = innerRef && 'current' in innerRef ? innerRef : /*#__PURE__*/React.createRef();
108
+ var outerRef = /*#__PURE__*/React.createRef();
108
109
  var innerOptional = required ? false : optional;
109
110
  var hasHelper = Boolean(leftHelper || rightHelper || helperText);
110
111
  var hasOuterLabel = Boolean(label && labelPlacement === 'outer');
@@ -176,7 +177,7 @@ var textAreaRoot = function textAreaRoot(Root) {
176
177
  hasContentRight: Boolean(contentRight),
177
178
  hasHelper: hasHelper,
178
179
  applyCustomWidth: applyCustomWidth,
179
- ref: outerRef,
180
+ ref: setRefList.mergeRefs(outerRef, innerRef),
180
181
  disabled: disabled,
181
182
  height: autoResize ? minAuto : height,
182
183
  width: width,
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = innerRef && 'current' in innerRef ? innerRef : createRef<HTMLTextAreaElement>();\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && (\n <StyledIndicator className={cx(classes.outerLabelPlacement, requiredPlacementClass)} />\n )}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={outerRef}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","dynamicLabelClasses","_objectSpread","optionalTextNode","React","createElement","StyledOptionalText","StyledLabel","StyledIndicator","cx","outerLabelPlacement","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && (\n <StyledIndicator className={cx(classes.outerLabelPlacement, requiredPlacementClass)} />\n )}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","dynamicLabelClasses","_objectSpread","optionalTextNode","React","createElement","StyledOptionalText","StyledLabel","StyledIndicator","cx","outerLabelPlacement","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","mergeRefs","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
@@ -6,7 +6,7 @@ var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHel
6
6
  var React = require('react');
7
7
 
8
8
  var _path;
9
- var DisclosureLeftCentered = function DisclosureLeftCentered(props) {
9
+ var DisclosureLeft = function DisclosureLeft(props) {
10
10
  return /*#__PURE__*/React.createElement("svg", _rollupPluginBabelHelpers.extends({
11
11
  width: "100%",
12
12
  viewBox: "0 0 24 24",
@@ -19,5 +19,5 @@ var DisclosureLeftCentered = function DisclosureLeftCentered(props) {
19
19
  })));
20
20
  };
21
21
 
22
- exports.DisclosureLeftCentered = DisclosureLeftCentered;
23
- //# sourceMappingURL=DisclosureLeftCentered.js.map
22
+ exports.DisclosureLeft = DisclosureLeft;
23
+ //# sourceMappingURL=DisclosureLeft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisclosureLeft.js","sources":["../../../../src/components/_Icon/Icon.assets/DisclosureLeft.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IconProps } from '../IconRoot';\n\nexport const DisclosureLeft: React.FC<IconProps> = (props) => (\n <svg width=\"100%\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14.5309 6.96967C14.8238 7.26256 14.8238 7.73744 14.5309 8.03033L10.5613 12L14.5309 15.9697C14.8238 16.2626 14.8238 16.7374 14.5309 17.0303C14.238 17.3232 13.7632 17.3232 13.4703 17.0303L8.43994 12L13.4703 6.96967C13.7632 6.67678 14.238 6.67678 14.5309 6.96967Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n"],"names":["DisclosureLeft","props","React","createElement","_extends","width","viewBox","fill","_path","fillRule","clipRule","d"],"mappings":";;;;;;;;IAIaA,cAAmC,GAAG,SAAtCA,cAAmCA,CAAIC,KAAK,EAAA;AAAA,EAAA,oBACrDC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,iCAAA,CAAA;AAAKC,IAAAA,KAAK,EAAC,MAAM;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,IAAI,EAAC,MAAA;GAAWN,EAAAA,KAAK,GAAAO,KAAA,KAAAA,KAAA,gBACvDN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACIM,IAAAA,QAAQ,EAAC,SAAS;AAClBC,IAAAA,QAAQ,EAAC,SAAS;AAClBC,IAAAA,CAAC,EAAC,uQAAuQ;AACzQJ,IAAAA,IAAI,EAAC,cAAA;GACR,CAAC,CACD,CAAC,CAAA;AAAA;;;;"}
@@ -12,9 +12,10 @@ var DisclosureRight = function DisclosureRight(props) {
12
12
  viewBox: "0 0 24 24",
13
13
  fill: "none"
14
14
  }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
- d: "M18.21 6.96c-.29.3-.29.77 0 1.07L22.18 12l-3.97 3.96c-.29.3-.29.77 0 1.07.3.29.77.29 1.07 0L24.31 12l-5.03-5.04a.767.767 0 0 0-1.07 0Z",
16
- fill: "currentColor",
17
- fillRule: "evenodd"
15
+ fillRule: "evenodd",
16
+ clipRule: "evenodd",
17
+ d: "M9.46967 6.96967C9.17678 7.26256 9.17678 7.73744 9.46967 8.03033L13.4393 12L9.46967 15.9697C9.17678 16.2626 9.17678 16.7374 9.46967 17.0303C9.76256 17.3232 10.2374 17.3232 10.5303 17.0303L15.5607 12L10.5303 6.96967C10.2374 6.67678 9.76256 6.67678 9.46967 6.96967Z",
18
+ fill: "currentColor"
18
19
  })));
19
20
  };
20
21
 
@@ -1 +1 @@
1
- {"version":3,"file":"DisclosureRight.js","sources":["../../../../src/components/_Icon/Icon.assets/DisclosureRight.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IconProps } from '../IconRoot';\n\nexport const DisclosureRight: React.FC<IconProps> = (props) => {\n return (\n <svg width=\"100%\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <path\n d=\"M18.21 6.96c-.29.3-.29.77 0 1.07L22.18 12l-3.97 3.96c-.29.3-.29.77 0 1.07.3.29.77.29 1.07 0L24.31 12l-5.03-5.04a.767.767 0 0 0-1.07 0Z\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n </svg>\n );\n};\n"],"names":["DisclosureRight","props","React","createElement","_extends","width","viewBox","fill","_path","d","fillRule"],"mappings":";;;;;;;;IAIaA,eAAoC,GAAG,SAAvCA,eAAoCA,CAAIC,KAAK,EAAK;AAC3D,EAAA,oBACIC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,iCAAA,CAAA;AAAKC,IAAAA,KAAK,EAAC,MAAM;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,IAAI,EAAC,MAAA;GAAWN,EAAAA,KAAK,GAAAO,KAAA,KAAAA,KAAA,gBACvDN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACIM,IAAAA,CAAC,EAAC,wIAAwI;AAC1IF,IAAAA,IAAI,EAAC,cAAc;AACnBG,IAAAA,QAAQ,EAAC,SAAA;GACZ,CAAC,CACD,CAAC,CAAA;AAEd;;;;"}
1
+ {"version":3,"file":"DisclosureRight.js","sources":["../../../../src/components/_Icon/Icon.assets/DisclosureRight.tsx"],"sourcesContent":["import React from 'react';\n\nimport { IconProps } from '../IconRoot';\n\nexport const DisclosureRight: React.FC<IconProps> = (props) => {\n return (\n <svg width=\"100%\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M9.46967 6.96967C9.17678 7.26256 9.17678 7.73744 9.46967 8.03033L13.4393 12L9.46967 15.9697C9.17678 16.2626 9.17678 16.7374 9.46967 17.0303C9.76256 17.3232 10.2374 17.3232 10.5303 17.0303L15.5607 12L10.5303 6.96967C10.2374 6.67678 9.76256 6.67678 9.46967 6.96967Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n"],"names":["DisclosureRight","props","React","createElement","_extends","width","viewBox","fill","_path","fillRule","clipRule","d"],"mappings":";;;;;;;;IAIaA,eAAoC,GAAG,SAAvCA,eAAoCA,CAAIC,KAAK,EAAK;AAC3D,EAAA,oBACIC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,iCAAA,CAAA;AAAKC,IAAAA,KAAK,EAAC,MAAM;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,IAAI,EAAC,MAAA;GAAWN,EAAAA,KAAK,GAAAO,KAAA,KAAAA,KAAA,gBACvDN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACIM,IAAAA,QAAQ,EAAC,SAAS;AAClBC,IAAAA,QAAQ,EAAC,SAAS;AAClBC,IAAAA,CAAC,EAAC,yQAAyQ;AAC3QJ,IAAAA,IAAI,EAAC,cAAA;GACR,CAAC,CACD,CAAC,CAAA;AAEd;;;;"}
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
+ var DisclosureLeft = require('../Icon.assets/DisclosureLeft.js');
6
7
  var IconRoot = require('../IconRoot.js');
7
- var DisclosureLeftCentered = require('../Icon.assets/DisclosureLeftCentered.js');
8
8
 
9
- var IconDisclosureLeftCentered = function IconDisclosureLeftCentered(_ref) {
9
+ var IconDisclosureLeft = function IconDisclosureLeft(_ref) {
10
10
  var _ref$size = _ref.size,
11
11
  size = _ref$size === void 0 ? 's' : _ref$size,
12
12
  color = _ref.color,
@@ -15,9 +15,9 @@ var IconDisclosureLeftCentered = function IconDisclosureLeftCentered(_ref) {
15
15
  className: className,
16
16
  size: size,
17
17
  color: color,
18
- icon: DisclosureLeftCentered.DisclosureLeftCentered
18
+ icon: DisclosureLeft.DisclosureLeft
19
19
  });
20
20
  };
21
21
 
22
- exports.IconDisclosureLeftCentered = IconDisclosureLeftCentered;
23
- //# sourceMappingURL=IconDisclosureLeftCentered.js.map
22
+ exports.IconDisclosureLeft = IconDisclosureLeft;
23
+ //# sourceMappingURL=IconDisclosureLeft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconDisclosureLeft.js","sources":["../../../../src/components/_Icon/Icons/IconDisclosureLeft.tsx"],"sourcesContent":["import React from 'react';\n\nimport { DisclosureLeft } from '../Icon.assets/DisclosureLeft';\nimport { IconRoot, IconProps } from '../IconRoot';\n\nexport const IconDisclosureLeft: React.FC<IconProps> = ({ size = 's', color, className }) => {\n return <IconRoot className={className} size={size} color={color} icon={DisclosureLeft} />;\n};\n"],"names":["IconDisclosureLeft","_ref","_ref$size","size","color","className","React","createElement","IconRoot","icon","DisclosureLeft"],"mappings":";;;;;;;;IAKaA,kBAAuC,GAAG,SAA1CA,kBAAuCA,CAAAC,IAAA,EAAyC;AAAA,EAAA,IAAAC,SAAA,GAAAD,IAAA,CAAnCE,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,SAAA;IAAEE,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS,CAAA;AAClF,EAAA,oBAAOC,KAAA,CAAAC,aAAA,CAACC,iBAAQ,EAAA;AAACH,IAAAA,SAAS,EAAEA,SAAU;AAACF,IAAAA,IAAI,EAAEA,IAAK;AAACC,IAAAA,KAAK,EAAEA,KAAM;AAACK,IAAAA,IAAI,EAAEC,6BAAAA;AAAe,GAAE,CAAC,CAAA;AAC7F;;;;"}
@@ -0,0 +1,131 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
6
+ var React = require('react');
7
+
8
+ var initData = function initData(ref, defaultValues) {
9
+ if (!ref.current) {
10
+ return;
11
+ }
12
+ var form = ref.current;
13
+ var items = form.elements;
14
+ for (var i = 0; i < items.length; i++) {
15
+ var item = items[i];
16
+ var _name = item.name,
17
+ value = item.value,
18
+ type = item.type;
19
+ if ((type === 'text' || type === 'textarea') && defaultValues[_name]) {
20
+ item.value = String(defaultValues[_name]);
21
+ }
22
+ if (type === 'checkbox' && defaultValues[_name]) {
23
+ item.checked = Boolean(defaultValues[_name]);
24
+ }
25
+ if (type === 'radio' && defaultValues[_name]) {
26
+ item.checked = defaultValues[_name] === value;
27
+ }
28
+ if (type === 'number' && defaultValues[_name]) {
29
+ var sliderType = item.getAttribute('datatype');
30
+ if (sliderType === 'slider-single') {
31
+ item.setAttribute('defaultValue', String(defaultValues[_name]));
32
+ var event = new Event('setInitValue');
33
+ item.dispatchEvent(event);
34
+ }
35
+ if (sliderType === 'slider-double') {
36
+ var isMax = item.getAttribute('data-slidertype') === 'max' ? 1 : 0;
37
+ var _data = defaultValues[_name];
38
+ item.setAttribute('defaultValue', String(_data[isMax]));
39
+ var _event = new Event('setInitValue');
40
+ item.dispatchEvent(_event);
41
+ }
42
+ }
43
+ if (type === 'hidden') {
44
+ var datepickerType = item.getAttribute('datatype');
45
+ if (datepickerType === 'datepicker-single') {
46
+ item.setAttribute('defaultValue', String(defaultValues[_name]));
47
+ var _event2 = new Event('setInitValue');
48
+ item.dispatchEvent(_event2);
49
+ }
50
+ if (datepickerType === 'datepicker-double') {
51
+ var isTo = item.getAttribute('data-datepicker') === 'to' ? 1 : 0;
52
+ var _data2 = defaultValues[_name];
53
+ item.setAttribute('defaultValue', String(_data2[isTo]));
54
+ var _event3 = new Event('setInitValue');
55
+ item.dispatchEvent(_event3);
56
+ }
57
+ }
58
+ }
59
+ };
60
+ var valideParams = function valideParams(name) {
61
+ return name && name !== '';
62
+ };
63
+ var useForm = function useForm(onSubmit, defaultValues) {
64
+ var formRef = /*#__PURE__*/React.createRef();
65
+ React.useEffect(function () {
66
+ initData(formRef, defaultValues);
67
+ }, []);
68
+ var formData = function formData(event) {
69
+ event.preventDefault();
70
+ var result = {};
71
+ var form = event.target;
72
+ var items = form.elements;
73
+ for (var i = 0; i < items.length; i++) {
74
+ var item = items[i];
75
+ var _name2 = item.name,
76
+ value = item.value,
77
+ type = item.type;
78
+ if ((type === 'text' || type === 'textarea') && valideParams(_name2)) {
79
+ result[_name2] = value;
80
+ }
81
+ if (type === 'checkbox' && valideParams(_name2)) {
82
+ result[_name2] = item.checked;
83
+ }
84
+ if (type === 'radio' && valideParams(_name2)) {
85
+ if (item.checked) {
86
+ result[_name2] = value;
87
+ } else if (!(_name2 in result)) {
88
+ result[_name2] = null;
89
+ }
90
+ }
91
+ if (type === 'number' && valideParams(_name2)) {
92
+ var sliderType = item.getAttribute('datatype');
93
+ if (sliderType === 'slider-single') {
94
+ result[_name2] = value;
95
+ }
96
+ if (sliderType === 'slider-double') {
97
+ var isMin = item.getAttribute('data-slidertype') === 'min';
98
+ if (isMin) {
99
+ result[_name2] = [Number(value)];
100
+ }
101
+ if (!isMin && Array.isArray(result[_name2])) {
102
+ result[_name2] = [].concat(_rollupPluginBabelHelpers.toConsumableArray(result[_name2]), [Number(value)]);
103
+ }
104
+ }
105
+ }
106
+ if (type === 'hidden' && valideParams(_name2)) {
107
+ var _sliderType = item.getAttribute('datatype');
108
+ if (_sliderType === 'datepicker-single') {
109
+ result[_name2] = value;
110
+ }
111
+ if (_sliderType === 'datepicker-double') {
112
+ var _isMin = item.getAttribute('data-datepicker') === 'from';
113
+ if (_isMin) {
114
+ result[_name2] = [String(value)];
115
+ }
116
+ if (!_isMin && Array.isArray(result[_name2])) {
117
+ result[_name2] = [].concat(_rollupPluginBabelHelpers.toConsumableArray(result[_name2]), [String(value)]);
118
+ }
119
+ }
120
+ }
121
+ }
122
+ onSubmit(result);
123
+ };
124
+ return {
125
+ formRef: formRef,
126
+ formData: formData
127
+ };
128
+ };
129
+
130
+ exports.useForm = useForm;
131
+ //# sourceMappingURL=useForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useForm.js","sources":["../../src/hooks/useForm.ts"],"sourcesContent":["import React, { RefObject, useEffect } from 'react';\n\ntype DataType = { [name: string]: string | boolean | null | number | number[] | Date | string[] };\n\nconst initData = (ref: RefObject<HTMLFormElement>, defaultValues: DataType) => {\n if (!ref.current) {\n return;\n }\n\n const form = ref.current as HTMLFormElement;\n const items = form.elements;\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i] as HTMLInputElement;\n const { name, value, type } = item;\n\n if ((type === 'text' || type === 'textarea') && defaultValues[name]) {\n item.value = String(defaultValues[name]);\n }\n\n if (type === 'checkbox' && defaultValues[name]) {\n item.checked = Boolean(defaultValues[name]);\n }\n\n if (type === 'radio' && defaultValues[name]) {\n item.checked = defaultValues[name] === value;\n }\n\n if (type === 'number' && defaultValues[name]) {\n const sliderType = item.getAttribute('datatype');\n\n if (sliderType === 'slider-single') {\n item.setAttribute('defaultValue', String(defaultValues[name]));\n const event = new Event('setInitValue');\n item.dispatchEvent(event);\n }\n\n if (sliderType === 'slider-double') {\n const isMax = item.getAttribute('data-slidertype') === 'max' ? 1 : 0;\n const data = defaultValues[name] as number[];\n\n item.setAttribute('defaultValue', String(data[isMax]));\n const event = new Event('setInitValue');\n item.dispatchEvent(event);\n }\n }\n\n if (type === 'hidden') {\n const datepickerType = item.getAttribute('datatype');\n\n if (datepickerType === 'datepicker-single') {\n item.setAttribute('defaultValue', String(defaultValues[name]));\n const event = new Event('setInitValue');\n item.dispatchEvent(event);\n }\n\n if (datepickerType === 'datepicker-double') {\n const isTo = item.getAttribute('data-datepicker') === 'to' ? 1 : 0;\n const data = defaultValues[name] as number[];\n\n item.setAttribute('defaultValue', String(data[isTo]));\n const event = new Event('setInitValue');\n item.dispatchEvent(event);\n }\n }\n }\n};\n\nconst valideParams = (name: string) => {\n return name && name !== '';\n};\n\nexport const useForm = (onSubmit: (data: DataType) => void, defaultValues: DataType) => {\n const formRef = React.createRef<HTMLFormElement>();\n\n useEffect(() => {\n initData(formRef, defaultValues);\n }, []);\n\n const formData = (event: React.FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n\n const result: DataType = {};\n\n const form = event.target as HTMLFormElement;\n const items = form.elements;\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i] as HTMLInputElement;\n const { name, value, type } = item;\n\n if ((type === 'text' || type === 'textarea') && valideParams(name)) {\n result[name] = value;\n }\n\n if (type === 'checkbox' && valideParams(name)) {\n result[name] = item.checked;\n }\n\n if (type === 'radio' && valideParams(name)) {\n if (item.checked) {\n result[name] = value;\n } else if (!(name in result)) {\n result[name] = null;\n }\n }\n\n if (type === 'number' && valideParams(name)) {\n const sliderType = item.getAttribute('datatype');\n\n if (sliderType === 'slider-single') {\n result[name] = value;\n }\n\n if (sliderType === 'slider-double') {\n const isMin = item.getAttribute('data-slidertype') === 'min';\n if (isMin) {\n result[name] = [Number(value)];\n }\n\n if (!isMin && Array.isArray(result[name])) {\n result[name] = [...(result[name] as number[]), Number(value)];\n }\n }\n }\n\n if (type === 'hidden' && valideParams(name)) {\n const sliderType = item.getAttribute('datatype');\n\n if (sliderType === 'datepicker-single') {\n result[name] = value;\n }\n\n if (sliderType === 'datepicker-double') {\n const isMin = item.getAttribute('data-datepicker') === 'from';\n if (isMin) {\n result[name] = [String(value)];\n }\n\n if (!isMin && Array.isArray(result[name])) {\n result[name] = [...(result[name] as string[]), String(value)];\n }\n }\n }\n }\n\n onSubmit(result);\n };\n\n return { formRef, formData };\n};\n"],"names":["initData","ref","defaultValues","current","form","items","elements","i","length","item","name","value","type","String","checked","Boolean","sliderType","getAttribute","setAttribute","event","Event","dispatchEvent","isMax","data","datepickerType","isTo","valideParams","useForm","onSubmit","formRef","React","createRef","useEffect","formData","preventDefault","result","target","isMin","Number","Array","isArray","concat","_toConsumableArray"],"mappings":"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"}
package/cjs/index.css CHANGED
@@ -340,7 +340,7 @@
340
340
 
341
341
  .Tooltip_aay375_s1cz8cv8__390cdb21{--plasma-popover-arrow-mask-width:var(--plasma-tooltip-arrow-mask-width);--plasma-popover-arrow-mask-height:var(--plasma-tooltip-arrow-mask-height);--plasma-popover-arrow-mask-image:var(--plasma-tooltip-arrow-mask-image);--plasma-popover-arrow-background:var(--plasma-tooltip-arrow-background);--plasma-popover-arrow-height:var(--plasma-tooltip-arrow-height);--plasma-popover-arrow-edge-margin:var(--plasma-tooltip-arrow-edge-margin);}.Tooltip_aay375_s1cz8cv8__390cdb21.Tooltip_aay375_tooltipAnimated__390cdb21 .Tooltip_aay375_popoverRoot__390cdb21{-webkit-transition:opacity 200ms ease-in-out,visibility 200ms ease-in-out;transition:opacity 200ms ease-in-out,visibility 200ms ease-in-out;}
342
342
 
343
- .base_1dfesjp_b16s69xg__8774de01{width:var(--plasma-segment-group-width);height:var(--plasma-segment-group-height);}.base_1dfesjp_b16s69xg__8774de01:before{--plasma_private-outline-radius:var(--plasma-segment-group-border-radius);border-radius:var(--plasma-segment-group-border-radius);}
343
+ .base_m358nl_b16s69xg__c51d77df{width:var(--plasma-segment-group-width);height:var(--plasma-segment-group-height);--plasma_private-outline-radius:var(--plasma-segment-group-border-radius);border-radius:var(--plasma-segment-group-border-radius);}
344
344
 
345
345
  .base_hsx1sr_bo2wq9n__1e99adcc{background-color:var(--plasma-segment-group-background-color);}
346
346
 
@@ -348,28 +348,25 @@
348
348
 
349
349
  .base_fqbatz_b1re0ohg__24d92a6d.base_fqbatz_segmentPilled__24d92a6d{--plasma_private-outline-radius:var(--plasma-segment-group-pilled-border-radius);border-radius:var(--plasma-segment-group-pilled-border-radius);}
350
350
 
351
- .base_a7w5s0_b13sjoz1__a0df01cb{position:relative;}.base_a7w5s0_b13sjoz1__a0df01cb.base_a7w5s0_segmentGroupFilledBackground__a0df01cb:before{content:'';position:absolute;inset:-0.125rem;background-color:var(--plasma-segment-group-filled-background-color);}
351
+ .base_escgtx_b13sjoz1__a1f0e6e1.base_escgtx_segmentGroupFilledBackground__a1f0e6e1{background-color:var(--plasma-segment-group-filled-background-color);}
352
352
 
353
353
  .base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172{width:100%;}.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_spuzt9m__3b76a172,.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_sin9wo2__3b76a172,.base_74wj10_b1bb2stb__3b76a172.base_74wj10_segmentStretched__3b76a172 .base_74wj10_sin9wo2__3b76a172 > button{width:100%;}
354
354
 
355
- .base_1ejecy9_bb2d6sr__61b9631c.base_1ejecy9_segmentVertical__61b9631c{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.base_1ejecy9_bb2d6sr__61b9631c.base_1ejecy9_segmentVertical__61b9631c .base_1ejecy9_spuzt9m__61b9631c{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.base_1ejecy9_bb2d6sr__61b9631c.base_1ejecy9_segmentVertical__61b9631c .base_1ejecy9_sin9wo2__61b9631c{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}
356
-
357
- .SegmentGroup_styles_6y4o38_b2sori2__2daec6de{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;max-width:100%;--plasma_private-outline-radius:var(--plasma-segment-group-border-radius);border-radius:var(--plasma-segment-group-border-radius);}
358
- .SegmentGroup_styles_6y4o38_sin9wo2__2daec6de{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;max-width:100%;}
359
- .SegmentGroup_styles_6y4o38_spuzt9m__2daec6de{position:relative;height:100%;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
355
+ .SegmentGroup_styles_m9i9p0_b2sori2__a29c0677{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
356
+ .SegmentGroup_styles_m9i9p0_sin9wo2__a29c0677{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
357
+ .SegmentGroup_styles_m9i9p0_spuzt9m__a29c0677{position:relative;height:100%;margin:0;padding:0.25rem;overflow-x:auto;overflow-y:hidden;-webkit-scroll-behavior:smooth;-moz-scroll-behavior:smooth;-ms-scroll-behavior:smooth;scroll-behavior:smooth;-webkit-scroll-snap-type:x mandatory;-moz-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;}.SegmentGroup_styles_m9i9p0_spuzt9m__a29c0677::-webkit-scrollbar{display:none;}
358
+ .SegmentGroup_styles_m9i9p0_s1qf4oye__a29c0677{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;cursor:pointer;border:none;background-color:transparent;padding:0;outline:none;position:relative;}.SegmentGroup_styles_m9i9p0_s1qf4oye__a29c0677::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) - 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.SegmentGroup_styles_m9i9p0_s1qf4oye__a29c0677.SegmentGroup_styles_m9i9p0_focusVisible__a29c0677:focus::before,.SegmentGroup_styles_m9i9p0_s1qf4oye__a29c0677[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}.SegmentGroup_styles_m9i9p0_s1qf4oye__a29c0677[disabled]{cursor:not-allowed;}
360
359
 
361
360
  .base_7kjuok_b1kyapt7__5060a19f{font-family:var(--plasma-segment-item-font-family);font-size:var(--plasma-segment-item-font-size);font-style:var(--plasma-segment-item-font-style);font-weight:var(--plasma-segment-item-font-weight);-webkit-letter-spacing:var(--plasma-segment-item-letter-spacing);-moz-letter-spacing:var(--plasma-segment-item-letter-spacing);-ms-letter-spacing:var(--plasma-segment-item-letter-spacing);letter-spacing:var(--plasma-segment-item-letter-spacing);line-height:var(--plasma-segment-item-lineheight);--plasma_private-outline-radius:var(--plasma-segment-item-border-radius);border-radius:var(--plasma-segment-item-border-radius);width:var(--plasma-segment-item-width);height:var(--plasma-segment-item-height);padding:var(--plasma-segment-item-padding);}
362
361
 
363
- .base_dettiq_b1tykljf__414ed295{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.base_dettiq_b1tykljf__414ed295:hover{color:var(--plasma-segment-item-color-hover);background-color:var(--plasma-segment-item-background-color-hover);}.base_dettiq_b1tykljf__414ed295:hover .base_dettiq_r1gg7fed__414ed295{color:var(--plasma-segment-item-color-hover);}.base_dettiq_b1tykljf__414ed295:hover .base_dettiq_r1gg7fed__414ed295.base_dettiq_segmentAdditionalText__414ed295{color:var(--plasma-segment-item-additional-color-hover);}.base_dettiq_b1tykljf__414ed295.base_dettiq_selectedSegmentItem__414ed295{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}.base_dettiq_b1tykljf__414ed295.base_dettiq_selectedSegmentItem__414ed295 .base_dettiq_r1gg7fed__414ed295{color:var(--plasma-segment-item-selected-color);}.base_dettiq_b1tykljf__414ed295.base_dettiq_selectedSegmentItem__414ed295 .base_dettiq_r1gg7fed__414ed295.base_dettiq_segmentAdditionalText__414ed295{color:var(--plasma-segment-item-selected-additional-color);}.base_dettiq_b1tykljf__414ed295.base_dettiq_selectedSegmentItem__414ed295:hover{color:var(--plasma-segment-item-selected-color-hover);background-color:var(--plasma-segment-item-selected-background-color-hover);}.base_dettiq_b1tykljf__414ed295.base_dettiq_selectedSegmentItem__414ed295:hover .base_dettiq_r1gg7fed__414ed295{color:var(--plasma-segment-item-selected-additional-color-hover);}
362
+ .base_1m1u2ys_b1tykljf__1c5eb012{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.base_1m1u2ys_b1tykljf__1c5eb012:hover{color:var(--plasma-segment-item-color-hover);background-color:var(--plasma-segment-item-background-color-hover);}.base_1m1u2ys_b1tykljf__1c5eb012.base_1m1u2ys_selectedSegmentItem__1c5eb012{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}.base_1m1u2ys_b1tykljf__1c5eb012.base_1m1u2ys_selectedSegmentItem__1c5eb012:hover{color:var(--plasma-segment-item-selected-color-hover);background-color:var(--plasma-segment-item-selected-background-color-hover);}
364
363
 
365
364
  .base_y6af8r_bwprat9__353907e1[disabled]{cursor:not-allowed;}.base_y6af8r_bwprat9__353907e1[disabled]:hover{color:var(--plasma-segment-item-color);background-color:var(--plasma-segment-item-background-color);}.base_y6af8r_bwprat9__353907e1[disabled].base_y6af8r_selectedSegmentItem__353907e1:hover{color:var(--plasma-segment-item-selected-color);background-color:var(--plasma-segment-item-selected-background-color);}
366
365
 
367
- .base_omc5u1_b795lc7__e9b122aa.base_omc5u1_segmentPilled__e9b122aa{--plasma_private-outline-radius:var(--plasma-segment-item-pilled-border-radius);border-radius:var(--plasma-segment-item-pilled-border-radius);padding:var(--plasma-segment-item-pilled-padding);}
366
+ .base_15s0fel_b795lc7__4501241a.base_15s0fel_segmentPilled__4501241a{--plasma_private-outline-radius:var(--plasma-segment-item-pilled-border-radius);border-radius:var(--plasma-segment-item-pilled-border-radius);}
368
367
 
369
- .SegmentItem_styles_1tv52dl_bxcdyja__e628e4a2{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;box-sizing:border-box;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(--plasma-segment-item-margin-left);-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;}.SegmentItem_styles_1tv52dl_bxcdyja__e628e4a2:first-child{margin-left:0;}.SegmentItem_styles_1tv52dl_bxcdyja__e628e4a2::before{content:'';position:absolute;top:0.063rem;left:0.063rem;right:0.063rem;bottom:0.063rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) + 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.SegmentItem_styles_1tv52dl_bxcdyja__e628e4a2.SegmentItem_styles_1tv52dl_focusVisible__e628e4a2:focus::before,.SegmentItem_styles_1tv52dl_bxcdyja__e628e4a2[data-focus-visible-added]::before{z-index:1;outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}
370
- .SegmentItem_styles_1tv52dl_sxjfe87__e628e4a2{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:var(--plasma-segment-item-content-padding);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:var(--sxjfe87-0);margin-left:var(--sxjfe87-1);}
371
- .SegmentItem_styles_1tv52dl_r1gg7fed__e628e4a2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-segment-item-content-icon-margin);overflow:hidden;color:var(--plasma-segment-item-color);}.SegmentItem_styles_1tv52dl_r1gg7fed__e628e4a2.SegmentItem_styles_1tv52dl_segmentAdditionalText__e628e4a2{text-overflow:ellipsis;overflow:hidden;color:var(--plasma-segment-item-additional-color);}
372
- .SegmentItem_styles_1tv52dl_lctm1j9__e628e4a2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:var(--plasma-segment-item-content-icon-margin);color:inherit;}
368
+ .SegmentItem_styles_18h1p52_bxcdyja__b7ac762c{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;box-sizing:border-box;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(--plasma-segment-item-margin-left);-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;}.SegmentItem_styles_18h1p52_bxcdyja__b7ac762c:first-child{margin-left:0;}.SegmentItem_styles_18h1p52_bxcdyja__b7ac762c::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma_private-outline-radius) + 0.063rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.SegmentItem_styles_18h1p52_bxcdyja__b7ac762c.SegmentItem_styles_18h1p52_focusVisible__b7ac762c:focus::before,.SegmentItem_styles_18h1p52_bxcdyja__b7ac762c[data-focus-visible-added]::before{z-index:1;outline:none;box-shadow:0 0 0 0.063rem var(--plasma-segment-outline-focus-color);}
369
+ .SegmentItem_styles_18h1p52_sxjfe87__b7ac762c{display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
373
370
 
374
371
  .base_1wf7n5i_b1x66a6y__80fc5ddb{height:var(--plasma-skeleton-line-height);}.base_1wf7n5i_b1x66a6y__80fc5ddb .base_1wf7n5i_sn3du7u__80fc5ddb{height:var(--plasma-skeleton-visible-line-height);}
375
372
 
package/cjs/index.js CHANGED
@@ -21,6 +21,7 @@ var useForceUpdate = require('./hooks/useForceUpdate.js');
21
21
  var useDidMountEffect = require('./hooks/useDidMountEffect.js');
22
22
  var useOutsideClick = require('./hooks/useOutsideClick.js');
23
23
  var useIsomorphicLayoutEffect = require('./hooks/useIsomorphicLayoutEffect.js');
24
+ var useForm = require('./hooks/useForm.js');
24
25
  var index$1 = require('./utils/index.js');
25
26
  var Button = require('./components/Button/Button.js');
26
27
  var Button_tokens = require('./components/Button/Button.tokens.js');
@@ -198,6 +199,7 @@ var extractTextFrom = require('./utils/extractTextFrom.js');
198
199
  var getSizeValueFromProp = require('./utils/getSizeValueFromProp.js');
199
200
  var react = require('./utils/react.js');
200
201
  var isNumber = require('./utils/isNumber.js');
202
+ var setRefList = require('./utils/setRefList.js');
201
203
  var isEmpty = require('./utils/isEmpty.js');
202
204
  var getPopoverPlacement = require('./utils/getPopoverPlacement.js');
203
205
  var constants = require('./utils/constants.js');
@@ -286,6 +288,7 @@ exports.useForceUpdate = useForceUpdate.useForceUpdate;
286
288
  exports.useDidMountEffect = useDidMountEffect.useDidMountEffect;
287
289
  exports.useOutsideClick = useOutsideClick.useOutsideClick;
288
290
  exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect.useIsomorphicLayoutEffect;
291
+ exports.useForm = useForm.useForm;
289
292
  exports.composableStyle = index$1.composableStyle;
290
293
  exports.cx = index$1.cx;
291
294
  exports.buttonConfig = Button.buttonConfig;
@@ -577,6 +580,8 @@ exports.getSizeValueFromProp = getSizeValueFromProp.getSizeValueFromProp;
577
580
  exports.IS_REACT_18 = react.IS_REACT_18;
578
581
  exports.safeUseId = react.safeUseId;
579
582
  exports.isNumber = isNumber.isNumber;
583
+ exports.mergeRefs = setRefList.mergeRefs;
584
+ exports.setRefList = setRefList.setRefList;
580
585
  exports.isEmpty = isEmpty.isEmpty;
581
586
  exports.getPlacement = getPopoverPlacement.getPlacement;
582
587
  exports.getPlacements = getPopoverPlacement.getPlacements;
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}