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