@salutejs/plasma-new-hope 0.339.0-canary.2299.18773440976.0 → 0.339.0-canary.2299.18780728888.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 (277) hide show
  1. package/cjs/components/Loader/Loader.css +16 -0
  2. package/cjs/components/Loader/Loader.js +83 -0
  3. package/cjs/components/Loader/Loader.js.map +1 -0
  4. package/cjs/components/Loader/Loader.styles.js +36 -0
  5. package/cjs/components/Loader/Loader.styles.js.map +1 -0
  6. package/cjs/components/Loader/Loader.styles_1i0a33d.css +3 -0
  7. package/cjs/components/Loader/Loader.tokens.js +35 -0
  8. package/cjs/components/Loader/Loader.tokens.js.map +1 -0
  9. package/cjs/components/Loader/variations/_size/base.js +9 -0
  10. package/cjs/components/Loader/variations/_size/base.js.map +1 -0
  11. package/cjs/components/Loader/variations/_size/base_x642ct.css +1 -0
  12. package/cjs/components/Loader/variations/_view/base.js +9 -0
  13. package/cjs/components/Loader/variations/_view/base.js.map +1 -0
  14. package/cjs/components/Loader/variations/_view/base_x642ct.css +1 -0
  15. package/cjs/components/ProgressBarCircular/ProgressBarCircular.css +5 -5
  16. package/cjs/components/ProgressBarCircular/ProgressBarCircular.styles.js +1 -1
  17. package/cjs/components/ProgressBarCircular/ProgressBarCircular.styles.js.map +1 -1
  18. package/cjs/components/ProgressBarCircular/{ProgressBarCircular.styles_1cnlydo.css → ProgressBarCircular.styles_16hxdvd.css} +1 -1
  19. package/cjs/components/TimePicker/TimePicker.css +15 -11
  20. package/cjs/components/TimePicker/TimePicker.js +22 -458
  21. package/cjs/components/TimePicker/TimePicker.js.map +1 -1
  22. package/cjs/components/TimePicker/TimePicker.styles.js +17 -21
  23. package/cjs/components/TimePicker/TimePicker.styles.js.map +1 -1
  24. package/{es/components/TimePicker/TimePicker.styles_ar3obv.css → cjs/components/TimePicker/TimePicker.styles_2lk4d9.css} +4 -3
  25. package/cjs/components/TimePicker/utils/index.js +1 -33
  26. package/cjs/components/TimePicker/utils/index.js.map +1 -1
  27. package/cjs/components/TimePickerGrid/TimePickerGrid.css +10 -0
  28. package/cjs/components/TimePickerGrid/TimePickerGrid.js +733 -0
  29. package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  30. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +27 -0
  31. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  32. package/cjs/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  33. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +40 -0
  34. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  35. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  36. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  37. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  38. package/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +12 -12
  39. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  40. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  41. package/cjs/components/TimePickerGrid/utils/index.js +135 -0
  42. package/cjs/components/TimePickerGrid/utils/index.js.map +1 -0
  43. package/cjs/components/TimePickerGrid/variations/_disabled/base.js +9 -0
  44. package/cjs/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  45. package/cjs/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  46. package/cjs/components/TimePickerGrid/variations/_size/base.js +9 -0
  47. package/cjs/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  48. package/cjs/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  49. package/cjs/components/TimePickerGrid/variations/_view/base.js +9 -0
  50. package/cjs/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  51. package/cjs/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  52. package/cjs/index.css +23 -15
  53. package/cjs/index.js +5 -0
  54. package/cjs/index.js.map +1 -1
  55. package/emotion/cjs/components/Loader/Loader.js +34 -4
  56. package/emotion/cjs/components/Loader/Loader.styles.js +5 -5
  57. package/emotion/cjs/components/Loader/Loader.tokens.js +11 -1
  58. package/emotion/cjs/components/ProgressBarCircular/ProgressBarCircular.styles.js +9 -9
  59. package/emotion/cjs/components/TimePicker/TimePicker.js +22 -488
  60. package/emotion/cjs/components/TimePicker/TimePicker.styles.js +17 -7
  61. package/emotion/cjs/components/TimePicker/utils/index.js +1 -25
  62. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +922 -0
  63. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +34 -0
  64. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  65. package/emotion/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  66. package/emotion/cjs/components/TimePickerGrid/index.js +26 -0
  67. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  68. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +71 -0
  69. package/emotion/cjs/components/TimePickerGrid/utils/index.js +166 -0
  70. package/emotion/cjs/components/TimePickerGrid/variations/_disabled/base.js +12 -0
  71. package/emotion/cjs/components/TimePickerGrid/variations/_size/base.js +12 -0
  72. package/emotion/cjs/components/TimePickerGrid/variations/_view/base.js +12 -0
  73. package/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
  74. package/emotion/cjs/examples/components/Loader/Loader.config.js +14 -14
  75. package/emotion/cjs/examples/components/TimePicker/TimePicker.config.js +7 -7
  76. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +32 -0
  77. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  78. package/emotion/cjs/index.js +1 -0
  79. package/emotion/es/components/Loader/Loader.js +35 -5
  80. package/emotion/es/components/Loader/Loader.styles.js +6 -6
  81. package/emotion/es/components/Loader/Loader.tokens.js +8 -1
  82. package/emotion/es/components/ProgressBarCircular/ProgressBarCircular.styles.js +9 -9
  83. package/emotion/es/components/TimePicker/TimePicker.js +25 -491
  84. package/emotion/es/components/TimePicker/TimePicker.styles.js +14 -7
  85. package/emotion/es/components/TimePicker/utils/index.js +1 -22
  86. package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +863 -0
  87. package/emotion/es/components/TimePickerGrid/TimePickerGrid.styles.js +11 -0
  88. package/emotion/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  89. package/emotion/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  90. package/emotion/es/components/TimePickerGrid/index.js +2 -0
  91. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  92. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +33 -0
  93. package/emotion/es/components/TimePickerGrid/utils/index.js +133 -0
  94. package/emotion/es/components/TimePickerGrid/variations/_disabled/base.js +2 -0
  95. package/emotion/es/components/TimePickerGrid/variations/_size/base.js +2 -0
  96. package/emotion/es/components/TimePickerGrid/variations/_view/base.js +2 -0
  97. package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
  98. package/emotion/es/examples/components/Loader/Loader.config.js +14 -14
  99. package/emotion/es/examples/components/TimePicker/TimePicker.config.js +7 -7
  100. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +22 -0
  101. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  102. package/emotion/es/index.js +1 -0
  103. package/es/components/Loader/Loader.css +16 -0
  104. package/es/components/Loader/Loader.js +73 -0
  105. package/es/components/Loader/Loader.js.map +1 -0
  106. package/es/components/Loader/Loader.styles.js +30 -0
  107. package/es/components/Loader/Loader.styles.js.map +1 -0
  108. package/es/components/Loader/Loader.styles_1i0a33d.css +3 -0
  109. package/es/components/Loader/Loader.tokens.js +30 -0
  110. package/es/components/Loader/Loader.tokens.js.map +1 -0
  111. package/es/components/Loader/variations/_size/base.js +5 -0
  112. package/es/components/Loader/variations/_size/base.js.map +1 -0
  113. package/es/components/Loader/variations/_size/base_x642ct.css +1 -0
  114. package/es/components/Loader/variations/_view/base.js +5 -0
  115. package/es/components/Loader/variations/_view/base.js.map +1 -0
  116. package/es/components/Loader/variations/_view/base_x642ct.css +1 -0
  117. package/es/components/ProgressBarCircular/ProgressBarCircular.css +5 -5
  118. package/es/components/ProgressBarCircular/ProgressBarCircular.styles.js +1 -1
  119. package/es/components/ProgressBarCircular/ProgressBarCircular.styles.js.map +1 -1
  120. package/es/components/ProgressBarCircular/{ProgressBarCircular.styles_1cnlydo.css → ProgressBarCircular.styles_16hxdvd.css} +1 -1
  121. package/es/components/TimePicker/TimePicker.css +15 -11
  122. package/es/components/TimePicker/TimePicker.js +26 -462
  123. package/es/components/TimePicker/TimePicker.js.map +1 -1
  124. package/es/components/TimePicker/TimePicker.styles.js +17 -21
  125. package/es/components/TimePicker/TimePicker.styles.js.map +1 -1
  126. package/{cjs/components/TimePicker/TimePicker.styles_ar3obv.css → es/components/TimePicker/TimePicker.styles_2lk4d9.css} +4 -3
  127. package/es/components/TimePicker/utils/index.js +2 -32
  128. package/es/components/TimePicker/utils/index.js.map +1 -1
  129. package/es/components/TimePickerGrid/TimePickerGrid.css +10 -0
  130. package/es/components/TimePickerGrid/TimePickerGrid.js +724 -0
  131. package/es/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  132. package/es/components/TimePickerGrid/TimePickerGrid.styles.js +22 -0
  133. package/es/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  134. package/es/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  135. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js +35 -0
  136. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  137. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  138. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +109 -0
  139. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  140. package/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -11
  141. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  142. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  143. package/es/components/TimePickerGrid/utils/index.js +126 -0
  144. package/es/components/TimePickerGrid/utils/index.js.map +1 -0
  145. package/es/components/TimePickerGrid/variations/_disabled/base.js +5 -0
  146. package/es/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  147. package/es/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  148. package/es/components/TimePickerGrid/variations/_size/base.js +5 -0
  149. package/es/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  150. package/es/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  151. package/es/components/TimePickerGrid/variations/_view/base.js +5 -0
  152. package/es/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  153. package/es/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  154. package/es/index.css +23 -15
  155. package/es/index.js +2 -0
  156. package/es/index.js.map +1 -1
  157. package/package.json +4 -4
  158. package/styled-components/cjs/components/Loader/Loader.js +34 -4
  159. package/styled-components/cjs/components/Loader/Loader.styles.js +9 -4
  160. package/styled-components/cjs/components/Loader/Loader.tokens.js +11 -1
  161. package/styled-components/cjs/components/ProgressBarCircular/ProgressBarCircular.styles.js +5 -5
  162. package/styled-components/cjs/components/TimePicker/TimePicker.js +22 -488
  163. package/styled-components/cjs/components/TimePicker/TimePicker.styles.js +57 -3
  164. package/styled-components/cjs/components/TimePicker/utils/index.js +1 -25
  165. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +922 -0
  166. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +79 -0
  167. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  168. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.types.js +4 -0
  169. package/styled-components/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  170. package/styled-components/cjs/components/TimePickerGrid/index.js +26 -0
  171. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  172. package/styled-components/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +16 -14
  173. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +4 -0
  174. package/styled-components/cjs/components/TimePickerGrid/utils/index.js +166 -0
  175. package/styled-components/cjs/components/TimePickerGrid/variations/_disabled/base.js +14 -0
  176. package/styled-components/cjs/components/TimePickerGrid/variations/_size/base.js +14 -0
  177. package/styled-components/cjs/components/TimePickerGrid/variations/_view/base.js +14 -0
  178. package/styled-components/cjs/examples/components/Combobox/Combobox.js +0 -15
  179. package/styled-components/cjs/examples/components/Loader/Loader.config.js +36 -25
  180. package/styled-components/cjs/examples/components/TimePicker/TimePicker.config.js +3 -2
  181. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +103 -0
  182. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  183. package/styled-components/cjs/index.js +1 -0
  184. package/styled-components/es/components/Loader/Loader.js +35 -5
  185. package/styled-components/es/components/Loader/Loader.styles.js +10 -5
  186. package/styled-components/es/components/Loader/Loader.tokens.js +8 -1
  187. package/styled-components/es/components/ProgressBarCircular/ProgressBarCircular.styles.js +5 -5
  188. package/styled-components/es/components/TimePicker/TimePicker.js +25 -491
  189. package/styled-components/es/components/TimePicker/TimePicker.styles.js +54 -3
  190. package/styled-components/es/components/TimePicker/utils/index.js +1 -22
  191. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +863 -0
  192. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.styles.js +21 -0
  193. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  194. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.types.js +1 -0
  195. package/styled-components/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  196. package/styled-components/es/components/TimePickerGrid/index.js +2 -0
  197. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  198. package/styled-components/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -9
  199. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.js +1 -0
  200. package/styled-components/es/components/TimePickerGrid/utils/index.js +133 -0
  201. package/styled-components/es/components/TimePickerGrid/variations/_disabled/base.js +4 -0
  202. package/styled-components/es/components/TimePickerGrid/variations/_size/base.js +4 -0
  203. package/styled-components/es/components/TimePickerGrid/variations/_view/base.js +4 -0
  204. package/styled-components/es/examples/components/Loader/Loader.config.js +36 -25
  205. package/styled-components/es/examples/components/TimePicker/TimePicker.config.js +3 -2
  206. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +93 -0
  207. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  208. package/styled-components/es/index.js +1 -0
  209. package/types/components/Loader/Loader.d.ts.map +1 -1
  210. package/types/components/Loader/Loader.styles.d.ts.map +1 -1
  211. package/types/components/Loader/Loader.tokens.d.ts +8 -1
  212. package/types/components/Loader/Loader.tokens.d.ts.map +1 -1
  213. package/types/components/Loader/Loader.types.d.ts +13 -4
  214. package/types/components/Loader/Loader.types.d.ts.map +1 -1
  215. package/types/components/TimePicker/TimePicker.d.ts.map +1 -1
  216. package/types/components/TimePicker/TimePicker.styles.d.ts +18 -0
  217. package/types/components/TimePicker/TimePicker.styles.d.ts.map +1 -1
  218. package/types/components/TimePicker/utils/index.d.ts +1 -2
  219. package/types/components/TimePicker/utils/index.d.ts.map +1 -1
  220. package/types/components/TimePickerGrid/TimePickerGrid.d.ts +61 -0
  221. package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  222. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts +5 -0
  223. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts.map +1 -0
  224. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts +33 -0
  225. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts.map +1 -0
  226. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts +65 -0
  227. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts.map +1 -0
  228. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts +14 -0
  229. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts.map +1 -0
  230. package/types/components/TimePickerGrid/index.d.ts +4 -0
  231. package/types/components/TimePickerGrid/index.d.ts.map +1 -0
  232. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +3 -0
  233. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +1 -0
  234. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.d.ts.map +1 -0
  235. package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.d.ts +9 -8
  236. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -0
  237. package/types/components/TimePickerGrid/utils/index.d.ts +24 -0
  238. package/types/components/TimePickerGrid/utils/index.d.ts.map +1 -0
  239. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts +2 -0
  240. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts.map +1 -0
  241. package/types/components/TimePickerGrid/variations/_size/base.d.ts +2 -0
  242. package/types/components/TimePickerGrid/variations/_size/base.d.ts.map +1 -0
  243. package/types/components/TimePickerGrid/variations/_view/base.d.ts +2 -0
  244. package/types/components/TimePickerGrid/variations/_view/base.d.ts.map +1 -0
  245. package/types/examples/components/Loader/Loader.config.d.ts.map +1 -1
  246. package/types/examples/components/TimePicker/TimePicker.config.d.ts.map +1 -1
  247. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts +21 -0
  248. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts.map +1 -0
  249. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts +32 -0
  250. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  251. package/types/index.d.ts +1 -0
  252. package/types/index.d.ts.map +1 -1
  253. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  254. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  255. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  256. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  257. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  258. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  259. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -71
  260. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  261. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -33
  262. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  263. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -56
  264. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  265. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  266. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  267. package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  268. package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  269. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts +0 -3
  270. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts.map +0 -1
  271. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts.map +0 -1
  272. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts.map +0 -1
  273. /package/emotion/cjs/components/{TimePicker/ui/TimeColumn/TimeColumn.types.js → TimePickerGrid/TimePickerGrid.types.js} +0 -0
  274. /package/{styled-components/cjs/components/TimePicker → emotion/cjs/components/TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  275. /package/emotion/es/components/{TimePicker/ui/TimeColumn/TimeColumn.types.js → TimePickerGrid/TimePickerGrid.types.js} +0 -0
  276. /package/{styled-components/es/components/TimePicker → emotion/es/components/TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  277. /package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.d.ts +0 -0
@@ -0,0 +1,922 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get timePickerGridConfig () {
13
+ return timePickerGridConfig;
14
+ },
15
+ get timePickerGridRoot () {
16
+ return timePickerGridRoot;
17
+ }
18
+ });
19
+ var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
20
+ var _utils = require("./utils");
21
+ var _TimePickerGridstyles = require("./TimePickerGrid.styles");
22
+ var _base = require("./variations/_size/base");
23
+ var _base1 = require("./variations/_view/base");
24
+ var _base2 = require("./variations/_disabled/base");
25
+ var _TimeColumn = require("./ui/TimeColumn/TimeColumn");
26
+ function _array_like_to_array(arr, len) {
27
+ if (len == null || len > arr.length) len = arr.length;
28
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
29
+ return arr2;
30
+ }
31
+ function _array_with_holes(arr) {
32
+ if (Array.isArray(arr)) return arr;
33
+ }
34
+ function _array_without_holes(arr) {
35
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
36
+ }
37
+ function _define_property(obj, key, value) {
38
+ if (key in obj) {
39
+ Object.defineProperty(obj, key, {
40
+ value: value,
41
+ enumerable: true,
42
+ configurable: true,
43
+ writable: true
44
+ });
45
+ } else {
46
+ obj[key] = value;
47
+ }
48
+ return obj;
49
+ }
50
+ function _getRequireWildcardCache(nodeInterop) {
51
+ if (typeof WeakMap !== "function") return null;
52
+ var cacheBabelInterop = new WeakMap();
53
+ var cacheNodeInterop = new WeakMap();
54
+ return (_getRequireWildcardCache = function(nodeInterop) {
55
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
56
+ })(nodeInterop);
57
+ }
58
+ function _interop_require_wildcard(obj, nodeInterop) {
59
+ if (!nodeInterop && obj && obj.__esModule) {
60
+ return obj;
61
+ }
62
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
63
+ return {
64
+ default: obj
65
+ };
66
+ }
67
+ var cache = _getRequireWildcardCache(nodeInterop);
68
+ if (cache && cache.has(obj)) {
69
+ return cache.get(obj);
70
+ }
71
+ var newObj = {
72
+ __proto__: null
73
+ };
74
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
75
+ for(var key in obj){
76
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
77
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
78
+ if (desc && (desc.get || desc.set)) {
79
+ Object.defineProperty(newObj, key, desc);
80
+ } else {
81
+ newObj[key] = obj[key];
82
+ }
83
+ }
84
+ }
85
+ newObj.default = obj;
86
+ if (cache) {
87
+ cache.set(obj, newObj);
88
+ }
89
+ return newObj;
90
+ }
91
+ function _iterable_to_array(iter) {
92
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
93
+ }
94
+ function _iterable_to_array_limit(arr, i) {
95
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
96
+ if (_i == null) return;
97
+ var _arr = [];
98
+ var _n = true;
99
+ var _d = false;
100
+ var _s, _e;
101
+ try {
102
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
103
+ _arr.push(_s.value);
104
+ if (i && _arr.length === i) break;
105
+ }
106
+ } catch (err) {
107
+ _d = true;
108
+ _e = err;
109
+ } finally{
110
+ try {
111
+ if (!_n && _i["return"] != null) _i["return"]();
112
+ } finally{
113
+ if (_d) throw _e;
114
+ }
115
+ }
116
+ return _arr;
117
+ }
118
+ function _non_iterable_rest() {
119
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
120
+ }
121
+ function _non_iterable_spread() {
122
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
123
+ }
124
+ function _object_spread(target) {
125
+ for(var i = 1; i < arguments.length; i++){
126
+ var source = arguments[i] != null ? arguments[i] : {};
127
+ var ownKeys = Object.keys(source);
128
+ if (typeof Object.getOwnPropertySymbols === "function") {
129
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
130
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
131
+ }));
132
+ }
133
+ ownKeys.forEach(function(key) {
134
+ _define_property(target, key, source[key]);
135
+ });
136
+ }
137
+ return target;
138
+ }
139
+ function ownKeys(object, enumerableOnly) {
140
+ var keys = Object.keys(object);
141
+ if (Object.getOwnPropertySymbols) {
142
+ var symbols = Object.getOwnPropertySymbols(object);
143
+ if (enumerableOnly) {
144
+ symbols = symbols.filter(function(sym) {
145
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
146
+ });
147
+ }
148
+ keys.push.apply(keys, symbols);
149
+ }
150
+ return keys;
151
+ }
152
+ function _object_spread_props(target, source) {
153
+ source = source != null ? source : {};
154
+ if (Object.getOwnPropertyDescriptors) {
155
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
156
+ } else {
157
+ ownKeys(Object(source)).forEach(function(key) {
158
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
159
+ });
160
+ }
161
+ return target;
162
+ }
163
+ function _object_without_properties(source, excluded) {
164
+ if (source == null) return {};
165
+ var target = _object_without_properties_loose(source, excluded);
166
+ var key, i;
167
+ if (Object.getOwnPropertySymbols) {
168
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
169
+ for(i = 0; i < sourceSymbolKeys.length; i++){
170
+ key = sourceSymbolKeys[i];
171
+ if (excluded.indexOf(key) >= 0) continue;
172
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
173
+ target[key] = source[key];
174
+ }
175
+ }
176
+ return target;
177
+ }
178
+ function _object_without_properties_loose(source, excluded) {
179
+ if (source == null) return {};
180
+ var target = {};
181
+ var sourceKeys = Object.keys(source);
182
+ var key, i;
183
+ for(i = 0; i < sourceKeys.length; i++){
184
+ key = sourceKeys[i];
185
+ if (excluded.indexOf(key) >= 0) continue;
186
+ target[key] = source[key];
187
+ }
188
+ return target;
189
+ }
190
+ function _sliced_to_array(arr, i) {
191
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
192
+ }
193
+ function _to_consumable_array(arr) {
194
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
195
+ }
196
+ function _unsupported_iterable_to_array(o, minLen) {
197
+ if (!o) return;
198
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
199
+ var n = Object.prototype.toString.call(o).slice(8, -1);
200
+ if (n === "Object" && o.constructor) n = o.constructor.name;
201
+ if (n === "Map" || n === "Set") return Array.from(n);
202
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
203
+ }
204
+ var timePickerGridRoot = function(Root) {
205
+ return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, ref) {
206
+ var outerValue = _param.value, view = _param.view, size = _param.size, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, dropdownWidth = _param.dropdownWidth, dropdownHeight = _param.dropdownHeight, _param_format = _param.format, format = _param_format === void 0 ? 'HH:mm' : _param_format, min = _param.min, max = _param.max, columnsQuantity = _param.columnsQuantity, disabledValues = _param.disabledValues, onChange = _param.onChange, rest = _object_without_properties(_param, [
207
+ "value",
208
+ "view",
209
+ "size",
210
+ "disabled",
211
+ "dropdownWidth",
212
+ "dropdownHeight",
213
+ "format",
214
+ "min",
215
+ "max",
216
+ "columnsQuantity",
217
+ "disabledValues",
218
+ "onChange"
219
+ ]);
220
+ var actualFormat = format || (columnsQuantity === 3 ? 'HH:mm:ss' : 'HH:mm');
221
+ var columnsConfig = (0, _react.useMemo)(function() {
222
+ return (0, _utils.getColumnsFromFormat)(actualFormat);
223
+ }, [
224
+ actualFormat
225
+ ]);
226
+ var hoursColumnRef = (0, _react.useRef)(null);
227
+ var minutesColumnRef = (0, _react.useRef)(null);
228
+ var secondsColumnRef = (0, _react.useRef)(null);
229
+ var timeItemRefs = (0, _react.useRef)({});
230
+ var hoursScrollbarRef = (0, _react.useRef)(null);
231
+ var minutesScrollbarRef = (0, _react.useRef)(null);
232
+ var secondsScrollbarRef = (0, _react.useRef)(null);
233
+ var hoursThumbRef = (0, _react.useRef)(null);
234
+ var minutesThumbRef = (0, _react.useRef)(null);
235
+ var secondsThumbRef = (0, _react.useRef)(null);
236
+ var hoursHideTimeoutRef = (0, _react.useRef)(null);
237
+ var minutesHideTimeoutRef = (0, _react.useRef)(null);
238
+ var secondsHideTimeoutRef = (0, _react.useRef)(null);
239
+ var _useState = _sliced_to_array((0, _react.useState)(outerValue || ''), 2), innerTime = _useState[0], setInnerTime = _useState[1];
240
+ var _useState1 = _sliced_to_array((0, _react.useState)({
241
+ hours: null,
242
+ minutes: null,
243
+ seconds: null,
244
+ currentColumn: null
245
+ }), 2), activeTime = _useState1[0], setActiveTime = _useState1[1];
246
+ var _useState2 = _sliced_to_array((0, _react.useState)(0), 2), itemHeight = _useState2[0], setItemHeight = _useState2[1];
247
+ var _useState3 = _sliced_to_array((0, _react.useState)(0), 2), gap = _useState3[0], setGap = _useState3[1];
248
+ var _useState4 = _sliced_to_array((0, _react.useState)({
249
+ isVisible: false,
250
+ thumbHeight: 0,
251
+ thumbPosition: 0,
252
+ isDragging: false
253
+ }), 2), hoursScrollbar = _useState4[0], setHoursScrollbar = _useState4[1];
254
+ var _useState5 = _sliced_to_array((0, _react.useState)({
255
+ isVisible: false,
256
+ thumbHeight: 0,
257
+ thumbPosition: 0,
258
+ isDragging: false
259
+ }), 2), minutesScrollbar = _useState5[0], setMinutesScrollbar = _useState5[1];
260
+ var _useState6 = _sliced_to_array((0, _react.useState)({
261
+ isVisible: false,
262
+ thumbHeight: 0,
263
+ thumbPosition: 0,
264
+ isDragging: false
265
+ }), 2), secondsScrollbar = _useState6[0], setSecondsScrollbar = _useState6[1];
266
+ var viewValue = outerValue !== null && outerValue !== void 0 ? outerValue : innerTime;
267
+ (0, _react.useEffect)(function() {
268
+ if (activeTime.currentColumn && activeTime[activeTime.currentColumn] !== null) {
269
+ var _activeTime_activeTime_currentColumn;
270
+ var column = activeTime.currentColumn;
271
+ var value = (_activeTime_activeTime_currentColumn = activeTime[activeTime.currentColumn]) === null || _activeTime_activeTime_currentColumn === void 0 ? void 0 : _activeTime_activeTime_currentColumn.toString().padStart(2, '0');
272
+ var element = timeItemRefs.current["".concat(column, "-").concat(value)];
273
+ setTimeout(function() {
274
+ if (element) {
275
+ element.focus();
276
+ }
277
+ }, 0);
278
+ }
279
+ }, [
280
+ activeTime
281
+ ]);
282
+ var getDisabledValuesForColumn = (0, _react.useCallback)(function(columnType) {
283
+ var disabledFromProps;
284
+ if (columnType === 'hours') {
285
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.hour) || [];
286
+ } else if (columnType === 'minutes') {
287
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.minute) || [];
288
+ } else {
289
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.second) || [];
290
+ }
291
+ var disabledFromMinMax = [];
292
+ if (min || max) {
293
+ var timeValues = (0, _utils.parseTimeString)(viewValue || '00:00:00', actualFormat);
294
+ for(var i = 0; i < (columnType === 'hours' ? 24 : 60); i++){
295
+ var testValues = _object_spread({}, timeValues);
296
+ if (columnType === 'hours') {
297
+ testValues.hh = i;
298
+ } else if (columnType === 'minutes') {
299
+ testValues.mm = i;
300
+ } else {
301
+ testValues.ss = i;
302
+ }
303
+ var completeTimeValues = getCompleteTimeValues(testValues, actualFormat);
304
+ if ((0, _utils.isTimeDisabled)(completeTimeValues, min, max, format)) {
305
+ disabledFromMinMax.push(i);
306
+ }
307
+ }
308
+ }
309
+ var normalizedDisabledFromProps = disabledFromProps.map(function(val) {
310
+ return typeof val === 'string' ? parseInt(val, 10) : val;
311
+ });
312
+ return _to_consumable_array(new Set(_to_consumable_array(normalizedDisabledFromProps).concat(_to_consumable_array(disabledFromMinMax))));
313
+ }, [
314
+ disabledValues,
315
+ min,
316
+ max,
317
+ viewValue,
318
+ actualFormat
319
+ ]);
320
+ var getCompleteTimeValues = (0, _react.useCallback)(function(timeValues, format) {
321
+ var completeValues = {
322
+ hh: 0,
323
+ mm: 0,
324
+ ss: 0
325
+ };
326
+ if (format.includes('HH')) {
327
+ completeValues.hh = timeValues.hh !== null ? timeValues.hh : 0;
328
+ }
329
+ if (format.includes('mm')) {
330
+ completeValues.mm = timeValues.mm !== null ? timeValues.mm : 0;
331
+ }
332
+ if (format.includes('ss')) {
333
+ completeValues.ss = timeValues.ss !== null ? timeValues.ss : 0;
334
+ }
335
+ return completeValues;
336
+ }, []);
337
+ var getNextAvailableValue = (0, _react.useCallback)(function(currentIndex, values, disabledValuesForColumn, direction) {
338
+ var newIndex = currentIndex;
339
+ var iterations = 0;
340
+ var maxIterations = values.length;
341
+ do {
342
+ newIndex = direction === 'up' ? (newIndex - 1 + values.length) % values.length : (newIndex + 1) % values.length;
343
+ iterations++;
344
+ }while (iterations < maxIterations && disabledValuesForColumn.includes(parseInt(values[newIndex], 10)) && newIndex !== currentIndex);
345
+ return iterations < maxIterations && !disabledValuesForColumn.includes(parseInt(values[newIndex], 10)) ? newIndex : currentIndex;
346
+ }, []);
347
+ var minScrollbarTrackHeight = 20;
348
+ var calculateScrollbar = (0, _react.useCallback)(function(columnRef) {
349
+ if (!columnRef.current) return {
350
+ thumbHeight: 0,
351
+ thumbPosition: 0
352
+ };
353
+ var _columnRef_current = columnRef.current, scrollTop = _columnRef_current.scrollTop, scrollHeight = _columnRef_current.scrollHeight, clientHeight = _columnRef_current.clientHeight;
354
+ var trackHeight = clientHeight;
355
+ var thumbHeight = Math.max(trackHeight / scrollHeight * trackHeight, minScrollbarTrackHeight);
356
+ var maxScroll = scrollHeight - clientHeight;
357
+ var thumbPosition = maxScroll > 0 ? scrollTop / maxScroll * (trackHeight - thumbHeight) : 0;
358
+ return {
359
+ thumbHeight: thumbHeight,
360
+ thumbPosition: thumbPosition
361
+ };
362
+ }, []);
363
+ var showScrollbarWithDelay = (0, _react.useCallback)(function(setScrollbar, timeoutRef, columnRef) {
364
+ if (timeoutRef.current) {
365
+ clearTimeout(timeoutRef.current);
366
+ }
367
+ updateScrollbar(columnRef, setScrollbar, true);
368
+ timeoutRef.current = setTimeout(function() {
369
+ setScrollbar(function(prev) {
370
+ return _object_spread_props(_object_spread({}, prev), {
371
+ isVisible: false
372
+ });
373
+ });
374
+ timeoutRef.current = null;
375
+ }, 2000);
376
+ }, []);
377
+ var updateScrollbar = (0, _react.useCallback)(function(columnRef, setScrollbar) {
378
+ var show = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
379
+ if (!columnRef.current) return;
380
+ var _calculateScrollbar = calculateScrollbar(columnRef), thumbHeight = _calculateScrollbar.thumbHeight, thumbPosition = _calculateScrollbar.thumbPosition;
381
+ setScrollbar(function(prev) {
382
+ return _object_spread_props(_object_spread({}, prev), {
383
+ thumbHeight: thumbHeight,
384
+ thumbPosition: thumbPosition,
385
+ isVisible: show || prev.isVisible
386
+ });
387
+ });
388
+ }, [
389
+ calculateScrollbar
390
+ ]);
391
+ var handleColumnScroll = (0, _react.useCallback)(function(columnRef, setScrollbar, timeoutRef) {
392
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
393
+ }, [
394
+ showScrollbarWithDelay
395
+ ]);
396
+ var createScrollbarDragHandler = (0, _react.useCallback)(function(columnRef, setScrollbar, timeoutRef) {
397
+ return function(e) {
398
+ e.preventDefault();
399
+ var thumb = e.currentTarget;
400
+ var track = thumb.parentElement;
401
+ if (!columnRef.current || !track) return;
402
+ if (timeoutRef.current) {
403
+ clearTimeout(timeoutRef.current);
404
+ timeoutRef.current = null;
405
+ }
406
+ var startY = e.clientY;
407
+ var startThumbPosition = parseFloat(thumb.style.top || '0');
408
+ var trackRect = track.getBoundingClientRect();
409
+ var trackHeight = trackRect.height;
410
+ var thumbHeight = thumb.offsetHeight;
411
+ var _columnRef_current = columnRef.current, scrollHeight = _columnRef_current.scrollHeight, clientHeight = _columnRef_current.clientHeight;
412
+ var maxScroll = scrollHeight - clientHeight;
413
+ var handleMouseMove = function(moveEvent) {
414
+ var deltaY = moveEvent.clientY - startY;
415
+ var newThumbPosition = Math.max(0, Math.min(trackHeight - thumbHeight, startThumbPosition + deltaY));
416
+ var scrollPercentage = newThumbPosition / (trackHeight - thumbHeight);
417
+ var newScrollTop = scrollPercentage * maxScroll;
418
+ if (columnRef.current) {
419
+ columnRef.current.scrollTop = newScrollTop;
420
+ }
421
+ setScrollbar(function(prev) {
422
+ return _object_spread_props(_object_spread({}, prev), {
423
+ thumbPosition: newThumbPosition,
424
+ isDragging: true,
425
+ isVisible: true
426
+ });
427
+ });
428
+ };
429
+ var handleMouseUp = function() {
430
+ document.removeEventListener('mousemove', handleMouseMove);
431
+ document.removeEventListener('mouseup', handleMouseUp);
432
+ setScrollbar(function(prev) {
433
+ return _object_spread_props(_object_spread({}, prev), {
434
+ isDragging: false
435
+ });
436
+ });
437
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
438
+ };
439
+ document.addEventListener('mousemove', handleMouseMove);
440
+ document.addEventListener('mouseup', handleMouseUp);
441
+ };
442
+ }, [
443
+ showScrollbarWithDelay
444
+ ]);
445
+ (0, _react.useEffect)(function() {
446
+ if (viewValue && columnsConfig.length > 0) {
447
+ var timeValues = (0, _utils.parseTimeString)(viewValue, actualFormat);
448
+ setActiveTime(function(prev) {
449
+ return _object_spread_props(_object_spread({}, prev), {
450
+ hours: timeValues.hh,
451
+ minutes: timeValues.mm,
452
+ seconds: timeValues.ss
453
+ });
454
+ });
455
+ }
456
+ }, [
457
+ viewValue,
458
+ columnsConfig,
459
+ actualFormat
460
+ ]);
461
+ var handleContainerFocus = (0, _react.useCallback)(function() {
462
+ if (activeTime.currentColumn === null && columnsConfig.length > 0) {
463
+ var firstColumn = columnsConfig[0].type;
464
+ setActiveTime(function(prev) {
465
+ return _object_spread_props(_object_spread({}, prev), {
466
+ currentColumn: firstColumn
467
+ });
468
+ });
469
+ }
470
+ }, [
471
+ activeTime.currentColumn,
472
+ columnsConfig
473
+ ]);
474
+ (0, _react.useEffect)(function() {
475
+ return function() {
476
+ [
477
+ hoursHideTimeoutRef,
478
+ minutesHideTimeoutRef,
479
+ secondsHideTimeoutRef
480
+ ].forEach(function(timeoutRef) {
481
+ if (timeoutRef.current) {
482
+ clearTimeout(timeoutRef.current);
483
+ }
484
+ });
485
+ };
486
+ }, []);
487
+ (0, _react.useEffect)(function() {
488
+ if (Object.keys(timeItemRefs.current).length > 0) {
489
+ var firstItem = Object.values(timeItemRefs.current)[0];
490
+ if (firstItem) {
491
+ setItemHeight(firstItem.offsetHeight);
492
+ }
493
+ }
494
+ if (hoursColumnRef.current) {
495
+ var computedStyle = getComputedStyle(hoursColumnRef.current);
496
+ var gapValue = parseFloat(computedStyle.gap || '0');
497
+ setGap(gapValue);
498
+ }
499
+ }, [
500
+ outerValue
501
+ ]);
502
+ (0, _react.useEffect)(function() {
503
+ setTimeout(function() {
504
+ updateScrollbar(hoursColumnRef, setHoursScrollbar);
505
+ updateScrollbar(minutesColumnRef, setMinutesScrollbar);
506
+ if (columnsQuantity === 3) {
507
+ updateScrollbar(secondsColumnRef, setSecondsScrollbar);
508
+ }
509
+ }, 100);
510
+ }, [
511
+ columnsQuantity,
512
+ updateScrollbar
513
+ ]);
514
+ (0, _react.useEffect)(function() {
515
+ if (itemHeight === 0) return;
516
+ var scrollToActiveItem = function(columnRef, index) {
517
+ if (columnRef.current && index !== null) {
518
+ var scrollPosition = index * (itemHeight + gap);
519
+ (0, _utils.animateScrollTo)(columnRef.current, scrollPosition);
520
+ setTimeout(function() {
521
+ updateScrollbar(columnRef, setHoursScrollbar);
522
+ }, 300);
523
+ }
524
+ };
525
+ scrollToActiveItem(hoursColumnRef, activeTime.hours);
526
+ scrollToActiveItem(minutesColumnRef, activeTime.minutes);
527
+ scrollToActiveItem(secondsColumnRef, activeTime.seconds);
528
+ }, [
529
+ activeTime,
530
+ itemHeight,
531
+ gap,
532
+ updateScrollbar
533
+ ]);
534
+ (0, _react.useEffect)(function() {
535
+ var hoursColumn = hoursColumnRef.current;
536
+ var minutesColumn = minutesColumnRef.current;
537
+ var secondsColumn = secondsColumnRef.current;
538
+ var handleHoursScroll = function() {
539
+ return handleColumnScroll(hoursColumnRef, setHoursScrollbar, hoursHideTimeoutRef);
540
+ };
541
+ var handleMinutesScroll = function() {
542
+ return handleColumnScroll(minutesColumnRef, setMinutesScrollbar, minutesHideTimeoutRef);
543
+ };
544
+ var handleSecondsScroll = function() {
545
+ return handleColumnScroll(secondsColumnRef, setSecondsScrollbar, secondsHideTimeoutRef);
546
+ };
547
+ if (hoursColumn) {
548
+ hoursColumn.addEventListener('scroll', handleHoursScroll);
549
+ }
550
+ if (minutesColumn) {
551
+ minutesColumn.addEventListener('scroll', handleMinutesScroll);
552
+ }
553
+ if (secondsColumn) {
554
+ secondsColumn.addEventListener('scroll', handleSecondsScroll);
555
+ }
556
+ return function() {
557
+ if (hoursColumn) {
558
+ hoursColumn.removeEventListener('scroll', handleHoursScroll);
559
+ }
560
+ if (minutesColumn) {
561
+ minutesColumn.removeEventListener('scroll', handleMinutesScroll);
562
+ }
563
+ if (secondsColumn) {
564
+ secondsColumn.removeEventListener('scroll', handleSecondsScroll);
565
+ }
566
+ };
567
+ }, []);
568
+ (0, _react.useEffect)(function() {
569
+ var hoursColumn = hoursColumnRef.current;
570
+ var minutesColumn = minutesColumnRef.current;
571
+ var secondsColumn = secondsColumnRef.current;
572
+ var handleHoursMouseEnter = function() {
573
+ return showScrollbarWithDelay(setHoursScrollbar, hoursHideTimeoutRef, hoursColumnRef);
574
+ };
575
+ var handleMinutesMouseEnter = function() {
576
+ return showScrollbarWithDelay(setMinutesScrollbar, minutesHideTimeoutRef, minutesColumnRef);
577
+ };
578
+ var handleSecondsMouseEnter = function() {
579
+ return showScrollbarWithDelay(setSecondsScrollbar, secondsHideTimeoutRef, secondsColumnRef);
580
+ };
581
+ if (hoursColumn) {
582
+ hoursColumn.addEventListener('mouseenter', handleHoursMouseEnter);
583
+ }
584
+ if (minutesColumn) {
585
+ minutesColumn.addEventListener('mouseenter', handleMinutesMouseEnter);
586
+ }
587
+ if (secondsColumn) {
588
+ secondsColumn.addEventListener('mouseenter', handleSecondsMouseEnter);
589
+ }
590
+ return function() {
591
+ if (hoursColumn) {
592
+ hoursColumn.removeEventListener('mouseenter', handleHoursMouseEnter);
593
+ }
594
+ if (minutesColumn) {
595
+ minutesColumn.removeEventListener('mouseenter', handleMinutesMouseEnter);
596
+ }
597
+ if (secondsColumn) {
598
+ secondsColumn.removeEventListener('mouseenter', handleSecondsMouseEnter);
599
+ }
600
+ };
601
+ }, []);
602
+ var handleTimeItemClick = function(value, column) {
603
+ var isNextColumn = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
604
+ var currentTimeValues = (0, _utils.parseTimeString)(innerTime, actualFormat);
605
+ var newTimeValues = _object_spread({}, currentTimeValues);
606
+ switch(column){
607
+ case 'hours':
608
+ newTimeValues.hh = parseInt(value, 10);
609
+ break;
610
+ case 'minutes':
611
+ newTimeValues.mm = parseInt(value, 10);
612
+ break;
613
+ case 'seconds':
614
+ newTimeValues.ss = parseInt(value, 10);
615
+ break;
616
+ default:
617
+ }
618
+ var getFirstAvailableValue = function(columnType) {
619
+ var disabledValuesForColumn = getDisabledValuesForColumn(columnType);
620
+ var maxValue = columnType === 'hours' ? 23 : 59;
621
+ for(var i = 0; i <= maxValue; i++){
622
+ if (!disabledValuesForColumn.includes(i)) {
623
+ return i;
624
+ }
625
+ }
626
+ return 0;
627
+ };
628
+ if (newTimeValues.hh === null && actualFormat.includes('HH')) {
629
+ newTimeValues.hh = getFirstAvailableValue('hours');
630
+ }
631
+ if (newTimeValues.mm === null && actualFormat.includes('mm')) {
632
+ newTimeValues.mm = getFirstAvailableValue('minutes');
633
+ }
634
+ if (newTimeValues.ss === null && actualFormat.includes('ss')) {
635
+ newTimeValues.ss = getFirstAvailableValue('seconds');
636
+ }
637
+ var completeTimeValues = getCompleteTimeValues(newTimeValues, actualFormat);
638
+ if ((0, _utils.isTimeDisabled)(completeTimeValues, min, max)) {
639
+ return;
640
+ }
641
+ var newTimeString = (0, _utils.buildTimeString)(newTimeValues, actualFormat);
642
+ setInnerTime(newTimeString);
643
+ var nextColumn = null;
644
+ var currentIndex = columnsConfig.findIndex(function(col) {
645
+ return col.type === column;
646
+ });
647
+ if (currentIndex !== -1 && isNextColumn && currentIndex < columnsConfig.length - 1) {
648
+ nextColumn = columnsConfig[currentIndex + 1].type;
649
+ }
650
+ var newActiveTime = {
651
+ hours: newTimeValues.hh,
652
+ minutes: newTimeValues.mm,
653
+ seconds: newTimeValues.ss,
654
+ currentColumn: nextColumn || column
655
+ };
656
+ setActiveTime(newActiveTime);
657
+ onChange === null || onChange === void 0 ? void 0 : onChange({
658
+ value: newTimeString,
659
+ timeValues: {
660
+ hour: newTimeValues.hh || undefined,
661
+ minute: newTimeValues.mm || undefined,
662
+ second: newTimeValues.ss || undefined
663
+ }
664
+ });
665
+ };
666
+ var handleTimeItemKeyDown = function(event, column, value) {
667
+ var disabledValuesForColumn = getDisabledValuesForColumn(column);
668
+ var currentIndex = parseInt(value, 10);
669
+ var newIndex = null;
670
+ var newColumn = column;
671
+ var currentIndexInColumns = columnsConfig.findIndex(function(col) {
672
+ return col.type === column;
673
+ });
674
+ switch(event.key){
675
+ case 'ArrowUp':
676
+ event.preventDefault();
677
+ newIndex = getNextAvailableValue(currentIndex, column === 'hours' ? Array.from({
678
+ length: 24
679
+ }, function(_, i) {
680
+ return i.toString().padStart(2, '0');
681
+ }) : Array.from({
682
+ length: 60
683
+ }, function(_, i) {
684
+ return i.toString().padStart(2, '0');
685
+ }), disabledValuesForColumn, 'up');
686
+ if (newIndex !== null) {
687
+ var newValue = newIndex.toString().padStart(2, '0');
688
+ handleTimeItemClick(newValue, column, false);
689
+ }
690
+ break;
691
+ case 'ArrowDown':
692
+ event.preventDefault();
693
+ newIndex = getNextAvailableValue(currentIndex, column === 'hours' ? Array.from({
694
+ length: 24
695
+ }, function(_, i) {
696
+ return i.toString().padStart(2, '0');
697
+ }) : Array.from({
698
+ length: 60
699
+ }, function(_, i) {
700
+ return i.toString().padStart(2, '0');
701
+ }), disabledValuesForColumn, 'down');
702
+ if (newIndex !== null) {
703
+ var newValue1 = newIndex.toString().padStart(2, '0');
704
+ handleTimeItemClick(newValue1, column, false);
705
+ }
706
+ break;
707
+ case 'ArrowRight':
708
+ event.preventDefault();
709
+ if (column === 'hours') {
710
+ newColumn = 'minutes';
711
+ } else if (column === 'minutes' && actualFormat.includes('ss')) {
712
+ newColumn = 'seconds';
713
+ }
714
+ if (newColumn !== column) {
715
+ setActiveTime(function(prev) {
716
+ return _object_spread_props(_object_spread({}, prev), {
717
+ currentColumn: newColumn
718
+ });
719
+ });
720
+ }
721
+ break;
722
+ case 'ArrowLeft':
723
+ event.preventDefault();
724
+ if (column === 'minutes') {
725
+ newColumn = 'hours';
726
+ } else if (column === 'seconds') {
727
+ newColumn = 'minutes';
728
+ }
729
+ if (newColumn !== column) {
730
+ setActiveTime(function(prev) {
731
+ return _object_spread_props(_object_spread({}, prev), {
732
+ currentColumn: newColumn
733
+ });
734
+ });
735
+ }
736
+ break;
737
+ case 'Enter':
738
+ case ' ':
739
+ event.preventDefault();
740
+ handleTimeItemClick(value, column);
741
+ break;
742
+ case 'Home':
743
+ event.preventDefault();
744
+ newIndex = 0;
745
+ while(disabledValuesForColumn.includes(newIndex) && newIndex < (column === 'hours' ? 24 : 60)){
746
+ newIndex++;
747
+ }
748
+ if (newIndex < (column === 'hours' ? 24 : 60)) {
749
+ handleTimeItemClick(newIndex.toString().padStart(2, '0'), column, false);
750
+ }
751
+ break;
752
+ case 'End':
753
+ event.preventDefault();
754
+ newIndex = column === 'hours' ? 23 : 59;
755
+ while(disabledValuesForColumn.includes(newIndex) && newIndex >= 0){
756
+ newIndex--;
757
+ }
758
+ if (newIndex >= 0) {
759
+ handleTimeItemClick(newIndex.toString().padStart(2, '0'), column, false);
760
+ }
761
+ break;
762
+ case 'Tab':
763
+ if (currentIndexInColumns === columnsConfig.length - 1) {
764
+ break;
765
+ }
766
+ event.preventDefault();
767
+ if (event.shiftKey) {
768
+ if (column === 'minutes') {
769
+ newColumn = 'hours';
770
+ } else if (column === 'seconds') {
771
+ newColumn = 'minutes';
772
+ }
773
+ } else if (column === 'hours') {
774
+ newColumn = 'minutes';
775
+ } else if (column === 'minutes' && actualFormat.includes('ss')) {
776
+ newColumn = 'seconds';
777
+ }
778
+ if (newColumn !== column) {
779
+ setActiveTime(function(prev) {
780
+ return _object_spread_props(_object_spread({}, prev), {
781
+ currentColumn: newColumn
782
+ });
783
+ });
784
+ }
785
+ break;
786
+ default:
787
+ if (/^[0-9]$/.test(event.key)) {
788
+ event.preventDefault();
789
+ var inputNumber = parseInt(event.key, 10);
790
+ if (column === 'hours') {
791
+ if (inputNumber <= 2) {
792
+ var tens = inputNumber;
793
+ var handleSecondInput = function(e) {
794
+ if (/^[0-9]$/.test(e.key)) {
795
+ var units = parseInt(e.key, 10);
796
+ var total = tens * 10 + units;
797
+ if (total < 24 && !disabledValuesForColumn.includes(total)) {
798
+ handleTimeItemClick(total.toString().padStart(2, '0'), column);
799
+ }
800
+ document.removeEventListener('keydown', handleSecondInput);
801
+ }
802
+ };
803
+ document.addEventListener('keydown', handleSecondInput);
804
+ setTimeout(function() {
805
+ document.removeEventListener('keydown', handleSecondInput);
806
+ }, 1000);
807
+ } else if (inputNumber <= 9) {
808
+ if (!disabledValuesForColumn.includes(inputNumber)) {
809
+ handleTimeItemClick(inputNumber.toString().padStart(2, '0'), column);
810
+ }
811
+ }
812
+ } else if (inputNumber <= 5) {
813
+ var tens1 = inputNumber;
814
+ var handleSecondInput1 = function(e) {
815
+ if (/^[0-9]$/.test(e.key)) {
816
+ var units = parseInt(e.key, 10);
817
+ var total = tens1 * 10 + units;
818
+ if (total < 60 && !disabledValuesForColumn.includes(total)) {
819
+ handleTimeItemClick(total.toString().padStart(2, '0'), column);
820
+ }
821
+ document.removeEventListener('keydown', handleSecondInput1);
822
+ }
823
+ };
824
+ document.addEventListener('keydown', handleSecondInput1);
825
+ setTimeout(function() {
826
+ document.removeEventListener('keydown', handleSecondInput1);
827
+ }, 1000);
828
+ } else if (inputNumber <= 9) {
829
+ if (!disabledValuesForColumn.includes(inputNumber)) {
830
+ handleTimeItemClick(inputNumber.toString().padStart(2, '0'), column);
831
+ }
832
+ }
833
+ }
834
+ }
835
+ };
836
+ return /*#__PURE__*/ _react.default.createElement(Root, _object_spread({
837
+ ref: ref,
838
+ view: view,
839
+ size: size,
840
+ disabled: disabled,
841
+ onFocus: handleContainerFocus
842
+ }, rest), /*#__PURE__*/ _react.default.createElement(_TimePickerGridstyles.StyledTimePicker, {
843
+ width: dropdownWidth,
844
+ tabIndex: -1
845
+ }, columnsConfig.map(function(columnConfig) {
846
+ var type = columnConfig.type, values = columnConfig.values;
847
+ var columnRef;
848
+ var scrollbarState;
849
+ var setScrollbar;
850
+ var scrollbarRef;
851
+ var thumbRef;
852
+ var timeoutRef;
853
+ switch(type){
854
+ case 'hours':
855
+ columnRef = hoursColumnRef;
856
+ scrollbarState = hoursScrollbar;
857
+ setScrollbar = setHoursScrollbar;
858
+ scrollbarRef = hoursScrollbarRef;
859
+ thumbRef = hoursThumbRef;
860
+ timeoutRef = hoursHideTimeoutRef;
861
+ break;
862
+ case 'minutes':
863
+ columnRef = minutesColumnRef;
864
+ scrollbarState = minutesScrollbar;
865
+ setScrollbar = setMinutesScrollbar;
866
+ scrollbarRef = minutesScrollbarRef;
867
+ thumbRef = minutesThumbRef;
868
+ timeoutRef = minutesHideTimeoutRef;
869
+ break;
870
+ case 'seconds':
871
+ columnRef = secondsColumnRef;
872
+ scrollbarState = secondsScrollbar;
873
+ setScrollbar = setSecondsScrollbar;
874
+ scrollbarRef = secondsScrollbarRef;
875
+ thumbRef = secondsThumbRef;
876
+ timeoutRef = secondsHideTimeoutRef;
877
+ break;
878
+ default:
879
+ return null;
880
+ }
881
+ return (0, _TimeColumn.renderTimeColumn)({
882
+ values: values,
883
+ disabledValues: getDisabledValuesForColumn(type),
884
+ dropdownHeight: dropdownHeight,
885
+ column: type,
886
+ activeTime: activeTime,
887
+ handleTimeItemClick: handleTimeItemClick,
888
+ handleTimeItemKeyDown: handleTimeItemKeyDown,
889
+ createScrollbarDragHandler: createScrollbarDragHandler,
890
+ setScrollbar: setScrollbar,
891
+ columnRef: columnRef,
892
+ scrollbarState: scrollbarState,
893
+ scrollbarRef: scrollbarRef,
894
+ thumbRef: thumbRef,
895
+ timeoutRef: timeoutRef,
896
+ timeItemRefs: timeItemRefs
897
+ });
898
+ })));
899
+ });
900
+ };
901
+ var timePickerGridConfig = {
902
+ name: 'TimePickerGrid',
903
+ tag: 'div',
904
+ layout: timePickerGridRoot,
905
+ base: _TimePickerGridstyles.base,
906
+ variations: {
907
+ view: {
908
+ css: _base1.base
909
+ },
910
+ size: {
911
+ css: _base.base
912
+ },
913
+ disabled: {
914
+ css: _base2.base,
915
+ attrs: true
916
+ }
917
+ },
918
+ defaults: {
919
+ size: 'm',
920
+ view: 'default'
921
+ }
922
+ };