@salutejs/plasma-new-hope 0.339.0-canary.2286.18651387499.0 → 0.339.0-canary.2287.18675801044.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 (402) hide show
  1. package/cjs/components/Pagination/Pagination.css +0 -19
  2. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +0 -19
  3. package/cjs/components/Select/Select.css +0 -19
  4. package/cjs/components/Select/Select.js +9 -44
  5. package/cjs/components/Select/Select.js.map +1 -1
  6. package/cjs/components/Select/Select.tokens.js +0 -2
  7. package/cjs/components/Select/Select.tokens.js.map +1 -1
  8. package/cjs/components/Select/hooks/useKeyboardNavigation.js +1 -185
  9. package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  10. package/cjs/components/Select/hooks/usePathMaps.js +3 -7
  11. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  12. package/cjs/components/Table/Table.css +0 -19
  13. package/cjs/components/Table/ui/Cell/Cell.css +0 -19
  14. package/cjs/components/Table/ui/EditableCell/EditableCell.css +0 -19
  15. package/cjs/components/Table/ui/HeadCell/HeadCell.css +0 -19
  16. package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +0 -19
  17. package/cjs/components/TimePicker/TimePicker.css +15 -11
  18. package/cjs/components/TimePicker/TimePicker.js +22 -458
  19. package/cjs/components/TimePicker/TimePicker.js.map +1 -1
  20. package/cjs/components/TimePicker/TimePicker.styles.js +17 -21
  21. package/cjs/components/TimePicker/TimePicker.styles.js.map +1 -1
  22. package/cjs/components/TimePicker/{TimePicker.styles_ar3obv.css → TimePicker.styles_2lk4d9.css} +4 -3
  23. package/cjs/components/TimePicker/utils/index.js +1 -33
  24. package/cjs/components/TimePicker/utils/index.js.map +1 -1
  25. package/cjs/components/TimePickerGrid/TimePickerGrid.css +10 -0
  26. package/cjs/components/TimePickerGrid/TimePickerGrid.js +714 -0
  27. package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  28. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +27 -0
  29. package/cjs/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  30. package/cjs/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  31. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +40 -0
  32. package/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  33. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  34. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  35. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  36. package/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +12 -12
  37. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  38. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  39. package/cjs/components/TimePickerGrid/utils/index.js +135 -0
  40. package/cjs/components/TimePickerGrid/utils/index.js.map +1 -0
  41. package/cjs/components/TimePickerGrid/variations/_disabled/base.js +9 -0
  42. package/cjs/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  43. package/cjs/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  44. package/cjs/components/TimePickerGrid/variations/_size/base.js +9 -0
  45. package/cjs/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  46. package/cjs/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  47. package/cjs/components/TimePickerGrid/variations/_view/base.js +9 -0
  48. package/cjs/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  49. package/cjs/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  50. package/cjs/components/Tree/utils/traverseTree.js +23 -2
  51. package/cjs/components/Tree/utils/traverseTree.js.map +1 -1
  52. package/cjs/index.css +15 -30
  53. package/cjs/index.js +0 -2
  54. package/cjs/index.js.map +1 -1
  55. package/cjs/utils/index.js.map +1 -1
  56. package/emotion/cjs/components/Select/Select.js +6 -33
  57. package/emotion/cjs/components/Select/Select.tokens.js +0 -2
  58. package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +0 -166
  59. package/emotion/cjs/components/Select/hooks/usePathMaps.js +3 -35
  60. package/emotion/cjs/components/Select/reducers/index.js +0 -1
  61. package/emotion/cjs/components/Select/ui/index.js +0 -1
  62. package/emotion/cjs/components/TimePicker/TimePicker.js +22 -488
  63. package/emotion/cjs/components/TimePicker/TimePicker.styles.js +17 -7
  64. package/emotion/cjs/components/TimePicker/utils/index.js +1 -25
  65. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +903 -0
  66. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +34 -0
  67. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  68. package/emotion/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  69. package/emotion/cjs/components/TimePickerGrid/index.js +26 -0
  70. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  71. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +71 -0
  72. package/emotion/cjs/components/TimePickerGrid/utils/index.js +166 -0
  73. package/emotion/cjs/components/TimePickerGrid/variations/_disabled/base.js +12 -0
  74. package/emotion/cjs/components/TimePickerGrid/variations/_size/base.js +12 -0
  75. package/emotion/cjs/components/TimePickerGrid/variations/_view/base.js +12 -0
  76. package/emotion/cjs/components/Tree/utils/traverseTree.js +60 -2
  77. package/emotion/cjs/examples/components/Combobox/Combobox.js +15 -0
  78. package/emotion/cjs/examples/components/Select/Select.config.js +24 -24
  79. package/emotion/cjs/examples/components/TimePicker/TimePicker.config.js +7 -7
  80. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +32 -0
  81. package/emotion/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  82. package/emotion/cjs/utils/index.js +0 -4
  83. package/emotion/es/components/Select/Select.js +8 -35
  84. package/emotion/es/components/Select/Select.tokens.js +0 -2
  85. package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +0 -166
  86. package/emotion/es/components/Select/hooks/usePathMaps.js +4 -36
  87. package/emotion/es/components/Select/reducers/index.js +0 -1
  88. package/emotion/es/components/Select/ui/index.js +0 -1
  89. package/emotion/es/components/TimePicker/TimePicker.js +25 -491
  90. package/emotion/es/components/TimePicker/TimePicker.styles.js +14 -7
  91. package/emotion/es/components/TimePicker/utils/index.js +1 -22
  92. package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +844 -0
  93. package/emotion/es/components/TimePickerGrid/TimePickerGrid.styles.js +11 -0
  94. package/emotion/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  95. package/emotion/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  96. package/emotion/es/components/TimePickerGrid/index.js +2 -0
  97. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  98. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js +33 -0
  99. package/emotion/es/components/TimePickerGrid/utils/index.js +133 -0
  100. package/emotion/es/components/TimePickerGrid/variations/_disabled/base.js +2 -0
  101. package/emotion/es/components/TimePickerGrid/variations/_size/base.js +2 -0
  102. package/emotion/es/components/TimePickerGrid/variations/_view/base.js +2 -0
  103. package/emotion/es/components/Tree/utils/traverseTree.js +59 -1
  104. package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
  105. package/emotion/es/examples/components/Select/Select.config.js +24 -24
  106. package/emotion/es/examples/components/TimePicker/TimePicker.config.js +7 -7
  107. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +22 -0
  108. package/emotion/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  109. package/emotion/es/utils/index.js +0 -1
  110. package/es/components/Pagination/Pagination.css +0 -19
  111. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +0 -19
  112. package/es/components/Select/Select.css +0 -19
  113. package/es/components/Select/Select.js +9 -44
  114. package/es/components/Select/Select.js.map +1 -1
  115. package/es/components/Select/Select.tokens.js +0 -2
  116. package/es/components/Select/Select.tokens.js.map +1 -1
  117. package/es/components/Select/hooks/useKeyboardNavigation.js +1 -185
  118. package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
  119. package/es/components/Select/hooks/usePathMaps.js +3 -7
  120. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  121. package/es/components/Table/Table.css +0 -19
  122. package/es/components/Table/ui/Cell/Cell.css +0 -19
  123. package/es/components/Table/ui/EditableCell/EditableCell.css +0 -19
  124. package/es/components/Table/ui/HeadCell/HeadCell.css +0 -19
  125. package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +0 -19
  126. package/es/components/TimePicker/TimePicker.css +15 -11
  127. package/es/components/TimePicker/TimePicker.js +26 -462
  128. package/es/components/TimePicker/TimePicker.js.map +1 -1
  129. package/es/components/TimePicker/TimePicker.styles.js +17 -21
  130. package/es/components/TimePicker/TimePicker.styles.js.map +1 -1
  131. package/es/components/TimePicker/{TimePicker.styles_ar3obv.css → TimePicker.styles_2lk4d9.css} +4 -3
  132. package/es/components/TimePicker/utils/index.js +2 -32
  133. package/es/components/TimePicker/utils/index.js.map +1 -1
  134. package/es/components/TimePickerGrid/TimePickerGrid.css +10 -0
  135. package/es/components/TimePickerGrid/TimePickerGrid.js +705 -0
  136. package/es/components/TimePickerGrid/TimePickerGrid.js.map +1 -0
  137. package/es/components/TimePickerGrid/TimePickerGrid.styles.js +22 -0
  138. package/es/components/TimePickerGrid/TimePickerGrid.styles.js.map +1 -0
  139. package/es/components/TimePickerGrid/TimePickerGrid.styles_mz2mkl.css +2 -0
  140. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js +35 -0
  141. package/es/components/TimePickerGrid/TimePickerGrid.tokens.js.map +1 -0
  142. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.css +7 -0
  143. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +109 -0
  144. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -0
  145. package/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -11
  146. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
  147. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles_1nwjzgi.css +7 -0
  148. package/es/components/TimePickerGrid/utils/index.js +126 -0
  149. package/es/components/TimePickerGrid/utils/index.js.map +1 -0
  150. package/es/components/TimePickerGrid/variations/_disabled/base.js +5 -0
  151. package/es/components/TimePickerGrid/variations/_disabled/base.js.map +1 -0
  152. package/es/components/TimePickerGrid/variations/_disabled/base_x642ct.css +1 -0
  153. package/es/components/TimePickerGrid/variations/_size/base.js +5 -0
  154. package/es/components/TimePickerGrid/variations/_size/base.js.map +1 -0
  155. package/es/components/TimePickerGrid/variations/_size/base_x642ct.css +1 -0
  156. package/es/components/TimePickerGrid/variations/_view/base.js +5 -0
  157. package/es/components/TimePickerGrid/variations/_view/base.js.map +1 -0
  158. package/es/components/TimePickerGrid/variations/_view/base_x642ct.css +1 -0
  159. package/es/components/Tree/utils/traverseTree.js +23 -2
  160. package/es/components/Tree/utils/traverseTree.js.map +1 -1
  161. package/es/index.css +15 -30
  162. package/es/index.js +0 -1
  163. package/es/index.js.map +1 -1
  164. package/es/utils/index.js.map +1 -1
  165. package/package.json +2 -2
  166. package/styled-components/cjs/components/Select/Select.js +6 -33
  167. package/styled-components/cjs/components/Select/Select.tokens.js +0 -2
  168. package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +0 -166
  169. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +3 -35
  170. package/styled-components/cjs/components/Select/reducers/index.js +0 -1
  171. package/styled-components/cjs/components/Select/ui/index.js +0 -1
  172. package/styled-components/cjs/components/TimePicker/TimePicker.js +22 -488
  173. package/styled-components/cjs/components/TimePicker/TimePicker.styles.js +57 -3
  174. package/styled-components/cjs/components/TimePicker/utils/index.js +1 -25
  175. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +903 -0
  176. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.styles.js +79 -0
  177. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.tokens.js +50 -0
  178. package/styled-components/cjs/components/TimePickerGrid/hooks/useKeyboardNavigation.js +30 -0
  179. package/styled-components/cjs/components/TimePickerGrid/index.js +26 -0
  180. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +118 -0
  181. package/styled-components/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +16 -14
  182. package/styled-components/cjs/components/TimePickerGrid/utils/index.js +166 -0
  183. package/styled-components/cjs/components/TimePickerGrid/variations/_disabled/base.js +14 -0
  184. package/styled-components/cjs/components/TimePickerGrid/variations/_size/base.js +14 -0
  185. package/styled-components/cjs/components/TimePickerGrid/variations/_view/base.js +14 -0
  186. package/styled-components/cjs/components/Tree/utils/traverseTree.js +60 -2
  187. package/styled-components/cjs/examples/components/Combobox/Combobox.js +0 -15
  188. package/styled-components/cjs/examples/components/Select/Select.config.js +4 -12
  189. package/styled-components/cjs/examples/components/TimePicker/TimePicker.config.js +3 -2
  190. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.config.js +102 -0
  191. package/styled-components/cjs/examples/components/TimePickerGrid/TimePickerGrid.js +15 -0
  192. package/styled-components/cjs/utils/index.js +0 -4
  193. package/styled-components/es/components/Select/Select.js +8 -35
  194. package/styled-components/es/components/Select/Select.tokens.js +0 -2
  195. package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +0 -166
  196. package/styled-components/es/components/Select/hooks/usePathMaps.js +4 -36
  197. package/styled-components/es/components/Select/reducers/index.js +0 -1
  198. package/styled-components/es/components/Select/ui/index.js +0 -1
  199. package/styled-components/es/components/TimePicker/TimePicker.js +25 -491
  200. package/styled-components/es/components/TimePicker/TimePicker.styles.js +54 -3
  201. package/styled-components/es/components/TimePicker/utils/index.js +1 -22
  202. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +844 -0
  203. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.styles.js +21 -0
  204. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.tokens.js +32 -0
  205. package/styled-components/es/components/TimePickerGrid/hooks/useKeyboardNavigation.js +20 -0
  206. package/styled-components/es/components/TimePickerGrid/index.js +2 -0
  207. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +103 -0
  208. package/styled-components/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.js +11 -9
  209. package/styled-components/es/components/TimePickerGrid/utils/index.js +133 -0
  210. package/styled-components/es/components/TimePickerGrid/variations/_disabled/base.js +4 -0
  211. package/styled-components/es/components/TimePickerGrid/variations/_size/base.js +4 -0
  212. package/styled-components/es/components/TimePickerGrid/variations/_view/base.js +4 -0
  213. package/styled-components/es/components/Tree/utils/traverseTree.js +59 -1
  214. package/styled-components/es/examples/components/Combobox/Combobox.js +0 -7
  215. package/styled-components/es/examples/components/Select/Select.config.js +4 -12
  216. package/styled-components/es/examples/components/TimePicker/TimePicker.config.js +3 -2
  217. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.config.js +92 -0
  218. package/styled-components/es/examples/components/TimePickerGrid/TimePickerGrid.js +5 -0
  219. package/styled-components/es/utils/index.js +0 -1
  220. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +0 -12
  221. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
  222. package/types/components/Select/Select.d.ts.map +1 -1
  223. package/types/components/Select/Select.tokens.d.ts +0 -2
  224. package/types/components/Select/Select.tokens.d.ts.map +1 -1
  225. package/types/components/Select/Select.types.d.ts +2 -26
  226. package/types/components/Select/Select.types.d.ts.map +1 -1
  227. package/types/components/Select/hooks/useKeyboardNavigation.d.ts +2 -6
  228. package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
  229. package/types/components/Select/hooks/usePathMaps.d.ts +1 -2
  230. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  231. package/types/components/Select/reducers/index.d.ts +0 -1
  232. package/types/components/Select/reducers/index.d.ts.map +1 -1
  233. package/types/components/Select/ui/index.d.ts +0 -1
  234. package/types/components/Select/ui/index.d.ts.map +1 -1
  235. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +0 -12
  236. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
  237. package/types/components/TimePicker/TimePicker.d.ts.map +1 -1
  238. package/types/components/TimePicker/TimePicker.styles.d.ts +19 -0
  239. package/types/components/TimePicker/TimePicker.styles.d.ts.map +1 -1
  240. package/types/components/TimePicker/utils/index.d.ts +1 -2
  241. package/types/components/TimePicker/utils/index.d.ts.map +1 -1
  242. package/types/components/TimePickerGrid/TimePickerGrid.d.ts +63 -0
  243. package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  244. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts +5 -0
  245. package/types/components/TimePickerGrid/TimePickerGrid.styles.d.ts.map +1 -0
  246. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts +33 -0
  247. package/types/components/TimePickerGrid/TimePickerGrid.tokens.d.ts.map +1 -0
  248. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts +69 -0
  249. package/types/components/TimePickerGrid/TimePickerGrid.types.d.ts.map +1 -0
  250. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts +14 -0
  251. package/types/components/TimePickerGrid/hooks/useKeyboardNavigation.d.ts.map +1 -0
  252. package/types/components/TimePickerGrid/index.d.ts +4 -0
  253. package/types/components/TimePickerGrid/index.d.ts.map +1 -0
  254. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +3 -0
  255. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +1 -0
  256. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.styles.d.ts.map +1 -0
  257. package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.d.ts +9 -8
  258. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -0
  259. package/types/components/TimePickerGrid/utils/index.d.ts +24 -0
  260. package/types/components/TimePickerGrid/utils/index.d.ts.map +1 -0
  261. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts +2 -0
  262. package/types/components/TimePickerGrid/variations/_disabled/base.d.ts.map +1 -0
  263. package/types/components/TimePickerGrid/variations/_size/base.d.ts +2 -0
  264. package/types/components/TimePickerGrid/variations/_size/base.d.ts.map +1 -0
  265. package/types/components/TimePickerGrid/variations/_view/base.d.ts +2 -0
  266. package/types/components/TimePickerGrid/variations/_view/base.d.ts.map +1 -0
  267. package/types/components/Tree/utils/traverseTree.d.ts.map +1 -1
  268. package/types/examples/components/Select/Select.config.d.ts.map +1 -1
  269. package/types/examples/components/Select/Select.d.ts +0 -12
  270. package/types/examples/components/Select/Select.d.ts.map +1 -1
  271. package/types/examples/components/TimePicker/TimePicker.config.d.ts.map +1 -1
  272. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts +21 -0
  273. package/types/examples/components/TimePickerGrid/TimePickerGrid.config.d.ts.map +1 -0
  274. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts +33 -0
  275. package/types/examples/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -0
  276. package/types/utils/index.d.ts +0 -1
  277. package/types/utils/index.d.ts.map +1 -1
  278. package/cjs/components/Select/reducers/treePathReducer.js +0 -87
  279. package/cjs/components/Select/reducers/treePathReducer.js.map +0 -1
  280. package/cjs/components/Select/ui/TreeList/TreeList.css +0 -57
  281. package/cjs/components/Select/ui/TreeList/TreeList.js +0 -96
  282. package/cjs/components/Select/ui/TreeList/TreeList.js.map +0 -1
  283. package/cjs/components/Select/ui/TreeList/TreeList.styles.js +0 -30
  284. package/cjs/components/Select/ui/TreeList/TreeList.styles.js.map +0 -1
  285. package/cjs/components/Select/ui/TreeList/TreeList.styles_1t38mek.css +0 -2
  286. package/cjs/components/Select/ui/TreeList/ui/Item/Item.css +0 -54
  287. package/cjs/components/Select/ui/TreeList/ui/Item/Item.js +0 -71
  288. package/cjs/components/Select/ui/TreeList/ui/Item/Item.js.map +0 -1
  289. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -214
  290. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js.map +0 -1
  291. package/cjs/components/Select/ui/TreeList/ui/Item/Item.styles_i0dby2.css +0 -15
  292. package/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -89
  293. package/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js.map +0 -1
  294. package/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -89
  295. package/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js.map +0 -1
  296. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  297. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  298. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  299. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  300. package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  301. package/cjs/utils/deepCopy.js +0 -30
  302. package/cjs/utils/deepCopy.js.map +0 -1
  303. package/emotion/cjs/components/Select/reducers/treePathReducer.js +0 -98
  304. package/emotion/cjs/components/Select/ui/TreeList/TreeList.js +0 -126
  305. package/emotion/cjs/components/Select/ui/TreeList/TreeList.styles.js +0 -36
  306. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.js +0 -101
  307. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -186
  308. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -112
  309. package/emotion/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -112
  310. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  311. package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -71
  312. package/emotion/cjs/utils/deepCopy.js +0 -82
  313. package/emotion/es/components/Select/reducers/treePathReducer.js +0 -81
  314. package/emotion/es/components/Select/ui/TreeList/TreeList.js +0 -75
  315. package/emotion/es/components/Select/ui/TreeList/TreeList.styles.js +0 -13
  316. package/emotion/es/components/Select/ui/TreeList/ui/Item/Item.js +0 -50
  317. package/emotion/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -122
  318. package/emotion/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -61
  319. package/emotion/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -61
  320. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  321. package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +0 -33
  322. package/emotion/es/utils/deepCopy.js +0 -72
  323. package/es/components/Select/reducers/treePathReducer.js +0 -82
  324. package/es/components/Select/reducers/treePathReducer.js.map +0 -1
  325. package/es/components/Select/ui/TreeList/TreeList.css +0 -57
  326. package/es/components/Select/ui/TreeList/TreeList.js +0 -88
  327. package/es/components/Select/ui/TreeList/TreeList.js.map +0 -1
  328. package/es/components/Select/ui/TreeList/TreeList.styles.js +0 -25
  329. package/es/components/Select/ui/TreeList/TreeList.styles.js.map +0 -1
  330. package/es/components/Select/ui/TreeList/TreeList.styles_1t38mek.css +0 -2
  331. package/es/components/Select/ui/TreeList/ui/Item/Item.css +0 -54
  332. package/es/components/Select/ui/TreeList/ui/Item/Item.js +0 -63
  333. package/es/components/Select/ui/TreeList/ui/Item/Item.js.map +0 -1
  334. package/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -196
  335. package/es/components/Select/ui/TreeList/ui/Item/Item.styles.js.map +0 -1
  336. package/es/components/Select/ui/TreeList/ui/Item/Item.styles_i0dby2.css +0 -15
  337. package/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -81
  338. package/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js.map +0 -1
  339. package/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -81
  340. package/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js.map +0 -1
  341. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.css +0 -7
  342. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -56
  343. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +0 -1
  344. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +0 -1
  345. package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +0 -7
  346. package/es/utils/deepCopy.js +0 -26
  347. package/es/utils/deepCopy.js.map +0 -1
  348. package/styled-components/cjs/components/Select/reducers/treePathReducer.js +0 -98
  349. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.js +0 -126
  350. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.styles.js +0 -50
  351. package/styled-components/cjs/components/Select/ui/TreeList/TreeList.types.js +0 -4
  352. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.js +0 -101
  353. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -300
  354. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.types.js +0 -4
  355. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -112
  356. package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -112
  357. package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -65
  358. package/styled-components/cjs/utils/deepCopy.js +0 -82
  359. package/styled-components/es/components/Select/reducers/treePathReducer.js +0 -81
  360. package/styled-components/es/components/Select/ui/TreeList/TreeList.js +0 -75
  361. package/styled-components/es/components/Select/ui/TreeList/TreeList.styles.js +0 -27
  362. package/styled-components/es/components/Select/ui/TreeList/TreeList.types.js +0 -1
  363. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.js +0 -50
  364. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.styles.js +0 -236
  365. package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.types.js +0 -1
  366. package/styled-components/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.js +0 -61
  367. package/styled-components/es/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.js +0 -61
  368. package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +0 -50
  369. package/styled-components/es/utils/deepCopy.js +0 -72
  370. package/types/components/Select/reducers/treePathReducer.d.ts +0 -14
  371. package/types/components/Select/reducers/treePathReducer.d.ts.map +0 -1
  372. package/types/components/Select/ui/TreeList/TreeList.d.ts +0 -4
  373. package/types/components/Select/ui/TreeList/TreeList.d.ts.map +0 -1
  374. package/types/components/Select/ui/TreeList/TreeList.styles.d.ts +0 -6
  375. package/types/components/Select/ui/TreeList/TreeList.styles.d.ts.map +0 -1
  376. package/types/components/Select/ui/TreeList/TreeList.types.d.ts +0 -11
  377. package/types/components/Select/ui/TreeList/TreeList.types.d.ts.map +0 -1
  378. package/types/components/Select/ui/TreeList/ui/Item/Item.d.ts +0 -4
  379. package/types/components/Select/ui/TreeList/ui/Item/Item.d.ts.map +0 -1
  380. package/types/components/Select/ui/TreeList/ui/Item/Item.styles.d.ts +0 -64
  381. package/types/components/Select/ui/TreeList/ui/Item/Item.styles.d.ts.map +0 -1
  382. package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts +0 -14
  383. package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts.map +0 -1
  384. package/types/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.d.ts +0 -4
  385. package/types/components/Select/ui/TreeList/ui/Item/ui/ItemArrowLeft/ItemArrowLeft.d.ts.map +0 -1
  386. package/types/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.d.ts +0 -4
  387. package/types/components/Select/ui/TreeList/ui/Item/ui/ItemArrowRight/ItemArrowRight.d.ts.map +0 -1
  388. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts +0 -3
  389. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts.map +0 -1
  390. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts.map +0 -1
  391. package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts.map +0 -1
  392. package/types/utils/deepCopy.d.ts +0 -2
  393. package/types/utils/deepCopy.d.ts.map +0 -1
  394. /package/emotion/cjs/components/{Select/ui/TreeList/TreeList.types.js → TimePickerGrid/TimePickerGrid.types.js} +0 -0
  395. /package/emotion/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  396. /package/emotion/es/components/{Select/ui/TreeList/TreeList.types.js → TimePickerGrid/TimePickerGrid.types.js} +0 -0
  397. /package/emotion/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  398. /package/{emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.types.js → styled-components/cjs/components/TimePickerGrid/TimePickerGrid.types.js} +0 -0
  399. /package/styled-components/cjs/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  400. /package/{emotion/es/components/Select/ui/TreeList/ui/Item/Item.types.js → styled-components/es/components/TimePickerGrid/TimePickerGrid.types.js} +0 -0
  401. /package/styled-components/es/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.types.js +0 -0
  402. /package/types/components/{TimePicker → TimePickerGrid}/ui/TimeColumn/TimeColumn.styles.d.ts +0 -0
@@ -0,0 +1,714 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var React = require('react');
7
+ var index = require('./utils/index.js');
8
+ var TimePickerGrid_styles = require('./TimePickerGrid.styles.js');
9
+ var base$1 = require('./variations/_size/base.js');
10
+ var base = require('./variations/_view/base.js');
11
+ var base$2 = require('./variations/_disabled/base.js');
12
+ var TimeColumn = require('./ui/TimeColumn/TimeColumn.js');
13
+
14
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
15
+
16
+ var React__default = /*#__PURE__*/_interopDefault(React);
17
+
18
+ var _excluded = ["value", "view", "size", "disabled", "dropdownWidth", "dropdownHeight", "format", "min", "max", "columnsQuantity", "disabledValues", "onChange"];
19
+ var timePickerGridRoot = function timePickerGridRoot(Root) {
20
+ return /*#__PURE__*/React.forwardRef(function (_ref, ref) {
21
+ var outerValue = _ref.value,
22
+ view = _ref.view,
23
+ size = _ref.size,
24
+ _ref$disabled = _ref.disabled,
25
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
26
+ dropdownWidth = _ref.dropdownWidth,
27
+ dropdownHeight = _ref.dropdownHeight,
28
+ _ref$format = _ref.format,
29
+ format = _ref$format === void 0 ? 'HH:mm' : _ref$format,
30
+ min = _ref.min,
31
+ max = _ref.max,
32
+ columnsQuantity = _ref.columnsQuantity,
33
+ disabledValues = _ref.disabledValues,
34
+ onChange = _ref.onChange,
35
+ rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
36
+ var actualFormat = format || (columnsQuantity === 3 ? 'HH:mm:ss' : 'HH:mm');
37
+ var columnsConfig = React.useMemo(function () {
38
+ return index.getColumnsFromFormat(actualFormat);
39
+ }, [actualFormat]);
40
+ var hoursColumnRef = React.useRef(null);
41
+ var minutesColumnRef = React.useRef(null);
42
+ var secondsColumnRef = React.useRef(null);
43
+ var timeItemRefs = React.useRef({});
44
+ var hoursScrollbarRef = React.useRef(null);
45
+ var minutesScrollbarRef = React.useRef(null);
46
+ var secondsScrollbarRef = React.useRef(null);
47
+ var hoursThumbRef = React.useRef(null);
48
+ var minutesThumbRef = React.useRef(null);
49
+ var secondsThumbRef = React.useRef(null);
50
+ var hoursHideTimeoutRef = React.useRef(null);
51
+ var minutesHideTimeoutRef = React.useRef(null);
52
+ var secondsHideTimeoutRef = React.useRef(null);
53
+ var _useState = React.useState(outerValue || ''),
54
+ _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
55
+ innerTime = _useState2[0],
56
+ setInnerTime = _useState2[1];
57
+ var _useState3 = React.useState({
58
+ hours: null,
59
+ minutes: null,
60
+ seconds: null,
61
+ currentColumn: null
62
+ }),
63
+ _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
64
+ activeTime = _useState4[0],
65
+ setActiveTime = _useState4[1];
66
+ var _useState5 = React.useState(0),
67
+ _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
68
+ itemHeight = _useState6[0],
69
+ setItemHeight = _useState6[1];
70
+ var _useState7 = React.useState(0),
71
+ _useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
72
+ gap = _useState8[0],
73
+ setGap = _useState8[1];
74
+ var _useState9 = React.useState({
75
+ isVisible: false,
76
+ thumbHeight: 0,
77
+ thumbPosition: 0,
78
+ isDragging: false
79
+ }),
80
+ _useState10 = _rollupPluginBabelHelpers.slicedToArray(_useState9, 2),
81
+ hoursScrollbar = _useState10[0],
82
+ setHoursScrollbar = _useState10[1];
83
+ var _useState11 = React.useState({
84
+ isVisible: false,
85
+ thumbHeight: 0,
86
+ thumbPosition: 0,
87
+ isDragging: false
88
+ }),
89
+ _useState12 = _rollupPluginBabelHelpers.slicedToArray(_useState11, 2),
90
+ minutesScrollbar = _useState12[0],
91
+ setMinutesScrollbar = _useState12[1];
92
+ var _useState13 = React.useState({
93
+ isVisible: false,
94
+ thumbHeight: 0,
95
+ thumbPosition: 0,
96
+ isDragging: false
97
+ }),
98
+ _useState14 = _rollupPluginBabelHelpers.slicedToArray(_useState13, 2),
99
+ secondsScrollbar = _useState14[0],
100
+ setSecondsScrollbar = _useState14[1];
101
+ var viewValue = outerValue !== null && outerValue !== void 0 ? outerValue : innerTime;
102
+ React.useEffect(function () {
103
+ if (activeTime.currentColumn && activeTime[activeTime.currentColumn] !== null) {
104
+ var _activeTime$activeTim;
105
+ var column = activeTime.currentColumn;
106
+ var value = (_activeTime$activeTim = activeTime[activeTime.currentColumn]) === null || _activeTime$activeTim === void 0 ? void 0 : _activeTime$activeTim.toString().padStart(2, '0');
107
+ var element = timeItemRefs.current["".concat(column, "-").concat(value)];
108
+ setTimeout(function () {
109
+ if (element) {
110
+ element.focus();
111
+ }
112
+ }, 0);
113
+ }
114
+ }, [activeTime]);
115
+ var getDisabledValuesForColumn = React.useCallback(function (columnType) {
116
+ var disabledFromProps;
117
+ if (columnType === 'hours') {
118
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.hour) || [];
119
+ } else if (columnType === 'minutes') {
120
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.minute) || [];
121
+ } else {
122
+ disabledFromProps = (disabledValues === null || disabledValues === void 0 ? void 0 : disabledValues.second) || [];
123
+ }
124
+ var disabledFromMinMax = [];
125
+ if (min || max) {
126
+ var timeValues = index.parseTimeString(viewValue || '00:00:00', actualFormat);
127
+ for (var i = 0; i < (columnType === 'hours' ? 24 : 60); i++) {
128
+ var testValues = _rollupPluginBabelHelpers.objectSpread2({}, timeValues);
129
+ if (columnType === 'hours') {
130
+ testValues.hh = i;
131
+ } else if (columnType === 'minutes') {
132
+ testValues.mm = i;
133
+ } else {
134
+ testValues.ss = i;
135
+ }
136
+ if (index.isTimeDisabled(testValues, min, max)) {
137
+ disabledFromMinMax.push(i);
138
+ }
139
+ }
140
+ }
141
+ var normalizedDisabledFromProps = disabledFromProps.map(function (val) {
142
+ return typeof val === 'string' ? parseInt(val, 10) : val;
143
+ });
144
+ return _rollupPluginBabelHelpers.toConsumableArray(new Set([].concat(_rollupPluginBabelHelpers.toConsumableArray(normalizedDisabledFromProps), disabledFromMinMax)));
145
+ }, [disabledValues, min, max, viewValue, actualFormat]);
146
+ var getNextAvailableValue = React.useCallback(function (currentIndex, values, disabledValuesForColumn, direction) {
147
+ var newIndex = currentIndex;
148
+ var iterations = 0;
149
+ var maxIterations = values.length;
150
+ do {
151
+ newIndex = direction === 'up' ? (newIndex - 1 + values.length) % values.length : (newIndex + 1) % values.length;
152
+ iterations++;
153
+ } while (iterations < maxIterations && disabledValuesForColumn.includes(parseInt(values[newIndex], 10)) && newIndex !== currentIndex);
154
+ return iterations < maxIterations && !disabledValuesForColumn.includes(parseInt(values[newIndex], 10)) ? newIndex : currentIndex;
155
+ }, []);
156
+ var minScrollbarTrackHeight = 20;
157
+ var calculateScrollbar = React.useCallback(function (columnRef) {
158
+ if (!columnRef.current) return {
159
+ thumbHeight: 0,
160
+ thumbPosition: 0
161
+ };
162
+ var _columnRef$current = columnRef.current,
163
+ scrollTop = _columnRef$current.scrollTop,
164
+ scrollHeight = _columnRef$current.scrollHeight,
165
+ clientHeight = _columnRef$current.clientHeight;
166
+ var trackHeight = clientHeight;
167
+ var thumbHeight = Math.max(trackHeight / scrollHeight * trackHeight, minScrollbarTrackHeight);
168
+ var maxScroll = scrollHeight - clientHeight;
169
+ var thumbPosition = maxScroll > 0 ? scrollTop / maxScroll * (trackHeight - thumbHeight) : 0;
170
+ return {
171
+ thumbHeight: thumbHeight,
172
+ thumbPosition: thumbPosition
173
+ };
174
+ }, []);
175
+ var showScrollbarWithDelay = React.useCallback(function (setScrollbar, timeoutRef, columnRef) {
176
+ if (timeoutRef.current) {
177
+ clearTimeout(timeoutRef.current);
178
+ }
179
+ updateScrollbar(columnRef, setScrollbar, true);
180
+ timeoutRef.current = setTimeout(function () {
181
+ setScrollbar(function (prev) {
182
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
183
+ isVisible: false
184
+ });
185
+ });
186
+ timeoutRef.current = null;
187
+ }, 2000);
188
+ }, []);
189
+ var updateScrollbar = React.useCallback(function (columnRef, setScrollbar) {
190
+ var show = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
191
+ if (!columnRef.current) return;
192
+ var _calculateScrollbar = calculateScrollbar(columnRef),
193
+ thumbHeight = _calculateScrollbar.thumbHeight,
194
+ thumbPosition = _calculateScrollbar.thumbPosition;
195
+ setScrollbar(function (prev) {
196
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
197
+ thumbHeight: thumbHeight,
198
+ thumbPosition: thumbPosition,
199
+ isVisible: show || prev.isVisible
200
+ });
201
+ });
202
+ }, [calculateScrollbar]);
203
+ var handleColumnScroll = React.useCallback(function (columnRef, setScrollbar, timeoutRef) {
204
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
205
+ }, [showScrollbarWithDelay]);
206
+ var createScrollbarDragHandler = React.useCallback(function (columnRef, setScrollbar, timeoutRef) {
207
+ return function (e) {
208
+ e.preventDefault();
209
+ var thumb = e.currentTarget;
210
+ var track = thumb.parentElement;
211
+ if (!columnRef.current || !track) return;
212
+ if (timeoutRef.current) {
213
+ clearTimeout(timeoutRef.current);
214
+ timeoutRef.current = null;
215
+ }
216
+ var startY = e.clientY;
217
+ var startThumbPosition = parseFloat(thumb.style.top || '0');
218
+ var trackRect = track.getBoundingClientRect();
219
+ var trackHeight = trackRect.height;
220
+ var thumbHeight = thumb.offsetHeight;
221
+ var _columnRef$current2 = columnRef.current,
222
+ scrollHeight = _columnRef$current2.scrollHeight,
223
+ clientHeight = _columnRef$current2.clientHeight;
224
+ var maxScroll = scrollHeight - clientHeight;
225
+ var handleMouseMove = function handleMouseMove(moveEvent) {
226
+ var deltaY = moveEvent.clientY - startY;
227
+ var newThumbPosition = Math.max(0, Math.min(trackHeight - thumbHeight, startThumbPosition + deltaY));
228
+ var scrollPercentage = newThumbPosition / (trackHeight - thumbHeight);
229
+ var newScrollTop = scrollPercentage * maxScroll;
230
+ if (columnRef.current) {
231
+ columnRef.current.scrollTop = newScrollTop;
232
+ }
233
+ setScrollbar(function (prev) {
234
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
235
+ thumbPosition: newThumbPosition,
236
+ isDragging: true,
237
+ isVisible: true
238
+ });
239
+ });
240
+ };
241
+ var handleMouseUp = function handleMouseUp() {
242
+ document.removeEventListener('mousemove', handleMouseMove);
243
+ document.removeEventListener('mouseup', handleMouseUp);
244
+ setScrollbar(function (prev) {
245
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
246
+ isDragging: false
247
+ });
248
+ });
249
+ showScrollbarWithDelay(setScrollbar, timeoutRef, columnRef);
250
+ };
251
+ document.addEventListener('mousemove', handleMouseMove);
252
+ document.addEventListener('mouseup', handleMouseUp);
253
+ };
254
+ }, [showScrollbarWithDelay]);
255
+ React.useEffect(function () {
256
+ if (viewValue && columnsConfig.length > 0) {
257
+ var timeValues = index.parseTimeString(viewValue, actualFormat);
258
+ setActiveTime(function (prev) {
259
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
260
+ hours: timeValues.hh,
261
+ minutes: timeValues.mm,
262
+ seconds: timeValues.ss
263
+ });
264
+ });
265
+ }
266
+ }, [viewValue, columnsConfig, actualFormat]);
267
+ var handleContainerFocus = React.useCallback(function () {
268
+ if (activeTime.currentColumn === null && columnsConfig.length > 0) {
269
+ var firstColumn = columnsConfig[0].type;
270
+ setActiveTime(function (prev) {
271
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
272
+ currentColumn: firstColumn
273
+ });
274
+ });
275
+ }
276
+ }, [activeTime.currentColumn, columnsConfig]);
277
+ React.useEffect(function () {
278
+ return function () {
279
+ [hoursHideTimeoutRef, minutesHideTimeoutRef, secondsHideTimeoutRef].forEach(function (timeoutRef) {
280
+ if (timeoutRef.current) {
281
+ clearTimeout(timeoutRef.current);
282
+ }
283
+ });
284
+ };
285
+ }, []);
286
+ React.useEffect(function () {
287
+ if (Object.keys(timeItemRefs.current).length > 0) {
288
+ var firstItem = Object.values(timeItemRefs.current)[0];
289
+ if (firstItem) {
290
+ setItemHeight(firstItem.offsetHeight);
291
+ }
292
+ }
293
+ if (hoursColumnRef.current) {
294
+ var computedStyle = getComputedStyle(hoursColumnRef.current);
295
+ var gapValue = parseFloat(computedStyle.gap || '0');
296
+ setGap(gapValue);
297
+ }
298
+ }, [outerValue]);
299
+ React.useEffect(function () {
300
+ setTimeout(function () {
301
+ updateScrollbar(hoursColumnRef, setHoursScrollbar);
302
+ updateScrollbar(minutesColumnRef, setMinutesScrollbar);
303
+ if (columnsQuantity === 3) {
304
+ updateScrollbar(secondsColumnRef, setSecondsScrollbar);
305
+ }
306
+ }, 100);
307
+ }, [columnsQuantity, updateScrollbar]);
308
+ React.useEffect(function () {
309
+ if (itemHeight === 0) return;
310
+ var scrollToActiveItem = function scrollToActiveItem(columnRef, index$1) {
311
+ if (columnRef.current && index$1 !== null) {
312
+ var scrollPosition = index$1 * (itemHeight + gap);
313
+ index.animateScrollTo(columnRef.current, scrollPosition);
314
+ setTimeout(function () {
315
+ updateScrollbar(columnRef, setHoursScrollbar);
316
+ }, 300);
317
+ }
318
+ };
319
+ scrollToActiveItem(hoursColumnRef, activeTime.hours);
320
+ scrollToActiveItem(minutesColumnRef, activeTime.minutes);
321
+ scrollToActiveItem(secondsColumnRef, activeTime.seconds);
322
+ }, [activeTime, itemHeight, gap, updateScrollbar]);
323
+ React.useEffect(function () {
324
+ var hoursColumn = hoursColumnRef.current;
325
+ var minutesColumn = minutesColumnRef.current;
326
+ var secondsColumn = secondsColumnRef.current;
327
+ var handleHoursScroll = function handleHoursScroll() {
328
+ return handleColumnScroll(hoursColumnRef, setHoursScrollbar, hoursHideTimeoutRef);
329
+ };
330
+ var handleMinutesScroll = function handleMinutesScroll() {
331
+ return handleColumnScroll(minutesColumnRef, setMinutesScrollbar, minutesHideTimeoutRef);
332
+ };
333
+ var handleSecondsScroll = function handleSecondsScroll() {
334
+ return handleColumnScroll(secondsColumnRef, setSecondsScrollbar, secondsHideTimeoutRef);
335
+ };
336
+ if (hoursColumn) {
337
+ hoursColumn.addEventListener('scroll', handleHoursScroll);
338
+ }
339
+ if (minutesColumn) {
340
+ minutesColumn.addEventListener('scroll', handleMinutesScroll);
341
+ }
342
+ if (secondsColumn) {
343
+ secondsColumn.addEventListener('scroll', handleSecondsScroll);
344
+ }
345
+ return function () {
346
+ if (hoursColumn) {
347
+ hoursColumn.removeEventListener('scroll', handleHoursScroll);
348
+ }
349
+ if (minutesColumn) {
350
+ minutesColumn.removeEventListener('scroll', handleMinutesScroll);
351
+ }
352
+ if (secondsColumn) {
353
+ secondsColumn.removeEventListener('scroll', handleSecondsScroll);
354
+ }
355
+ };
356
+ }, []);
357
+ React.useEffect(function () {
358
+ var hoursColumn = hoursColumnRef.current;
359
+ var minutesColumn = minutesColumnRef.current;
360
+ var secondsColumn = secondsColumnRef.current;
361
+ var handleHoursMouseEnter = function handleHoursMouseEnter() {
362
+ return showScrollbarWithDelay(setHoursScrollbar, hoursHideTimeoutRef, hoursColumnRef);
363
+ };
364
+ var handleMinutesMouseEnter = function handleMinutesMouseEnter() {
365
+ return showScrollbarWithDelay(setMinutesScrollbar, minutesHideTimeoutRef, minutesColumnRef);
366
+ };
367
+ var handleSecondsMouseEnter = function handleSecondsMouseEnter() {
368
+ return showScrollbarWithDelay(setSecondsScrollbar, secondsHideTimeoutRef, secondsColumnRef);
369
+ };
370
+ if (hoursColumn) {
371
+ hoursColumn.addEventListener('mouseenter', handleHoursMouseEnter);
372
+ }
373
+ if (minutesColumn) {
374
+ minutesColumn.addEventListener('mouseenter', handleMinutesMouseEnter);
375
+ }
376
+ if (secondsColumn) {
377
+ secondsColumn.addEventListener('mouseenter', handleSecondsMouseEnter);
378
+ }
379
+ return function () {
380
+ if (hoursColumn) {
381
+ hoursColumn.removeEventListener('mouseenter', handleHoursMouseEnter);
382
+ }
383
+ if (minutesColumn) {
384
+ minutesColumn.removeEventListener('mouseenter', handleMinutesMouseEnter);
385
+ }
386
+ if (secondsColumn) {
387
+ secondsColumn.removeEventListener('mouseenter', handleSecondsMouseEnter);
388
+ }
389
+ };
390
+ }, []);
391
+ var handleTimeItemClick = function handleTimeItemClick(value, column) {
392
+ var isNextColumn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
393
+ var currentTimeValues = index.parseTimeString(innerTime, actualFormat);
394
+ var newTimeValues = _rollupPluginBabelHelpers.objectSpread2({}, currentTimeValues);
395
+ switch (column) {
396
+ case 'hours':
397
+ newTimeValues.hh = parseInt(value, 10);
398
+ break;
399
+ case 'minutes':
400
+ newTimeValues.mm = parseInt(value, 10);
401
+ break;
402
+ case 'seconds':
403
+ newTimeValues.ss = parseInt(value, 10);
404
+ break;
405
+ }
406
+ var getFirstAvailableValue = function getFirstAvailableValue(columnType) {
407
+ var disabledValuesForColumn = getDisabledValuesForColumn(columnType);
408
+ var maxValue = columnType === 'hours' ? 23 : 59;
409
+ for (var i = 0; i <= maxValue; i++) {
410
+ if (!disabledValuesForColumn.includes(i)) {
411
+ return i;
412
+ }
413
+ }
414
+ return 0;
415
+ };
416
+ if (newTimeValues.hh === null) {
417
+ newTimeValues.hh = getFirstAvailableValue('hours');
418
+ }
419
+ if (newTimeValues.mm === null) {
420
+ newTimeValues.mm = getFirstAvailableValue('minutes');
421
+ }
422
+ if (newTimeValues.ss === null && actualFormat.includes('ss')) {
423
+ newTimeValues.ss = getFirstAvailableValue('seconds');
424
+ }
425
+ if (index.isTimeDisabled(newTimeValues, min, max)) {
426
+ return;
427
+ }
428
+ var newTimeString = index.buildTimeString(newTimeValues, actualFormat);
429
+ setInnerTime(newTimeString);
430
+ var nextColumn = null;
431
+ var currentIndex = columnsConfig.findIndex(function (col) {
432
+ return col.type === column;
433
+ });
434
+ if (currentIndex !== -1 && isNextColumn && currentIndex < columnsConfig.length - 1) {
435
+ nextColumn = columnsConfig[currentIndex + 1].type;
436
+ }
437
+ var newActiveTime = {
438
+ hours: newTimeValues.hh,
439
+ minutes: newTimeValues.mm,
440
+ seconds: newTimeValues.ss,
441
+ currentColumn: nextColumn || column
442
+ };
443
+ setActiveTime(newActiveTime);
444
+ onChange === null || onChange === void 0 || onChange({
445
+ value: newTimeString,
446
+ timeValues: {
447
+ hour: newTimeValues.hh || undefined,
448
+ minute: newTimeValues.mm || undefined,
449
+ second: newTimeValues.ss || undefined
450
+ }
451
+ });
452
+ };
453
+ var handleTimeItemKeyDown = function handleTimeItemKeyDown(event, column, value) {
454
+ var disabledValuesForColumn = getDisabledValuesForColumn(column);
455
+ var currentIndex = parseInt(value, 10);
456
+ var newIndex = null;
457
+ var newColumn = column;
458
+ var currentIndexInColumns = columnsConfig.findIndex(function (col) {
459
+ return col.type === column;
460
+ });
461
+ switch (event.key) {
462
+ case 'ArrowUp':
463
+ event.preventDefault();
464
+ newIndex = getNextAvailableValue(currentIndex, column === 'hours' ? Array.from({
465
+ length: 24
466
+ }, function (_, i) {
467
+ return i.toString().padStart(2, '0');
468
+ }) : Array.from({
469
+ length: 60
470
+ }, function (_, i) {
471
+ return i.toString().padStart(2, '0');
472
+ }), disabledValuesForColumn, 'up');
473
+ if (newIndex !== null) {
474
+ var newValue = newIndex.toString().padStart(2, '0');
475
+ handleTimeItemClick(newValue, column, false);
476
+ }
477
+ break;
478
+ case 'ArrowDown':
479
+ event.preventDefault();
480
+ newIndex = getNextAvailableValue(currentIndex, column === 'hours' ? Array.from({
481
+ length: 24
482
+ }, function (_, i) {
483
+ return i.toString().padStart(2, '0');
484
+ }) : Array.from({
485
+ length: 60
486
+ }, function (_, i) {
487
+ return i.toString().padStart(2, '0');
488
+ }), disabledValuesForColumn, 'down');
489
+ if (newIndex !== null) {
490
+ var _newValue = newIndex.toString().padStart(2, '0');
491
+ handleTimeItemClick(_newValue, column, false);
492
+ }
493
+ break;
494
+ case 'ArrowRight':
495
+ event.preventDefault();
496
+ if (column === 'hours') {
497
+ newColumn = 'minutes';
498
+ } else if (column === 'minutes' && actualFormat.includes('ss')) {
499
+ newColumn = 'seconds';
500
+ }
501
+ if (newColumn !== column) {
502
+ setActiveTime(function (prev) {
503
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
504
+ currentColumn: newColumn
505
+ });
506
+ });
507
+ }
508
+ break;
509
+ case 'ArrowLeft':
510
+ event.preventDefault();
511
+ if (column === 'minutes') {
512
+ newColumn = 'hours';
513
+ } else if (column === 'seconds') {
514
+ newColumn = 'minutes';
515
+ }
516
+ if (newColumn !== column) {
517
+ setActiveTime(function (prev) {
518
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
519
+ currentColumn: newColumn
520
+ });
521
+ });
522
+ }
523
+ break;
524
+ case 'Enter':
525
+ case ' ':
526
+ event.preventDefault();
527
+ handleTimeItemClick(value, column);
528
+ break;
529
+ case 'Home':
530
+ event.preventDefault();
531
+ newIndex = 0;
532
+ while (disabledValuesForColumn.includes(newIndex) && newIndex < (column === 'hours' ? 24 : 60)) {
533
+ newIndex++;
534
+ }
535
+ if (newIndex < (column === 'hours' ? 24 : 60)) {
536
+ handleTimeItemClick(newIndex.toString().padStart(2, '0'), column, false);
537
+ }
538
+ break;
539
+ case 'End':
540
+ event.preventDefault();
541
+ newIndex = column === 'hours' ? 23 : 59;
542
+ while (disabledValuesForColumn.includes(newIndex) && newIndex >= 0) {
543
+ newIndex--;
544
+ }
545
+ if (newIndex >= 0) {
546
+ handleTimeItemClick(newIndex.toString().padStart(2, '0'), column, false);
547
+ }
548
+ break;
549
+ case 'Tab':
550
+ if (currentIndexInColumns === columnsConfig.length - 1) {
551
+ break;
552
+ }
553
+ event.preventDefault();
554
+ if (event.shiftKey) {
555
+ if (column === 'minutes') {
556
+ newColumn = 'hours';
557
+ } else if (column === 'seconds') {
558
+ newColumn = 'minutes';
559
+ }
560
+ } else if (column === 'hours') {
561
+ newColumn = 'minutes';
562
+ } else if (column === 'minutes' && actualFormat.includes('ss')) {
563
+ newColumn = 'seconds';
564
+ }
565
+ if (newColumn !== column) {
566
+ setActiveTime(function (prev) {
567
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prev), {}, {
568
+ currentColumn: newColumn
569
+ });
570
+ });
571
+ }
572
+ break;
573
+ default:
574
+ if (/^[0-9]$/.test(event.key)) {
575
+ event.preventDefault();
576
+ var inputNumber = parseInt(event.key, 10);
577
+ if (column === 'hours') {
578
+ if (inputNumber <= 2) {
579
+ var tens = inputNumber;
580
+ var handleSecondInput = function handleSecondInput(e) {
581
+ if (/^[0-9]$/.test(e.key)) {
582
+ var units = parseInt(e.key, 10);
583
+ var total = tens * 10 + units;
584
+ if (total < 24 && !disabledValuesForColumn.includes(total)) {
585
+ handleTimeItemClick(total.toString().padStart(2, '0'), column);
586
+ }
587
+ document.removeEventListener('keydown', handleSecondInput);
588
+ }
589
+ };
590
+ document.addEventListener('keydown', handleSecondInput);
591
+ setTimeout(function () {
592
+ document.removeEventListener('keydown', handleSecondInput);
593
+ }, 1000);
594
+ } else if (inputNumber <= 9) {
595
+ if (!disabledValuesForColumn.includes(inputNumber)) {
596
+ handleTimeItemClick(inputNumber.toString().padStart(2, '0'), column);
597
+ }
598
+ }
599
+ } else if (inputNumber <= 5) {
600
+ var _tens = inputNumber;
601
+ var _handleSecondInput = function _handleSecondInput(e) {
602
+ if (/^[0-9]$/.test(e.key)) {
603
+ var units = parseInt(e.key, 10);
604
+ var total = _tens * 10 + units;
605
+ if (total < 60 && !disabledValuesForColumn.includes(total)) {
606
+ handleTimeItemClick(total.toString().padStart(2, '0'), column);
607
+ }
608
+ document.removeEventListener('keydown', _handleSecondInput);
609
+ }
610
+ };
611
+ document.addEventListener('keydown', _handleSecondInput);
612
+ setTimeout(function () {
613
+ document.removeEventListener('keydown', _handleSecondInput);
614
+ }, 1000);
615
+ } else if (inputNumber <= 9) {
616
+ if (!disabledValuesForColumn.includes(inputNumber)) {
617
+ handleTimeItemClick(inputNumber.toString().padStart(2, '0'), column);
618
+ }
619
+ }
620
+ }
621
+ }
622
+ };
623
+ return /*#__PURE__*/React__default.default.createElement(Root, _rollupPluginBabelHelpers.extends({
624
+ ref: ref,
625
+ view: view,
626
+ size: size,
627
+ disabled: disabled,
628
+ onFocus: handleContainerFocus
629
+ }, rest), /*#__PURE__*/React__default.default.createElement(TimePickerGrid_styles.StyledTimePicker, {
630
+ width: dropdownWidth,
631
+ tabIndex: -1
632
+ }, columnsConfig.map(function (columnConfig) {
633
+ var type = columnConfig.type,
634
+ values = columnConfig.values;
635
+ var columnRef;
636
+ var scrollbarState;
637
+ var setScrollbar;
638
+ var scrollbarRef;
639
+ var thumbRef;
640
+ var timeoutRef;
641
+ switch (type) {
642
+ case 'hours':
643
+ columnRef = hoursColumnRef;
644
+ scrollbarState = hoursScrollbar;
645
+ setScrollbar = setHoursScrollbar;
646
+ scrollbarRef = hoursScrollbarRef;
647
+ thumbRef = hoursThumbRef;
648
+ timeoutRef = hoursHideTimeoutRef;
649
+ break;
650
+ case 'minutes':
651
+ columnRef = minutesColumnRef;
652
+ scrollbarState = minutesScrollbar;
653
+ setScrollbar = setMinutesScrollbar;
654
+ scrollbarRef = minutesScrollbarRef;
655
+ thumbRef = minutesThumbRef;
656
+ timeoutRef = minutesHideTimeoutRef;
657
+ break;
658
+ case 'seconds':
659
+ columnRef = secondsColumnRef;
660
+ scrollbarState = secondsScrollbar;
661
+ setScrollbar = setSecondsScrollbar;
662
+ scrollbarRef = secondsScrollbarRef;
663
+ thumbRef = secondsThumbRef;
664
+ timeoutRef = secondsHideTimeoutRef;
665
+ break;
666
+ default:
667
+ return null;
668
+ }
669
+ return TimeColumn.renderTimeColumn({
670
+ values: values,
671
+ disabledValues: getDisabledValuesForColumn(type),
672
+ dropdownHeight: dropdownHeight,
673
+ column: type,
674
+ activeTime: activeTime,
675
+ handleTimeItemClick: handleTimeItemClick,
676
+ handleTimeItemKeyDown: handleTimeItemKeyDown,
677
+ createScrollbarDragHandler: createScrollbarDragHandler,
678
+ setScrollbar: setScrollbar,
679
+ columnRef: columnRef,
680
+ scrollbarState: scrollbarState,
681
+ scrollbarRef: scrollbarRef,
682
+ thumbRef: thumbRef,
683
+ timeoutRef: timeoutRef,
684
+ timeItemRefs: timeItemRefs
685
+ });
686
+ })));
687
+ });
688
+ };
689
+ var timePickerGridConfig = {
690
+ name: 'TimePickerGrid',
691
+ tag: 'div',
692
+ layout: timePickerGridRoot,
693
+ base: TimePickerGrid_styles.base,
694
+ variations: {
695
+ view: {
696
+ css: base.base
697
+ },
698
+ size: {
699
+ css: base$1.base
700
+ },
701
+ disabled: {
702
+ css: base$2.base,
703
+ attrs: true
704
+ }
705
+ },
706
+ defaults: {
707
+ size: 'm',
708
+ view: 'default'
709
+ }
710
+ };
711
+
712
+ exports.timePickerGridConfig = timePickerGridConfig;
713
+ exports.timePickerGridRoot = timePickerGridRoot;
714
+ //# sourceMappingURL=TimePickerGrid.js.map