@salutejs/plasma-new-hope 0.337.0-canary.2184.17981110340.0 → 0.337.0-canary.2184.18005913845.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.
- package/cjs/components/TimePicker/TimePicker.css +11 -9
- package/cjs/components/TimePicker/TimePicker.js +108 -96
- package/cjs/components/TimePicker/TimePicker.js.map +1 -1
- package/cjs/components/TimePicker/TimePicker.styles.js +3 -48
- package/cjs/components/TimePicker/TimePicker.styles.js.map +1 -1
- package/cjs/components/TimePicker/TimePicker.styles_ar3obv.css +4 -0
- package/cjs/components/TimePicker/TimePicker.tokens.js +3 -2
- package/cjs/components/TimePicker/TimePicker.tokens.js.map +1 -1
- package/cjs/components/TimePicker/hooks/useKeyboardNavigation.js +7 -13
- package/cjs/components/TimePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.css +7 -0
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +1 -0
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +61 -0
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
- package/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +7 -0
- package/cjs/components/TimePicker/utils/index.js +40 -42
- package/cjs/components/TimePicker/utils/index.js.map +1 -1
- package/cjs/index.css +11 -9
- package/emotion/cjs/components/TimePicker/TimePicker.js +104 -92
- package/emotion/cjs/components/TimePicker/TimePicker.styles.js +7 -52
- package/emotion/cjs/components/TimePicker/TimePicker.tokens.js +3 -2
- package/emotion/cjs/components/TimePicker/hooks/useKeyboardNavigation.js +7 -15
- package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
- package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +71 -0
- package/emotion/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.types.js +4 -0
- package/emotion/cjs/components/TimePicker/utils/index.js +40 -42
- package/emotion/cjs/examples/components/Combobox/Combobox.js +15 -0
- package/emotion/cjs/examples/components/TimePicker/TimePicker.config.js +7 -7
- package/emotion/es/components/TimePicker/TimePicker.js +106 -94
- package/emotion/es/components/TimePicker/TimePicker.styles.js +7 -34
- package/emotion/es/components/TimePicker/TimePicker.tokens.js +3 -2
- package/emotion/es/components/TimePicker/hooks/useKeyboardNavigation.js +7 -15
- package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +50 -0
- package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +33 -0
- package/emotion/es/components/TimePicker/ui/TimeColumn/TimeColumn.types.js +1 -0
- package/emotion/es/components/TimePicker/utils/index.js +37 -42
- package/emotion/es/examples/components/Combobox/Combobox.js +0 -7
- package/emotion/es/examples/components/TimePicker/TimePicker.config.js +7 -7
- package/es/components/TimePicker/TimePicker.css +11 -9
- package/es/components/TimePicker/TimePicker.js +110 -98
- package/es/components/TimePicker/TimePicker.js.map +1 -1
- package/es/components/TimePicker/TimePicker.styles.js +4 -43
- package/es/components/TimePicker/TimePicker.styles.js.map +1 -1
- package/es/components/TimePicker/TimePicker.styles_ar3obv.css +4 -0
- package/es/components/TimePicker/TimePicker.tokens.js +3 -2
- package/es/components/TimePicker/TimePicker.tokens.js.map +1 -1
- package/es/components/TimePicker/hooks/useKeyboardNavigation.js +7 -13
- package/es/components/TimePicker/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.css +7 -0
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +56 -0
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.js.map +1 -0
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +51 -0
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js.map +1 -0
- package/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles_juymyb.css +7 -0
- package/es/components/TimePicker/utils/index.js +40 -43
- package/es/components/TimePicker/utils/index.js.map +1 -1
- package/es/index.css +11 -9
- package/package.json +2 -2
- package/styled-components/cjs/components/TimePicker/TimePicker.js +104 -92
- package/styled-components/cjs/components/TimePicker/TimePicker.styles.js +6 -88
- package/styled-components/cjs/components/TimePicker/TimePicker.tokens.js +3 -2
- package/styled-components/cjs/components/TimePicker/hooks/useKeyboardNavigation.js +7 -15
- package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.js +65 -0
- package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +112 -0
- package/styled-components/cjs/components/TimePicker/ui/TimeColumn/TimeColumn.types.js +4 -0
- package/styled-components/cjs/components/TimePicker/utils/index.js +40 -42
- package/styled-components/cjs/examples/components/TimePicker/TimePicker.config.js +29 -11
- package/styled-components/es/components/TimePicker/TimePicker.js +106 -94
- package/styled-components/es/components/TimePicker/TimePicker.styles.js +6 -70
- package/styled-components/es/components/TimePicker/TimePicker.tokens.js +3 -2
- package/styled-components/es/components/TimePicker/hooks/useKeyboardNavigation.js +7 -15
- package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.js +50 -0
- package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.styles.js +74 -0
- package/styled-components/es/components/TimePicker/ui/TimeColumn/TimeColumn.types.js +1 -0
- package/styled-components/es/components/TimePicker/utils/index.js +37 -42
- package/styled-components/es/examples/components/Combobox/Combobox.js +0 -7
- package/styled-components/es/examples/components/TimePicker/TimePicker.config.js +29 -11
- package/types/components/TimePicker/TimePicker.d.ts +2 -2
- package/types/components/TimePicker/TimePicker.d.ts.map +1 -1
- package/types/components/TimePicker/TimePicker.styles.d.ts +0 -8
- package/types/components/TimePicker/TimePicker.styles.d.ts.map +1 -1
- package/types/components/TimePicker/TimePicker.tokens.d.ts +3 -2
- package/types/components/TimePicker/TimePicker.tokens.d.ts.map +1 -1
- package/types/components/TimePicker/TimePicker.types.d.ts +1 -1
- package/types/components/TimePicker/TimePicker.types.d.ts.map +1 -1
- package/types/components/TimePicker/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts +3 -0
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.d.ts.map +1 -0
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts +10 -0
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.styles.d.ts.map +1 -0
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts +35 -0
- package/types/components/TimePicker/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -0
- package/types/components/TimePicker/utils/index.d.ts +1 -0
- package/types/components/TimePicker/utils/index.d.ts.map +1 -1
- package/types/examples/components/TimePicker/TimePicker.config.d.ts.map +1 -1
- package/types/examples/components/TimePicker/TimePicker.d.ts +1 -1
- package/types/examples/components/TimePicker/TimePicker.d.ts.map +1 -1
- package/cjs/components/TimePicker/TimePicker.styles_dnulzj.css +0 -10
- package/es/components/TimePicker/TimePicker.styles_dnulzj.css +0 -10
|
@@ -138,14 +138,15 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
138
138
|
import React, { forwardRef, useRef, useState, useEffect, useCallback } from "react";
|
|
139
139
|
import cls from "classnames";
|
|
140
140
|
import { getPlacements } from "../../utils";
|
|
141
|
-
import { range, processTimeInput, animateScrollTo } from "./utils";
|
|
142
|
-
import { base, StyledInput, StyledPopover,
|
|
141
|
+
import { range, processTimeInput, animateScrollTo, delimiter } from "./utils";
|
|
142
|
+
import { base, StyledInput, StyledPopover, StyledTimePicker } from "./TimePicker.styles";
|
|
143
143
|
import { classes } from "./TimePicker.tokens";
|
|
144
144
|
import { base as sizeCSS } from "./variations/_size/base";
|
|
145
145
|
import { base as viewCSS } from "./variations/_view/base";
|
|
146
146
|
import { base as disabledCSS } from "./variations/_disabled/base";
|
|
147
147
|
import { base as readonlyCSS } from "./variations/_readonly/base";
|
|
148
148
|
import { useKeyNavigation } from "./hooks/useKeyboardNavigation";
|
|
149
|
+
import { renderTimeColumn } from "./ui/TimeColumn/TimeColumn";
|
|
149
150
|
export var timePickerRoot = function(Root) {
|
|
150
151
|
return /*#__PURE__*/ forwardRef(function(_param, ref) {
|
|
151
152
|
var className = _param.className, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, label = _param.label, _param_labelPlacement = _param.labelPlacement, labelPlacement = _param_labelPlacement === void 0 ? 'outer' : _param_labelPlacement, keepPlaceholder = _param.keepPlaceholder, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, placeholder = _param.placeholder, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, view = _param.view, size = _param.size, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_readonly = _param.readonly, readonly = _param_readonly === void 0 ? false : _param_readonly, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, offset = _param.offset, stretched = _param.stretched, _param_dropdownAlign = _param.dropdownAlign, dropdownAlign = _param_dropdownAlign === void 0 ? 'left' : _param_dropdownAlign, dropdownWidth = _param.dropdownWidth, dropdownHeight = _param.dropdownHeight, _param_columnsQuantity = _param.columnsQuantity, columnsQuantity = _param_columnsQuantity === void 0 ? 2 : _param_columnsQuantity, onToggle = _param.onToggle, onFocus = _param.onFocus, onChange = _param.onChange, rest = _object_without_properties(_param, [
|
|
@@ -229,6 +230,7 @@ export var timePickerRoot = function(Root) {
|
|
|
229
230
|
var hours = range(24);
|
|
230
231
|
var minutes = range(60);
|
|
231
232
|
var seconds = range(60);
|
|
233
|
+
var minScrollbarTrackHeight = 20;
|
|
232
234
|
var calculateScrollbar = useCallback(function(columnRef) {
|
|
233
235
|
if (!columnRef.current) return {
|
|
234
236
|
thumbHeight: 0,
|
|
@@ -236,7 +238,7 @@ export var timePickerRoot = function(Root) {
|
|
|
236
238
|
};
|
|
237
239
|
var _columnRef_current = columnRef.current, scrollTop = _columnRef_current.scrollTop, scrollHeight = _columnRef_current.scrollHeight, clientHeight = _columnRef_current.clientHeight;
|
|
238
240
|
var trackHeight = clientHeight;
|
|
239
|
-
var thumbHeight = Math.max(trackHeight / scrollHeight * trackHeight,
|
|
241
|
+
var thumbHeight = Math.max(trackHeight / scrollHeight * trackHeight, minScrollbarTrackHeight);
|
|
240
242
|
var maxScroll = scrollHeight - clientHeight;
|
|
241
243
|
var thumbPosition = maxScroll > 0 ? scrollTop / maxScroll * (trackHeight - thumbHeight) : 0;
|
|
242
244
|
return {
|
|
@@ -340,35 +342,37 @@ export var timePickerRoot = function(Root) {
|
|
|
340
342
|
};
|
|
341
343
|
}, []);
|
|
342
344
|
useEffect(function() {
|
|
343
|
-
if (isInnerOpen) {
|
|
344
|
-
|
|
345
|
-
updateScrollbar(hoursColumnRef, setHoursScrollbar);
|
|
346
|
-
updateScrollbar(minutesColumnRef, setMinutesScrollbar);
|
|
347
|
-
if (columnsQuantity === 3) {
|
|
348
|
-
updateScrollbar(secondsColumnRef, setSecondsScrollbar);
|
|
349
|
-
}
|
|
350
|
-
}, 100);
|
|
345
|
+
if (!isInnerOpen) {
|
|
346
|
+
return;
|
|
351
347
|
}
|
|
348
|
+
setTimeout(function() {
|
|
349
|
+
updateScrollbar(hoursColumnRef, setHoursScrollbar);
|
|
350
|
+
updateScrollbar(minutesColumnRef, setMinutesScrollbar);
|
|
351
|
+
if (columnsQuantity === 3) {
|
|
352
|
+
updateScrollbar(secondsColumnRef, setSecondsScrollbar);
|
|
353
|
+
}
|
|
354
|
+
}, 100);
|
|
352
355
|
}, [
|
|
353
356
|
isInnerOpen,
|
|
354
357
|
columnsQuantity,
|
|
355
358
|
updateScrollbar
|
|
356
359
|
]);
|
|
357
360
|
useEffect(function() {
|
|
358
|
-
if (viewValue) {
|
|
359
|
-
|
|
360
|
-
if (format === 'HH:mm' && viewValue.length > 5) {
|
|
361
|
-
timeString = viewValue.substring(0, 5);
|
|
362
|
-
}
|
|
363
|
-
setInnerTime(viewValue);
|
|
364
|
-
var _timeString_split_map = _sliced_to_array(timeString.split(':').map(Number), 3), hh = _timeString_split_map[0], mm = _timeString_split_map[1], ss = _timeString_split_map[2];
|
|
365
|
-
setActiveTime({
|
|
366
|
-
hours: !Number.isNaN(hh) ? hh : null,
|
|
367
|
-
minutes: !Number.isNaN(mm) ? mm : null,
|
|
368
|
-
seconds: format === 'HH:mm:ss' && !Number.isNaN(ss) ? ss : null,
|
|
369
|
-
currentColumn: null
|
|
370
|
-
});
|
|
361
|
+
if (!viewValue) {
|
|
362
|
+
return;
|
|
371
363
|
}
|
|
364
|
+
var timeString = viewValue;
|
|
365
|
+
if (format === 'HH:mm' && viewValue.length > 5) {
|
|
366
|
+
timeString = viewValue.substring(0, 5);
|
|
367
|
+
}
|
|
368
|
+
setInnerTime(viewValue);
|
|
369
|
+
var _timeString_split_map = _sliced_to_array(timeString.split(delimiter).map(Number), 3), hh = _timeString_split_map[0], mm = _timeString_split_map[1], ss = _timeString_split_map[2];
|
|
370
|
+
setActiveTime({
|
|
371
|
+
hours: !Number.isNaN(hh) ? hh : null,
|
|
372
|
+
minutes: !Number.isNaN(mm) ? mm : null,
|
|
373
|
+
seconds: format === 'HH:mm:ss' && !Number.isNaN(ss) ? ss : null,
|
|
374
|
+
currentColumn: null
|
|
375
|
+
});
|
|
372
376
|
}, [
|
|
373
377
|
outerValue,
|
|
374
378
|
format
|
|
@@ -403,13 +407,7 @@ export var timePickerRoot = function(Root) {
|
|
|
403
407
|
var scrollPosition = index * (itemHeight + gap);
|
|
404
408
|
animateScrollTo(columnRef.current, scrollPosition);
|
|
405
409
|
setTimeout(function() {
|
|
406
|
-
|
|
407
|
-
updateScrollbar(hoursColumnRef, setHoursScrollbar);
|
|
408
|
-
} else if (columnRef === minutesColumnRef) {
|
|
409
|
-
updateScrollbar(minutesColumnRef, setMinutesScrollbar);
|
|
410
|
-
} else if (columnRef === secondsColumnRef) {
|
|
411
|
-
updateScrollbar(secondsColumnRef, setSecondsScrollbar);
|
|
412
|
-
}
|
|
410
|
+
updateScrollbar(columnRef, setHoursScrollbar);
|
|
413
411
|
}, 300);
|
|
414
412
|
}
|
|
415
413
|
};
|
|
@@ -519,7 +517,7 @@ export var timePickerRoot = function(Root) {
|
|
|
519
517
|
};
|
|
520
518
|
var handleTimeItemClick = function(value, column) {
|
|
521
519
|
var isNextColumn = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
|
|
522
|
-
var currentTime = innerTime.split(
|
|
520
|
+
var currentTime = innerTime.split(delimiter);
|
|
523
521
|
var newTime = [];
|
|
524
522
|
if (format === 'HH:mm:ss') {
|
|
525
523
|
newTime = _to_consumable_array(currentTime);
|
|
@@ -539,10 +537,8 @@ export var timePickerRoot = function(Root) {
|
|
|
539
537
|
if (!currentTime[1]) {
|
|
540
538
|
newTime[1] = '00';
|
|
541
539
|
}
|
|
542
|
-
if (format === 'HH:mm:ss') {
|
|
543
|
-
|
|
544
|
-
newTime[2] = '00';
|
|
545
|
-
}
|
|
540
|
+
if (format === 'HH:mm:ss' && !currentTime[2]) {
|
|
541
|
+
newTime[2] = '00';
|
|
546
542
|
}
|
|
547
543
|
break;
|
|
548
544
|
case 'minutes':
|
|
@@ -550,10 +546,8 @@ export var timePickerRoot = function(Root) {
|
|
|
550
546
|
if (!currentTime[0]) {
|
|
551
547
|
newTime[0] = '00';
|
|
552
548
|
}
|
|
553
|
-
if (format === 'HH:mm:ss') {
|
|
554
|
-
|
|
555
|
-
newTime[2] = '00';
|
|
556
|
-
}
|
|
549
|
+
if (format === 'HH:mm:ss' && !currentTime[2]) {
|
|
550
|
+
newTime[2] = '00';
|
|
557
551
|
}
|
|
558
552
|
break;
|
|
559
553
|
case 'seconds':
|
|
@@ -570,7 +564,7 @@ export var timePickerRoot = function(Root) {
|
|
|
570
564
|
default:
|
|
571
565
|
break;
|
|
572
566
|
}
|
|
573
|
-
var newTimeString = newTime.join(
|
|
567
|
+
var newTimeString = newTime.join(delimiter);
|
|
574
568
|
setInnerTime(newTimeString);
|
|
575
569
|
var nextColumn = null;
|
|
576
570
|
if (column === 'hours' && isNextColumn) {
|
|
@@ -608,12 +602,14 @@ export var timePickerRoot = function(Root) {
|
|
|
608
602
|
seconds: values.ss
|
|
609
603
|
});
|
|
610
604
|
});
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
605
|
+
if (onChange) {
|
|
606
|
+
onChange(_object_spread_props(_object_spread({}, event), {
|
|
607
|
+
target: _object_spread_props(_object_spread({}, event.target), {
|
|
608
|
+
value: innerString,
|
|
609
|
+
timeValues: values
|
|
610
|
+
})
|
|
611
|
+
}));
|
|
612
|
+
}
|
|
617
613
|
requestAnimationFrame(function() {
|
|
618
614
|
if (inputRef.current) {
|
|
619
615
|
inputRef.current.setSelectionRange(newCursorPosition, newCursorPosition);
|
|
@@ -632,9 +628,13 @@ export var timePickerRoot = function(Root) {
|
|
|
632
628
|
onToggle === null || onToggle === void 0 ? void 0 : onToggle(true);
|
|
633
629
|
return;
|
|
634
630
|
}
|
|
635
|
-
if (!isInnerOpen)
|
|
631
|
+
if (!isInnerOpen) {
|
|
632
|
+
return;
|
|
633
|
+
}
|
|
636
634
|
var currentColumn = activeTime.currentColumn;
|
|
637
|
-
if (!currentColumn)
|
|
635
|
+
if (!currentColumn) {
|
|
636
|
+
return;
|
|
637
|
+
}
|
|
638
638
|
var newIndex = null;
|
|
639
639
|
var newColumn = currentColumn;
|
|
640
640
|
if ([
|
|
@@ -687,8 +687,11 @@ export var timePickerRoot = function(Root) {
|
|
|
687
687
|
}
|
|
688
688
|
break;
|
|
689
689
|
case 'ArrowLeft':
|
|
690
|
-
if (currentColumn === 'minutes')
|
|
691
|
-
|
|
690
|
+
if (currentColumn === 'minutes') {
|
|
691
|
+
newColumn = 'hours';
|
|
692
|
+
} else if (currentColumn === 'seconds') {
|
|
693
|
+
newColumn = 'minutes';
|
|
694
|
+
}
|
|
692
695
|
var _activeTime_newColumn1;
|
|
693
696
|
newIndex = (_activeTime_newColumn1 = activeTime[newColumn]) !== null && _activeTime_newColumn1 !== void 0 ? _activeTime_newColumn1 : 0;
|
|
694
697
|
setActiveTime(_object_spread_props(_object_spread({}, activeTime), _define_property({
|
|
@@ -708,11 +711,15 @@ export var timePickerRoot = function(Root) {
|
|
|
708
711
|
handleTimeItemClick(value, column);
|
|
709
712
|
}
|
|
710
713
|
};
|
|
714
|
+
var handleOnKeyDown = function(e) {
|
|
715
|
+
onKeyDownNavigation(e);
|
|
716
|
+
handleKeyDown(e);
|
|
717
|
+
};
|
|
711
718
|
var _useKeyNavigation = useKeyNavigation({
|
|
712
719
|
isCalendarOpen: isInnerOpen,
|
|
713
720
|
format: format,
|
|
714
721
|
maskWithFormat: true,
|
|
715
|
-
delimiter:
|
|
722
|
+
delimiter: delimiter,
|
|
716
723
|
closeOnEsc: closeOnEsc,
|
|
717
724
|
onToggle: handleToggle
|
|
718
725
|
}), onKeyDownNavigation = _useKeyNavigation.onKeyDown;
|
|
@@ -729,10 +736,7 @@ export var timePickerRoot = function(Root) {
|
|
|
729
736
|
textAfter: textAfter,
|
|
730
737
|
onChange: handleInputChange,
|
|
731
738
|
onFocus: onFocus,
|
|
732
|
-
onKeyDown:
|
|
733
|
-
onKeyDownNavigation(e);
|
|
734
|
-
handleKeyDown(e);
|
|
735
|
-
},
|
|
739
|
+
onKeyDown: handleOnKeyDown,
|
|
736
740
|
required: required,
|
|
737
741
|
requiredPlacement: requiredPlacement,
|
|
738
742
|
hasRequiredIndicator: hasRequiredIndicator,
|
|
@@ -740,43 +744,6 @@ export var timePickerRoot = function(Root) {
|
|
|
740
744
|
labelPlacement: labelPlacement,
|
|
741
745
|
keepPlaceholder: keepPlaceholder
|
|
742
746
|
});
|
|
743
|
-
var renderTimeColumn = function(values, column, columnRef, scrollbarState, setScrollbar, scrollbarRef, thumbRef, timeoutRef) {
|
|
744
|
-
return /*#__PURE__*/ React.createElement("div", {
|
|
745
|
-
style: {
|
|
746
|
-
position: 'relative',
|
|
747
|
-
width: '100%'
|
|
748
|
-
}
|
|
749
|
-
}, /*#__PURE__*/ React.createElement(StyledTimeColumn, {
|
|
750
|
-
key: column,
|
|
751
|
-
ref: columnRef,
|
|
752
|
-
height: dropdownHeight,
|
|
753
|
-
className: classes.timeColumn
|
|
754
|
-
}, values.map(function(value, index) {
|
|
755
|
-
return /*#__PURE__*/ React.createElement(StyledTimeItem, {
|
|
756
|
-
key: value,
|
|
757
|
-
ref: function(el) {
|
|
758
|
-
timeItemRefs.current["".concat(column, "-").concat(value)] = el;
|
|
759
|
-
},
|
|
760
|
-
className: cls(_define_property({}, classes.timeItemActive, activeTime[column] === index)),
|
|
761
|
-
onClick: function() {
|
|
762
|
-
return handleTimeItemClick(value, column);
|
|
763
|
-
},
|
|
764
|
-
onKeyDown: function(e) {
|
|
765
|
-
return handleTimeItemKeyDown(e, column, value);
|
|
766
|
-
}
|
|
767
|
-
}, value);
|
|
768
|
-
}), /*#__PURE__*/ React.createElement(StyledEmpty, null)), /*#__PURE__*/ React.createElement(CustomScrollbar, {
|
|
769
|
-
ref: scrollbarRef,
|
|
770
|
-
className: cls(_define_property({}, classes.scrollbarVisible, scrollbarState.isVisible))
|
|
771
|
-
}, /*#__PURE__*/ React.createElement(ScrollbarTrack, null, /*#__PURE__*/ React.createElement(ScrollbarThumb, {
|
|
772
|
-
ref: thumbRef,
|
|
773
|
-
style: {
|
|
774
|
-
height: "".concat(scrollbarState.thumbHeight, "px"),
|
|
775
|
-
top: "".concat(scrollbarState.thumbPosition, "px")
|
|
776
|
-
},
|
|
777
|
-
onMouseDown: createScrollbarDragHandler(columnRef, setScrollbar, timeoutRef)
|
|
778
|
-
}))));
|
|
779
|
-
};
|
|
780
747
|
return /*#__PURE__*/ React.createElement(Root, _object_spread({
|
|
781
748
|
stretched: stretched,
|
|
782
749
|
view: view,
|
|
@@ -809,7 +776,52 @@ export var timePickerRoot = function(Root) {
|
|
|
809
776
|
stretched: stretched
|
|
810
777
|
}, /*#__PURE__*/ React.createElement(StyledTimePicker, {
|
|
811
778
|
width: dropdownWidth
|
|
812
|
-
}, renderTimeColumn(
|
|
779
|
+
}, renderTimeColumn({
|
|
780
|
+
values: hours,
|
|
781
|
+
dropdownHeight: dropdownHeight,
|
|
782
|
+
column: 'hours',
|
|
783
|
+
columnRef: hoursColumnRef,
|
|
784
|
+
scrollbarState: hoursScrollbar,
|
|
785
|
+
setScrollbar: setHoursScrollbar,
|
|
786
|
+
scrollbarRef: hoursScrollbarRef,
|
|
787
|
+
thumbRef: hoursThumbRef,
|
|
788
|
+
timeoutRef: hoursHideTimeoutRef,
|
|
789
|
+
timeItemRefs: timeItemRefs,
|
|
790
|
+
activeTime: activeTime,
|
|
791
|
+
handleTimeItemClick: handleTimeItemClick,
|
|
792
|
+
handleTimeItemKeyDown: handleTimeItemKeyDown,
|
|
793
|
+
createScrollbarDragHandler: createScrollbarDragHandler
|
|
794
|
+
}), renderTimeColumn({
|
|
795
|
+
values: minutes,
|
|
796
|
+
dropdownHeight: dropdownHeight,
|
|
797
|
+
column: 'minutes',
|
|
798
|
+
columnRef: minutesColumnRef,
|
|
799
|
+
scrollbarState: minutesScrollbar,
|
|
800
|
+
setScrollbar: setMinutesScrollbar,
|
|
801
|
+
scrollbarRef: minutesScrollbarRef,
|
|
802
|
+
thumbRef: minutesThumbRef,
|
|
803
|
+
timeoutRef: minutesHideTimeoutRef,
|
|
804
|
+
timeItemRefs: timeItemRefs,
|
|
805
|
+
activeTime: activeTime,
|
|
806
|
+
handleTimeItemClick: handleTimeItemClick,
|
|
807
|
+
handleTimeItemKeyDown: handleTimeItemKeyDown,
|
|
808
|
+
createScrollbarDragHandler: createScrollbarDragHandler
|
|
809
|
+
}), columnsQuantity === 3 && renderTimeColumn({
|
|
810
|
+
values: seconds,
|
|
811
|
+
dropdownHeight: dropdownHeight,
|
|
812
|
+
column: 'seconds',
|
|
813
|
+
columnRef: secondsColumnRef,
|
|
814
|
+
scrollbarState: secondsScrollbar,
|
|
815
|
+
setScrollbar: setSecondsScrollbar,
|
|
816
|
+
scrollbarRef: secondsScrollbarRef,
|
|
817
|
+
thumbRef: secondsThumbRef,
|
|
818
|
+
timeoutRef: secondsHideTimeoutRef,
|
|
819
|
+
timeItemRefs: timeItemRefs,
|
|
820
|
+
activeTime: activeTime,
|
|
821
|
+
handleTimeItemClick: handleTimeItemClick,
|
|
822
|
+
handleTimeItemKeyDown: handleTimeItemKeyDown,
|
|
823
|
+
createScrollbarDragHandler: createScrollbarDragHandler
|
|
824
|
+
})))));
|
|
813
825
|
});
|
|
814
826
|
};
|
|
815
827
|
export var timePickerConfig = {
|