@salutejs/plasma-new-hope 0.134.0-canary.1392.10603131302.0 → 0.134.0-canary.1404.10612716409.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. package/cjs/components/DatePicker/RangeDate/RangeDate.js +12 -1
  2. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  3. package/cjs/components/DatePicker/SingleDate/SingleDate.js +12 -4
  4. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  5. package/cjs/components/DatePicker/hooks/useDatePicker.js +7 -5
  6. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  7. package/cjs/components/DatePicker/utils/dateHelper.js +15 -13
  8. package/cjs/components/DatePicker/utils/dateHelper.js.map +1 -1
  9. package/cjs/components/Segment/tokens.js +1 -14
  10. package/cjs/components/Segment/tokens.js.map +1 -1
  11. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.css +4 -10
  12. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +83 -160
  13. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  14. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +1 -37
  15. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  16. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +4 -0
  17. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.css +3 -7
  18. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -4
  19. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  20. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +2 -31
  21. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  22. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +2 -0
  23. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  24. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  25. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +1 -0
  26. package/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  27. package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  28. package/cjs/index.css +7 -17
  29. package/cjs/utils/datejs.js +1 -0
  30. package/cjs/utils/datejs.js.map +1 -1
  31. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +12 -1
  32. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +12 -4
  33. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +7 -5
  34. package/emotion/cjs/components/DatePicker/utils/dateHelper.js +15 -13
  35. package/emotion/cjs/components/Segment/tokens.js +1 -14
  36. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +82 -156
  37. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +17 -25
  38. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -4
  39. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +6 -28
  40. package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  41. package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  42. package/emotion/cjs/components/_Icon/index.js +0 -14
  43. package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +34 -1
  44. package/emotion/cjs/examples/plasma_b2c/components/Segment/Segment.stories.tsx +1 -6
  45. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +10 -13
  46. package/emotion/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  47. package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +35 -1
  48. package/emotion/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +2 -142
  49. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +9 -15
  50. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  51. package/emotion/cjs/examples/sds_engineer/components/Segment/Segment.stories.tsx +1 -6
  52. package/emotion/cjs/utils/datejs.js +1 -0
  53. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +12 -1
  54. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +12 -4
  55. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +7 -5
  56. package/emotion/es/components/DatePicker/utils/dateHelper.js +15 -13
  57. package/emotion/es/components/Segment/tokens.js +1 -14
  58. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +85 -159
  59. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +17 -25
  60. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +3 -5
  61. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +5 -27
  62. package/emotion/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  63. package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  64. package/emotion/es/components/_Icon/index.js +0 -2
  65. package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +34 -1
  66. package/emotion/es/examples/plasma_b2c/components/Segment/Segment.stories.tsx +1 -6
  67. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +10 -13
  68. package/emotion/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +9 -9
  69. package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +35 -1
  70. package/emotion/es/examples/plasma_web/components/Segment/Segment.stories.tsx +2 -142
  71. package/emotion/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +9 -15
  72. package/emotion/es/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  73. package/emotion/es/examples/sds_engineer/components/Segment/Segment.stories.tsx +1 -6
  74. package/emotion/es/utils/datejs.js +1 -0
  75. package/es/components/DatePicker/RangeDate/RangeDate.js +12 -1
  76. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  77. package/es/components/DatePicker/SingleDate/SingleDate.js +12 -4
  78. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  79. package/es/components/DatePicker/hooks/useDatePicker.js +7 -5
  80. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  81. package/es/components/DatePicker/utils/dateHelper.js +15 -13
  82. package/es/components/DatePicker/utils/dateHelper.js.map +1 -1
  83. package/es/components/Segment/tokens.js +1 -14
  84. package/es/components/Segment/tokens.js.map +1 -1
  85. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.css +4 -10
  86. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +87 -163
  87. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  88. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +2 -34
  89. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  90. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +4 -0
  91. package/es/components/Segment/ui/SegmentItem/SegmentItem.css +3 -7
  92. package/es/components/Segment/ui/SegmentItem/SegmentItem.js +3 -5
  93. package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  94. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +3 -30
  95. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  96. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +2 -0
  97. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  98. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  99. package/es/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +1 -0
  100. package/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  101. package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  102. package/es/index.css +7 -17
  103. package/es/utils/datejs.js +1 -0
  104. package/es/utils/datejs.js.map +1 -1
  105. package/package.json +2 -2
  106. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +12 -1
  107. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +12 -4
  108. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +7 -5
  109. package/styled-components/cjs/components/DatePicker/utils/dateHelper.js +15 -13
  110. package/styled-components/cjs/components/Segment/tokens.js +1 -14
  111. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +82 -156
  112. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +4 -16
  113. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -4
  114. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +5 -23
  115. package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  116. package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  117. package/styled-components/cjs/components/_Icon/index.js +0 -14
  118. package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +34 -1
  119. package/styled-components/cjs/examples/plasma_b2c/components/Segment/Segment.stories.tsx +1 -6
  120. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +4 -7
  121. package/styled-components/cjs/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  122. package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +35 -1
  123. package/styled-components/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +2 -142
  124. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +4 -10
  125. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  126. package/styled-components/cjs/examples/sds_engineer/components/Segment/Segment.stories.tsx +1 -6
  127. package/styled-components/cjs/utils/datejs.js +1 -0
  128. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +12 -1
  129. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +12 -4
  130. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +7 -5
  131. package/styled-components/es/components/DatePicker/utils/dateHelper.js +15 -13
  132. package/styled-components/es/components/Segment/tokens.js +1 -14
  133. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +85 -159
  134. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +4 -16
  135. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +3 -5
  136. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +4 -22
  137. package/styled-components/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -2
  138. package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  139. package/styled-components/es/components/_Icon/index.js +0 -2
  140. package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.stories.tsx +34 -1
  141. package/styled-components/es/examples/plasma_b2c/components/Segment/Segment.stories.tsx +1 -6
  142. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentGroup.config.js +4 -7
  143. package/styled-components/es/examples/plasma_b2c/components/Segment/SegmentItem.config.js +8 -8
  144. package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.stories.tsx +35 -1
  145. package/styled-components/es/examples/plasma_web/components/Segment/Segment.stories.tsx +2 -142
  146. package/styled-components/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +4 -10
  147. package/styled-components/es/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  148. package/styled-components/es/examples/sds_engineer/components/Segment/Segment.stories.tsx +1 -6
  149. package/styled-components/es/utils/datejs.js +1 -0
  150. package/types/components/DatePicker/DatePickerBase.types.d.ts +6 -0
  151. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  152. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  153. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  154. package/types/components/DatePicker/hooks/useDatePicker.d.ts +1 -1
  155. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  156. package/types/components/DatePicker/utils/dateHelper.d.ts +6 -3
  157. package/types/components/DatePicker/utils/dateHelper.d.ts.map +1 -1
  158. package/types/components/Segment/tokens.d.ts +0 -13
  159. package/types/components/Segment/tokens.d.ts.map +1 -1
  160. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +0 -7
  161. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
  162. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts +0 -12
  163. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts.map +1 -1
  164. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts +1 -5
  165. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts.map +1 -1
  166. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +0 -4
  167. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
  168. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts +1 -9
  169. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts.map +1 -1
  170. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts +0 -8
  171. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts.map +1 -1
  172. package/types/components/Segment/ui/SegmentItem/variations/_view/base.d.ts.map +1 -1
  173. package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
  174. package/types/components/_Icon/index.d.ts +0 -2
  175. package/types/components/_Icon/index.d.ts.map +1 -1
  176. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts +0 -6
  177. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts.map +1 -1
  178. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts +0 -3
  179. package/types/examples/plasma_b2c/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  180. package/types/examples/plasma_b2c/components/Segment/SegmentItem.config.d.ts.map +1 -1
  181. package/types/examples/plasma_web/components/Segment/Segment.d.ts +0 -9
  182. package/types/examples/plasma_web/components/Segment/Segment.d.ts.map +1 -1
  183. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts +0 -6
  184. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  185. package/types/examples/plasma_web/components/Segment/SegmentItem.config.d.ts.map +1 -1
  186. package/types/examples/sds_engineer/components/Segment/Segment.d.ts +0 -3
  187. package/types/examples/sds_engineer/components/Segment/Segment.d.ts.map +1 -1
  188. package/types/utils/datejs.d.ts +1 -0
  189. package/types/utils/datejs.d.ts.map +1 -1
  190. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +0 -8
  191. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -9
  192. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +0 -1
  193. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +0 -1
  194. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +0 -6
  195. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +0 -1
  196. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js +0 -22
  197. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js.map +0 -1
  198. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js +0 -22
  199. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js.map +0 -1
  200. package/cjs/components/_Icon/Icons/IconDisclosureDown.js +0 -23
  201. package/cjs/components/_Icon/Icons/IconDisclosureDown.js.map +0 -1
  202. package/cjs/components/_Icon/Icons/IconDisclosureUp.js +0 -23
  203. package/cjs/components/_Icon/Icons/IconDisclosureUp.js.map +0 -1
  204. package/emotion/cjs/components/Segment/README.md +0 -61
  205. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -10
  206. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +0 -1
  207. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureDown.js +0 -21
  208. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureUp.js +0 -21
  209. package/emotion/cjs/components/_Icon/Icons/IconDisclosureDown.js +0 -22
  210. package/emotion/cjs/components/_Icon/Icons/IconDisclosureUp.js +0 -22
  211. package/emotion/es/components/Segment/README.md +0 -61
  212. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -4
  213. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +0 -1
  214. package/emotion/es/components/_Icon/Icon.assets/DisclosureDown.js +0 -14
  215. package/emotion/es/components/_Icon/Icon.assets/DisclosureUp.js +0 -14
  216. package/emotion/es/components/_Icon/Icons/IconDisclosureDown.js +0 -15
  217. package/emotion/es/components/_Icon/Icons/IconDisclosureUp.js +0 -15
  218. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +0 -8
  219. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -5
  220. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +0 -1
  221. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +0 -1
  222. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +0 -6
  223. package/es/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +0 -1
  224. package/es/components/_Icon/Icon.assets/DisclosureDown.js +0 -18
  225. package/es/components/_Icon/Icon.assets/DisclosureDown.js.map +0 -1
  226. package/es/components/_Icon/Icon.assets/DisclosureUp.js +0 -18
  227. package/es/components/_Icon/Icon.assets/DisclosureUp.js.map +0 -1
  228. package/es/components/_Icon/Icons/IconDisclosureDown.js +0 -19
  229. package/es/components/_Icon/Icons/IconDisclosureDown.js.map +0 -1
  230. package/es/components/_Icon/Icons/IconDisclosureUp.js +0 -19
  231. package/es/components/_Icon/Icons/IconDisclosureUp.js.map +0 -1
  232. package/styled-components/cjs/components/Segment/README.md +0 -61
  233. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -10
  234. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +0 -1
  235. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureDown.js +0 -21
  236. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureUp.js +0 -21
  237. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureDown.js +0 -22
  238. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureUp.js +0 -22
  239. package/styled-components/es/components/Segment/README.md +0 -61
  240. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +0 -4
  241. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +0 -1
  242. package/styled-components/es/components/_Icon/Icon.assets/DisclosureDown.js +0 -14
  243. package/styled-components/es/components/_Icon/Icon.assets/DisclosureUp.js +0 -14
  244. package/styled-components/es/components/_Icon/Icons/IconDisclosureDown.js +0 -15
  245. package/styled-components/es/components/_Icon/Icons/IconDisclosureUp.js +0 -15
  246. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts +0 -2
  247. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts.map +0 -1
  248. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts +0 -4
  249. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts.map +0 -1
  250. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts +0 -4
  251. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts.map +0 -1
  252. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts +0 -4
  253. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts.map +0 -1
  254. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts +0 -4
  255. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
- var _excluded = ["className", "opened", "label", "labelPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "defaultDate", "valueError", "valueSuccess", "format", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "placement", "closeOnOverlayClick", "offset", "onChangeValue", "onCommitDate", "onToggle", "onFocus", "onBlur"];
1
+ var _excluded = ["className", "opened", "label", "labelPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "defaultDate", "valueError", "valueSuccess", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "placement", "closeOnOverlayClick", "offset", "onChangeValue", "onCommitDate", "onToggle", "onFocus", "onBlur"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
4
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -15,6 +15,7 @@ import { useDatePicker } from '../hooks/useDatePicker';
15
15
  import { classes } from '../DatePicker.tokens';
16
16
  import { StyledCalendar } from '../DatePickerBase.styles';
17
17
  import { useKeyNavigation } from '../hooks/useKeyboardNavigation';
18
+ import { useDidMountEffect } from '../../../hooks';
18
19
  import { base as sizeCSS } from './variations/_size/base';
19
20
  import { base as viewCSS } from './variations/_view/base';
20
21
  import { base as disabledCSS } from './variations/_disabled/base';
@@ -46,6 +47,8 @@ export var datePickerRoot = function datePickerRoot(Root) {
46
47
  valueSuccess = _ref.valueSuccess,
47
48
  _ref$format = _ref.format,
48
49
  format = _ref$format === void 0 ? 'DD.MM.YYYY' : _ref$format,
50
+ _ref$lang = _ref.lang,
51
+ lang = _ref$lang === void 0 ? 'ru' : _ref$lang,
49
52
  maskWithFormat = _ref.maskWithFormat,
50
53
  min = _ref.min,
51
54
  max = _ref.max,
@@ -77,11 +80,11 @@ export var datePickerRoot = function datePickerRoot(Root) {
77
80
  _useState2 = _slicedToArray(_useState, 2),
78
81
  isInnerOpen = _useState2[0],
79
82
  setIsInnerOpen = _useState2[1];
80
- var _useState3 = useState(formatCalendarValue(defaultDate, format)),
83
+ var _useState3 = useState(formatCalendarValue(defaultDate, format, lang)),
81
84
  _useState4 = _slicedToArray(_useState3, 2),
82
85
  calendarValue = _useState4[0],
83
86
  setCalendarValue = _useState4[1];
84
- var _useState5 = useState(formatInputValue(defaultDate, format)),
87
+ var _useState5 = useState(formatInputValue(defaultDate, format, lang)),
85
88
  _useState6 = _slicedToArray(_useState5, 2),
86
89
  inputValue = _useState6[0],
87
90
  setInputValue = _useState6[1];
@@ -96,6 +99,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
96
99
  setIsInnerOpen: setIsInnerOpen,
97
100
  dateFormatDelimiter: dateFormatDelimiter,
98
101
  format: format,
102
+ lang: lang,
99
103
  disabled: disabled,
100
104
  readOnly: readOnly,
101
105
  maskWithFormat: maskWithFormat,
@@ -146,8 +150,12 @@ export var datePickerRoot = function datePickerRoot(Root) {
146
150
  }, [opened]);
147
151
  useEffect(function () {
148
152
  setCalendarValue(formatCalendarValue(defaultDate, format));
149
- setInputValue(formatInputValue(defaultDate, format));
153
+ setInputValue(formatInputValue(defaultDate, format, lang));
150
154
  }, [defaultDate]);
155
+ useDidMountEffect(function () {
156
+ setCalendarValue(formatCalendarValue(defaultDate, format, lang));
157
+ setInputValue(formatInputValue(defaultDate, format, lang));
158
+ }, [format, lang]);
151
159
  return /*#__PURE__*/React.createElement(Root, _extends({
152
160
  view: view,
153
161
  size: size,
@@ -7,6 +7,8 @@ export var useDatePicker = function useDatePicker(_ref) {
7
7
  setIsInnerOpen = _ref.setIsInnerOpen,
8
8
  dateFormatDelimiter = _ref.dateFormatDelimiter,
9
9
  format = _ref.format,
10
+ _ref$lang = _ref.lang,
11
+ lang = _ref$lang === void 0 ? 'ru' : _ref$lang,
10
12
  disabled = _ref.disabled,
11
13
  readOnly = _ref.readOnly,
12
14
  maskWithFormat = _ref.maskWithFormat,
@@ -39,7 +41,7 @@ export var useDatePicker = function useDatePicker(_ref) {
39
41
  } else if ((newValue === null || newValue === void 0 ? void 0 : newValue.length) === format.length) {
40
42
  setCalendarValue(formatCalendarValue(newValue, format));
41
43
  }
42
- setInputValue(formatInputValue(newValue, format));
44
+ setInputValue(formatInputValue(newValue, format, lang));
43
45
  onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
44
46
  };
45
47
  var handleCommitDate = function handleCommitDate(date, applyFormat, isCalendarValue, dateInfo) {
@@ -52,8 +54,8 @@ export var useDatePicker = function useDatePicker(_ref) {
52
54
  return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate('', false, true);
53
55
  }
54
56
  if (isCalendarValue) {
55
- setCalendarValue(formatCalendarValue(date, format));
56
- setInputValue(formatInputValue(date, format));
57
+ setCalendarValue(formatCalendarValue(date, format, lang));
58
+ setInputValue(formatInputValue(date, format, lang));
57
59
  return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate(date, false, true, dateInfo);
58
60
  }
59
61
  var formatString = applyFormat ? format : undefined;
@@ -61,8 +63,8 @@ export var useDatePicker = function useDatePicker(_ref) {
61
63
  newDate = _getDateFromFormat.value,
62
64
  isError = _getDateFromFormat.isError,
63
65
  isSuccess = _getDateFromFormat.isSuccess;
64
- setCalendarValue(formatCalendarValue(newDate, format));
65
- setInputValue(formatInputValue(newDate, format));
66
+ setCalendarValue(formatCalendarValue(newDate, format, lang));
67
+ setInputValue(formatInputValue(newDate, format, lang));
66
68
  onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
67
69
  };
68
70
  return {
@@ -1,39 +1,41 @@
1
1
  import { customDayjs } from '../../../utils/datejs';
2
- export var formatInputValue = function formatInputValue(value, format) {
3
- if (!value) {
2
+ import 'dayjs/locale/ru';
3
+ import 'dayjs/locale/en';
4
+ export var formatInputValue = function formatInputValue(value, format, lang) {
5
+ if (!value || !lang) {
4
6
  return '';
5
7
  }
6
8
  if (format && customDayjs(value, format, true).isValid()) {
7
- return customDayjs(value, format).format(format);
9
+ return customDayjs(value, format).locale(lang).format(format);
8
10
  }
9
11
  if (format && String(value).length >= 10 && String(new Date(value)) !== 'Invalid Date') {
10
- return customDayjs(value).format(format);
12
+ return customDayjs(value).locale(lang).format(format);
11
13
  }
12
14
  return String(value);
13
15
  };
14
- export var formatCalendarValue = function formatCalendarValue(value, format) {
15
- if (!value) {
16
+ export var formatCalendarValue = function formatCalendarValue(value, format, lang) {
17
+ if (!value || !lang) {
16
18
  return undefined;
17
19
  }
18
20
  if (format && customDayjs(value, format, true).isValid()) {
19
- return customDayjs(value, format, true).toDate();
21
+ return customDayjs(value, format, true).locale(lang).toDate();
20
22
  }
21
23
  if (String(new Date(value)) !== 'Invalid Date') {
22
- return customDayjs(value).toDate();
24
+ return customDayjs(value).locale(lang).toDate();
23
25
  }
24
26
  return undefined;
25
27
  };
26
- export var getDateFromFormat = function getDateFromFormat(value, format) {
27
- if (format && customDayjs(value, format, true).isValid()) {
28
+ export var getDateFromFormat = function getDateFromFormat(value, format, lang) {
29
+ if (format && customDayjs(value, format, true).isValid() && lang) {
28
30
  return {
29
- value: customDayjs(value, format, true).toDate(),
31
+ value: customDayjs(value, format, true).locale(lang).toDate(),
30
32
  isError: false,
31
33
  isSuccess: true
32
34
  };
33
35
  }
34
- if (!format && String(new Date(value)) !== 'Invalid Date') {
36
+ if (!format && String(new Date(value)) !== 'Invalid Date' && lang) {
35
37
  return {
36
- value: customDayjs(value).toDate(),
38
+ value: customDayjs(value).locale(lang).toDate(),
37
39
  isError: false,
38
40
  isSuccess: true
39
41
  };
@@ -2,11 +2,7 @@ export var classes = {
2
2
  selectedSegmentItem: 'selected-segment-item',
3
3
  segmentPilled: 'segment-pilled',
4
4
  segmentGroupFilledBackground: 'segment-group-filled-background',
5
- segmentStretch: 'segment-stretched',
6
- segmentVertical: 'segment-vertical',
7
- segmentArrowPadding: 'segment-arrow-padding',
8
- segmentGroupClipScroll: 'segment-group-clip-scroll',
9
- segmentGroupClipShowAll: 'segment-group-clip-show-all'
5
+ segmentStretch: 'segment-stretched'
10
6
  };
11
7
  export var tokens = {
12
8
  fontFamily: '--plasma-segment-item-font-family',
@@ -21,9 +17,6 @@ export var tokens = {
21
17
  groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',
22
18
  groupWidth: '--plasma-segment-group-width',
23
19
  groupHeight: '--plasma-segment-group-height',
24
- groupVerticalHeight: '--plasma-segment-group-vertical-height',
25
- groupArrowPadding: '--plasma-segment-group-arrow-padding',
26
- groupVerticalArrowPadding: '--plasma-segment-group-vertical-arrow-padding',
27
20
  groupBackgroundColor: '--plasma-segment-group-background-color',
28
21
  groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',
29
22
  itemBorderRadius: '--plasma-segment-item-border-radius',
@@ -32,19 +25,13 @@ export var tokens = {
32
25
  itemHeight: '--plasma-segment-item-height',
33
26
  itemPadding: '--plasma-segment-item-padding',
34
27
  itemMarginLeft: '--plasma-segment-item-margin-left',
35
- itemContentPadding: '--plasma-segment-item-content-padding',
36
- itemIconMargin: '--plasma-segment-item-content-icon-margin',
37
28
  itemColor: '--plasma-segment-item-color',
38
29
  itemBackgroundColor: '--plasma-segment-item-background-color',
39
30
  itemColorHover: '--plasma-segment-item-color-hover',
40
31
  itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',
41
- itemAdditionalColor: '--plasma-segment-item-additional-color',
42
- itemAdditionalColorHover: '--plasma-segment-item-additional-color-hover',
43
32
  itemSelectedColor: '--plasma-segment-item-selected-color',
44
33
  itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',
45
34
  itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',
46
35
  itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',
47
- itemSelectedAdditionalColor: '--plasma-segment-item-selected-additional-color',
48
- itemSelectedAdditionalColorHover: '--plasma-segment-item-selected-additional-color-hover',
49
36
  disabledOpacity: '--plasma-segment-disabled-opacity'
50
37
  };
@@ -1,4 +1,4 @@
1
- var _excluded = ["id", "selectionMode", "pilled", "stretch", "vertical", "filledBackground", "disabled", "size", "view", "children"];
1
+ var _excluded = ["id", "selectionMode", "pilled", "stretch", "filledBackground", "disabled", "size", "view", "children"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
4
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -8,9 +8,9 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
8
8
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9
9
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
10
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
11
- import React, { forwardRef, useCallback, useMemo, useState, useEffect, useRef } from 'react';
12
- import { safeUseId } from '@salutejs/plasma-core';
13
- import { IconDisclosureLeft, IconDisclosureRight, IconDisclosureDown, IconDisclosureUp } from '../../../_Icon';
11
+ import React, { forwardRef, useCallback, useMemo, useState, Children, useEffect } from 'react';
12
+ import { safeUseId, useCarousel } from '@salutejs/plasma-core';
13
+ import { IconDisclosureLeft, IconDisclosureRight } from '../../../_Icon';
14
14
  import { classes, tokens } from '../../tokens';
15
15
  import { cx } from '../../../../utils';
16
16
  import { useSegmentInner } from '../../SegmentProvider/SegmentProvider';
@@ -20,26 +20,13 @@ import { base as disabledCSS } from './variations/_disabled/base';
20
20
  import { base as pilledCSS } from './variations/_pilled/base';
21
21
  import { base as filledBackgroundCSS } from './variations/_filledBackgound/base';
22
22
  import { base as stretchCSS } from './variations/_stretch/base';
23
- import { base as verticalCSS } from './variations/_vertical/base';
24
- import { StyledContent, StyledContentWrapper, base, StyledLeftArrow, StyledRightArrow, StyledTopArrow, StyledBottomArrow } from './SegmentGroup.styles';
25
- var Keys = /*#__PURE__*/function (Keys) {
26
- Keys[Keys["end"] = 35] = "end";
27
- Keys[Keys["home"] = 36] = "home";
28
- Keys[Keys["left"] = 37] = "left";
29
- Keys[Keys["right"] = 39] = "right";
30
- return Keys;
31
- }(Keys || {});
32
- export var getChildNodes = function getChildNodes(wrapper) {
33
- var container = wrapper === null || wrapper === void 0 ? void 0 : wrapper.firstChild;
34
- return container ? Array.from(container === null || container === void 0 ? void 0 : container.childNodes) : [];
35
- };
23
+ import { StyledArrow, StyledContent, StyledContentWrapper, base } from './SegmentGroup.styles';
36
24
  export var segmentGroupRoot = function segmentGroupRoot(Root) {
37
25
  return /*#__PURE__*/forwardRef(function (props, outerRef) {
38
26
  var id = props.id,
39
27
  selectionMode = props.selectionMode,
40
28
  pilled = props.pilled,
41
29
  stretch = props.stretch,
42
- vertical = props.vertical,
43
30
  _props$filledBackgrou = props.filledBackground,
44
31
  filledBackground = _props$filledBackgrou === void 0 ? false : _props$filledBackgrou,
45
32
  _props$disabled = props.disabled,
@@ -48,189 +35,132 @@ export var segmentGroupRoot = function segmentGroupRoot(Root) {
48
35
  view = props.view,
49
36
  children = props.children,
50
37
  rest = _objectWithoutProperties(props, _excluded);
51
- var scrollRef = useRef(null);
52
- var trackRef = useRef(null);
53
- var leftArrowRef = useRef(null);
54
38
  var _useSegmentInner = useSegmentInner(),
55
39
  setSelectionMode = _useSegmentInner.setSelectionMode,
56
40
  setDisabledGroup = _useSegmentInner.setDisabledGroup;
57
- var _useState = useState(true),
41
+ var _useState = useState(0),
58
42
  _useState2 = _slicedToArray(_useState, 2),
59
- firstItemVisible = _useState2[0],
60
- setFirstItemVisible = _useState2[1];
61
- var _useState3 = useState(true),
43
+ index = _useState2[0],
44
+ setIndex = _useState2[1];
45
+ var _useState3 = useState(false),
62
46
  _useState4 = _slicedToArray(_useState3, 2),
63
- lastItemVisible = _useState4[0],
64
- setLastItemVisible = _useState4[1];
47
+ firstItemVisible = _useState4[0],
48
+ setFirstItemVisible = _useState4[1];
49
+ var _useState5 = useState(false),
50
+ _useState6 = _slicedToArray(_useState5, 2),
51
+ lastItemVisible = _useState6[0],
52
+ setLastItemVisible = _useState6[1];
65
53
  var uniqId = safeUseId();
66
54
  var segmentGroupId = id || uniqId;
67
55
  var pilledAttr = view !== 'clear' && pilled;
68
56
  var filledBackgroundAttr = view !== 'clear' && filledBackground;
69
- var clipScrollClass = !stretch ? classes.segmentGroupClipScroll : undefined;
70
- var clipShowAllClass = stretch ? classes.segmentGroupClipShowAll : undefined;
71
57
  var pilledClass = pilledAttr ? classes.segmentPilled : undefined;
72
58
  var filledClass = filledBackgroundAttr ? classes.segmentGroupFilledBackground : undefined;
73
59
  var stretchClass = firstItemVisible && lastItemVisible && stretch ? classes.segmentStretch : undefined;
74
- var verticalClass = vertical ? classes.segmentVertical : undefined;
60
+ var items = (Children === null || Children === void 0 ? void 0 : Children.map(children, function (child) {
61
+ return child;
62
+ })) || [];
75
63
  var onPrev = useCallback(function () {
76
- if (disabled || !scrollRef.current) {
77
- return;
78
- }
79
- var childNodes = getChildNodes(scrollRef.current);
80
- var scrollLeft = Math.round(scrollRef.current.scrollLeft);
81
- var firstOverflowingTab = childNodes.slice().reverse().find(function (child) {
82
- if (!child || child.offsetLeft === undefined) {
83
- return;
84
- }
85
- var tabStartX = child.offsetLeft;
86
- return tabStartX < scrollLeft;
64
+ !disabled && setIndex(function (prevIndex) {
65
+ return prevIndex > 0 ? prevIndex - 1 : 0;
87
66
  });
88
- firstOverflowingTab === null || firstOverflowingTab === void 0 || firstOverflowingTab.scrollIntoView({
89
- block: 'nearest',
90
- inline: 'nearest'
91
- });
92
- }, [disabled, scrollRef]);
67
+ }, [disabled]);
93
68
  var onNext = useCallback(function () {
94
- if (disabled || !scrollRef.current) {
95
- return;
96
- }
97
- var scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);
98
- var childNodes = getChildNodes(scrollRef.current);
99
- var lastOverflowingChild = childNodes.find(function (child) {
100
- if (!child || child.offsetLeft === undefined) {
101
- return;
102
- }
103
- var tabEndX = child.offsetLeft + child.offsetWidth;
104
- return tabEndX > scrollRight;
69
+ !disabled && setIndex(function (prevIndex) {
70
+ return prevIndex < items.length - 1 ? prevIndex + 1 : prevIndex;
105
71
  });
106
- lastOverflowingChild === null || lastOverflowingChild === void 0 || lastOverflowingChild.scrollIntoView({
107
- block: 'nearest',
108
- inline: 'nearest'
109
- });
110
- }, [disabled, scrollRef]);
111
- var onKeyDown = useCallback(function (event) {
112
- var childNodes = getChildNodes(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current);
113
- var index = childNodes.findIndex(function (child) {
114
- return document.activeElement === child;
115
- });
116
- var minIndex = 0;
117
- var maxIndex = childNodes.length - 1;
118
- var nextIndex;
119
- switch (event.keyCode) {
120
- case Keys.end:
121
- nextIndex = maxIndex;
122
- break;
123
- case Keys.left:
124
- nextIndex = index > minIndex ? index - 1 : index;
125
- break;
126
- case Keys.right:
127
- nextIndex = index < maxIndex ? index + 1 : index;
128
- break;
129
- case Keys.home:
130
- nextIndex = minIndex;
131
- break;
132
- default:
133
- return;
134
- }
135
- if (nextIndex !== index) {
136
- var _childNodes$nextIndex, _childNodes$nextIndex2;
137
- event.preventDefault();
138
- (_childNodes$nextIndex = childNodes[nextIndex]) === null || _childNodes$nextIndex === void 0 || _childNodes$nextIndex.focus();
139
- (_childNodes$nextIndex2 = childNodes[nextIndex]) === null || _childNodes$nextIndex2 === void 0 || _childNodes$nextIndex2.scrollIntoView({
140
- block: 'center',
141
- inline: 'center',
142
- behavior: 'smooth'
72
+ }, [disabled]);
73
+ var onIntersecting = function onIntersecting(setVisible) {
74
+ return function (entries) {
75
+ /*
76
+ * Пробегаемся по элементам на которых есть слушатель события появления.
77
+ * Если элемент находится в зоне видимости или выходит из нее, меняем значение флага видимости
78
+ */
79
+ entries.forEach(function (entry) {
80
+ if (entry.isIntersecting) {
81
+ setVisible(true);
82
+ } else {
83
+ setVisible(false);
84
+ }
143
85
  });
144
- }
145
- }, []);
146
- var handleScroll = useCallback(function (event) {
147
- event.stopPropagation();
148
- if (vertical) {
149
- var maxScrollTop = event.currentTarget.scrollHeight - event.currentTarget.clientHeight;
150
- var scrollTop = Math.round(event.currentTarget.scrollTop);
151
- setFirstItemVisible(scrollTop <= 0);
152
- setLastItemVisible(scrollTop >= maxScrollTop);
153
- return;
154
- }
155
- var maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;
156
- var scrollLeft = Math.round(event.currentTarget.scrollLeft);
157
- setFirstItemVisible(scrollLeft <= 0);
158
- setLastItemVisible(scrollLeft >= maxScrollLeft);
159
- }, [vertical]);
160
- useEffect(function () {
161
- var _scrollRef$current3, _scrollRef$current4;
162
- if (vertical) {
163
- var _scrollRef$current, _scrollRef$current2;
164
- setLastItemVisible(((_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollHeight) === ((_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientHeight));
165
- return;
166
- }
167
- setLastItemVisible(((_scrollRef$current3 = scrollRef.current) === null || _scrollRef$current3 === void 0 ? void 0 : _scrollRef$current3.scrollWidth) === ((_scrollRef$current4 = scrollRef.current) === null || _scrollRef$current4 === void 0 ? void 0 : _scrollRef$current4.clientWidth));
168
- }, [vertical]);
169
-
170
- // Этот хук компенсирует появление левой/верхней стрелки при прокрутке
171
- useEffect(function () {
172
- if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {
173
- return;
174
- }
175
- if (vertical) {
176
- scrollRef.current.scrollTo({
177
- top: Math.round(scrollRef.current.scrollTop + leftArrowRef.current.clientHeight)
178
- });
179
- return;
180
- }
181
- scrollRef.current.scrollTo({
182
- left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
183
- });
184
- }, [firstItemVisible, vertical]);
86
+ };
87
+ };
88
+ var _useCarousel = useCarousel({
89
+ index: index,
90
+ axis: 'x',
91
+ scrollAlign: 'start',
92
+ detectActive: true,
93
+ debounceMs: 250,
94
+ onIndexChange: setIndex
95
+ }),
96
+ scrollRef = _useCarousel.scrollRef,
97
+ trackRef = _useCarousel.trackRef;
185
98
  var PreviousButton = useMemo(function () {
186
- var ArrowNode = vertical ? StyledTopArrow : StyledLeftArrow;
187
- return /*#__PURE__*/React.createElement(ArrowNode, {
99
+ return /*#__PURE__*/React.createElement(StyledArrow, {
188
100
  type: "button",
189
101
  "aria-label": "\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
190
102
  onClick: onPrev,
191
103
  tabIndex: disabled ? -1 : 0,
192
104
  disabled: disabled
193
- }, vertical ? /*#__PURE__*/React.createElement(IconDisclosureUp, {
194
- color: "var(".concat(tokens.arrowColor, ")"),
195
- size: "s"
196
- }) : /*#__PURE__*/React.createElement(IconDisclosureLeft, {
105
+ }, /*#__PURE__*/React.createElement(IconDisclosureLeft, {
197
106
  color: "var(".concat(tokens.arrowColor, ")")
198
107
  }));
199
- }, [onPrev, vertical]);
108
+ }, [onPrev]);
200
109
  var NextButton = useMemo(function () {
201
- var ArrowNode = vertical ? StyledBottomArrow : StyledRightArrow;
202
- return /*#__PURE__*/React.createElement(ArrowNode, {
110
+ return /*#__PURE__*/React.createElement(StyledArrow, {
203
111
  type: "button",
204
112
  "aria-label": "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
205
113
  onClick: onNext,
206
114
  tabIndex: disabled ? -1 : 0,
207
115
  disabled: disabled
208
- }, vertical ? /*#__PURE__*/React.createElement(IconDisclosureDown, {
209
- color: "var(".concat(tokens.arrowColor, ")"),
210
- size: "s"
211
- }) : /*#__PURE__*/React.createElement(IconDisclosureRight, {
116
+ }, /*#__PURE__*/React.createElement(IconDisclosureRight, {
212
117
  color: "var(".concat(tokens.arrowColor, ")")
213
118
  }));
214
- }, [onNext, vertical]);
119
+ }, [onNext]);
215
120
  useEffect(function () {
216
121
  selectionMode && setSelectionMode(selectionMode);
217
122
  setDisabledGroup(disabled);
218
123
  }, [selectionMode, disabled]);
124
+ useEffect(function () {
125
+ var _trackRef$current;
126
+ // Intersection observer для первого сегмента
127
+ var observeFirstItem = new IntersectionObserver(onIntersecting(setFirstItemVisible), {
128
+ root: null,
129
+ rootMargin: '0px',
130
+ threshold: 0.5
131
+ });
132
+
133
+ // Intersection observer для последнего сегмента
134
+ var observeLastItem = new IntersectionObserver(onIntersecting(setLastItemVisible), {
135
+ root: null,
136
+ rootMargin: '0px',
137
+ threshold: 0.5
138
+ });
139
+
140
+ // получаем список сегментов внутри SegmentGroup
141
+ var childrenArray = Array.from(((_trackRef$current = trackRef.current) === null || _trackRef$current === void 0 ? void 0 : _trackRef$current.children) || []);
142
+ if (childrenArray.length) {
143
+ // подписываемся на событие появление внутри SegmentGroup
144
+ observeFirstItem.observe(childrenArray[0]);
145
+ observeLastItem.observe(childrenArray[childrenArray.length - 1]);
146
+ }
147
+ return function () {
148
+ // отписываемся от события появления внутри SegmentGroup
149
+ observeFirstItem.disconnect();
150
+ observeLastItem.disconnect();
151
+ };
152
+ }, [children]);
219
153
  return /*#__PURE__*/React.createElement(Root, _extends({
220
154
  view: view,
221
155
  size: size,
222
- vertical: vertical,
223
156
  id: segmentGroupId,
224
157
  ref: outerRef,
225
158
  filledBackground: filledBackgroundAttr,
226
159
  disabled: disabled,
227
160
  pilled: pilledAttr,
228
- className: cx(pilledClass, filledClass, stretchClass, verticalClass),
229
- onKeyDown: onKeyDown
161
+ className: cx(pilledClass, filledClass, stretchClass)
230
162
  }, rest), !firstItemVisible && PreviousButton, /*#__PURE__*/React.createElement(StyledContentWrapper, {
231
- className: cx(clipScrollClass, clipShowAllClass),
232
- ref: scrollRef,
233
- onScroll: handleScroll
163
+ ref: scrollRef
234
164
  }, /*#__PURE__*/React.createElement(StyledContent, {
235
165
  ref: trackRef
236
166
  }, children)), !lastItemVisible && NextButton);
@@ -260,10 +190,6 @@ export var segmentGroupConfig = {
260
190
  css: stretchCSS,
261
191
  attrs: true
262
192
  },
263
- vertical: {
264
- css: verticalCSS,
265
- attrs: true
266
- },
267
193
  filledBackground: {
268
194
  css: filledBackgroundCSS,
269
195
  attrs: true