@salutejs/plasma-new-hope 0.339.0-canary.2296.18749364572.0 → 0.339.0-canary.2297.18772323112.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.css +3 -3
  2. package/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +1 -1
  3. package/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js.map +1 -1
  4. package/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/{HorizontalIconTabItem.styles_1yj92p8.css → HorizontalIconTabItem.styles_bv5xdd.css} +1 -1
  5. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.css +6 -6
  6. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +1 -1
  7. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js.map +1 -1
  8. package/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/{HorizontalTabItem.styles_ohczvf.css → HorizontalTabItem.styles_hklgpq.css} +1 -1
  9. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.css +4 -4
  10. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +1 -1
  11. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js.map +1 -1
  12. package/{es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles_1un37ow.css → cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles_vmnj1d.css} +1 -1
  13. package/cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.css +3 -3
  14. package/cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +1 -1
  15. package/cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js.map +1 -1
  16. package/{es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles_1vnlsyl.css → cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles_2xthe5.css} +1 -1
  17. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.css +6 -6
  18. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +1 -1
  19. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js.map +1 -1
  20. package/cjs/components/Tabs/ui/vertical/VerticalTabItem/{VerticalTabItem.styles_11xtftz.css → VerticalTabItem.styles_oqphem.css} +1 -1
  21. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.css +5 -5
  22. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +1 -1
  23. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js.map +1 -1
  24. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles_1741mpr.css +4 -0
  25. package/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  26. package/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js.map +1 -1
  27. package/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base_rze03c.css +1 -0
  28. package/cjs/components/TextArea/TextArea.js +3 -2
  29. package/cjs/components/TextArea/TextArea.js.map +1 -1
  30. package/cjs/components/TextField/TextField.js +3 -2
  31. package/cjs/components/TextField/TextField.js.map +1 -1
  32. package/cjs/components/TimePicker/TimePicker.css +11 -15
  33. package/cjs/components/TimePicker/TimePicker.js +458 -22
  34. package/cjs/components/TimePicker/TimePicker.js.map +1 -1
  35. package/cjs/components/TimePicker/TimePicker.styles.js +21 -17
  36. package/cjs/components/TimePicker/TimePicker.styles.js.map +1 -1
  37. package/cjs/components/TimePicker/{TimePicker.styles_2lk4d9.css → TimePicker.styles_ar3obv.css} +3 -4
  38. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.css +7 -0
  39. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
  40. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +1 -0
  41. package/cjs/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.styles.js +12 -12
  42. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  43. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +7 -0
  44. package/cjs/components/TimePicker/utils/index.js +33 -1
  45. package/cjs/components/TimePicker/utils/index.js.map +1 -1
  46. package/cjs/index.css +38 -42
  47. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +6 -6
  48. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +12 -12
  49. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +7 -7
  50. package/emotion/cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +6 -6
  51. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +12 -12
  52. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +8 -8
  53. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  54. package/emotion/cjs/components/TextArea/TextArea.js +3 -3
  55. package/emotion/cjs/components/TextField/TextField.js +3 -3
  56. package/emotion/cjs/components/TimePicker/TimePicker.js +488 -22
  57. package/emotion/cjs/components/TimePicker/TimePicker.styles.js +7 -17
  58. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
  59. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +71 -0
  60. package/emotion/cjs/components/TimePicker/utils/index.js +25 -1
  61. package/emotion/cjs/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +17 -17
  62. package/emotion/cjs/examples/components/TimePicker/TimePicker.config.js +7 -7
  63. package/emotion/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +6 -6
  64. package/emotion/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +12 -12
  65. package/emotion/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +7 -7
  66. package/emotion/es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +6 -6
  67. package/emotion/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +12 -12
  68. package/emotion/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +8 -8
  69. package/emotion/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  70. package/emotion/es/components/TextArea/TextArea.js +3 -3
  71. package/emotion/es/components/TextField/TextField.js +3 -3
  72. package/emotion/es/components/TimePicker/TimePicker.js +491 -25
  73. package/emotion/es/components/TimePicker/TimePicker.styles.js +7 -14
  74. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +50 -0
  75. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +33 -0
  76. package/emotion/es/components/TimePicker/utils/index.js +22 -1
  77. package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
  78. package/emotion/es/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +17 -17
  79. package/emotion/es/examples/components/TimePicker/TimePicker.config.js +7 -7
  80. package/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.css +3 -3
  81. package/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +1 -1
  82. package/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js.map +1 -1
  83. package/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/{HorizontalIconTabItem.styles_1yj92p8.css → HorizontalIconTabItem.styles_bv5xdd.css} +1 -1
  84. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.css +6 -6
  85. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +1 -1
  86. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js.map +1 -1
  87. package/es/components/Tabs/ui/horizontal/HorizontalTabItem/{HorizontalTabItem.styles_ohczvf.css → HorizontalTabItem.styles_hklgpq.css} +1 -1
  88. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.css +4 -4
  89. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +1 -1
  90. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js.map +1 -1
  91. package/{cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles_1un37ow.css → es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles_vmnj1d.css} +1 -1
  92. package/es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.css +3 -3
  93. package/es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +1 -1
  94. package/es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js.map +1 -1
  95. package/{cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles_1vnlsyl.css → es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles_2xthe5.css} +1 -1
  96. package/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.css +6 -6
  97. package/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +1 -1
  98. package/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js.map +1 -1
  99. package/es/components/Tabs/ui/vertical/VerticalTabItem/{VerticalTabItem.styles_11xtftz.css → VerticalTabItem.styles_oqphem.css} +1 -1
  100. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.css +5 -5
  101. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +1 -1
  102. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js.map +1 -1
  103. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles_1741mpr.css +4 -0
  104. package/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  105. package/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js.map +1 -1
  106. package/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base_rze03c.css +1 -0
  107. package/es/components/TextArea/TextArea.js +3 -2
  108. package/es/components/TextArea/TextArea.js.map +1 -1
  109. package/es/components/TextField/TextField.js +3 -2
  110. package/es/components/TextField/TextField.js.map +1 -1
  111. package/es/components/TimePicker/TimePicker.css +11 -15
  112. package/es/components/TimePicker/TimePicker.js +462 -26
  113. package/es/components/TimePicker/TimePicker.js.map +1 -1
  114. package/es/components/TimePicker/TimePicker.styles.js +21 -17
  115. package/es/components/TimePicker/TimePicker.styles.js.map +1 -1
  116. package/es/components/TimePicker/{TimePicker.styles_2lk4d9.css → TimePicker.styles_ar3obv.css} +3 -4
  117. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.css +7 -0
  118. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +56 -0
  119. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +1 -0
  120. package/es/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.styles.js +11 -11
  121. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  122. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +7 -0
  123. package/es/components/TimePicker/utils/index.js +32 -2
  124. package/es/components/TimePicker/utils/index.js.map +1 -1
  125. package/es/index.css +38 -42
  126. package/package.json +4 -4
  127. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +3 -3
  128. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +6 -6
  129. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +4 -4
  130. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +3 -3
  131. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +6 -6
  132. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +5 -5
  133. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  134. package/styled-components/cjs/components/TextArea/TextArea.js +2 -2
  135. package/styled-components/cjs/components/TextField/TextField.js +2 -2
  136. package/styled-components/cjs/components/TimePicker/TimePicker.js +488 -22
  137. package/styled-components/cjs/components/TimePicker/TimePicker.styles.js +3 -57
  138. package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
  139. package/styled-components/cjs/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.styles.js +14 -16
  140. package/styled-components/cjs/components/TimePicker/utils/index.js +25 -1
  141. package/styled-components/cjs/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +21 -25
  142. package/styled-components/cjs/examples/components/TimePicker/TimePicker.config.js +2 -3
  143. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalIconTabItem/HorizontalIconTabItem.styles.js +3 -3
  144. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalTabItem/HorizontalTabItem.styles.js +6 -6
  145. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.js +4 -4
  146. package/styled-components/es/components/Tabs/ui/vertical/VerticalIconTabItem/VerticalIconTabItem.styles.js +3 -3
  147. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabItem/VerticalTabItem.styles.js +6 -6
  148. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.js +5 -5
  149. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base.js +1 -1
  150. package/styled-components/es/components/TextArea/TextArea.js +2 -2
  151. package/styled-components/es/components/TextField/TextField.js +2 -2
  152. package/styled-components/es/components/TimePicker/TimePicker.js +491 -25
  153. package/styled-components/es/components/TimePicker/TimePicker.styles.js +3 -54
  154. package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +50 -0
  155. package/styled-components/es/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.styles.js +9 -11
  156. package/styled-components/es/components/TimePicker/utils/index.js +22 -1
  157. package/styled-components/es/examples/components/Combobox/Combobox.js +7 -0
  158. package/styled-components/es/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +21 -25
  159. package/styled-components/es/examples/components/TimePicker/TimePicker.config.js +2 -3
  160. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  161. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  162. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  163. package/types/components/Range/Range.styles.d.ts.map +1 -1
  164. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  165. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  166. package/types/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.styles.d.ts.map +1 -1
  167. package/types/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles.d.ts.map +1 -1
  168. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  169. package/types/components/TextArea/TextArea.types.d.ts +4 -0
  170. package/types/components/TextArea/TextArea.types.d.ts.map +1 -1
  171. package/types/components/TextField/TextField.d.ts.map +1 -1
  172. package/types/components/TextField/TextField.types.d.ts +4 -0
  173. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  174. package/types/components/TimePicker/TimePicker.d.ts.map +1 -1
  175. package/types/components/TimePicker/TimePicker.styles.d.ts +0 -18
  176. package/types/components/TimePicker/TimePicker.styles.d.ts.map +1 -1
  177. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts +3 -0
  178. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts.map +1 -0
  179. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts.map +1 -0
  180. package/types/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.types.d.ts +8 -9
  181. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -0
  182. package/types/components/TimePicker/utils/index.d.ts +2 -1
  183. package/types/components/TimePicker/utils/index.d.ts.map +1 -1
  184. package/types/examples/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  185. package/types/examples/components/Mask/Mask.d.ts.map +1 -1
  186. package/types/examples/components/NumberFormat/NumberFormat.d.ts.map +1 -1
  187. package/types/examples/components/Tabs/horizontal/HorizontalTabItem.config.d.ts.map +1 -1
  188. package/types/examples/components/TextArea/TextArea.d.ts +8 -0
  189. package/types/examples/components/TextArea/TextArea.d.ts.map +1 -1
  190. package/types/examples/components/TextField/TextField.d.ts.map +1 -1
  191. package/types/examples/components/TimePicker/TimePicker.config.d.ts.map +1 -1
  192. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles_16pdfpo.css +0 -4
  193. package/cjs/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base_efv11p.css +0 -1
  194. package/cjs/components/TimePickerGrid/TimePickerGrid.css +0 -10
  195. package/cjs/components/TimePickerGrid/TimePickerGrid.js +0 -733
  196. package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +0 -1
  197. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +0 -27
  198. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js.map +0 -1
  199. package/cjs/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +0 -2
  200. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -40
  201. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js.map +0 -1
  202. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +0 -7
  203. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -118
  204. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +0 -1
  205. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  206. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +0 -7
  207. package/cjs/components/TimePickerGrid/utils/index.js +0 -135
  208. package/cjs/components/TimePickerGrid/utils/index.js.map +0 -1
  209. package/cjs/components/TimePickerGrid/variations/_disabled/base.js +0 -9
  210. package/cjs/components/TimePickerGrid/variations/_disabled/base.js.map +0 -1
  211. package/cjs/components/TimePickerGrid/variations/_disabled/base_x642ct.css +0 -1
  212. package/cjs/components/TimePickerGrid/variations/_size/base.js +0 -9
  213. package/cjs/components/TimePickerGrid/variations/_size/base.js.map +0 -1
  214. package/cjs/components/TimePickerGrid/variations/_size/base_x642ct.css +0 -1
  215. package/cjs/components/TimePickerGrid/variations/_view/base.js +0 -9
  216. package/cjs/components/TimePickerGrid/variations/_view/base.js.map +0 -1
  217. package/cjs/components/TimePickerGrid/variations/_view/base_x642ct.css +0 -1
  218. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +0 -922
  219. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +0 -34
  220. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -50
  221. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.types.js +0 -4
  222. package/emotion/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +0 -30
  223. package/emotion/cjs/components/TimePickerGrid/index.js +0 -26
  224. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -118
  225. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +0 -71
  226. package/emotion/cjs/components/TimePickerGrid/utils/index.js +0 -166
  227. package/emotion/cjs/components/TimePickerGrid/variations/_disabled/base.js +0 -12
  228. package/emotion/cjs/components/TimePickerGrid/variations/_size/base.js +0 -12
  229. package/emotion/cjs/components/TimePickerGrid/variations/_view/base.js +0 -12
  230. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +0 -32
  231. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +0 -15
  232. package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +0 -863
  233. package/emotion/es/components/TimePickerGrid/TimePickerGrid.styles.js +0 -11
  234. package/emotion/es/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -32
  235. package/emotion/es/components/TimePickerGrid/TimePickerGrid.types.js +0 -1
  236. package/emotion/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +0 -20
  237. package/emotion/es/components/TimePickerGrid/index.js +0 -2
  238. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -103
  239. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +0 -33
  240. package/emotion/es/components/TimePickerGrid/utils/index.js +0 -133
  241. package/emotion/es/components/TimePickerGrid/variations/_disabled/base.js +0 -2
  242. package/emotion/es/components/TimePickerGrid/variations/_size/base.js +0 -2
  243. package/emotion/es/components/TimePickerGrid/variations/_view/base.js +0 -2
  244. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +0 -22
  245. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.js +0 -5
  246. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.styles_16pdfpo.css +0 -4
  247. package/es/components/Tabs/ui/vertical/VerticalTabs/variations/_view/base_efv11p.css +0 -1
  248. package/es/components/TimePickerGrid/TimePickerGrid.css +0 -10
  249. package/es/components/TimePickerGrid/TimePickerGrid.js +0 -724
  250. package/es/components/TimePickerGrid/TimePickerGrid.js.map +0 -1
  251. package/es/components/TimePickerGrid/TimePickerGrid.styles.js +0 -22
  252. package/es/components/TimePickerGrid/TimePickerGrid.styles.js.map +0 -1
  253. package/es/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +0 -2
  254. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -35
  255. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js.map +0 -1
  256. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +0 -7
  257. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -109
  258. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +0 -1
  259. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  260. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +0 -7
  261. package/es/components/TimePickerGrid/utils/index.js +0 -126
  262. package/es/components/TimePickerGrid/utils/index.js.map +0 -1
  263. package/es/components/TimePickerGrid/variations/_disabled/base.js +0 -5
  264. package/es/components/TimePickerGrid/variations/_disabled/base.js.map +0 -1
  265. package/es/components/TimePickerGrid/variations/_disabled/base_x642ct.css +0 -1
  266. package/es/components/TimePickerGrid/variations/_size/base.js +0 -5
  267. package/es/components/TimePickerGrid/variations/_size/base.js.map +0 -1
  268. package/es/components/TimePickerGrid/variations/_size/base_x642ct.css +0 -1
  269. package/es/components/TimePickerGrid/variations/_view/base.js +0 -5
  270. package/es/components/TimePickerGrid/variations/_view/base.js.map +0 -1
  271. package/es/components/TimePickerGrid/variations/_view/base_x642ct.css +0 -1
  272. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +0 -922
  273. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +0 -79
  274. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -50
  275. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.types.js +0 -4
  276. package/styled-components/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +0 -30
  277. package/styled-components/cjs/components/TimePickerGrid/index.js +0 -26
  278. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -118
  279. package/styled-components/cjs/components/TimePickerGrid/utils/index.js +0 -166
  280. package/styled-components/cjs/components/TimePickerGrid/variations/_disabled/base.js +0 -14
  281. package/styled-components/cjs/components/TimePickerGrid/variations/_size/base.js +0 -14
  282. package/styled-components/cjs/components/TimePickerGrid/variations/_view/base.js +0 -14
  283. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +0 -103
  284. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +0 -15
  285. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +0 -863
  286. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.styles.js +0 -21
  287. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.tokens.js +0 -32
  288. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.types.js +0 -1
  289. package/styled-components/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +0 -20
  290. package/styled-components/es/components/TimePickerGrid/index.js +0 -2
  291. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +0 -103
  292. package/styled-components/es/components/TimePickerGrid/utils/index.js +0 -133
  293. package/styled-components/es/components/TimePickerGrid/variations/_disabled/base.js +0 -4
  294. package/styled-components/es/components/TimePickerGrid/variations/_size/base.js +0 -4
  295. package/styled-components/es/components/TimePickerGrid/variations/_view/base.js +0 -4
  296. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +0 -93
  297. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.js +0 -5
  298. package/types/components/TimePickerGrid/TimePickerGrid.d.ts +0 -61
  299. package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +0 -1
  300. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts +0 -5
  301. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts.map +0 -1
  302. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts +0 -33
  303. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts.map +0 -1
  304. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts +0 -65
  305. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts.map +0 -1
  306. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts +0 -14
  307. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts.map +0 -1
  308. package/types/components/TimePickerGrid/index.d.ts +0 -4
  309. package/types/components/TimePickerGrid/index.d.ts.map +0 -1
  310. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +0 -3
  311. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +0 -1
  312. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.d.ts.map +0 -1
  313. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +0 -1
  314. package/types/components/TimePickerGrid/utils/index.d.ts +0 -24
  315. package/types/components/TimePickerGrid/utils/index.d.ts.map +0 -1
  316. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts +0 -2
  317. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts.map +0 -1
  318. package/types/components/TimePickerGrid/variations/_size/base.d.ts +0 -2
  319. package/types/components/TimePickerGrid/variations/_size/base.d.ts.map +0 -1
  320. package/types/components/TimePickerGrid/variations/_view/base.d.ts +0 -2
  321. package/types/components/TimePickerGrid/variations/_view/base.d.ts.map +0 -1
  322. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts +0 -21
  323. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts.map +0 -1
  324. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts +0 -32
  325. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts.map +0 -1
  326. /package/emotion/cjs/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.types.js +0 -0
  327. /package/emotion/es/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.types.js +0 -0
  328. /package/styled-components/cjs/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.types.js +0 -0
  329. /package/styled-components/es/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.types.js +0 -0
  330. /package/types/components/{TimePickerGrid → TimePicker}/ui/TimeColumn/TimeColumn.styles.d.ts +0 -0
@@ -6,6 +6,9 @@ function _array_like_to_array(arr, len) {
6
6
  function _array_with_holes(arr) {
7
7
  if (Array.isArray(arr)) return arr;
8
8
  }
9
+ function _array_without_holes(arr) {
10
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
11
+ }
9
12
  function _define_property(obj, key, value) {
10
13
  if (key in obj) {
11
14
  Object.defineProperty(obj, key, {
@@ -19,6 +22,9 @@ function _define_property(obj, key, value) {
19
22
  }
20
23
  return obj;
21
24
  }
25
+ function _iterable_to_array(iter) {
26
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
27
+ }
22
28
  function _iterable_to_array_limit(arr, i) {
23
29
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
24
30
  if (_i == null) return;
@@ -46,6 +52,9 @@ function _iterable_to_array_limit(arr, i) {
46
52
  function _non_iterable_rest() {
47
53
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
48
54
  }
55
+ function _non_iterable_spread() {
56
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
57
+ }
49
58
  function _object_spread(target) {
50
59
  for(var i = 1; i < arguments.length; i++){
51
60
  var source = arguments[i] != null ? arguments[i] : {};
@@ -115,6 +124,9 @@ function _object_without_properties_loose(source, excluded) {
115
124
  function _sliced_to_array(arr, i) {
116
125
  return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
117
126
  }
127
+ function _to_consumable_array(arr) {
128
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
129
+ }
118
130
  function _unsupported_iterable_to_array(o, minLen) {
119
131
  if (!o) return;
120
132
  if (typeof o === "string") return _array_like_to_array(o, minLen);
@@ -123,17 +135,18 @@ function _unsupported_iterable_to_array(o, minLen) {
123
135
  if (n === "Map" || n === "Set") return Array.from(n);
124
136
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
125
137
  }
126
- import React, { forwardRef, useRef, useState, useEffect } from "react";
138
+ import React, { forwardRef, useRef, useState, useEffect, useCallback } from "react";
127
139
  import cls from "classnames";
128
140
  import { getPlacements } from "../../utils";
129
- import { processTimeInput, delimiter } from "./utils";
130
- import { base, StyledInput, StyledTimePickerGrid, StyledPopover } from "./TimePicker.styles";
141
+ import { range, processTimeInput, animateScrollTo, delimiter } from "./utils";
142
+ import { base, StyledInput, StyledPopover, StyledTimePicker } from "./TimePicker.styles";
131
143
  import { classes } from "./TimePicker.tokens";
132
144
  import { base as sizeCSS } from "./variations/_size/base";
133
145
  import { base as viewCSS } from "./variations/_view/base";
134
146
  import { base as disabledCSS } from "./variations/_disabled/base";
135
147
  import { base as readonlyCSS } from "./variations/_readonly/base";
136
148
  import { useKeyNavigation } from "./hooks/useKeyboardNavigation";
149
+ import { renderTimeColumn } from "./ui/TimeColumn/TimeColumn";
137
150
  export var timePickerRoot = function(Root) {
138
151
  return /*#__PURE__*/ forwardRef(function(_param, ref) {
139
152
  var className = _param.className, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, label = _param.label, _param_labelPlacement = _param.labelPlacement, labelPlacement = _param_labelPlacement === void 0 ? 'outer' : _param_labelPlacement, keepPlaceholder = _param.keepPlaceholder, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, placeholder = _param.placeholder, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, view = _param.view, size = _param.size, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_readonly = _param.readonly, readonly = _param_readonly === void 0 ? false : _param_readonly, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, offset = _param.offset, stretched = _param.stretched, _param_dropdownAlign = _param.dropdownAlign, dropdownAlign = _param_dropdownAlign === void 0 ? 'left' : _param_dropdownAlign, dropdownWidth = _param.dropdownWidth, dropdownHeight = _param.dropdownHeight, _param_columnsQuantity = _param.columnsQuantity, columnsQuantity = _param_columnsQuantity === void 0 ? 2 : _param_columnsQuantity, onToggle = _param.onToggle, onFocus = _param.onFocus, onChange = _param.onChange, rest = _object_without_properties(_param, [
@@ -170,6 +183,17 @@ export var timePickerRoot = function(Root) {
170
183
  "onChange"
171
184
  ]);
172
185
  var inputRef = useRef(null);
186
+ var timeSelectRootRef = useRef(null);
187
+ var hoursColumnRef = useRef(null);
188
+ var minutesColumnRef = useRef(null);
189
+ var secondsColumnRef = useRef(null);
190
+ var timeItemRefs = useRef({});
191
+ var hoursScrollbarRef = useRef(null);
192
+ var minutesScrollbarRef = useRef(null);
193
+ var secondsScrollbarRef = useRef(null);
194
+ var hoursThumbRef = useRef(null);
195
+ var minutesThumbRef = useRef(null);
196
+ var secondsThumbRef = useRef(null);
173
197
  var hoursHideTimeoutRef = useRef(null);
174
198
  var minutesHideTimeoutRef = useRef(null);
175
199
  var secondsHideTimeoutRef = useRef(null);
@@ -180,9 +204,130 @@ export var timePickerRoot = function(Root) {
180
204
  minutes: null,
181
205
  seconds: null,
182
206
  currentColumn: null
183
- }), 2), setActiveTime = _useState2[1];
207
+ }), 2), activeTime = _useState2[0], setActiveTime = _useState2[1];
208
+ var _useState3 = _sliced_to_array(useState(0), 2), itemHeight = _useState3[0], setItemHeight = _useState3[1];
209
+ var _useState4 = _sliced_to_array(useState(0), 2), gap = _useState4[0], setGap = _useState4[1];
210
+ var _useState5 = _sliced_to_array(useState({
211
+ isVisible: false,
212
+ thumbHeight: 0,
213
+ thumbPosition: 0,
214
+ isDragging: false
215
+ }), 2), hoursScrollbar = _useState5[0], setHoursScrollbar = _useState5[1];
216
+ var _useState6 = _sliced_to_array(useState({
217
+ isVisible: false,
218
+ thumbHeight: 0,
219
+ thumbPosition: 0,
220
+ isDragging: false
221
+ }), 2), minutesScrollbar = _useState6[0], setMinutesScrollbar = _useState6[1];
222
+ var _useState7 = _sliced_to_array(useState({
223
+ isVisible: false,
224
+ thumbHeight: 0,
225
+ thumbPosition: 0,
226
+ isDragging: false
227
+ }), 2), secondsScrollbar = _useState7[0], setSecondsScrollbar = _useState7[1];
184
228
  var viewValue = outerValue !== null && outerValue !== void 0 ? outerValue : innerTime;
185
229
  var format = columnsQuantity === 3 ? 'HH:mm:ss' : 'HH:mm';
230
+ var hours = range(24);
231
+ var minutes = range(60);
232
+ var seconds = range(60);
233
+ var minScrollbarTrackHeight = 20;
234
+ var calculateScrollbar = useCallback(function(columnRef) {
235
+ if (!columnRef.current) return {
236
+ thumbHeight: 0,
237
+ thumbPosition: 0
238
+ };
239
+ var _columnRef_current = columnRef.current, scrollTop = _columnRef_current.scrollTop, scrollHeight = _columnRef_current.scrollHeight, clientHeight = _columnRef_current.clientHeight;
240
+ var trackHeight = clientHeight;
241
+ var thumbHeight = Math.max(trackHeight / scrollHeight * trackHeight, minScrollbarTrackHeight);
242
+ var maxScroll = scrollHeight - clientHeight;
243
+ var thumbPosition = maxScroll > 0 ? scrollTop / maxScroll * (trackHeight - thumbHeight) : 0;
244
+ return {
245
+ thumbHeight: thumbHeight,
246
+ thumbPosition: thumbPosition
247
+ };
248
+ }, []);
249
+ var showScrollbarWithDelay = useCallback(function(setScrollbar, timeoutRef, columnRef) {
250
+ if (timeoutRef.current) {
251
+ clearTimeout(timeoutRef.current);
252
+ }
253
+ updateScrollbar(columnRef, setScrollbar, true);
254
+ timeoutRef.current = setTimeout(function() {
255
+ setScrollbar(function(prev) {
256
+ return _object_spread_props(_object_spread({}, prev), {
257
+ isVisible: false
258
+ });
259
+ });
260
+ timeoutRef.current = null;
261
+ }, 2000);
262
+ }, []);
263
+ var updateScrollbar = useCallback(function(columnRef, setScrollbar) {
264
+ var show = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
265
+ if (!columnRef.current) return;
266
+ var _calculateScrollbar = calculateScrollbar(columnRef), thumbHeight = _calculateScrollbar.thumbHeight, thumbPosition = _calculateScrollbar.thumbPosition;
267
+ setScrollbar(function(prev) {
268
+ return _object_spread_props(_object_spread({}, prev), {
269
+ thumbHeight: thumbHeight,
270
+ thumbPosition: thumbPosition,
271
+ isVisible: show || prev.isVisible
272
+ });
273
+ });
274
+ }, [
275
+ calculateScrollbar
276
+ ]);
277
+ var handleColumnScroll = useCallback(function(columnRef, setScrollbar, timeoutRef) {
278
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
279
+ }, [
280
+ showScrollbarWithDelay
281
+ ]);
282
+ var createScrollbarDragHandler = useCallback(function(columnRef, setScrollbar, timeoutRef) {
283
+ return function(e) {
284
+ e.preventDefault();
285
+ var thumb = e.currentTarget;
286
+ var track = thumb.parentElement;
287
+ if (!columnRef.current || !track) return;
288
+ if (timeoutRef.current) {
289
+ clearTimeout(timeoutRef.current);
290
+ timeoutRef.current = null;
291
+ }
292
+ var startY = e.clientY;
293
+ var startThumbPosition = parseFloat(thumb.style.top || '0');
294
+ var trackRect = track.getBoundingClientRect();
295
+ var trackHeight = trackRect.height;
296
+ var thumbHeight = thumb.offsetHeight;
297
+ var _columnRef_current = columnRef.current, scrollHeight = _columnRef_current.scrollHeight, clientHeight = _columnRef_current.clientHeight;
298
+ var maxScroll = scrollHeight - clientHeight;
299
+ var handleMouseMove = function(moveEvent) {
300
+ var deltaY = moveEvent.clientY - startY;
301
+ var newThumbPosition = Math.max(0, Math.min(trackHeight - thumbHeight, startThumbPosition + deltaY));
302
+ var scrollPercentage = newThumbPosition / (trackHeight - thumbHeight);
303
+ var newScrollTop = scrollPercentage * maxScroll;
304
+ if (columnRef.current) {
305
+ columnRef.current.scrollTop = newScrollTop;
306
+ }
307
+ setScrollbar(function(prev) {
308
+ return _object_spread_props(_object_spread({}, prev), {
309
+ thumbPosition: newThumbPosition,
310
+ isDragging: true,
311
+ isVisible: true
312
+ });
313
+ });
314
+ };
315
+ var handleMouseUp = function() {
316
+ document.removeEventListener('mousemove', handleMouseMove);
317
+ document.removeEventListener('mouseup', handleMouseUp);
318
+ setScrollbar(function(prev) {
319
+ return _object_spread_props(_object_spread({}, prev), {
320
+ isDragging: false
321
+ });
322
+ });
323
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
324
+ };
325
+ document.addEventListener('mousemove', handleMouseMove);
326
+ document.addEventListener('mouseup', handleMouseUp);
327
+ };
328
+ }, [
329
+ showScrollbarWithDelay
330
+ ]);
186
331
  useEffect(function() {
187
332
  return function() {
188
333
  [
@@ -196,6 +341,22 @@ export var timePickerRoot = function(Root) {
196
341
  });
197
342
  };
198
343
  }, []);
344
+ useEffect(function() {
345
+ if (!isInnerOpen) {
346
+ return;
347
+ }
348
+ setTimeout(function() {
349
+ updateScrollbar(hoursColumnRef, setHoursScrollbar);
350
+ updateScrollbar(minutesColumnRef, setMinutesScrollbar);
351
+ if (columnsQuantity === 3) {
352
+ updateScrollbar(secondsColumnRef, setSecondsScrollbar);
353
+ }
354
+ }, 100);
355
+ }, [
356
+ isInnerOpen,
357
+ columnsQuantity,
358
+ updateScrollbar
359
+ ]);
199
360
  useEffect(function() {
200
361
  if (!viewValue) {
201
362
  return;
@@ -224,6 +385,116 @@ export var timePickerRoot = function(Root) {
224
385
  disabled,
225
386
  readonly
226
387
  ]);
388
+ useEffect(function() {
389
+ if (isInnerOpen && Object.keys(timeItemRefs.current).length > 0) {
390
+ var firstItem = Object.values(timeItemRefs.current)[0];
391
+ if (firstItem) {
392
+ setItemHeight(firstItem.offsetHeight);
393
+ }
394
+ }
395
+ if (isInnerOpen && hoursColumnRef.current) {
396
+ var computedStyle = getComputedStyle(hoursColumnRef.current);
397
+ var gapValue = parseFloat(computedStyle.gap || '0');
398
+ setGap(gapValue);
399
+ }
400
+ }, [
401
+ isInnerOpen
402
+ ]);
403
+ useEffect(function() {
404
+ if (!isInnerOpen || itemHeight === 0) return;
405
+ var scrollToActiveItem = function(columnRef, index) {
406
+ if (columnRef.current && index !== null) {
407
+ var scrollPosition = index * (itemHeight + gap);
408
+ animateScrollTo(columnRef.current, scrollPosition);
409
+ setTimeout(function() {
410
+ updateScrollbar(columnRef, setHoursScrollbar);
411
+ }, 300);
412
+ }
413
+ };
414
+ scrollToActiveItem(hoursColumnRef, activeTime.hours);
415
+ scrollToActiveItem(minutesColumnRef, activeTime.minutes);
416
+ scrollToActiveItem(secondsColumnRef, activeTime.seconds);
417
+ }, [
418
+ activeTime,
419
+ isInnerOpen,
420
+ itemHeight,
421
+ gap,
422
+ updateScrollbar
423
+ ]);
424
+ useEffect(function() {
425
+ var hoursColumn = hoursColumnRef.current;
426
+ var minutesColumn = minutesColumnRef.current;
427
+ var secondsColumn = secondsColumnRef.current;
428
+ var handleHoursScroll = function() {
429
+ return handleColumnScroll(hoursColumnRef, setHoursScrollbar, hoursHideTimeoutRef);
430
+ };
431
+ var handleMinutesScroll = function() {
432
+ return handleColumnScroll(minutesColumnRef, setMinutesScrollbar, minutesHideTimeoutRef);
433
+ };
434
+ var handleSecondsScroll = function() {
435
+ return handleColumnScroll(secondsColumnRef, setSecondsScrollbar, secondsHideTimeoutRef);
436
+ };
437
+ if (hoursColumn) {
438
+ hoursColumn.addEventListener('scroll', handleHoursScroll);
439
+ }
440
+ if (minutesColumn) {
441
+ minutesColumn.addEventListener('scroll', handleMinutesScroll);
442
+ }
443
+ if (secondsColumn) {
444
+ secondsColumn.addEventListener('scroll', handleSecondsScroll);
445
+ }
446
+ return function() {
447
+ if (hoursColumn) {
448
+ hoursColumn.removeEventListener('scroll', handleHoursScroll);
449
+ }
450
+ if (minutesColumn) {
451
+ minutesColumn.removeEventListener('scroll', handleMinutesScroll);
452
+ }
453
+ if (secondsColumn) {
454
+ secondsColumn.removeEventListener('scroll', handleSecondsScroll);
455
+ }
456
+ };
457
+ }, [
458
+ isInnerOpen,
459
+ handleColumnScroll
460
+ ]);
461
+ useEffect(function() {
462
+ var hoursColumn = hoursColumnRef.current;
463
+ var minutesColumn = minutesColumnRef.current;
464
+ var secondsColumn = secondsColumnRef.current;
465
+ var handleHoursMouseEnter = function() {
466
+ return showScrollbarWithDelay(setHoursScrollbar, hoursHideTimeoutRef, hoursColumnRef);
467
+ };
468
+ var handleMinutesMouseEnter = function() {
469
+ return showScrollbarWithDelay(setMinutesScrollbar, minutesHideTimeoutRef, minutesColumnRef);
470
+ };
471
+ var handleSecondsMouseEnter = function() {
472
+ return showScrollbarWithDelay(setSecondsScrollbar, secondsHideTimeoutRef, secondsColumnRef);
473
+ };
474
+ if (hoursColumn) {
475
+ hoursColumn.addEventListener('mouseenter', handleHoursMouseEnter);
476
+ }
477
+ if (minutesColumn) {
478
+ minutesColumn.addEventListener('mouseenter', handleMinutesMouseEnter);
479
+ }
480
+ if (secondsColumn) {
481
+ secondsColumn.addEventListener('mouseenter', handleSecondsMouseEnter);
482
+ }
483
+ return function() {
484
+ if (hoursColumn) {
485
+ hoursColumn.removeEventListener('mouseenter', handleHoursMouseEnter);
486
+ }
487
+ if (minutesColumn) {
488
+ minutesColumn.removeEventListener('mouseenter', handleMinutesMouseEnter);
489
+ }
490
+ if (secondsColumn) {
491
+ secondsColumn.removeEventListener('mouseenter', handleSecondsMouseEnter);
492
+ }
493
+ };
494
+ }, [
495
+ isInnerOpen,
496
+ showScrollbarWithDelay
497
+ ]);
227
498
  var handleToggle = function() {
228
499
  if (disabled || readonly) return;
229
500
  var newState = !isInnerOpen;
@@ -237,22 +508,87 @@ export var timePickerRoot = function(Root) {
237
508
  }
238
509
  onToggle === null || onToggle === void 0 ? void 0 : onToggle(newState);
239
510
  };
240
- var handleOnChange = function(event) {
241
- if (!event) {
242
- return;
511
+ var handleCalendarRootClick = function(event) {
512
+ if (disabled || readonly) return;
513
+ if (isInnerOpen && stretched && event.target === (timeSelectRootRef === null || timeSelectRootRef === void 0 ? void 0 : timeSelectRootRef.current)) {
514
+ setIsInnerOpen(false);
515
+ onToggle === null || onToggle === void 0 ? void 0 : onToggle(false);
243
516
  }
244
- var timeString = event.value;
245
- if (format === 'HH:mm' && viewValue.length > 5) {
246
- timeString = viewValue.substring(0, 5);
517
+ };
518
+ var handleTimeItemClick = function(value, column) {
519
+ var isNextColumn = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
520
+ var currentTime = innerTime.split(delimiter);
521
+ var newTime = [];
522
+ if (format === 'HH:mm:ss') {
523
+ newTime = _to_consumable_array(currentTime);
524
+ while(newTime.length < 3){
525
+ newTime.push('00');
526
+ }
527
+ } else {
528
+ newTime = _to_consumable_array(currentTime);
529
+ while(newTime.length < 2){
530
+ newTime.push('00');
531
+ }
532
+ newTime = newTime.slice(0, 2);
247
533
  }
248
- setInnerTime(timeString !== null && timeString !== void 0 ? timeString : '');
249
- setActiveTime({
250
- hours: !Number.isNaN(event.timeValues.hour) ? event.timeValues.hour : null,
251
- minutes: !Number.isNaN(event.timeValues.minute) ? event.timeValues.minute : null,
252
- seconds: format === 'HH:mm:ss' && !Number.isNaN(event.timeValues.second) ? event.timeValues.second : null,
253
- currentColumn: null
534
+ switch(column){
535
+ case 'hours':
536
+ newTime[0] = value;
537
+ if (!currentTime[1]) {
538
+ newTime[1] = '00';
539
+ }
540
+ if (format === 'HH:mm:ss' && !currentTime[2]) {
541
+ newTime[2] = '00';
542
+ }
543
+ break;
544
+ case 'minutes':
545
+ newTime[1] = value;
546
+ if (!currentTime[0]) {
547
+ newTime[0] = '00';
548
+ }
549
+ if (format === 'HH:mm:ss' && !currentTime[2]) {
550
+ newTime[2] = '00';
551
+ }
552
+ break;
553
+ case 'seconds':
554
+ if (format === 'HH:mm:ss') {
555
+ newTime[2] = value;
556
+ if (!currentTime[0]) {
557
+ newTime[0] = '00';
558
+ }
559
+ if (!currentTime[1]) {
560
+ newTime[1] = '00';
561
+ }
562
+ }
563
+ break;
564
+ default:
565
+ break;
566
+ }
567
+ var newTimeString = newTime.join(delimiter);
568
+ setInnerTime(newTimeString);
569
+ var nextColumn = null;
570
+ if (column === 'hours' && isNextColumn) {
571
+ nextColumn = 'minutes';
572
+ } else if (column === 'minutes' && isNextColumn) {
573
+ nextColumn = format === 'HH:mm:ss' ? 'seconds' : null;
574
+ } else {
575
+ nextColumn = activeTime.currentColumn;
576
+ }
577
+ var newActiveTime = {
578
+ hours: column === 'hours' ? parseInt(value, 10) : activeTime.hours,
579
+ minutes: column === 'minutes' ? parseInt(value, 10) : activeTime.minutes,
580
+ seconds: column === 'seconds' ? parseInt(value, 10) : activeTime.seconds,
581
+ currentColumn: nextColumn
582
+ };
583
+ setActiveTime(newActiveTime);
584
+ onChange === null || onChange === void 0 ? void 0 : onChange({
585
+ value: newTimeString,
586
+ timeValues: {
587
+ hh: parseInt(newTime[0], 10),
588
+ mm: parseInt(newTime[1], 10),
589
+ ss: format === 'HH:mm:ss' ? parseInt(newTime[2] || '0', 10) : null
590
+ }
254
591
  });
255
- onChange === null || onChange === void 0 ? void 0 : onChange(event);
256
592
  };
257
593
  var handleInputChange = function(event) {
258
594
  var input = event.target.value;
@@ -290,6 +626,89 @@ export var timePickerRoot = function(Root) {
290
626
  });
291
627
  });
292
628
  onToggle === null || onToggle === void 0 ? void 0 : onToggle(true);
629
+ return;
630
+ }
631
+ if (!isInnerOpen) {
632
+ return;
633
+ }
634
+ var currentColumn = activeTime.currentColumn;
635
+ if (!currentColumn) {
636
+ return;
637
+ }
638
+ var newIndex = null;
639
+ var newColumn = currentColumn;
640
+ if ([
641
+ 'ArrowUp',
642
+ 'ArrowDown',
643
+ 'Enter'
644
+ ].includes(event.key)) {
645
+ event.preventDefault();
646
+ }
647
+ if ([
648
+ 'ArrowRight'
649
+ ].includes(event.key) && currentColumn !== 'seconds') {
650
+ event.preventDefault();
651
+ }
652
+ if ([
653
+ 'ArrowLeft'
654
+ ].includes(event.key) && currentColumn !== 'hours') {
655
+ event.preventDefault();
656
+ }
657
+ switch(event.key){
658
+ case 'ArrowUp':
659
+ var _activeTime_currentColumn;
660
+ newIndex = Math.max(0, ((_activeTime_currentColumn = activeTime[currentColumn]) !== null && _activeTime_currentColumn !== void 0 ? _activeTime_currentColumn : 0) - 1);
661
+ if (newIndex !== null) {
662
+ var value = newIndex.toString().padStart(2, '0');
663
+ handleTimeItemClick(value, currentColumn, false);
664
+ }
665
+ break;
666
+ case 'ArrowDown':
667
+ case 'Tab':
668
+ event.preventDefault();
669
+ var _activeTime_currentColumn1;
670
+ newIndex = Math.min(currentColumn === 'hours' ? 23 : 59, ((_activeTime_currentColumn1 = activeTime[currentColumn]) !== null && _activeTime_currentColumn1 !== void 0 ? _activeTime_currentColumn1 : 0) + 1);
671
+ if (newIndex !== null) {
672
+ var value1 = newIndex.toString().padStart(2, '0');
673
+ handleTimeItemClick(value1, currentColumn, false);
674
+ }
675
+ break;
676
+ case 'ArrowRight':
677
+ case 'Enter':
678
+ if (currentColumn === 'hours') newColumn = 'minutes';
679
+ else if (currentColumn === 'minutes' && format === 'HH:mm:ss') newColumn = 'seconds';
680
+ var _activeTime_newColumn;
681
+ newIndex = (_activeTime_newColumn = activeTime[newColumn]) !== null && _activeTime_newColumn !== void 0 ? _activeTime_newColumn : 0;
682
+ setActiveTime(_object_spread_props(_object_spread({}, activeTime), _define_property({
683
+ currentColumn: newColumn
684
+ }, newColumn, newIndex)));
685
+ if (currentColumn === 'seconds' && format === 'HH:mm:ss' || currentColumn === 'minutes' && format === 'HH:mm') {
686
+ setIsInnerOpen(false);
687
+ }
688
+ break;
689
+ case 'ArrowLeft':
690
+ if (currentColumn === 'minutes') {
691
+ newColumn = 'hours';
692
+ } else if (currentColumn === 'seconds') {
693
+ newColumn = 'minutes';
694
+ }
695
+ var _activeTime_newColumn1;
696
+ newIndex = (_activeTime_newColumn1 = activeTime[newColumn]) !== null && _activeTime_newColumn1 !== void 0 ? _activeTime_newColumn1 : 0;
697
+ setActiveTime(_object_spread_props(_object_spread({}, activeTime), _define_property({
698
+ currentColumn: newColumn
699
+ }, newColumn, newIndex)));
700
+ if (currentColumn === 'hours') {
701
+ setIsInnerOpen(false);
702
+ }
703
+ break;
704
+ // eslint-disable-next-line no-fallthrough
705
+ default:
706
+ }
707
+ };
708
+ var handleTimeItemKeyDown = function(event, column, value) {
709
+ if (event.key === 'Enter') {
710
+ event.preventDefault();
711
+ handleTimeItemClick(value, column);
293
712
  }
294
713
  };
295
714
  var handleOnKeyDown = function(e) {
@@ -346,16 +765,63 @@ export var timePickerRoot = function(Root) {
346
765
  target: TimePickerInput,
347
766
  preventOverflow: false,
348
767
  align: dropdownAlign
349
- }, /*#__PURE__*/ React.createElement(StyledTimePickerGrid, {
350
- value: viewValue,
351
- onChange: handleOnChange,
352
- dropdownHeight: dropdownHeight,
353
- dropdownWidth: dropdownWidth,
354
- format: format,
768
+ }, /*#__PURE__*/ React.createElement(Root, {
769
+ ref: timeSelectRootRef,
355
770
  view: view,
356
771
  size: size,
357
- disabled: disabled
358
- })));
772
+ disabled: disabled,
773
+ readonly: readonly,
774
+ onClick: handleCalendarRootClick,
775
+ className: dropdownAlign === 'right' ? classes.timePickerPlacementRight : '',
776
+ stretched: stretched
777
+ }, /*#__PURE__*/ React.createElement(StyledTimePicker, {
778
+ width: dropdownWidth
779
+ }, renderTimeColumn({
780
+ values: hours,
781
+ dropdownHeight: dropdownHeight,
782
+ column: 'hours',
783
+ columnRef: hoursColumnRef,
784
+ scrollbarState: hoursScrollbar,
785
+ setScrollbar: setHoursScrollbar,
786
+ scrollbarRef: hoursScrollbarRef,
787
+ thumbRef: hoursThumbRef,
788
+ timeoutRef: hoursHideTimeoutRef,
789
+ timeItemRefs: timeItemRefs,
790
+ activeTime: activeTime,
791
+ handleTimeItemClick: handleTimeItemClick,
792
+ handleTimeItemKeyDown: handleTimeItemKeyDown,
793
+ createScrollbarDragHandler: createScrollbarDragHandler
794
+ }), renderTimeColumn({
795
+ values: minutes,
796
+ dropdownHeight: dropdownHeight,
797
+ column: 'minutes',
798
+ columnRef: minutesColumnRef,
799
+ scrollbarState: minutesScrollbar,
800
+ setScrollbar: setMinutesScrollbar,
801
+ scrollbarRef: minutesScrollbarRef,
802
+ thumbRef: minutesThumbRef,
803
+ timeoutRef: minutesHideTimeoutRef,
804
+ timeItemRefs: timeItemRefs,
805
+ activeTime: activeTime,
806
+ handleTimeItemClick: handleTimeItemClick,
807
+ handleTimeItemKeyDown: handleTimeItemKeyDown,
808
+ createScrollbarDragHandler: createScrollbarDragHandler
809
+ }), columnsQuantity === 3 && renderTimeColumn({
810
+ values: seconds,
811
+ dropdownHeight: dropdownHeight,
812
+ column: 'seconds',
813
+ columnRef: secondsColumnRef,
814
+ scrollbarState: secondsScrollbar,
815
+ setScrollbar: setSecondsScrollbar,
816
+ scrollbarRef: secondsScrollbarRef,
817
+ thumbRef: secondsThumbRef,
818
+ timeoutRef: secondsHideTimeoutRef,
819
+ timeItemRefs: timeItemRefs,
820
+ activeTime: activeTime,
821
+ handleTimeItemClick: handleTimeItemClick,
822
+ handleTimeItemKeyDown: handleTimeItemKeyDown,
823
+ createScrollbarDragHandler: createScrollbarDragHandler
824
+ })))));
359
825
  });
360
826
  };
361
827
  export var timePickerConfig = {