@salutejs/plasma-new-hope 0.156.0-canary.1392.11069835794.0 → 0.156.0-canary.1421.11068880918.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":"SingleDate.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useEffect, useRef, useState } from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, getPlacements } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport { classes } from '../DatePicker.tokens';\nimport { StyledCalendar } from '../DatePickerBase.styles';\nimport { useKeyNavigation } from '../hooks/useKeyboardNavigation';\n\nimport type { DatePickerProps } from './SingleDate.types';\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 readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledInput, StyledLabel, StyledPopover, base } from './SingleDate.styles';\n\nexport const datePickerRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<HTMLInputElement, DatePickerProps>(\n (\n {\n className,\n opened = false,\n\n label,\n labelPlacement = 'outer',\n placeholder,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n view,\n size,\n readOnly = false,\n disabled = false,\n\n defaultDate = '',\n valueError,\n valueSuccess,\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n offset,\n\n onChangeValue,\n onCommitDate,\n onToggle,\n onFocus,\n onBlur,\n\n ...rest\n },\n ref,\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarValue, setCalendarValue] = useState(formatCalendarValue(defaultDate, format, lang));\n const [inputValue, setInputValue] = useState(formatInputValue({ value: defaultDate, format, lang }));\n\n const innerLabelPlacement = labelPlacement === 'inner';\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n } = useDatePicker({\n currentValue: inputValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n onToggle,\n onChangeValue,\n onCommitDate,\n });\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n });\n\n const DatePickerInput = (\n <StyledInput\n ref={inputRef}\n className={cx(datePickerErrorClass, datePickerSuccessClass)}\n value={inputValue}\n size={size}\n readOnly={readOnly}\n disabled={disabled}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onChange={handleChangeValue}\n onSearch={(date) => handleCommitDate(date, true, false)}\n onFocus={onFocus}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n {...(innerLabelPlacement && { label, labelPlacement })}\n />\n );\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n setCalendarValue(formatCalendarValue(defaultDate, format, lang));\n setInputValue(formatInputValue({ value: defaultDate, format, lang }));\n }, [defaultDate]);\n\n useEffect(() => {\n setCalendarValue(formatCalendarValue(defaultDate, format, lang));\n setInputValue(formatInputValue({ value: defaultDate, format, lang }));\n }, [format, lang]);\n\n return (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n ref={ref}\n {...rest}\n >\n {!innerLabelPlacement && label && <StyledLabel>{label}</StyledLabel>}\n <StyledPopover\n opened={isInnerOpen}\n usePortal={false}\n onToggle={handleToggle}\n offset={offset}\n placement={getPlacements(placement)}\n trigger=\"click\"\n closeOnOverlayClick={closeOnOverlayClick}\n isFocusTrapped={false}\n target={DatePickerInput}\n preventOverflow={false}\n >\n <StyledCalendar\n size={size}\n value={calendarValue}\n type={type}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n includeEdgeDates={includeEdgeDates}\n isRange={false}\n locale={lang}\n onChangeValue={(date, dateInfo) => handleCommitDate(date, false, true, dateInfo)}\n />\n </StyledPopover>\n {leftHelper && <LeftHelper>{leftHelper}</LeftHelper>}\n </Root>\n );\n },\n );\n\nexport const datePickerConfig = {\n name: 'DatePicker',\n tag: 'div',\n layout: datePickerRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRoot","Root","forwardRef","_ref","ref","className","_ref$opened","opened","label","_ref$labelPlacement","labelPlacement","placeholder","leftHelper","contentLeft","contentRight","textBefore","textAfter","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","_ref$defaultDate","defaultDate","valueError","valueSuccess","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","offset","onChangeValue","onCommitDate","onToggle","onFocus","onBlur","rest","_objectWithoutProperties","_excluded","inputRef","useRef","_useState","useState","_useState2","_slicedToArray","isInnerOpen","setIsInnerOpen","_useState3","formatCalendarValue","_useState4","calendarValue","setCalendarValue","_useState5","formatInputValue","value","_useState6","inputValue","setInputValue","innerLabelPlacement","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","datePickerErrorClass","datePickerSuccessClass","handleToggle","handleChangeValue","handleCommitDate","_useKeyNavigation","useKeyNavigation","isCalendarOpen","onKeyDown","DatePickerInput","React","createElement","StyledInput","_extends","cx","onChange","onSearch","date","useEffect","prevOpen","classes","StyledLabel","StyledPopover","usePortal","getPlacements","trigger","isFocusTrapped","target","preventOverflow","StyledCalendar","isRange","locale","dateInfo","LeftHelper","datePickerConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"SingleDate.js","sources":["../../../../src/components/DatePicker/SingleDate/SingleDate.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useEffect, useRef, useState } from 'react';\n\nimport type { RootProps } from '../../../engines';\nimport { cx, getPlacements } from '../../../utils';\nimport { formatCalendarValue, formatInputValue, getDateFormatDelimiter } from '../utils/dateHelper';\nimport { useDatePicker } from '../hooks/useDatePicker';\nimport { classes } from '../DatePicker.tokens';\nimport { StyledCalendar } from '../DatePickerBase.styles';\nimport { useKeyNavigation } from '../hooks/useKeyboardNavigation';\nimport { setInitValue } from '../utils/setInitValue';\nimport { InputHidden } from '../../../utils/inputHidden';\n\nimport type { DatePickerProps } from './SingleDate.types';\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 readOnlyCSS } from './variations/_readonly/base';\nimport { LeftHelper, StyledInput, StyledLabel, StyledPopover, base } from './SingleDate.styles';\n\nexport const datePickerRoot = (\n Root: RootProps<HTMLDivElement, Omit<DatePickerProps, 'opened' | 'defaultValue' | 'onChangeValue'>>,\n) =>\n forwardRef<HTMLInputElement, DatePickerProps>(\n (\n {\n className,\n opened = false,\n\n label,\n labelPlacement = 'outer',\n placeholder,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n view,\n size,\n readOnly = false,\n disabled = false,\n name,\n\n defaultDate = '',\n valueError,\n valueSuccess,\n format = 'DD.MM.YYYY',\n lang = 'ru',\n maskWithFormat,\n min,\n max,\n includeEdgeDates = false,\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n type = 'Days',\n\n placement = ['top', 'bottom'],\n closeOnOverlayClick = true,\n offset,\n\n onChangeValue,\n onCommitDate,\n onToggle,\n onFocus,\n onBlur,\n onChange,\n\n ...rest\n },\n ref,\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const innerRef = useRef<HTMLInputElement | null>(null);\n const [isInnerOpen, setIsInnerOpen] = useState(opened);\n\n const [calendarValue, setCalendarValue] = useState(formatCalendarValue(defaultDate, format, lang));\n const [inputValue, setInputValue] = useState(formatInputValue({ value: defaultDate, format, lang }));\n\n const innerLabelPlacement = labelPlacement === 'inner';\n\n const dateFormatDelimiter = useCallback(() => getDateFormatDelimiter(format), [format]);\n\n const {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n } = useDatePicker({\n currentValue: inputValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang,\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n name,\n onToggle,\n onChangeValue,\n onCommitDate,\n onChange,\n });\n\n const { onKeyDown } = useKeyNavigation({\n isCalendarOpen: isInnerOpen,\n onToggle: handleToggle,\n });\n\n const DatePickerInput = (\n <StyledInput\n ref={inputRef}\n className={cx(datePickerErrorClass, datePickerSuccessClass)}\n value={inputValue}\n size={size}\n readOnly={readOnly}\n disabled={disabled}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onChange={handleChangeValue}\n onSearch={(date) => handleCommitDate(date, true, false)}\n onFocus={onFocus}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n {...(innerLabelPlacement && { label, labelPlacement })}\n />\n );\n\n useEffect(() => {\n setIsInnerOpen((prevOpen) => prevOpen !== opened && opened);\n }, [opened]);\n\n useEffect(() => {\n setCalendarValue(formatCalendarValue(defaultDate, format, lang));\n setInputValue(formatInputValue({ value: defaultDate, format, lang }));\n }, [defaultDate]);\n\n useEffect(() => {\n setCalendarValue(formatCalendarValue(defaultDate, format, lang));\n setInputValue(formatInputValue({ value: defaultDate, format, lang }));\n }, [format, lang]);\n\n useEffect(() => {\n if (innerRef.current) {\n innerRef.current.addEventListener('setInitValue', (e: Event) =>\n handleCommitDate(setInitValue(e), true, false),\n );\n }\n\n return () => {\n if (innerRef.current) {\n innerRef.current.removeEventListener('setInitValue', (e: Event) =>\n handleCommitDate(setInitValue(e), true, false),\n );\n }\n };\n }, [innerRef]);\n\n return (\n <Root\n view={view}\n size={size}\n className={cx(classes.datePickerRoot, className)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n ref={ref}\n {...rest}\n >\n {!innerLabelPlacement && label && <StyledLabel>{label}</StyledLabel>}\n <StyledPopover\n opened={isInnerOpen}\n usePortal={false}\n onToggle={handleToggle}\n offset={offset}\n placement={getPlacements(placement)}\n trigger=\"click\"\n closeOnOverlayClick={closeOnOverlayClick}\n isFocusTrapped={false}\n target={DatePickerInput}\n preventOverflow={false}\n >\n <StyledCalendar\n size={size}\n value={calendarValue}\n type={type}\n eventList={eventList}\n disabledList={disabledList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventQuarterList={eventQuarterList}\n disabledQuarterList={disabledQuarterList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n includeEdgeDates={includeEdgeDates}\n isRange={false}\n locale={lang}\n onChangeValue={(date, dateInfo) => handleCommitDate(date, false, true, dateInfo)}\n />\n </StyledPopover>\n {leftHelper && <LeftHelper>{leftHelper}</LeftHelper>}\n <InputHidden\n type=\"hidden\"\n datatype=\"datepicker-single\"\n name={name}\n value={inputValue}\n ref={innerRef}\n onChange={() => {}}\n />\n </Root>\n );\n },\n );\n\nexport const datePickerConfig = {\n name: 'DatePicker',\n tag: 'div',\n layout: datePickerRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["datePickerRoot","Root","forwardRef","_ref","ref","className","_ref$opened","opened","label","_ref$labelPlacement","labelPlacement","placeholder","leftHelper","contentLeft","contentRight","textBefore","textAfter","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","name","_ref$defaultDate","defaultDate","valueError","valueSuccess","_ref$format","format","_ref$lang","lang","maskWithFormat","min","max","_ref$includeEdgeDates","includeEdgeDates","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","_ref$type","type","_ref$placement","placement","_ref$closeOnOverlayCl","closeOnOverlayClick","offset","onChangeValue","onCommitDate","onToggle","onFocus","onBlur","onChange","rest","_objectWithoutProperties","_excluded","inputRef","useRef","innerRef","_useState","useState","_useState2","_slicedToArray","isInnerOpen","setIsInnerOpen","_useState3","formatCalendarValue","_useState4","calendarValue","setCalendarValue","_useState5","formatInputValue","value","_useState6","inputValue","setInputValue","innerLabelPlacement","dateFormatDelimiter","useCallback","getDateFormatDelimiter","_useDatePicker","useDatePicker","currentValue","datePickerErrorClass","datePickerSuccessClass","handleToggle","handleChangeValue","handleCommitDate","_useKeyNavigation","useKeyNavigation","isCalendarOpen","onKeyDown","DatePickerInput","React","createElement","StyledInput","_extends","cx","onSearch","date","useEffect","prevOpen","current","addEventListener","e","setInitValue","removeEventListener","classes","StyledLabel","StyledPopover","usePortal","getPlacements","trigger","isFocusTrapped","target","preventOverflow","StyledCalendar","isRange","locale","dateInfo","LeftHelper","InputHidden","datatype","datePickerConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","defaults"],"mappings":"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"}
@@ -21,9 +21,11 @@ var useDatePicker = function useDatePicker(_ref) {
21
21
  valueError = _ref.valueError,
22
22
  valueSuccess = _ref.valueSuccess,
23
23
  inputRef = _ref.inputRef,
24
+ name = _ref.name,
24
25
  onToggle = _ref.onToggle,
25
26
  onChangeValue = _ref.onChangeValue,
26
- onCommitDate = _ref.onCommitDate;
27
+ onCommitDate = _ref.onCommitDate,
28
+ onChange = _ref.onChange;
27
29
  var datePickerErrorClass = valueError ? DatePicker_tokens.classes.datePickerError : undefined;
28
30
  var datePickerSuccessClass = valueSuccess ? DatePicker_tokens.classes.datePickerSuccess : undefined;
29
31
  var handleToggle = function handleToggle(opened, event) {
@@ -50,6 +52,12 @@ var useDatePicker = function useDatePicker(_ref) {
50
52
  lang: lang
51
53
  }));
52
54
  onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
55
+ onChange === null || onChange === void 0 || onChange({
56
+ target: {
57
+ value: newValue,
58
+ name: name
59
+ }
60
+ });
53
61
  return;
54
62
  }
55
63
 
@@ -82,6 +90,12 @@ var useDatePicker = function useDatePicker(_ref) {
82
90
  isLengthEqual: isLengthEqual
83
91
  }));
84
92
  onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
93
+ onChange === null || onChange === void 0 || onChange({
94
+ target: {
95
+ value: newValue,
96
+ name: name
97
+ }
98
+ });
85
99
  };
86
100
  var handleCommitDate = function handleCommitDate(date, applyFormat, isCalendarValue, dateInfo) {
87
101
  if (disabled || readOnly) {
@@ -100,6 +114,16 @@ var useDatePicker = function useDatePicker(_ref) {
100
114
  lang: lang
101
115
  }));
102
116
  onCommitDate === null || onCommitDate === void 0 || onCommitDate(date, false, true, dateInfo);
117
+ onChange === null || onChange === void 0 || onChange({
118
+ target: {
119
+ value: dateHelper.formatInputValue({
120
+ value: date,
121
+ format: format,
122
+ lang: lang
123
+ }),
124
+ name: name
125
+ }
126
+ });
103
127
  return;
104
128
  }
105
129
  var formatString = applyFormat ? format : undefined;
@@ -114,6 +138,15 @@ var useDatePicker = function useDatePicker(_ref) {
114
138
  lang: lang
115
139
  }));
116
140
  onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
141
+ onChange === null || onChange === void 0 || onChange({
142
+ target: {
143
+ value: dateHelper.formatInputValue({
144
+ value: date,
145
+ format: format
146
+ }),
147
+ name: name
148
+ }
149
+ });
117
150
  };
118
151
  return {
119
152
  datePickerErrorClass: datePickerErrorClass,
@@ -1 +1 @@
1
- {"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import { ChangeEvent, SyntheticEvent } from 'react';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\nimport { customDayjs } from '../../../utils/datejs';\n\nexport const useDatePicker = ({\n currentValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n onToggle,\n onChangeValue,\n onCommitDate,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen = event.target === inputRef?.current ? true : opened;\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n if (!format) {\n setCalendarValue(formatCalendarValue(newValue));\n setInputValue(formatInputValue({ value: newValue, format, lang }));\n onChangeValue?.(event, newValue);\n\n return;\n }\n\n /**\n * NOTE: если в формате даты есть месяц в полном названии или сокращенном,\n * нужно дополнительно проводить валидацию на полноту введенной даты.\n * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.\n */\n const hasMonthFullName = /M{3,4}/g.test(format);\n let isValidMonth;\n let isLengthEqual;\n\n if (hasMonthFullName) {\n customDayjs.locale(lang);\n\n const firstIndexOfMonth = format.indexOf('M');\n const lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);\n\n const fullMonthName = !lastIndexOfMonth\n ? newValue.slice(firstIndexOfMonth)\n : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);\n\n const monthFormatting = format.replace(/[^M]/g, '');\n\n isValidMonth = customDayjs(`01 ${fullMonthName} 1970`, `DD ${monthFormatting} YYYY`, true).isValid();\n isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;\n }\n\n if ((!hasMonthFullName && newValue?.length === format?.length) || (isValidMonth && isLengthEqual)) {\n setCalendarValue(formatCalendarValue(newValue, format, lang));\n }\n\n setInputValue(\n formatInputValue({ value: newValue, format, lang, hasMonthFullName, isValidMonth, isLengthEqual }),\n );\n\n onChangeValue?.(event, newValue);\n };\n\n const handleCommitDate = (\n date?: Date | string,\n applyFormat?: boolean,\n isCalendarValue?: boolean,\n dateInfo?: DateInfo,\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true);\n }\n\n if (isCalendarValue) {\n setCalendarValue(formatCalendarValue(date, format, lang));\n setInputValue(formatInputValue({ value: date, format, lang }));\n onCommitDate?.(date, false, true, dateInfo);\n\n return;\n }\n\n const formatString = applyFormat ? format : undefined;\n\n const { value: newDate, isError, isSuccess } = getDateFromFormat(date, formatString, lang);\n\n setCalendarValue(formatCalendarValue(newDate, format, lang));\n setInputValue(formatInputValue({ value: newDate, format, lang }));\n\n onCommitDate?.(newDate, isError, isSuccess);\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","setInputValue","setCalendarValue","setIsInnerOpen","dateFormatDelimiter","format","_ref$lang","lang","disabled","readOnly","maskWithFormat","valueError","valueSuccess","inputRef","onToggle","onChangeValue","onCommitDate","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","handleToggle","opened","event","isCalendarOpen","target","current","handleChangeValue","value","newValue","getMaskedDateOnInput","formatCalendarValue","formatInputValue","hasMonthFullName","test","isValidMonth","isLengthEqual","customDayjs","locale","firstIndexOfMonth","indexOf","lastIndexOfMonth","fullMonthName","slice","monthFormatting","replace","concat","isValid","length","handleCommitDate","date","applyFormat","isCalendarValue","dateInfo","formatString","_getDateFromFormat","getDateFromFormat","newDate","isError","isSuccess"],"mappings":"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"}
1
+ {"version":3,"file":"useDatePicker.js","sources":["../../../../src/components/DatePicker/hooks/useDatePicker.ts"],"sourcesContent":["import { ChangeEvent, SyntheticEvent } from 'react';\n\nimport { classes } from '../DatePicker.tokens';\nimport type { UseDatePickerProps } from '../DatePickerBase.types';\nimport { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';\nimport type { DateInfo } from '../../Calendar/Calendar.types';\nimport { customDayjs } from '../../../utils/datejs';\n\nexport const useDatePicker = ({\n currentValue,\n setInputValue,\n setCalendarValue,\n setIsInnerOpen,\n dateFormatDelimiter,\n format,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n valueError,\n valueSuccess,\n inputRef,\n name,\n onToggle,\n onChangeValue,\n onCommitDate,\n onChange,\n}: UseDatePickerProps) => {\n const datePickerErrorClass = valueError ? classes.datePickerError : undefined;\n const datePickerSuccessClass = valueSuccess ? classes.datePickerSuccess : undefined;\n\n const handleToggle = (opened: boolean, event: SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const isCalendarOpen = event.target === inputRef?.current ? true : opened;\n\n if (onToggle) {\n return onToggle(isCalendarOpen, event);\n }\n\n setIsInnerOpen(isCalendarOpen);\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value } = event.target;\n\n const newValue = maskWithFormat\n ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue)\n : value;\n\n if (!format) {\n setCalendarValue(formatCalendarValue(newValue));\n setInputValue(formatInputValue({ value: newValue, format, lang }));\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n\n return;\n }\n\n /**\n * NOTE: если в формате даты есть месяц в полном названии или сокращенном,\n * нужно дополнительно проводить валидацию на полноту введенной даты.\n * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.\n */\n const hasMonthFullName = /M{3,4}/g.test(format);\n let isValidMonth;\n let isLengthEqual;\n\n if (hasMonthFullName) {\n customDayjs.locale(lang);\n\n const firstIndexOfMonth = format.indexOf('M');\n const lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);\n\n const fullMonthName = !lastIndexOfMonth\n ? newValue.slice(firstIndexOfMonth)\n : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);\n\n const monthFormatting = format.replace(/[^M]/g, '');\n\n isValidMonth = customDayjs(`01 ${fullMonthName} 1970`, `DD ${monthFormatting} YYYY`, true).isValid();\n isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;\n }\n\n if ((!hasMonthFullName && newValue?.length === format?.length) || (isValidMonth && isLengthEqual)) {\n setCalendarValue(formatCalendarValue(newValue, format, lang));\n }\n\n setInputValue(\n formatInputValue({ value: newValue, format, lang, hasMonthFullName, isValidMonth, isLengthEqual }),\n );\n\n onChangeValue?.(event, newValue);\n onChange?.({ target: { value: newValue, name } });\n };\n\n const handleCommitDate = (\n date?: Date | string,\n applyFormat?: boolean,\n isCalendarValue?: boolean,\n dateInfo?: DateInfo,\n ) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n setCalendarValue(undefined);\n setInputValue('');\n\n return onCommitDate?.('', false, true);\n }\n\n if (isCalendarValue) {\n setCalendarValue(formatCalendarValue(date, format, lang));\n setInputValue(formatInputValue({ value: date, format, lang }));\n onCommitDate?.(date, false, true, dateInfo);\n onChange?.({ target: { value: formatInputValue({ value: date, format, lang }), name } });\n\n return;\n }\n\n const formatString = applyFormat ? format : undefined;\n\n const { value: newDate, isError, isSuccess } = getDateFromFormat(date, formatString, lang);\n\n setCalendarValue(formatCalendarValue(newDate, format, lang));\n setInputValue(formatInputValue({ value: newDate, format, lang }));\n\n onCommitDate?.(newDate, isError, isSuccess);\n onChange?.({ target: { value: formatInputValue({ value: date, format }), name } });\n };\n\n return {\n datePickerErrorClass,\n datePickerSuccessClass,\n handleToggle,\n handleChangeValue,\n handleCommitDate,\n };\n};\n"],"names":["useDatePicker","_ref","currentValue","setInputValue","setCalendarValue","setIsInnerOpen","dateFormatDelimiter","format","_ref$lang","lang","disabled","readOnly","maskWithFormat","valueError","valueSuccess","inputRef","name","onToggle","onChangeValue","onCommitDate","onChange","datePickerErrorClass","classes","datePickerError","undefined","datePickerSuccessClass","datePickerSuccess","handleToggle","opened","event","isCalendarOpen","target","current","handleChangeValue","value","newValue","getMaskedDateOnInput","formatCalendarValue","formatInputValue","hasMonthFullName","test","isValidMonth","isLengthEqual","customDayjs","locale","firstIndexOfMonth","indexOf","lastIndexOfMonth","fullMonthName","slice","monthFormatting","replace","concat","isValid","length","handleCommitDate","date","applyFormat","isCalendarValue","dateInfo","formatString","_getDateFromFormat","getDateFromFormat","newDate","isError","isSuccess"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var setInitValue = function setInitValue(e) {
6
+ var item = e.target;
7
+ var defaultValue = String(item.getAttribute('defaultValue'));
8
+ return defaultValue;
9
+ };
10
+
11
+ exports.setInitValue = setInitValue;
12
+ //# sourceMappingURL=setInitValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setInitValue.js","sources":["../../../../src/components/DatePicker/utils/setInitValue.ts"],"sourcesContent":["export const setInitValue = (e: Event): string => {\n const item = e.target as HTMLInputElement;\n const defaultValue = String(item.getAttribute('defaultValue'));\n\n return defaultValue;\n};\n"],"names":["setInitValue","e","item","target","defaultValue","String","getAttribute"],"mappings":";;;;IAAaA,YAAY,GAAG,SAAfA,YAAYA,CAAIC,CAAQ,EAAa;AAC9C,EAAA,IAAMC,IAAI,GAAGD,CAAC,CAACE,MAA0B,CAAA;EACzC,IAAMC,YAAY,GAAGC,MAAM,CAACH,IAAI,CAACI,YAAY,CAAC,cAAc,CAAC,CAAC,CAAA;AAE9D,EAAA,OAAOF,YAAY,CAAA;AACvB;;;;"}
@@ -6,11 +6,7 @@ var classes = {
6
6
  selectedSegmentItem: 'selected-segment-item',
7
7
  segmentPilled: 'segment-pilled',
8
8
  segmentGroupFilledBackground: 'segment-group-filled-background',
9
- segmentStretch: 'segment-stretched',
10
- segmentVertical: 'segment-vertical',
11
- segmentArrowPadding: 'segment-arrow-padding',
12
- segmentXsSize: 'segment-xs-size',
13
- segmentAdditionalText: 'segment-additional-text'
9
+ segmentStretch: 'segment-stretched'
14
10
  };
15
11
  var tokens = {
16
12
  fontFamily: '--plasma-segment-item-font-family',
@@ -25,8 +21,6 @@ var tokens = {
25
21
  groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',
26
22
  groupWidth: '--plasma-segment-group-width',
27
23
  groupHeight: '--plasma-segment-group-height',
28
- groupArrowPadding: '--plasma-segment-group-arrow-padding',
29
- groupVerticalArrowPadding: '--plasma-segment-group-vertical-arrow-padding',
30
24
  groupBackgroundColor: '--plasma-segment-group-background-color',
31
25
  groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',
32
26
  itemBorderRadius: '--plasma-segment-item-border-radius',
@@ -34,22 +28,15 @@ var tokens = {
34
28
  itemWidth: '--plasma-segment-item-width',
35
29
  itemHeight: '--plasma-segment-item-height',
36
30
  itemPadding: '--plasma-segment-item-padding',
37
- itemPilledPadding: '--plasma-segment-item-pilled-padding',
38
31
  itemMarginLeft: '--plasma-segment-item-margin-left',
39
- itemContentPadding: '--plasma-segment-item-content-padding',
40
- itemIconMargin: '--plasma-segment-item-content-icon-margin',
41
32
  itemColor: '--plasma-segment-item-color',
42
33
  itemBackgroundColor: '--plasma-segment-item-background-color',
43
34
  itemColorHover: '--plasma-segment-item-color-hover',
44
35
  itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',
45
- itemAdditionalColor: '--plasma-segment-item-additional-color',
46
- itemAdditionalColorHover: '--plasma-segment-item-additional-color-hover',
47
36
  itemSelectedColor: '--plasma-segment-item-selected-color',
48
37
  itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',
49
38
  itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',
50
39
  itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',
51
- itemSelectedAdditionalColor: '--plasma-segment-item-selected-additional-color',
52
- itemSelectedAdditionalColorHover: '--plasma-segment-item-selected-additional-color-hover',
53
40
  disabledOpacity: '--plasma-segment-disabled-opacity'
54
41
  };
55
42
 
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sources":["../../../src/components/Segment/tokens.ts"],"sourcesContent":["export const classes = {\n selectedSegmentItem: 'selected-segment-item',\n segmentPilled: 'segment-pilled',\n segmentGroupFilledBackground: 'segment-group-filled-background',\n segmentStretch: 'segment-stretched',\n segmentVertical: 'segment-vertical',\n segmentArrowPadding: 'segment-arrow-padding',\n segmentXsSize: 'segment-xs-size',\n segmentAdditionalText: 'segment-additional-text',\n};\n\nexport const tokens = {\n fontFamily: '--plasma-segment-item-font-family',\n fontSize: '--plasma-segment-item-font-size',\n fontStyle: '--plasma-segment-item-font-style',\n fontWeight: '--plasma-segment-item-font-weight',\n letterSpacing: '--plasma-segment-item-letter-spacing',\n lineHeight: '--plasma-segment-item-lineheight',\n\n outlineFocusColor: '--plasma-segment-outline-focus-color',\n\n arrowColor: '--plasma-segment-arrow-color',\n\n groupBorderRadius: '--plasma-segment-group-border-radius',\n groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',\n groupWidth: '--plasma-segment-group-width',\n groupHeight: '--plasma-segment-group-height',\n groupArrowPadding: '--plasma-segment-group-arrow-padding',\n groupVerticalArrowPadding: '--plasma-segment-group-vertical-arrow-padding',\n\n groupBackgroundColor: '--plasma-segment-group-background-color',\n groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',\n\n itemBorderRadius: '--plasma-segment-item-border-radius',\n itemPilledBorderRadius: '--plasma-segment-item-pilled-border-radius',\n itemWidth: '--plasma-segment-item-width',\n itemHeight: '--plasma-segment-item-height',\n itemPadding: '--plasma-segment-item-padding',\n itemPilledPadding: '--plasma-segment-item-pilled-padding',\n itemMarginLeft: '--plasma-segment-item-margin-left',\n itemContentPadding: '--plasma-segment-item-content-padding',\n itemIconMargin: '--plasma-segment-item-content-icon-margin',\n\n itemColor: '--plasma-segment-item-color',\n itemBackgroundColor: '--plasma-segment-item-background-color',\n itemColorHover: '--plasma-segment-item-color-hover',\n itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',\n itemAdditionalColor: '--plasma-segment-item-additional-color',\n itemAdditionalColorHover: '--plasma-segment-item-additional-color-hover',\n\n itemSelectedColor: '--plasma-segment-item-selected-color',\n itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',\n itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',\n itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',\n itemSelectedAdditionalColor: '--plasma-segment-item-selected-additional-color',\n itemSelectedAdditionalColorHover: '--plasma-segment-item-selected-additional-color-hover',\n\n disabledOpacity: '--plasma-segment-disabled-opacity',\n};\n"],"names":["classes","selectedSegmentItem","segmentPilled","segmentGroupFilledBackground","segmentStretch","segmentVertical","segmentArrowPadding","segmentXsSize","segmentAdditionalText","tokens","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","outlineFocusColor","arrowColor","groupBorderRadius","groupPilledBorderRadius","groupWidth","groupHeight","groupArrowPadding","groupVerticalArrowPadding","groupBackgroundColor","groupFilledBackgroundColor","itemBorderRadius","itemPilledBorderRadius","itemWidth","itemHeight","itemPadding","itemPilledPadding","itemMarginLeft","itemContentPadding","itemIconMargin","itemColor","itemBackgroundColor","itemColorHover","itemBackgroundColorHover","itemAdditionalColor","itemAdditionalColorHover","itemSelectedColor","itemSelectedBackgroundColor","itemSelectedColorHover","itemSelectedBackgroundColorHover","itemSelectedAdditionalColor","itemSelectedAdditionalColorHover","disabledOpacity"],"mappings":";;;;AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,mBAAmB,EAAE,uBAAuB;AAC5CC,EAAAA,aAAa,EAAE,gBAAgB;AAC/BC,EAAAA,4BAA4B,EAAE,iCAAiC;AAC/DC,EAAAA,cAAc,EAAE,mBAAmB;AACnCC,EAAAA,eAAe,EAAE,kBAAkB;AACnCC,EAAAA,mBAAmB,EAAE,uBAAuB;AAC5CC,EAAAA,aAAa,EAAE,iBAAiB;AAChCC,EAAAA,qBAAqB,EAAE,yBAAA;AAC3B,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,mCAAmC;AAC/CC,EAAAA,QAAQ,EAAE,iCAAiC;AAC3CC,EAAAA,SAAS,EAAE,kCAAkC;AAC7CC,EAAAA,UAAU,EAAE,mCAAmC;AAC/CC,EAAAA,aAAa,EAAE,sCAAsC;AACrDC,EAAAA,UAAU,EAAE,kCAAkC;AAE9CC,EAAAA,iBAAiB,EAAE,sCAAsC;AAEzDC,EAAAA,UAAU,EAAE,8BAA8B;AAE1CC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,uBAAuB,EAAE,6CAA6C;AACtEC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAC5CC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,yBAAyB,EAAE,+CAA+C;AAE1EC,EAAAA,oBAAoB,EAAE,yCAAyC;AAC/DC,EAAAA,0BAA0B,EAAE,gDAAgD;AAE5EC,EAAAA,gBAAgB,EAAE,qCAAqC;AACvDC,EAAAA,sBAAsB,EAAE,4CAA4C;AACpEC,EAAAA,SAAS,EAAE,6BAA6B;AACxCC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAC5CC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,cAAc,EAAE,mCAAmC;AACnDC,EAAAA,kBAAkB,EAAE,uCAAuC;AAC3DC,EAAAA,cAAc,EAAE,2CAA2C;AAE3DC,EAAAA,SAAS,EAAE,6BAA6B;AACxCC,EAAAA,mBAAmB,EAAE,wCAAwC;AAC7DC,EAAAA,cAAc,EAAE,mCAAmC;AACnDC,EAAAA,wBAAwB,EAAE,8CAA8C;AACxEC,EAAAA,mBAAmB,EAAE,wCAAwC;AAC7DC,EAAAA,wBAAwB,EAAE,8CAA8C;AAExEC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,2BAA2B,EAAE,iDAAiD;AAC9EC,EAAAA,sBAAsB,EAAE,4CAA4C;AACpEC,EAAAA,gCAAgC,EAAE,uDAAuD;AACzFC,EAAAA,2BAA2B,EAAE,iDAAiD;AAC9EC,EAAAA,gCAAgC,EAAE,uDAAuD;AAEzFC,EAAAA,eAAe,EAAE,mCAAA;AACrB;;;;;"}
1
+ {"version":3,"file":"tokens.js","sources":["../../../src/components/Segment/tokens.ts"],"sourcesContent":["export const classes = {\n selectedSegmentItem: 'selected-segment-item',\n segmentPilled: 'segment-pilled',\n segmentGroupFilledBackground: 'segment-group-filled-background',\n segmentStretch: 'segment-stretched',\n};\n\nexport const tokens = {\n fontFamily: '--plasma-segment-item-font-family',\n fontSize: '--plasma-segment-item-font-size',\n fontStyle: '--plasma-segment-item-font-style',\n fontWeight: '--plasma-segment-item-font-weight',\n letterSpacing: '--plasma-segment-item-letter-spacing',\n lineHeight: '--plasma-segment-item-lineheight',\n\n outlineFocusColor: '--plasma-segment-outline-focus-color',\n\n arrowColor: '--plasma-segment-arrow-color',\n\n groupBorderRadius: '--plasma-segment-group-border-radius',\n groupPilledBorderRadius: '--plasma-segment-group-pilled-border-radius',\n groupWidth: '--plasma-segment-group-width',\n groupHeight: '--plasma-segment-group-height',\n\n groupBackgroundColor: '--plasma-segment-group-background-color',\n groupFilledBackgroundColor: '--plasma-segment-group-filled-background-color',\n\n itemBorderRadius: '--plasma-segment-item-border-radius',\n itemPilledBorderRadius: '--plasma-segment-item-pilled-border-radius',\n itemWidth: '--plasma-segment-item-width',\n itemHeight: '--plasma-segment-item-height',\n itemPadding: '--plasma-segment-item-padding',\n itemMarginLeft: '--plasma-segment-item-margin-left',\n\n itemColor: '--plasma-segment-item-color',\n itemBackgroundColor: '--plasma-segment-item-background-color',\n itemColorHover: '--plasma-segment-item-color-hover',\n itemBackgroundColorHover: '--plasma-segment-item-background-color-hover',\n\n itemSelectedColor: '--plasma-segment-item-selected-color',\n itemSelectedBackgroundColor: '--plasma-segment-item-selected-background-color',\n itemSelectedColorHover: '--plasma-segment-item-selected-color-hover',\n itemSelectedBackgroundColorHover: '--plasma-segment-item-selected-background-color-hover',\n\n disabledOpacity: '--plasma-segment-disabled-opacity',\n};\n"],"names":["classes","selectedSegmentItem","segmentPilled","segmentGroupFilledBackground","segmentStretch","tokens","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","outlineFocusColor","arrowColor","groupBorderRadius","groupPilledBorderRadius","groupWidth","groupHeight","groupBackgroundColor","groupFilledBackgroundColor","itemBorderRadius","itemPilledBorderRadius","itemWidth","itemHeight","itemPadding","itemMarginLeft","itemColor","itemBackgroundColor","itemColorHover","itemBackgroundColorHover","itemSelectedColor","itemSelectedBackgroundColor","itemSelectedColorHover","itemSelectedBackgroundColorHover","disabledOpacity"],"mappings":";;;;AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,mBAAmB,EAAE,uBAAuB;AAC5CC,EAAAA,aAAa,EAAE,gBAAgB;AAC/BC,EAAAA,4BAA4B,EAAE,iCAAiC;AAC/DC,EAAAA,cAAc,EAAE,mBAAA;AACpB,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,mCAAmC;AAC/CC,EAAAA,QAAQ,EAAE,iCAAiC;AAC3CC,EAAAA,SAAS,EAAE,kCAAkC;AAC7CC,EAAAA,UAAU,EAAE,mCAAmC;AAC/CC,EAAAA,aAAa,EAAE,sCAAsC;AACrDC,EAAAA,UAAU,EAAE,kCAAkC;AAE9CC,EAAAA,iBAAiB,EAAE,sCAAsC;AAEzDC,EAAAA,UAAU,EAAE,8BAA8B;AAE1CC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,uBAAuB,EAAE,6CAA6C;AACtEC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAE5CC,EAAAA,oBAAoB,EAAE,yCAAyC;AAC/DC,EAAAA,0BAA0B,EAAE,gDAAgD;AAE5EC,EAAAA,gBAAgB,EAAE,qCAAqC;AACvDC,EAAAA,sBAAsB,EAAE,4CAA4C;AACpEC,EAAAA,SAAS,EAAE,6BAA6B;AACxCC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAC5CC,EAAAA,cAAc,EAAE,mCAAmC;AAEnDC,EAAAA,SAAS,EAAE,6BAA6B;AACxCC,EAAAA,mBAAmB,EAAE,wCAAwC;AAC7DC,EAAAA,cAAc,EAAE,mCAAmC;AACnDC,EAAAA,wBAAwB,EAAE,8CAA8C;AAExEC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzDC,EAAAA,2BAA2B,EAAE,iDAAiD;AAC9EC,EAAAA,sBAAsB,EAAE,4CAA4C;AACpEC,EAAAA,gCAAgC,EAAE,uDAAuD;AAEzFC,EAAAA,eAAe,EAAE,mCAAA;AACrB;;;;;"}
@@ -1,4 +1,6 @@
1
- .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);}
1
+ .IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
2
+
3
+ .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);}
2
4
 
3
5
  .base_hsx1sr_bo2wq9n__1e99adcc{background-color:var(--plasma-segment-group-background-color);}
4
6
 
@@ -6,12 +8,11 @@
6
8
 
7
9
  .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);}
8
10
 
9
- .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);}
11
+ .base_escgtx_b13sjoz1__a1f0e6e1.base_escgtx_segmentGroupFilledBackground__a1f0e6e1{background-color:var(--plasma-segment-group-filled-background-color);}
10
12
 
11
13
  .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%;}
12
14
 
13
- .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;}
14
-
15
- .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);}
16
- .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%;}
17
- .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;}
15
+ .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;}
16
+ .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;}
17
+ .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;}
18
+ .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;}
@@ -5,6 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
6
6
  var React = require('react');
7
7
  var plasmaCore = require('@salutejs/plasma-core');
8
+ var IconDisclosureLeft = require('../../../_Icon/Icons/IconDisclosureLeft.js');
9
+ var IconDisclosureRight = require('../../../_Icon/Icons/IconDisclosureRight.js');
10
+ require('@linaria/react');
8
11
  var tokens = require('../../tokens.js');
9
12
  var index = require('../../../../utils/index.js');
10
13
  var SegmentProvider = require('../../SegmentProvider/SegmentProvider.js');
@@ -12,110 +15,154 @@ var base = require('./variations/_size/base.js');
12
15
  var base$1 = require('./variations/_view/base.js');
13
16
  var base$2 = require('./variations/_disabled/base.js');
14
17
  var base$3 = require('./variations/_pilled/base.js');
15
- var base$6 = require('./variations/_filledBackgound/base.js');
18
+ var base$5 = require('./variations/_filledBackgound/base.js');
16
19
  var base$4 = require('./variations/_stretch/base.js');
17
- var base$5 = require('./variations/_orientation/base.js');
18
20
  var SegmentGroup_styles = require('./SegmentGroup.styles.js');
19
21
 
20
- var _excluded = ["id", "selectionMode", "pilled", "stretch", "orientation", "filledBackground", "hasBackground", "disabled", "size", "view", "children"];
21
- var Keys = /*#__PURE__*/function (Keys) {
22
- Keys[Keys["end"] = 35] = "end";
23
- Keys[Keys["home"] = 36] = "home";
24
- Keys[Keys["left"] = 37] = "left";
25
- Keys[Keys["right"] = 39] = "right";
26
- return Keys;
27
- }(Keys || {});
28
- var getChildNodes = function getChildNodes(wrapper) {
29
- var container = wrapper === null || wrapper === void 0 ? void 0 : wrapper.firstChild;
30
- return container ? Array.from(container === null || container === void 0 ? void 0 : container.childNodes) : [];
31
- };
22
+ var _excluded = ["id", "selectionMode", "pilled", "stretch", "filledBackground", "disabled", "size", "view", "children"];
32
23
  var segmentGroupRoot = function segmentGroupRoot(Root) {
33
24
  return /*#__PURE__*/React.forwardRef(function (props, outerRef) {
34
25
  var id = props.id,
35
26
  selectionMode = props.selectionMode,
36
27
  pilled = props.pilled,
37
28
  stretch = props.stretch,
38
- _props$orientation = props.orientation,
39
- orientation = _props$orientation === void 0 ? 'horizontal' : _props$orientation,
40
29
  _props$filledBackgrou = props.filledBackground,
41
30
  filledBackground = _props$filledBackgrou === void 0 ? false : _props$filledBackgrou,
42
- _props$hasBackground = props.hasBackground,
43
- hasBackground = _props$hasBackground === void 0 ? false : _props$hasBackground,
44
31
  _props$disabled = props.disabled,
45
32
  disabled = _props$disabled === void 0 ? false : _props$disabled,
46
33
  size = props.size,
47
34
  view = props.view,
48
35
  children = props.children,
49
36
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(props, _excluded);
50
- var scrollRef = React.useRef(null);
51
- var trackRef = React.useRef(null);
52
37
  var _useSegmentInner = SegmentProvider.useSegmentInner(),
53
38
  setSelectionMode = _useSegmentInner.setSelectionMode,
54
39
  setDisabledGroup = _useSegmentInner.setDisabledGroup;
40
+ var _useState = React.useState(0),
41
+ _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
42
+ index$1 = _useState2[0],
43
+ setIndex = _useState2[1];
44
+ var _useState3 = React.useState(false),
45
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
46
+ firstItemVisible = _useState4[0],
47
+ setFirstItemVisible = _useState4[1];
48
+ var _useState5 = React.useState(false),
49
+ _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
50
+ lastItemVisible = _useState6[0],
51
+ setLastItemVisible = _useState6[1];
55
52
  var uniqId = plasmaCore.safeUseId();
56
53
  var segmentGroupId = id || uniqId;
57
- var isVertical = orientation === 'vertical';
58
- var pilledAttr = hasBackground && pilled;
59
- var filledBackgroundAttr = filledBackground || hasBackground;
60
- var stretchClass = stretch ? tokens.classes.segmentStretch : undefined;
61
- var orientationClass = isVertical ? tokens.classes.segmentVertical : undefined;
54
+ var pilledAttr = view !== 'clear' && pilled;
55
+ var filledBackgroundAttr = view !== 'clear' && filledBackground;
62
56
  var pilledClass = pilledAttr ? tokens.classes.segmentPilled : undefined;
63
57
  var filledClass = filledBackgroundAttr ? tokens.classes.segmentGroupFilledBackground : undefined;
64
- var onKeyDown = React.useCallback(function (event) {
65
- var childNodes = getChildNodes(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current);
66
- var index = childNodes.findIndex(function (child) {
67
- return document.activeElement === child;
58
+ var stretchClass = firstItemVisible && lastItemVisible && stretch ? tokens.classes.segmentStretch : undefined;
59
+ var items = (React.Children === null || React.Children === void 0 ? void 0 : React.Children.map(children, function (child) {
60
+ return child;
61
+ })) || [];
62
+ var onPrev = React.useCallback(function () {
63
+ !disabled && setIndex(function (prevIndex) {
64
+ return prevIndex > 0 ? prevIndex - 1 : 0;
68
65
  });
69
- var minIndex = 0;
70
- var maxIndex = childNodes.length - 1;
71
- var nextIndex;
72
- switch (event.keyCode) {
73
- case Keys.end:
74
- nextIndex = maxIndex;
75
- break;
76
- case Keys.left:
77
- nextIndex = index > minIndex ? index - 1 : index;
78
- break;
79
- case Keys.right:
80
- nextIndex = index < maxIndex ? index + 1 : index;
81
- break;
82
- case Keys.home:
83
- nextIndex = minIndex;
84
- break;
85
- default:
86
- return;
87
- }
88
- if (nextIndex !== index) {
89
- var _childNodes$nextIndex, _childNodes$nextIndex2;
90
- event.preventDefault();
91
- (_childNodes$nextIndex = childNodes[nextIndex]) === null || _childNodes$nextIndex === void 0 || _childNodes$nextIndex.focus();
92
- (_childNodes$nextIndex2 = childNodes[nextIndex]) === null || _childNodes$nextIndex2 === void 0 || _childNodes$nextIndex2.scrollIntoView({
93
- block: 'center',
94
- inline: 'center',
95
- behavior: 'smooth'
66
+ }, [disabled]);
67
+ var onNext = React.useCallback(function () {
68
+ !disabled && setIndex(function (prevIndex) {
69
+ return prevIndex < items.length - 1 ? prevIndex + 1 : prevIndex;
70
+ });
71
+ }, [disabled]);
72
+ var onIntersecting = function onIntersecting(setVisible) {
73
+ return function (entries) {
74
+ /*
75
+ * Пробегаемся по элементам на которых есть слушатель события появления.
76
+ * Если элемент находится в зоне видимости или выходит из нее, меняем значение флага видимости
77
+ */
78
+ entries.forEach(function (entry) {
79
+ if (entry.isIntersecting) {
80
+ setVisible(true);
81
+ } else {
82
+ setVisible(false);
83
+ }
96
84
  });
97
- }
98
- }, []);
85
+ };
86
+ };
87
+ var _useCarousel = plasmaCore.useCarousel({
88
+ index: index$1,
89
+ axis: 'x',
90
+ scrollAlign: 'start',
91
+ detectActive: true,
92
+ debounceMs: 250,
93
+ onIndexChange: setIndex
94
+ }),
95
+ scrollRef = _useCarousel.scrollRef,
96
+ trackRef = _useCarousel.trackRef;
97
+ var PreviousButton = React.useMemo(function () {
98
+ return /*#__PURE__*/React.createElement(SegmentGroup_styles.StyledArrow, {
99
+ type: "button",
100
+ "aria-label": "\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
101
+ onClick: onPrev,
102
+ tabIndex: disabled ? -1 : 0,
103
+ disabled: disabled
104
+ }, /*#__PURE__*/React.createElement(IconDisclosureLeft.IconDisclosureLeft, {
105
+ color: "var(".concat(tokens.tokens.arrowColor, ")")
106
+ }));
107
+ }, [onPrev]);
108
+ var NextButton = React.useMemo(function () {
109
+ return /*#__PURE__*/React.createElement(SegmentGroup_styles.StyledArrow, {
110
+ type: "button",
111
+ "aria-label": "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
112
+ onClick: onNext,
113
+ tabIndex: disabled ? -1 : 0,
114
+ disabled: disabled
115
+ }, /*#__PURE__*/React.createElement(IconDisclosureRight.IconDisclosureRight, {
116
+ color: "var(".concat(tokens.tokens.arrowColor, ")")
117
+ }));
118
+ }, [onNext]);
99
119
  React.useEffect(function () {
100
120
  selectionMode && setSelectionMode(selectionMode);
101
121
  setDisabledGroup(disabled);
102
122
  }, [selectionMode, disabled]);
123
+ React.useEffect(function () {
124
+ var _trackRef$current;
125
+ // Intersection observer для первого сегмента
126
+ var observeFirstItem = new IntersectionObserver(onIntersecting(setFirstItemVisible), {
127
+ root: null,
128
+ rootMargin: '0px',
129
+ threshold: 0.5
130
+ });
131
+
132
+ // Intersection observer для последнего сегмента
133
+ var observeLastItem = new IntersectionObserver(onIntersecting(setLastItemVisible), {
134
+ root: null,
135
+ rootMargin: '0px',
136
+ threshold: 0.5
137
+ });
138
+
139
+ // получаем список сегментов внутри SegmentGroup
140
+ var childrenArray = Array.from(((_trackRef$current = trackRef.current) === null || _trackRef$current === void 0 ? void 0 : _trackRef$current.children) || []);
141
+ if (childrenArray.length) {
142
+ // подписываемся на событие появление внутри SegmentGroup
143
+ observeFirstItem.observe(childrenArray[0]);
144
+ observeLastItem.observe(childrenArray[childrenArray.length - 1]);
145
+ }
146
+ return function () {
147
+ // отписываемся от события появления внутри SegmentGroup
148
+ observeFirstItem.disconnect();
149
+ observeLastItem.disconnect();
150
+ };
151
+ }, [children]);
103
152
  return /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({
104
153
  view: view,
105
154
  size: size,
106
- orientation: orientation,
107
155
  id: segmentGroupId,
108
156
  ref: outerRef,
109
157
  filledBackground: filledBackgroundAttr,
110
158
  disabled: disabled,
111
159
  pilled: pilledAttr,
112
- className: index.cx(pilledClass, filledClass, stretchClass, orientationClass),
113
- onKeyDown: onKeyDown
114
- }, rest), /*#__PURE__*/React.createElement(SegmentGroup_styles.StyledContentWrapper, {
160
+ className: index.cx(pilledClass, filledClass, stretchClass)
161
+ }, rest), !firstItemVisible && PreviousButton, /*#__PURE__*/React.createElement(SegmentGroup_styles.StyledContentWrapper, {
115
162
  ref: scrollRef
116
163
  }, /*#__PURE__*/React.createElement(SegmentGroup_styles.StyledContent, {
117
164
  ref: trackRef
118
- }, children)));
165
+ }, children)), !lastItemVisible && NextButton);
119
166
  });
120
167
  };
121
168
  var segmentGroupConfig = {
@@ -142,20 +189,17 @@ var segmentGroupConfig = {
142
189
  css: base$4.base,
143
190
  attrs: true
144
191
  },
145
- orientation: {
146
- css: base$5.base
147
- },
148
192
  filledBackground: {
149
- css: base$6.base,
193
+ css: base$5.base,
150
194
  attrs: true
151
195
  }
152
196
  },
153
197
  defaults: {
198
+ view: 'clear',
154
199
  size: 'xs'
155
200
  }
156
201
  };
157
202
 
158
- exports.getChildNodes = getChildNodes;
159
203
  exports.segmentGroupConfig = segmentGroupConfig;
160
204
  exports.segmentGroupRoot = segmentGroupRoot;
161
205
  //# sourceMappingURL=SegmentGroup.js.map