@elliemae/ds-controlled-form 1.54.0-next.7 → 1.54.0-rc.3
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/controlled-date-time-picker/ControlledDateTimePickerCTX.js +10 -0
- package/cjs/controlled-date-time-picker/ControlledDateTimePickerCTX.js.map +1 -1
- package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js +41 -23
- package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js +2 -0
- package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js +33 -4
- package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js +2 -0
- package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js +3 -1
- package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +17 -12
- package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +6 -2
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -3
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +102 -27
- package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +3 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +3 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +1 -0
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +9 -4
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +181 -67
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +14 -8
- package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js +3 -1
- package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +3 -1
- package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js.map +1 -1
- package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +15 -10
- package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js.map +1 -1
- package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js +10 -0
- package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js.map +1 -1
- package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js +41 -23
- package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js +2 -0
- package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js +33 -4
- package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js +2 -0
- package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js +3 -1
- package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +17 -12
- package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +6 -2
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -3
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +102 -27
- package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +3 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +1 -0
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +9 -4
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +181 -67
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +14 -8
- package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js +3 -1
- package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +3 -1
- package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js.map +1 -1
- package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +15 -10
- package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js.map +1 -1
- package/package.json +4 -4
|
@@ -20,7 +20,9 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
20
20
|
nextMonthBtnRef = _ref.nextMonthBtnRef,
|
|
21
21
|
nextYearBtnRef = _ref.nextYearBtnRef,
|
|
22
22
|
currMeridiemBtnRef = _ref.currMeridiemBtnRef,
|
|
23
|
+
currHourBtnRef = _ref.currHourBtnRef,
|
|
23
24
|
isWithTimeWheelToo = _ref.isWithTimeWheelToo,
|
|
25
|
+
isControllerOnly = _ref.isControllerOnly,
|
|
24
26
|
handleFocusMetaDay = _ref.handleFocusMetaDay,
|
|
25
27
|
handleFocusMetaDayByDay = _ref.handleFocusMetaDayByDay,
|
|
26
28
|
tryToFocusCurrentlyDataIsFocusedDay = _ref.tryToFocusCurrentlyDataIsFocusedDay,
|
|
@@ -44,27 +46,46 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
44
46
|
tryToFocusCurrentlyDataIsFocusedDay();
|
|
45
47
|
}
|
|
46
48
|
}, [daysArray, focusedDay, handleFocusMetaDay, setLatestInteractionRegion, tryToFocusCurrentlyDataIsFocusedDay]);
|
|
47
|
-
var
|
|
49
|
+
var onHomeKeyDownInsideCalendar = React.useCallback(function () {
|
|
50
|
+
var _prevMonthBtnRef$curr, _prevMonthBtnRef$curr2;
|
|
51
|
+
|
|
52
|
+
prevMonthBtnRef === null || prevMonthBtnRef === void 0 ? void 0 : (_prevMonthBtnRef$curr = prevMonthBtnRef.current) === null || _prevMonthBtnRef$curr === void 0 ? void 0 : (_prevMonthBtnRef$curr2 = _prevMonthBtnRef$curr.focus) === null || _prevMonthBtnRef$curr2 === void 0 ? void 0 : _prevMonthBtnRef$curr2.call(_prevMonthBtnRef$curr);
|
|
53
|
+
}, [prevMonthBtnRef]);
|
|
54
|
+
var onEndKeyDownInsideCalendar = React.useCallback(function () {
|
|
55
|
+
var _currMeridiemBtnRef$c, _currMeridiemBtnRef$c2;
|
|
56
|
+
|
|
57
|
+
if (isWithTimeWheelToo) currMeridiemBtnRef === null || currMeridiemBtnRef === void 0 ? void 0 : (_currMeridiemBtnRef$c = currMeridiemBtnRef.current) === null || _currMeridiemBtnRef$c === void 0 ? void 0 : (_currMeridiemBtnRef$c2 = _currMeridiemBtnRef$c.focus) === null || _currMeridiemBtnRef$c2 === void 0 ? void 0 : _currMeridiemBtnRef$c2.call(_currMeridiemBtnRef$c);else tryToFocusDayRegion();
|
|
58
|
+
}, [currMeridiemBtnRef, isWithTimeWheelToo, tryToFocusDayRegion]);
|
|
59
|
+
var onHomeKeyDownTriggerIcon = React.useCallback(function () {
|
|
48
60
|
var _monthInputRef$curren, _monthInputRef$curren2, _hourInputRef$current, _hourInputRef$current2;
|
|
49
61
|
|
|
50
62
|
if (!hideDate) monthInputRef === null || monthInputRef === void 0 ? void 0 : (_monthInputRef$curren = monthInputRef.current) === null || _monthInputRef$curren === void 0 ? void 0 : (_monthInputRef$curren2 = _monthInputRef$curren.focus) === null || _monthInputRef$curren2 === void 0 ? void 0 : _monthInputRef$curren2.call(_monthInputRef$curren);else if (!hideTime) hourInputRef === null || hourInputRef === void 0 ? void 0 : (_hourInputRef$current = hourInputRef.current) === null || _hourInputRef$current === void 0 ? void 0 : (_hourInputRef$current2 = _hourInputRef$current.focus) === null || _hourInputRef$current2 === void 0 ? void 0 : _hourInputRef$current2.call(_hourInputRef$current);
|
|
51
63
|
}, [hideDate, hideTime, monthInputRef, hourInputRef]);
|
|
52
64
|
var handlePickerIconKeyDown = React.useCallback(function (e) {
|
|
53
65
|
var key = e.key;
|
|
54
|
-
var preventDefaultKeys = ['Home'];
|
|
66
|
+
var preventDefaultKeys = ['Home', 'End'];
|
|
67
|
+
var stopPropagationKeys = ['Home', 'End'];
|
|
55
68
|
if (preventDefaultKeys.includes(key)) e.preventDefault();
|
|
56
|
-
if (key
|
|
57
|
-
|
|
69
|
+
if (stopPropagationKeys.includes(key)) e.stopPropagation();
|
|
70
|
+
if (key === 'Home') onHomeKeyDownTriggerIcon();
|
|
71
|
+
}, [onHomeKeyDownTriggerIcon]);
|
|
58
72
|
var handleDayOnKeyDown = React.useCallback(function (e, metaDay) {
|
|
59
73
|
var newFocusedDayDate;
|
|
60
74
|
var day = metaDay.day;
|
|
61
75
|
var key = e.key,
|
|
62
76
|
shiftKey = e.shiftKey;
|
|
77
|
+
var preventDefaultKeys = ['Home', 'End', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];
|
|
78
|
+
var stopPropagationKeys = ['Home', 'End', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];
|
|
79
|
+
if (preventDefaultKeys.includes(key)) e.preventDefault();
|
|
80
|
+
if (stopPropagationKeys.includes(key)) e.stopPropagation();
|
|
63
81
|
if (key === 'ArrowUp') newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
|
|
64
82
|
daysToSum: -7
|
|
65
|
-
});
|
|
83
|
+
});
|
|
84
|
+
if (key === 'ArrowDown') newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
|
|
66
85
|
daysToSum: 7
|
|
67
|
-
});
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
if (key === 'ArrowLeft') {
|
|
68
89
|
newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
|
|
69
90
|
daysToSum: -1
|
|
70
91
|
});
|
|
@@ -72,7 +93,9 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
72
93
|
if (metaDay === daysArray[1]) {
|
|
73
94
|
handlePrevMonth();
|
|
74
95
|
}
|
|
75
|
-
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
if (key === 'ArrowRight') {
|
|
76
99
|
newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
|
|
77
100
|
daysToSum: 1
|
|
78
101
|
});
|
|
@@ -80,14 +103,29 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
80
103
|
if (metaDay === daysArray[daysArray.length - 2]) {
|
|
81
104
|
handleNextMonth();
|
|
82
105
|
}
|
|
83
|
-
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
if (newFocusedDayDate) {
|
|
109
|
+
handleFocusMetaDayByDay(newFocusedDayDate);
|
|
110
|
+
setTimeout(tryToFocusCurrentlyDataIsFocusedDay);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
if (key === 'Home') onHomeKeyDownInsideCalendar();
|
|
114
|
+
if (key === 'End') onEndKeyDownInsideCalendar(); // TAB CYCLE IMPLEMENTATION
|
|
115
|
+
|
|
116
|
+
if (!isControllerOnly) if (key === 'Tab') {
|
|
117
|
+
e.preventDefault(); // we only prevent default if it's not controller only
|
|
118
|
+
|
|
84
119
|
if (shiftKey) {
|
|
85
120
|
var _nextYearBtnRef$curre, _nextYearBtnRef$curre2;
|
|
86
121
|
|
|
87
|
-
e.preventDefault();
|
|
88
122
|
nextYearBtnRef === null || nextYearBtnRef === void 0 ? void 0 : (_nextYearBtnRef$curre = nextYearBtnRef.current) === null || _nextYearBtnRef$curre === void 0 ? void 0 : (_nextYearBtnRef$curre2 = _nextYearBtnRef$curre.focus) === null || _nextYearBtnRef$curre2 === void 0 ? void 0 : _nextYearBtnRef$curre2.call(_nextYearBtnRef$curre);
|
|
89
|
-
} else if (
|
|
90
|
-
var
|
|
123
|
+
} else if (isWithTimeWheelToo) {
|
|
124
|
+
var _currHourBtnRef$curre, _currHourBtnRef$curre2;
|
|
125
|
+
|
|
126
|
+
currHourBtnRef === null || currHourBtnRef === void 0 ? void 0 : (_currHourBtnRef$curre = currHourBtnRef.current) === null || _currHourBtnRef$curre === void 0 ? void 0 : (_currHourBtnRef$curre2 = _currHourBtnRef$curre.focus) === null || _currHourBtnRef$curre2 === void 0 ? void 0 : _currHourBtnRef$curre2.call(_currHourBtnRef$curre);
|
|
127
|
+
} else {
|
|
128
|
+
var _prevMonthBtnRef$curr3, _prevMonthBtnRef$curr4;
|
|
91
129
|
|
|
92
130
|
// Before it was like https://jira.elliemae.io/browse/PUI-6632
|
|
93
131
|
// setShowCalendar(false);
|
|
@@ -95,16 +133,10 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
95
133
|
// we are implementing focus cycle now
|
|
96
134
|
// if someone changes his mind, remove comments to the above and add comments below
|
|
97
135
|
// setShowCalendar onPickerClose are recibed as part of the args of the hook already
|
|
98
|
-
|
|
99
|
-
prevMonthBtnRef === null || prevMonthBtnRef === void 0 ? void 0 : (_prevMonthBtnRef$curr = prevMonthBtnRef.current) === null || _prevMonthBtnRef$curr === void 0 ? void 0 : (_prevMonthBtnRef$curr2 = _prevMonthBtnRef$curr.focus) === null || _prevMonthBtnRef$curr2 === void 0 ? void 0 : _prevMonthBtnRef$curr2.call(_prevMonthBtnRef$curr);
|
|
136
|
+
prevMonthBtnRef === null || prevMonthBtnRef === void 0 ? void 0 : (_prevMonthBtnRef$curr3 = prevMonthBtnRef.current) === null || _prevMonthBtnRef$curr3 === void 0 ? void 0 : (_prevMonthBtnRef$curr4 = _prevMonthBtnRef$curr3.focus) === null || _prevMonthBtnRef$curr4 === void 0 ? void 0 : _prevMonthBtnRef$curr4.call(_prevMonthBtnRef$curr3);
|
|
100
137
|
}
|
|
101
138
|
}
|
|
102
|
-
|
|
103
|
-
if (newFocusedDayDate) {
|
|
104
|
-
handleFocusMetaDayByDay(newFocusedDayDate);
|
|
105
|
-
setTimeout(tryToFocusCurrentlyDataIsFocusedDay);
|
|
106
|
-
}
|
|
107
|
-
}, [daysArray, handleFocusMetaDayByDay, handleNextMonth, handlePrevMonth, isWithTimeWheelToo, nextYearBtnRef, prevMonthBtnRef, tryToFocusCurrentlyDataIsFocusedDay]);
|
|
139
|
+
}, [currHourBtnRef, daysArray, handleFocusMetaDayByDay, handleNextMonth, handlePrevMonth, isControllerOnly, isWithTimeWheelToo, nextYearBtnRef, onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar, prevMonthBtnRef, tryToFocusCurrentlyDataIsFocusedDay]);
|
|
108
140
|
var handlePrevYearKeyDown = React.useCallback(function (e) {
|
|
109
141
|
var key = e.key,
|
|
110
142
|
shiftKey = e.shiftKey;
|
|
@@ -118,23 +150,46 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
118
150
|
nextYearBtnRef.current.focus();
|
|
119
151
|
}
|
|
120
152
|
}
|
|
121
|
-
|
|
153
|
+
|
|
154
|
+
if (key === 'Home') {
|
|
155
|
+
onHomeKeyDownInsideCalendar();
|
|
156
|
+
e.preventDefault();
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
if (key === 'End') {
|
|
160
|
+
onEndKeyDownInsideCalendar();
|
|
161
|
+
e.preventDefault();
|
|
162
|
+
}
|
|
163
|
+
}, [nextMonthBtnRef, nextYearBtnRef, onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar]);
|
|
122
164
|
var handlePrevMonthKeyDown = React.useCallback(function (e) {
|
|
123
165
|
var key = e.key,
|
|
124
166
|
shiftKey = e.shiftKey;
|
|
125
167
|
|
|
126
168
|
if (key === 'Tab') {
|
|
127
|
-
e.preventDefault();
|
|
128
|
-
|
|
129
169
|
if (shiftKey) {
|
|
130
|
-
|
|
170
|
+
// TAB CYCLE IMPLEMENTATION
|
|
171
|
+
if (!isControllerOnly) {
|
|
172
|
+
var _currMeridiemBtnRef$c3, _currMeridiemBtnRef$c4;
|
|
131
173
|
|
|
132
|
-
|
|
174
|
+
e.preventDefault();
|
|
175
|
+
if (isWithTimeWheelToo) currMeridiemBtnRef === null || currMeridiemBtnRef === void 0 ? void 0 : (_currMeridiemBtnRef$c3 = currMeridiemBtnRef.current) === null || _currMeridiemBtnRef$c3 === void 0 ? void 0 : (_currMeridiemBtnRef$c4 = _currMeridiemBtnRef$c3.focus) === null || _currMeridiemBtnRef$c4 === void 0 ? void 0 : _currMeridiemBtnRef$c4.call(_currMeridiemBtnRef$c3);else tryToFocusDayRegion();
|
|
176
|
+
}
|
|
133
177
|
} else {
|
|
178
|
+
e.preventDefault();
|
|
134
179
|
nextMonthBtnRef.current.focus();
|
|
135
180
|
}
|
|
136
181
|
}
|
|
137
|
-
|
|
182
|
+
|
|
183
|
+
if (key === 'Home') {
|
|
184
|
+
onHomeKeyDownInsideCalendar();
|
|
185
|
+
e.preventDefault();
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
if (key === 'End') {
|
|
189
|
+
onEndKeyDownInsideCalendar();
|
|
190
|
+
e.preventDefault();
|
|
191
|
+
}
|
|
192
|
+
}, [currMeridiemBtnRef, isControllerOnly, isWithTimeWheelToo, nextMonthBtnRef, onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar, tryToFocusDayRegion]);
|
|
138
193
|
var handleNextMonthKeyDown = React.useCallback(function (e) {
|
|
139
194
|
var key = e.key,
|
|
140
195
|
shiftKey = e.shiftKey;
|
|
@@ -148,7 +203,17 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
148
203
|
prevYearBtnRef.current.focus();
|
|
149
204
|
}
|
|
150
205
|
}
|
|
151
|
-
|
|
206
|
+
|
|
207
|
+
if (key === 'Home') {
|
|
208
|
+
onHomeKeyDownInsideCalendar();
|
|
209
|
+
e.preventDefault();
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
if (key === 'End') {
|
|
213
|
+
onEndKeyDownInsideCalendar();
|
|
214
|
+
e.preventDefault();
|
|
215
|
+
}
|
|
216
|
+
}, [onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar, prevMonthBtnRef, prevYearBtnRef]);
|
|
152
217
|
var handleNextYearKeyDown = React.useCallback(function (e) {
|
|
153
218
|
var key = e.key,
|
|
154
219
|
shiftKey = e.shiftKey;
|
|
@@ -164,7 +229,17 @@ var useKeyboardHandlers = function useKeyboardHandlers(_ref) {
|
|
|
164
229
|
|
|
165
230
|
if (!shiftKey) tryToFocusDayRegion();
|
|
166
231
|
}
|
|
167
|
-
|
|
232
|
+
|
|
233
|
+
if (key === 'Home') {
|
|
234
|
+
onHomeKeyDownInsideCalendar();
|
|
235
|
+
e.preventDefault();
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
if (key === 'End') {
|
|
239
|
+
onEndKeyDownInsideCalendar();
|
|
240
|
+
e.preventDefault();
|
|
241
|
+
}
|
|
242
|
+
}, [tryToFocusDayRegion, prevYearBtnRef, onHomeKeyDownInsideCalendar, onEndKeyDownInsideCalendar]);
|
|
168
243
|
return React.useMemo(function () {
|
|
169
244
|
return {
|
|
170
245
|
handleDayOnKeyDown: handleDayOnKeyDown,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useKeyboardHandlers.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useCallback } from 'react';\nimport { sumValuesToDate } from '../../../utils/dateHelpers';\nimport type { fiveBySevenCurrentMonthDaysT, onKeyDownT, latestInteractionRegionT } from '../../../index.d';\nimport type { handleDayOnKeyDownT, KeyboardHandlersT, HeaderButtonsRefsT } from './CalendarContext';\n\ninterface useKeyboardHandlersArgsT extends Partial<HeaderButtonsRefsT> {\n focusedDay: fiveBySevenCurrentMonthDaysT;\n daysArray: fiveBySevenCurrentMonthDaysT[];\n handlePrevMonth: () => void;\n handleNextMonth: () => void;\n pickerButtonRef: React.MutableRefObject<HTMLButtonElement>;\n currMeridiemBtnRef: React.MutableRefObject<HTMLButtonElement>;\n isWithTimeWheelToo: boolean;\n setShowCalendar: React.Dispatch<React.SetStateAction<boolean>>;\n setLatestInteractionRegion: React.Dispatch<React.SetStateAction<latestInteractionRegionT>>;\n handleFocusMetaDay: (metaDayToFocus: fiveBySevenCurrentMonthDaysT) => void;\n handleFocusMetaDayByDay: (dayToFocus: Date) => void;\n tryToFocusCurrentlyDataIsFocusedDay: () => void;\n hideDate: boolean;\n hideTime: boolean;\n preventCloseOnSelection: boolean;\n monthInputRef: React.RefObject<HTMLInputElement>;\n hourInputRef: React.RefObject<HTMLInputElement>;\n onPickerOpen: () => void;\n onPickerClose: () => void;\n}\n\nexport const useKeyboardHandlers = ({\n focusedDay,\n daysArray,\n handlePrevMonth,\n handleNextMonth,\n prevYearBtnRef,\n prevMonthBtnRef,\n nextMonthBtnRef,\n nextYearBtnRef,\n currMeridiemBtnRef,\n isWithTimeWheelToo,\n handleFocusMetaDay,\n handleFocusMetaDayByDay,\n tryToFocusCurrentlyDataIsFocusedDay,\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n setLatestInteractionRegion,\n}: useKeyboardHandlersArgsT): KeyboardHandlersT => {\n const tryToFocusDayRegion = useCallback(() => {\n setLatestInteractionRegion('calendar-days');\n if (!focusedDay) {\n const newFocusDay = daysArray.find(({ isCurrMonthDay }) => isCurrMonthDay);\n if (newFocusDay)\n setTimeout(() => {\n handleFocusMetaDay(newFocusDay);\n });\n } else {\n tryToFocusCurrentlyDataIsFocusedDay();\n }\n }, [daysArray, focusedDay, handleFocusMetaDay, setLatestInteractionRegion, tryToFocusCurrentlyDataIsFocusedDay]);\n\n const onHomeKeyDown = useCallback(() => {\n if (!hideDate) monthInputRef?.current?.focus?.();\n else if (!hideTime) hourInputRef?.current?.focus?.();\n }, [hideDate, hideTime, monthInputRef, hourInputRef]);\n const handlePickerIconKeyDown: onKeyDownT<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n const preventDefaultKeys = ['Home'];\n if (preventDefaultKeys.includes(key)) e.preventDefault();\n if (key === 'Home') onHomeKeyDown();\n },\n [onHomeKeyDown],\n );\n\n const handleDayOnKeyDown: handleDayOnKeyDownT = useCallback(\n (e, metaDay) => {\n let newFocusedDayDate;\n const { day } = metaDay;\n const { key, shiftKey } = e;\n if (key === 'ArrowUp') newFocusedDayDate = sumValuesToDate(day, { daysToSum: -7 });\n else if (key === 'ArrowDown') newFocusedDayDate = sumValuesToDate(day, { daysToSum: 7 });\n else if (key === 'ArrowLeft') {\n newFocusedDayDate = sumValuesToDate(day, { daysToSum: -1 });\n if (metaDay === daysArray[1]) {\n handlePrevMonth();\n }\n } else if (key === 'ArrowRight') {\n newFocusedDayDate = sumValuesToDate(day, { daysToSum: 1 });\n if (metaDay === daysArray[daysArray.length - 2]) {\n handleNextMonth();\n }\n } else if (key === 'Tab') {\n if (shiftKey) {\n e.preventDefault();\n nextYearBtnRef?.current?.focus?.();\n } else if (!isWithTimeWheelToo) {\n // Before it was like https://jira.elliemae.io/browse/PUI-6632\n // setShowCalendar(false);\n // onPickerClose();\n // we are implementing focus cycle now\n // if someone changes his mind, remove comments to the above and add comments below\n // setShowCalendar onPickerClose are recibed as part of the args of the hook already\n e.preventDefault();\n prevMonthBtnRef?.current?.focus?.();\n }\n }\n\n if (newFocusedDayDate) {\n handleFocusMetaDayByDay(newFocusedDayDate);\n setTimeout(tryToFocusCurrentlyDataIsFocusedDay);\n }\n },\n [\n daysArray,\n handleFocusMetaDayByDay,\n handleNextMonth,\n handlePrevMonth,\n isWithTimeWheelToo,\n nextYearBtnRef,\n prevMonthBtnRef,\n tryToFocusCurrentlyDataIsFocusedDay,\n ],\n );\n const handlePrevYearKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n nextMonthBtnRef.current.focus();\n } else {\n nextYearBtnRef.current.focus();\n }\n }\n },\n [nextMonthBtnRef, nextYearBtnRef],\n );\n const handlePrevMonthKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n if (isWithTimeWheelToo) currMeridiemBtnRef?.current?.focus?.();\n else tryToFocusDayRegion();\n } else {\n nextMonthBtnRef.current.focus();\n }\n }\n },\n [currMeridiemBtnRef, isWithTimeWheelToo, nextMonthBtnRef, tryToFocusDayRegion],\n );\n const handleNextMonthKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n prevMonthBtnRef.current.focus();\n } else {\n prevYearBtnRef.current.focus();\n }\n }\n },\n [prevMonthBtnRef, prevYearBtnRef],\n );\n const handleNextYearKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n prevYearBtnRef?.current?.focus?.();\n }\n if (!shiftKey) tryToFocusDayRegion();\n }\n },\n [tryToFocusDayRegion, prevYearBtnRef],\n );\n\n return useMemo(\n () => ({\n handleDayOnKeyDown,\n handlePrevYearKeyDown,\n handlePrevMonthKeyDown,\n handleNextMonthKeyDown,\n handleNextYearKeyDown,\n handlePickerIconKeyDown,\n }),\n [\n handleDayOnKeyDown,\n handlePrevYearKeyDown,\n handlePrevMonthKeyDown,\n handleNextMonthKeyDown,\n handleNextYearKeyDown,\n handlePickerIconKeyDown,\n ],\n );\n};\n"],"names":["useKeyboardHandlers","focusedDay","daysArray","handlePrevMonth","handleNextMonth","prevYearBtnRef","prevMonthBtnRef","nextMonthBtnRef","nextYearBtnRef","currMeridiemBtnRef","isWithTimeWheelToo","handleFocusMetaDay","handleFocusMetaDayByDay","tryToFocusCurrentlyDataIsFocusedDay","hideDate","hideTime","monthInputRef","hourInputRef","setLatestInteractionRegion","tryToFocusDayRegion","useCallback","newFocusDay","find","isCurrMonthDay","setTimeout","onHomeKeyDown","current","focus","handlePickerIconKeyDown","e","key","preventDefaultKeys","includes","preventDefault","handleDayOnKeyDown","metaDay","newFocusedDayDate","day","shiftKey","sumValuesToDate","daysToSum","length","handlePrevYearKeyDown","handlePrevMonthKeyDown","handleNextMonthKeyDown","handleNextYearKeyDown","useMemo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useKeyboardHandlers.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useCallback } from 'react';\nimport { sumValuesToDate } from '../../../utils/dateHelpers';\nimport type { fiveBySevenCurrentMonthDaysT, onKeyDownT, latestInteractionRegionT } from '../../../index.d';\nimport type { handleDayOnKeyDownT, KeyboardHandlersT, HeaderButtonsRefsT } from './CalendarContext';\n\ninterface useKeyboardHandlersArgsT extends Partial<HeaderButtonsRefsT> {\n focusedDay: fiveBySevenCurrentMonthDaysT;\n daysArray: fiveBySevenCurrentMonthDaysT[];\n handlePrevMonth: () => void;\n handleNextMonth: () => void;\n pickerButtonRef: React.MutableRefObject<HTMLButtonElement>;\n currMeridiemBtnRef: React.MutableRefObject<HTMLButtonElement>;\n currHourBtnRef: React.MutableRefObject<HTMLButtonElement>;\n isWithTimeWheelToo: boolean;\n isControllerOnly: boolean;\n setShowCalendar: React.Dispatch<React.SetStateAction<boolean>>;\n setLatestInteractionRegion: React.Dispatch<React.SetStateAction<latestInteractionRegionT>>;\n handleFocusMetaDay: (metaDayToFocus: fiveBySevenCurrentMonthDaysT) => void;\n handleFocusMetaDayByDay: (dayToFocus: Date) => void;\n tryToFocusCurrentlyDataIsFocusedDay: () => void;\n hideDate: boolean;\n hideTime: boolean;\n preventCloseOnSelection: boolean;\n monthInputRef: React.RefObject<HTMLInputElement>;\n hourInputRef: React.RefObject<HTMLInputElement>;\n onPickerOpen: () => void;\n onPickerClose: () => void;\n}\n\nexport const useKeyboardHandlers = ({\n focusedDay,\n daysArray,\n handlePrevMonth,\n handleNextMonth,\n prevYearBtnRef,\n prevMonthBtnRef,\n nextMonthBtnRef,\n nextYearBtnRef,\n currMeridiemBtnRef,\n currHourBtnRef,\n isWithTimeWheelToo,\n isControllerOnly,\n handleFocusMetaDay,\n handleFocusMetaDayByDay,\n tryToFocusCurrentlyDataIsFocusedDay,\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n setLatestInteractionRegion,\n}: useKeyboardHandlersArgsT): KeyboardHandlersT => {\n const tryToFocusDayRegion = useCallback(() => {\n setLatestInteractionRegion('calendar-days');\n if (!focusedDay) {\n const newFocusDay = daysArray.find(({ isCurrMonthDay }) => isCurrMonthDay);\n if (newFocusDay)\n setTimeout(() => {\n handleFocusMetaDay(newFocusDay);\n });\n } else {\n tryToFocusCurrentlyDataIsFocusedDay();\n }\n }, [daysArray, focusedDay, handleFocusMetaDay, setLatestInteractionRegion, tryToFocusCurrentlyDataIsFocusedDay]);\n\n const onHomeKeyDownInsideCalendar = useCallback(() => {\n prevMonthBtnRef?.current?.focus?.();\n }, [prevMonthBtnRef]);\n const onEndKeyDownInsideCalendar = useCallback(() => {\n if (isWithTimeWheelToo) currMeridiemBtnRef?.current?.focus?.();\n else tryToFocusDayRegion();\n }, [currMeridiemBtnRef, isWithTimeWheelToo, tryToFocusDayRegion]);\n\n const onHomeKeyDownTriggerIcon = useCallback(() => {\n if (!hideDate) monthInputRef?.current?.focus?.();\n else if (!hideTime) hourInputRef?.current?.focus?.();\n }, [hideDate, hideTime, monthInputRef, hourInputRef]);\n const handlePickerIconKeyDown: onKeyDownT<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n const preventDefaultKeys = ['Home', 'End'];\n const stopPropagationKeys = ['Home', 'End'];\n if (preventDefaultKeys.includes(key)) e.preventDefault();\n if (stopPropagationKeys.includes(key)) e.stopPropagation();\n if (key === 'Home') onHomeKeyDownTriggerIcon();\n },\n [onHomeKeyDownTriggerIcon],\n );\n\n const handleDayOnKeyDown: handleDayOnKeyDownT = useCallback(\n (e, metaDay) => {\n let newFocusedDayDate;\n const { day } = metaDay;\n const { key, shiftKey } = e;\n const preventDefaultKeys = ['Home', 'End', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n const stopPropagationKeys = ['Home', 'End', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n if (preventDefaultKeys.includes(key)) e.preventDefault();\n if (stopPropagationKeys.includes(key)) e.stopPropagation();\n\n if (key === 'ArrowUp') newFocusedDayDate = sumValuesToDate(day, { daysToSum: -7 });\n if (key === 'ArrowDown') newFocusedDayDate = sumValuesToDate(day, { daysToSum: 7 });\n if (key === 'ArrowLeft') {\n newFocusedDayDate = sumValuesToDate(day, { daysToSum: -1 });\n if (metaDay === daysArray[1]) {\n handlePrevMonth();\n }\n }\n if (key === 'ArrowRight') {\n newFocusedDayDate = sumValuesToDate(day, { daysToSum: 1 });\n if (metaDay === daysArray[daysArray.length - 2]) {\n handleNextMonth();\n }\n }\n if (newFocusedDayDate) {\n handleFocusMetaDayByDay(newFocusedDayDate);\n setTimeout(tryToFocusCurrentlyDataIsFocusedDay);\n }\n if (key === 'Home') onHomeKeyDownInsideCalendar();\n if (key === 'End') onEndKeyDownInsideCalendar();\n // TAB CYCLE IMPLEMENTATION\n if (!isControllerOnly)\n if (key === 'Tab') {\n e.preventDefault(); // we only prevent default if it's not controller only\n if (shiftKey) {\n nextYearBtnRef?.current?.focus?.();\n } else if (isWithTimeWheelToo) {\n currHourBtnRef?.current?.focus?.();\n } else {\n // Before it was like https://jira.elliemae.io/browse/PUI-6632\n // setShowCalendar(false);\n // onPickerClose();\n // we are implementing focus cycle now\n // if someone changes his mind, remove comments to the above and add comments below\n // setShowCalendar onPickerClose are recibed as part of the args of the hook already\n prevMonthBtnRef?.current?.focus?.();\n }\n }\n },\n [\n currHourBtnRef,\n daysArray,\n handleFocusMetaDayByDay,\n handleNextMonth,\n handlePrevMonth,\n isControllerOnly,\n isWithTimeWheelToo,\n nextYearBtnRef,\n onEndKeyDownInsideCalendar,\n onHomeKeyDownInsideCalendar,\n prevMonthBtnRef,\n tryToFocusCurrentlyDataIsFocusedDay,\n ],\n );\n const handlePrevYearKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n nextMonthBtnRef.current.focus();\n } else {\n nextYearBtnRef.current.focus();\n }\n }\n if (key === 'Home') {\n onHomeKeyDownInsideCalendar();\n e.preventDefault();\n }\n if (key === 'End') {\n onEndKeyDownInsideCalendar();\n e.preventDefault();\n }\n },\n [nextMonthBtnRef, nextYearBtnRef, onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar],\n );\n const handlePrevMonthKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n if (shiftKey) {\n // TAB CYCLE IMPLEMENTATION\n if (!isControllerOnly) {\n e.preventDefault();\n if (isWithTimeWheelToo) currMeridiemBtnRef?.current?.focus?.();\n else tryToFocusDayRegion();\n }\n } else {\n e.preventDefault();\n nextMonthBtnRef.current.focus();\n }\n }\n if (key === 'Home') {\n onHomeKeyDownInsideCalendar();\n e.preventDefault();\n }\n if (key === 'End') {\n onEndKeyDownInsideCalendar();\n e.preventDefault();\n }\n },\n [\n currMeridiemBtnRef,\n isControllerOnly,\n isWithTimeWheelToo,\n nextMonthBtnRef,\n onEndKeyDownInsideCalendar,\n onHomeKeyDownInsideCalendar,\n tryToFocusDayRegion,\n ],\n );\n const handleNextMonthKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n prevMonthBtnRef.current.focus();\n } else {\n prevYearBtnRef.current.focus();\n }\n }\n if (key === 'Home') {\n onHomeKeyDownInsideCalendar();\n e.preventDefault();\n }\n if (key === 'End') {\n onEndKeyDownInsideCalendar();\n e.preventDefault();\n }\n },\n [onEndKeyDownInsideCalendar, onHomeKeyDownInsideCalendar, prevMonthBtnRef, prevYearBtnRef],\n );\n const handleNextYearKeyDown = useCallback(\n (e) => {\n const { key, shiftKey } = e;\n if (key === 'Tab') {\n e.preventDefault();\n if (shiftKey) {\n prevYearBtnRef?.current?.focus?.();\n }\n if (!shiftKey) tryToFocusDayRegion();\n }\n if (key === 'Home') {\n onHomeKeyDownInsideCalendar();\n e.preventDefault();\n }\n if (key === 'End') {\n onEndKeyDownInsideCalendar();\n e.preventDefault();\n }\n },\n [tryToFocusDayRegion, prevYearBtnRef, onHomeKeyDownInsideCalendar, onEndKeyDownInsideCalendar],\n );\n\n return useMemo(\n () => ({\n handleDayOnKeyDown,\n handlePrevYearKeyDown,\n handlePrevMonthKeyDown,\n handleNextMonthKeyDown,\n handleNextYearKeyDown,\n handlePickerIconKeyDown,\n }),\n [\n handleDayOnKeyDown,\n handlePrevYearKeyDown,\n handlePrevMonthKeyDown,\n handleNextMonthKeyDown,\n handleNextYearKeyDown,\n handlePickerIconKeyDown,\n ],\n );\n};\n"],"names":["useKeyboardHandlers","focusedDay","daysArray","handlePrevMonth","handleNextMonth","prevYearBtnRef","prevMonthBtnRef","nextMonthBtnRef","nextYearBtnRef","currMeridiemBtnRef","currHourBtnRef","isWithTimeWheelToo","isControllerOnly","handleFocusMetaDay","handleFocusMetaDayByDay","tryToFocusCurrentlyDataIsFocusedDay","hideDate","hideTime","monthInputRef","hourInputRef","setLatestInteractionRegion","tryToFocusDayRegion","useCallback","newFocusDay","find","isCurrMonthDay","setTimeout","onHomeKeyDownInsideCalendar","current","focus","onEndKeyDownInsideCalendar","onHomeKeyDownTriggerIcon","handlePickerIconKeyDown","e","key","preventDefaultKeys","stopPropagationKeys","includes","preventDefault","stopPropagation","handleDayOnKeyDown","metaDay","newFocusedDayDate","day","shiftKey","sumValuesToDate","daysToSum","length","handlePrevYearKeyDown","handlePrevMonthKeyDown","handleNextMonthKeyDown","handleNextYearKeyDown","useMemo"],"mappings":"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"}
|
|
@@ -45,8 +45,10 @@ var useConfigCalendarWithTimeWheelCTX = function useConfigCalendarWithTimeWheelC
|
|
|
45
45
|
}, [hideDate, hideTime, monthInputRef, hourInputRef]);
|
|
46
46
|
var handlePickerIconKeyDown = React.useCallback(function (e) {
|
|
47
47
|
var key = e.key;
|
|
48
|
-
var preventDefaultKeys = ['Home'];
|
|
48
|
+
var preventDefaultKeys = ['Home', 'End'];
|
|
49
|
+
var stopPropagationKeys = ['Home', 'End'];
|
|
49
50
|
if (preventDefaultKeys.includes(key)) e.preventDefault();
|
|
51
|
+
if (stopPropagationKeys.includes(key)) e.stopPropagation();
|
|
50
52
|
if (key === 'Home') onHomeKeyDown();
|
|
51
53
|
}, [onHomeKeyDown]);
|
|
52
54
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfigCalendarWithTimeWheelCTX.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useState, useCallback, useContext } from 'react';\nimport { usePopper } from 'react-popper';\nimport { CONTROLLED_DATE_TIME_PICKER_TYPES } from '../../../ControlledDateTimePickerTypes';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { useOnClickOutside } from '../../../utils/hooks/useOnClickOutside';\nimport type { onKeyDownT } from '../../../index.d';\nimport { CalendarContext } from '../Calendar/CalendarContext';\nimport { TimeWheelContext } from '../TimeWheel/TimeWheelContext';\nimport type { CalendarWithTimeWheelContextT } from './CalendarWithTimeWheelContext';\n\nexport const useConfigCalendarWithTimeWheelCTX = (): CalendarWithTimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { type, onPickerOpen, onPickerClose },\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n } = useContext(ControlledDateTimePickerContext);\n const { handleToggleCalendar } = useContext(CalendarContext);\n const { handleToggleTimePicker } = useContext(TimeWheelContext);\n const [showCalendarWithTimeWheel, setShowCalendarWithTimeWheel] = useState(false);\n const onHomeKeyDown = useCallback(() => {\n if (!hideDate) monthInputRef?.current?.focus?.();\n else if (!hideTime) hourInputRef?.current?.focus?.();\n }, [hideDate, hideTime, monthInputRef, hourInputRef]);\n const handlePickerIconKeyDown: onKeyDownT<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n const preventDefaultKeys = ['Home'];\n if (preventDefaultKeys.includes(key)) e.preventDefault();\n if (key === 'Home') onHomeKeyDown();\n },\n [onHomeKeyDown],\n );\n const [referenceElement, setReferenceElement] = useState(null);\n const [popperElement, setPopperElement] = useState(null);\n const [arrowElement, setArrowElement] = useState(null);\n const usePopperHelpers = usePopper(referenceElement, popperElement, {\n modifiers: [{ name: 'arrow', options: { element: arrowElement } }],\n });\n const openCalendar = useCallback(\n (e) => {\n setShowCalendarWithTimeWheel(true);\n onPickerOpen();\n setTimeout(() => handleToggleCalendar(e));\n setTimeout(() => handleToggleTimePicker(e));\n },\n [handleToggleCalendar, handleToggleTimePicker, onPickerOpen],\n );\n const closeCalendar = useCallback(\n (e) => {\n setShowCalendarWithTimeWheel(false);\n onPickerClose();\n setTimeout(() => handleToggleCalendar(e));\n setTimeout(() => handleToggleTimePicker(e));\n },\n [handleToggleCalendar, handleToggleTimePicker, onPickerClose],\n );\n\n const handleToggleCalendarWithTimeWheel = useCallback(\n (e) => {\n if (!showCalendarWithTimeWheel) openCalendar(e);\n else closeCalendar(e);\n },\n [closeCalendar, openCalendar, showCalendarWithTimeWheel],\n );\n\n useOnClickOutside(popperElement, (e) => {\n if (!pickerButtonRef?.current?.contains?.(e?.target)) closeCalendar(e);\n });\n\n const handleSetTriggerRef = useCallback(\n (newRef) => {\n pickerButtonRef.current = newRef;\n setReferenceElement(newRef);\n },\n [pickerButtonRef],\n );\n const handleMenuWrapperKeyDown = useCallback(\n (e) => {\n const { key } = e;\n if (key === 'Escape') {\n closeCalendar(e);\n pickerButtonRef?.current?.focus?.();\n }\n },\n [closeCalendar, pickerButtonRef],\n );\n\n const isControllerOnly = useMemo(() => type === CONTROLLED_DATE_TIME_PICKER_TYPES.DATE_TIME.CONTROLLER_ONLY, [type]);\n\n return useMemo(\n () => ({\n showCalendarWithTimeWheel,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n }),\n [\n showCalendarWithTimeWheel,\n usePopperHelpers,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n ],\n );\n};\n"],"names":["useConfigCalendarWithTimeWheelCTX","useContext","ControlledDateTimePickerContext","pickerButtonRef","props","type","onPickerOpen","onPickerClose","hideDate","hideTime","monthInputRef","hourInputRef","CalendarContext","handleToggleCalendar","TimeWheelContext","handleToggleTimePicker","useState","showCalendarWithTimeWheel","setShowCalendarWithTimeWheel","onHomeKeyDown","useCallback","current","focus","handlePickerIconKeyDown","e","key","preventDefaultKeys","includes","preventDefault","referenceElement","setReferenceElement","popperElement","setPopperElement","arrowElement","setArrowElement","usePopperHelpers","usePopper","modifiers","name","options","element","openCalendar","setTimeout","closeCalendar","handleToggleCalendarWithTimeWheel","useOnClickOutside","contains","target","handleSetTriggerRef","newRef","handleMenuWrapperKeyDown","isControllerOnly","useMemo","CONTROLLED_DATE_TIME_PICKER_TYPES","DATE_TIME","CONTROLLER_ONLY"],"mappings":";;;;;;;;;;;;;;;;;IAYaA,iCAAiC,GAAG,SAApCA,iCAAoC,GAAqC;AACpF,oBAOIC,gBAAU,CAACC,oFAAD,CAPd;AAAA,MACEC,eADF,eACEA,eADF;AAAA,sCAEEC,KAFF;AAAA,MAEWC,IAFX,qBAEWA,IAFX;AAAA,MAEiBC,YAFjB,qBAEiBA,YAFjB;AAAA,MAE+BC,aAF/B,qBAE+BA,aAF/B;AAAA,MAGEC,QAHF,eAGEA,QAHF;AAAA,MAIEC,QAJF,eAIEA,QAJF;AAAA,MAKEC,aALF,eAKEA,aALF;AAAA,MAMEC,YANF,eAMEA,YANF;;AAQA,qBAAiCV,gBAAU,CAACW,+EAAD,CAA3C;AAAA,MAAQC,oBAAR,gBAAQA,oBAAR;;AACA,qBAAmCZ,gBAAU,CAACa,kFAAD,CAA7C;AAAA,MAAQC,sBAAR,gBAAQA,sBAAR;;AACA,kBAAkEC,cAAQ,CAAC,KAAD,CAA1E;AAAA;AAAA,MAAOC,yBAAP;AAAA,MAAkCC,4BAAlC;;AACA,MAAMC,aAAa,GAAGC,iBAAW,CAAC,YAAM;AAAA;;AACtC,QAAI,CAACZ,QAAL,EAAeE,aAAa,SAAb,IAAAA,aAAa,WAAb,qCAAAA,aAAa,CAAEW,OAAf,0GAAwBC,KAAxB,8GAAf,KACK,IAAI,CAACb,QAAL,EAAeE,YAAY,SAAZ,IAAAA,YAAY,WAAZ,qCAAAA,YAAY,CAAEU,OAAd,0GAAuBC,KAAvB;AACrB,GAHgC,EAG9B,CAACd,QAAD,EAAWC,QAAX,EAAqBC,aAArB,EAAoCC,YAApC,CAH8B,CAAjC;AAIA,MAAMY,uBAAsD,GAAGH,iBAAW,CACxE,UAACI,CAAD,EAAO;AACL,QAAQC,GAAR,GAAgBD,CAAhB,CAAQC,GAAR;AACA,QAAMC,kBAAkB,GAAG,CAAC,MAAD,CAA3B;AACA,
|
|
1
|
+
{"version":3,"file":"useConfigCalendarWithTimeWheelCTX.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useState, useCallback, useContext } from 'react';\nimport { usePopper } from 'react-popper';\nimport { CONTROLLED_DATE_TIME_PICKER_TYPES } from '../../../ControlledDateTimePickerTypes';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { useOnClickOutside } from '../../../utils/hooks/useOnClickOutside';\nimport type { onKeyDownT } from '../../../index.d';\nimport { CalendarContext } from '../Calendar/CalendarContext';\nimport { TimeWheelContext } from '../TimeWheel/TimeWheelContext';\nimport type { CalendarWithTimeWheelContextT } from './CalendarWithTimeWheelContext';\n\nexport const useConfigCalendarWithTimeWheelCTX = (): CalendarWithTimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { type, onPickerOpen, onPickerClose },\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n } = useContext(ControlledDateTimePickerContext);\n const { handleToggleCalendar } = useContext(CalendarContext);\n const { handleToggleTimePicker } = useContext(TimeWheelContext);\n const [showCalendarWithTimeWheel, setShowCalendarWithTimeWheel] = useState(false);\n const onHomeKeyDown = useCallback(() => {\n if (!hideDate) monthInputRef?.current?.focus?.();\n else if (!hideTime) hourInputRef?.current?.focus?.();\n }, [hideDate, hideTime, monthInputRef, hourInputRef]);\n const handlePickerIconKeyDown: onKeyDownT<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n const preventDefaultKeys = ['Home', 'End'];\n const stopPropagationKeys = ['Home', 'End'];\n if (preventDefaultKeys.includes(key)) e.preventDefault();\n if (stopPropagationKeys.includes(key)) e.stopPropagation();\n if (key === 'Home') onHomeKeyDown();\n },\n [onHomeKeyDown],\n );\n const [referenceElement, setReferenceElement] = useState(null);\n const [popperElement, setPopperElement] = useState(null);\n const [arrowElement, setArrowElement] = useState(null);\n const usePopperHelpers = usePopper(referenceElement, popperElement, {\n modifiers: [{ name: 'arrow', options: { element: arrowElement } }],\n });\n const openCalendar = useCallback(\n (e) => {\n setShowCalendarWithTimeWheel(true);\n onPickerOpen();\n setTimeout(() => handleToggleCalendar(e));\n setTimeout(() => handleToggleTimePicker(e));\n },\n [handleToggleCalendar, handleToggleTimePicker, onPickerOpen],\n );\n const closeCalendar = useCallback(\n (e) => {\n setShowCalendarWithTimeWheel(false);\n onPickerClose();\n setTimeout(() => handleToggleCalendar(e));\n setTimeout(() => handleToggleTimePicker(e));\n },\n [handleToggleCalendar, handleToggleTimePicker, onPickerClose],\n );\n\n const handleToggleCalendarWithTimeWheel = useCallback(\n (e) => {\n if (!showCalendarWithTimeWheel) openCalendar(e);\n else closeCalendar(e);\n },\n [closeCalendar, openCalendar, showCalendarWithTimeWheel],\n );\n\n useOnClickOutside(popperElement, (e) => {\n if (!pickerButtonRef?.current?.contains?.(e?.target)) closeCalendar(e);\n });\n\n const handleSetTriggerRef = useCallback(\n (newRef) => {\n pickerButtonRef.current = newRef;\n setReferenceElement(newRef);\n },\n [pickerButtonRef],\n );\n const handleMenuWrapperKeyDown = useCallback(\n (e) => {\n const { key } = e;\n if (key === 'Escape') {\n closeCalendar(e);\n pickerButtonRef?.current?.focus?.();\n }\n },\n [closeCalendar, pickerButtonRef],\n );\n\n const isControllerOnly = useMemo(() => type === CONTROLLED_DATE_TIME_PICKER_TYPES.DATE_TIME.CONTROLLER_ONLY, [type]);\n\n return useMemo(\n () => ({\n showCalendarWithTimeWheel,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n }),\n [\n showCalendarWithTimeWheel,\n usePopperHelpers,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n ],\n );\n};\n"],"names":["useConfigCalendarWithTimeWheelCTX","useContext","ControlledDateTimePickerContext","pickerButtonRef","props","type","onPickerOpen","onPickerClose","hideDate","hideTime","monthInputRef","hourInputRef","CalendarContext","handleToggleCalendar","TimeWheelContext","handleToggleTimePicker","useState","showCalendarWithTimeWheel","setShowCalendarWithTimeWheel","onHomeKeyDown","useCallback","current","focus","handlePickerIconKeyDown","e","key","preventDefaultKeys","stopPropagationKeys","includes","preventDefault","stopPropagation","referenceElement","setReferenceElement","popperElement","setPopperElement","arrowElement","setArrowElement","usePopperHelpers","usePopper","modifiers","name","options","element","openCalendar","setTimeout","closeCalendar","handleToggleCalendarWithTimeWheel","useOnClickOutside","contains","target","handleSetTriggerRef","newRef","handleMenuWrapperKeyDown","isControllerOnly","useMemo","CONTROLLED_DATE_TIME_PICKER_TYPES","DATE_TIME","CONTROLLER_ONLY"],"mappings":";;;;;;;;;;;;;;;;;IAYaA,iCAAiC,GAAG,SAApCA,iCAAoC,GAAqC;AACpF,oBAOIC,gBAAU,CAACC,oFAAD,CAPd;AAAA,MACEC,eADF,eACEA,eADF;AAAA,sCAEEC,KAFF;AAAA,MAEWC,IAFX,qBAEWA,IAFX;AAAA,MAEiBC,YAFjB,qBAEiBA,YAFjB;AAAA,MAE+BC,aAF/B,qBAE+BA,aAF/B;AAAA,MAGEC,QAHF,eAGEA,QAHF;AAAA,MAIEC,QAJF,eAIEA,QAJF;AAAA,MAKEC,aALF,eAKEA,aALF;AAAA,MAMEC,YANF,eAMEA,YANF;;AAQA,qBAAiCV,gBAAU,CAACW,+EAAD,CAA3C;AAAA,MAAQC,oBAAR,gBAAQA,oBAAR;;AACA,qBAAmCZ,gBAAU,CAACa,kFAAD,CAA7C;AAAA,MAAQC,sBAAR,gBAAQA,sBAAR;;AACA,kBAAkEC,cAAQ,CAAC,KAAD,CAA1E;AAAA;AAAA,MAAOC,yBAAP;AAAA,MAAkCC,4BAAlC;;AACA,MAAMC,aAAa,GAAGC,iBAAW,CAAC,YAAM;AAAA;;AACtC,QAAI,CAACZ,QAAL,EAAeE,aAAa,SAAb,IAAAA,aAAa,WAAb,qCAAAA,aAAa,CAAEW,OAAf,0GAAwBC,KAAxB,8GAAf,KACK,IAAI,CAACb,QAAL,EAAeE,YAAY,SAAZ,IAAAA,YAAY,WAAZ,qCAAAA,YAAY,CAAEU,OAAd,0GAAuBC,KAAvB;AACrB,GAHgC,EAG9B,CAACd,QAAD,EAAWC,QAAX,EAAqBC,aAArB,EAAoCC,YAApC,CAH8B,CAAjC;AAIA,MAAMY,uBAAsD,GAAGH,iBAAW,CACxE,UAACI,CAAD,EAAO;AACL,QAAQC,GAAR,GAAgBD,CAAhB,CAAQC,GAAR;AACA,QAAMC,kBAAkB,GAAG,CAAC,MAAD,EAAS,KAAT,CAA3B;AACA,QAAMC,mBAAmB,GAAG,CAAC,MAAD,EAAS,KAAT,CAA5B;AACA,QAAID,kBAAkB,CAACE,QAAnB,CAA4BH,GAA5B,CAAJ,EAAsCD,CAAC,CAACK,cAAF;AACtC,QAAIF,mBAAmB,CAACC,QAApB,CAA6BH,GAA7B,CAAJ,EAAuCD,CAAC,CAACM,eAAF;AACvC,QAAIL,GAAG,KAAK,MAAZ,EAAoBN,aAAa;AAClC,GARuE,EASxE,CAACA,aAAD,CATwE,CAA1E;;AAWA,mBAAgDH,cAAQ,CAAC,IAAD,CAAxD;AAAA;AAAA,MAAOe,gBAAP;AAAA,MAAyBC,mBAAzB;;AACA,mBAA0ChB,cAAQ,CAAC,IAAD,CAAlD;AAAA;AAAA,MAAOiB,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,mBAAwClB,cAAQ,CAAC,IAAD,CAAhD;AAAA;AAAA,MAAOmB,YAAP;AAAA,MAAqBC,eAArB;;AACA,MAAMC,gBAAgB,GAAGC,qBAAS,CAACP,gBAAD,EAAmBE,aAAnB,EAAkC;AAClEM,IAAAA,SAAS,EAAE,CAAC;AAAEC,MAAAA,IAAI,EAAE,OAAR;AAAiBC,MAAAA,OAAO,EAAE;AAAEC,QAAAA,OAAO,EAAEP;AAAX;AAA1B,KAAD;AADuD,GAAlC,CAAlC;AAGA,MAAMQ,YAAY,GAAGvB,iBAAW,CAC9B,UAACI,CAAD,EAAO;AACLN,IAAAA,4BAA4B,CAAC,IAAD,CAA5B;AACAZ,IAAAA,YAAY;AACZsC,IAAAA,UAAU,CAAC;AAAA,aAAM/B,oBAAoB,CAACW,CAAD,CAA1B;AAAA,KAAD,CAAV;AACAoB,IAAAA,UAAU,CAAC;AAAA,aAAM7B,sBAAsB,CAACS,CAAD,CAA5B;AAAA,KAAD,CAAV;AACD,GAN6B,EAO9B,CAACX,oBAAD,EAAuBE,sBAAvB,EAA+CT,YAA/C,CAP8B,CAAhC;AASA,MAAMuC,aAAa,GAAGzB,iBAAW,CAC/B,UAACI,CAAD,EAAO;AACLN,IAAAA,4BAA4B,CAAC,KAAD,CAA5B;AACAX,IAAAA,aAAa;AACbqC,IAAAA,UAAU,CAAC;AAAA,aAAM/B,oBAAoB,CAACW,CAAD,CAA1B;AAAA,KAAD,CAAV;AACAoB,IAAAA,UAAU,CAAC;AAAA,aAAM7B,sBAAsB,CAACS,CAAD,CAA5B;AAAA,KAAD,CAAV;AACD,GAN8B,EAO/B,CAACX,oBAAD,EAAuBE,sBAAvB,EAA+CR,aAA/C,CAP+B,CAAjC;AAUA,MAAMuC,iCAAiC,GAAG1B,iBAAW,CACnD,UAACI,CAAD,EAAO;AACL,QAAI,CAACP,yBAAL,EAAgC0B,YAAY,CAACnB,CAAD,CAAZ,CAAhC,KACKqB,aAAa,CAACrB,CAAD,CAAb;AACN,GAJkD,EAKnD,CAACqB,aAAD,EAAgBF,YAAhB,EAA8B1B,yBAA9B,CALmD,CAArD;AAQA8B,EAAAA,wEAAiB,CAACd,aAAD,EAAgB,UAACT,CAAD,EAAO;AAAA;;AACtC,QAAI,EAACrB,eAAD,aAACA,eAAD,wCAACA,eAAe,CAAEkB,OAAlB,4EAAC,sBAA0B2B,QAA3B,mDAAC,mDAAqCxB,CAArC,aAAqCA,CAArC,uBAAqCA,CAAC,CAAEyB,MAAxC,CAAD,CAAJ,EAAsDJ,aAAa,CAACrB,CAAD,CAAb;AACvD,GAFgB,CAAjB;AAIA,MAAM0B,mBAAmB,GAAG9B,iBAAW,CACrC,UAAC+B,MAAD,EAAY;AACVhD,IAAAA,eAAe,CAACkB,OAAhB,GAA0B8B,MAA1B;AACAnB,IAAAA,mBAAmB,CAACmB,MAAD,CAAnB;AACD,GAJoC,EAKrC,CAAChD,eAAD,CALqC,CAAvC;AAOA,MAAMiD,wBAAwB,GAAGhC,iBAAW,CAC1C,UAACI,CAAD,EAAO;AACL,QAAQC,GAAR,GAAgBD,CAAhB,CAAQC,GAAR;;AACA,QAAIA,GAAG,KAAK,QAAZ,EAAsB;AAAA;;AACpBoB,MAAAA,aAAa,CAACrB,CAAD,CAAb;AACArB,MAAAA,eAAe,SAAf,IAAAA,eAAe,WAAf,sCAAAA,eAAe,CAAEkB,OAAjB,4GAA0BC,KAA1B;AACD;AACF,GAPyC,EAQ1C,CAACuB,aAAD,EAAgB1C,eAAhB,CAR0C,CAA5C;AAWA,MAAMkD,gBAAgB,GAAGC,aAAO,CAAC;AAAA,WAAMjD,IAAI,KAAKkD,wFAAiC,CAACC,SAAlC,CAA4CC,eAA3D;AAAA,GAAD,EAA6E,CAACpD,IAAD,CAA7E,CAAhC;AAEA,SAAOiD,aAAO,CACZ;AAAA,WAAO;AACLrC,MAAAA,yBAAyB,EAAzBA,yBADK;AAELiB,MAAAA,gBAAgB,EAAhBA,gBAFK;AAGLE,MAAAA,eAAe,EAAfA,eAHK;AAILC,MAAAA,gBAAgB,EAAhBA,gBAJK;AAKLS,MAAAA,iCAAiC,EAAjCA,iCALK;AAMLI,MAAAA,mBAAmB,EAAnBA,mBANK;AAOLE,MAAAA,wBAAwB,EAAxBA,wBAPK;AAQL7B,MAAAA,uBAAuB,EAAvBA,uBARK;AASL8B,MAAAA,gBAAgB,EAAhBA;AATK,KAAP;AAAA,GADY,EAYZ,CACEpC,yBADF,EAEEoB,gBAFF,EAGES,iCAHF,EAIEI,mBAJF,EAKEE,wBALF,EAME7B,uBANF,EAOE8B,gBAPF,CAZY,CAAd;AAsBD;;;;"}
|
|
@@ -37,7 +37,8 @@ var HoursList = function HoursList() {
|
|
|
37
37
|
prevHourBtnRef = _useContext.prevHourBtnRef,
|
|
38
38
|
currHourBtnRef = _useContext.currHourBtnRef,
|
|
39
39
|
nextHourBtnRef = _useContext.nextHourBtnRef,
|
|
40
|
-
getIsDisabledTime = _useContext.getIsDisabledTime
|
|
40
|
+
getIsDisabledTime = _useContext.getIsDisabledTime,
|
|
41
|
+
autoFocusHourTimeWheel = _useContext.autoFocusHourTimeWheel;
|
|
41
42
|
|
|
42
43
|
return /*#__PURE__*/React__default['default'].createElement(controlledDateTimePicker_parts_Pickers_TimeWheel_Styleds.StyledWheelList, null, /*#__PURE__*/React__default['default'].createElement(controlledDateTimePicker_parts_Pickers_TimeWheel_Styleds.StyledWheelListItem, null, /*#__PURE__*/React__default['default'].createElement(controlledDateTimePicker_parts_Pickers_TimeWheel_Styleds.StyledWheelChangeTimeBtn, {
|
|
43
44
|
"aria-label": "subtract one hour",
|
|
@@ -67,6 +68,7 @@ var HoursList = function HoursList() {
|
|
|
67
68
|
key: key
|
|
68
69
|
}, /*#__PURE__*/React__default['default'].createElement(controlledDateTimePicker_parts_Pickers_TimeWheel_Styleds.StyledTimeBtn, _extends__default['default']({
|
|
69
70
|
isCurrentListItem: isCurrentListItem,
|
|
71
|
+
autoFocus: autoFocusHourTimeWheel && isCurrentListItem,
|
|
70
72
|
"data-testid": controlledDateTimePicker_ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'SELECTED_HOUR' : 'HOUR'],
|
|
71
73
|
selected: hours.length === 2 && controlledDateTimePicker_utils_numberHelpers.convertToPositiveNumberIfPossible(hourString) === currHourNum,
|
|
72
74
|
"aria-label": "select ".concat(hourString, " hours"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HoursList.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport React, { useContext } from 'react';\nimport ChevronSmallUp from '@elliemae/ds-icons/ChevronSmallUp';\nimport ChevronSmallDown from '@elliemae/ds-icons/ChevronSmallDown';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds';\nimport { TimeWheelContext } from './TimeWheelContext';\n\nexport const HoursList = (): JSX.Element => {\n const {\n currHourNum,\n hours,\n minutes,\n meridiem,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n getIsDisabledTime,\n } = useContext(TimeWheelContext);\n\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one hour\"\n buttonType=\"text\"\n leftIcon={<ChevronSmallUp />}\n size=\"m\"\n onClick={handlePrevHour}\n onKeyDown={handlePrevHourBtnOnKeyDown}\n innerRef={prevHourBtnRef}\n tabIndex={-1}\n />\n </StyledWheelListItem>\n {visibleHours.map((hourString) => {\n const key = `timewheel-hour-${hourString}`;\n if (!hourString) return <StyledWheelListItem key={key} />;\n const currHourTimeString = `${hourString}:${minutes || '00'} ${meridiem || 'AM'}`;\n\n const isEmptyCurrValueCurrentListItem = !hours && convertToPositiveNumberIfPossible(hourString) === currHourNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || hours === hourString;\n const isDisabled = getIsDisabledTime(currHourTimeString);\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrHourOnKeyDown : undefined,\n innerRef: isCurrentListItem ? currHourBtnRef : undefined,\n };\n return (\n <StyledWheelListItem isCurrentListItem={isCurrentListItem} key={key}>\n <StyledTimeBtn\n isCurrentListItem={isCurrentListItem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'SELECTED_HOUR' : 'HOUR']}\n selected={hours.length === 2 && convertToPositiveNumberIfPossible(hourString) === currHourNum}\n aria-label={`select ${hourString} hours`}\n aria-disabled={isDisabled}\n isDisabled={isDisabled}\n buttonType=\"text\"\n labelText={hourString}\n size=\"m\"\n onClick={(e) => handleTimeWheelBtnChangeHours(hourString, e)}\n tabIndex={tabIndex}\n {...btnProps}\n />\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one hour\"\n buttonType=\"text\"\n leftIcon={<ChevronSmallDown />}\n size=\"m\"\n onClick={handleNextHour}\n onKeyDown={handleNextHourBtnOnKeyDown}\n innerRef={nextHourBtnRef}\n tabIndex={-1}\n />\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n"],"names":["HoursList","useContext","TimeWheelContext","currHourNum","hours","minutes","meridiem","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","prevHourBtnRef","currHourBtnRef","nextHourBtnRef","getIsDisabledTime","React","StyledWheelList","StyledWheelListItem","StyledWheelChangeTimeBtn","ChevronSmallUp","map","hourString","key","currHourTimeString","isEmptyCurrValueCurrentListItem","convertToPositiveNumberIfPossible","isCurrentListItem","isDisabled","tabIndex","btnProps","onKeyDown","undefined","innerRef","StyledTimeBtn","ControlledDateTimePickerDatatestid","TIMEWHEEL","length","e","ChevronSmallDown"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;IASaA,SAAS,GAAG,SAAZA,SAAY,GAAmB;AAC1C,
|
|
1
|
+
{"version":3,"file":"HoursList.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport React, { useContext } from 'react';\nimport ChevronSmallUp from '@elliemae/ds-icons/ChevronSmallUp';\nimport ChevronSmallDown from '@elliemae/ds-icons/ChevronSmallDown';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds';\nimport { TimeWheelContext } from './TimeWheelContext';\n\nexport const HoursList = (): JSX.Element => {\n const {\n currHourNum,\n hours,\n minutes,\n meridiem,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n getIsDisabledTime,\n autoFocusHourTimeWheel,\n } = useContext(TimeWheelContext);\n\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one hour\"\n buttonType=\"text\"\n leftIcon={<ChevronSmallUp />}\n size=\"m\"\n onClick={handlePrevHour}\n onKeyDown={handlePrevHourBtnOnKeyDown}\n innerRef={prevHourBtnRef}\n tabIndex={-1}\n />\n </StyledWheelListItem>\n {visibleHours.map((hourString) => {\n const key = `timewheel-hour-${hourString}`;\n if (!hourString) return <StyledWheelListItem key={key} />;\n const currHourTimeString = `${hourString}:${minutes || '00'} ${meridiem || 'AM'}`;\n\n const isEmptyCurrValueCurrentListItem = !hours && convertToPositiveNumberIfPossible(hourString) === currHourNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || hours === hourString;\n const isDisabled = getIsDisabledTime(currHourTimeString);\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrHourOnKeyDown : undefined,\n innerRef: isCurrentListItem ? currHourBtnRef : undefined,\n };\n return (\n <StyledWheelListItem isCurrentListItem={isCurrentListItem} key={key}>\n <StyledTimeBtn\n isCurrentListItem={isCurrentListItem}\n autoFocus={autoFocusHourTimeWheel && isCurrentListItem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'SELECTED_HOUR' : 'HOUR']}\n selected={hours.length === 2 && convertToPositiveNumberIfPossible(hourString) === currHourNum}\n aria-label={`select ${hourString} hours`}\n aria-disabled={isDisabled}\n isDisabled={isDisabled}\n buttonType=\"text\"\n labelText={hourString}\n size=\"m\"\n onClick={(e) => handleTimeWheelBtnChangeHours(hourString, e)}\n tabIndex={tabIndex}\n {...btnProps}\n />\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one hour\"\n buttonType=\"text\"\n leftIcon={<ChevronSmallDown />}\n size=\"m\"\n onClick={handleNextHour}\n onKeyDown={handleNextHourBtnOnKeyDown}\n innerRef={nextHourBtnRef}\n tabIndex={-1}\n />\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n"],"names":["HoursList","useContext","TimeWheelContext","currHourNum","hours","minutes","meridiem","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","prevHourBtnRef","currHourBtnRef","nextHourBtnRef","getIsDisabledTime","autoFocusHourTimeWheel","React","StyledWheelList","StyledWheelListItem","StyledWheelChangeTimeBtn","ChevronSmallUp","map","hourString","key","currHourTimeString","isEmptyCurrValueCurrentListItem","convertToPositiveNumberIfPossible","isCurrentListItem","isDisabled","tabIndex","btnProps","onKeyDown","undefined","innerRef","StyledTimeBtn","ControlledDateTimePickerDatatestid","TIMEWHEEL","length","e","ChevronSmallDown"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;IASaA,SAAS,GAAG,SAAZA,SAAY,GAAmB;AAC1C,oBAiBIC,gBAAU,CAACC,kFAAD,CAjBd;AAAA,MACEC,WADF,eACEA,WADF;AAAA,MAEEC,KAFF,eAEEA,KAFF;AAAA,MAGEC,OAHF,eAGEA,OAHF;AAAA,MAIEC,QAJF,eAIEA,QAJF;AAAA,MAKEC,YALF,eAKEA,YALF;AAAA,MAMEC,cANF,eAMEA,cANF;AAAA,MAOEC,cAPF,eAOEA,cAPF;AAAA,MAQEC,6BARF,eAQEA,6BARF;AAAA,MASEC,0BATF,eASEA,0BATF;AAAA,MAUEC,uBAVF,eAUEA,uBAVF;AAAA,MAWEC,0BAXF,eAWEA,0BAXF;AAAA,MAYEC,cAZF,eAYEA,cAZF;AAAA,MAaEC,cAbF,eAaEA,cAbF;AAAA,MAcEC,cAdF,eAcEA,cAdF;AAAA,MAeEC,iBAfF,eAeEA,iBAfF;AAAA,MAgBEC,sBAhBF,eAgBEA,sBAhBF;;AAmBA,sBACEC,wCAACC,wEAAD,qBACED,wCAACE,4EAAD,qBACEF,wCAACG,iFAAD;AACE,kBAAW,mBADb;AAEE,IAAA,UAAU,EAAC,MAFb;AAGE,IAAA,QAAQ,eAAEH,wCAACI,kCAAD,OAHZ;AAIE,IAAA,IAAI,EAAC,GAJP;AAKE,IAAA,OAAO,EAAEf,cALX;AAME,IAAA,SAAS,EAAEG,0BANb;AAOE,IAAA,QAAQ,EAAEG,cAPZ;AAQE,IAAA,QAAQ,EAAE,CAAC;AARb,IADF,CADF,EAaGP,YAAY,CAACiB,GAAb,CAAiB,UAACC,UAAD,EAAgB;AAChC,QAAMC,GAAG,4BAAqBD,UAArB,CAAT;AACA,QAAI,CAACA,UAAL,EAAiB,oBAAON,wCAACE,4EAAD;AAAqB,MAAA,GAAG,EAAEK;AAA1B,MAAP;AACjB,QAAMC,kBAAkB,aAAMF,UAAN,cAAoBpB,OAAO,IAAI,IAA/B,cAAuCC,QAAQ,IAAI,IAAnD,CAAxB;AAEA,QAAMsB,+BAA+B,GAAG,CAACxB,KAAD,IAAUyB,8EAAiC,CAACJ,UAAD,CAAjC,KAAkDtB,WAApG;AACA,QAAM2B,iBAAiB,GAAGF,+BAA+B,IAAIxB,KAAK,KAAKqB,UAAvE;AACA,QAAMM,UAAU,GAAGd,iBAAiB,CAACU,kBAAD,CAApC;AACA,QAAMK,QAAQ,GAAGF,iBAAiB,GAAG,CAAH,GAAO,CAAC,CAA1C;AACA,QAAMG,QAAQ,GAAG;AACfC,MAAAA,SAAS,EAAEJ,iBAAiB,GAAGlB,uBAAH,GAA6BuB,SAD1C;AAEfC,MAAAA,QAAQ,EAAEN,iBAAiB,GAAGf,cAAH,GAAoBoB;AAFhC,KAAjB;AAIA,wBACEhB,wCAACE,4EAAD;AAAqB,MAAA,iBAAiB,EAAES,iBAAxC;AAA2D,MAAA,GAAG,EAAEJ;AAAhE,oBACEP,wCAACkB,sEAAD;AACE,MAAA,iBAAiB,EAAEP,iBADrB;AAEE,MAAA,SAAS,EAAEZ,sBAAsB,IAAIY,iBAFvC;AAGE,qBAAaQ,8FAAkC,CAACC,SAAnC,CAA6CT,iBAAiB,GAAG,eAAH,GAAqB,MAAnF,CAHf;AAIE,MAAA,QAAQ,EAAE1B,KAAK,CAACoC,MAAN,KAAiB,CAAjB,IAAsBX,8EAAiC,CAACJ,UAAD,CAAjC,KAAkDtB,WAJpF;AAKE,qCAAsBsB,UAAtB,WALF;AAME,uBAAeM,UANjB;AAOE,MAAA,UAAU,EAAEA,UAPd;AAQE,MAAA,UAAU,EAAC,MARb;AASE,MAAA,SAAS,EAAEN,UATb;AAUE,MAAA,IAAI,EAAC,GAVP;AAWE,MAAA,OAAO,EAAE,iBAACgB,CAAD;AAAA,eAAO/B,6BAA6B,CAACe,UAAD,EAAagB,CAAb,CAApC;AAAA,OAXX;AAYE,MAAA,QAAQ,EAAET;AAZZ,OAaMC,QAbN,EADF,CADF;AAmBD,GAhCA,CAbH,eA8CEd,wCAACE,4EAAD,qBACEF,wCAACG,iFAAD;AACE,kBAAW,cADb;AAEE,IAAA,UAAU,EAAC,MAFb;AAGE,IAAA,QAAQ,eAAEH,wCAACuB,oCAAD,OAHZ;AAIE,IAAA,IAAI,EAAC,GAJP;AAKE,IAAA,OAAO,EAAEjC,cALX;AAME,IAAA,SAAS,EAAEI,0BANb;AAOE,IAAA,QAAQ,EAAEG,cAPZ;AAQE,IAAA,QAAQ,EAAE,CAAC;AARb,IADF,CA9CF,CADF;AA6DD;;;;"}
|
|
@@ -40,6 +40,7 @@ var defaultTimePickerContext = {
|
|
|
40
40
|
meridiem: 'AM',
|
|
41
41
|
handleTimeWheelBtnChangeMeridiem: noop,
|
|
42
42
|
isControllerOnly: false,
|
|
43
|
+
autoFocusHourTimeWheel: false,
|
|
43
44
|
handlePrevHourBtnOnKeyDown: noop,
|
|
44
45
|
handleCurrHourOnKeyDown: noop,
|
|
45
46
|
handleNextHourBtnOnKeyDown: noop,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeWheelContext.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/indent */\n/* eslint-disable max-lines */\nimport React, { createContext, createRef } from 'react';\n// import type { DateMonth } from '../../../index.d';\nexport interface WheelsButtonsRefsT {\n prevHourBtnRef: React.RefObject<HTMLButtonElement>;\n currHourBtnRef: React.RefObject<HTMLButtonElement>;\n nextHourBtnRef: React.RefObject<HTMLButtonElement>;\n prevMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n currMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n nextMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n // prevSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n // currSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n // nextSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n prevMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n currMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n nextMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n}\nexport interface KeyboardHandlersT {\n handlePrevHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrHourOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePrevMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrMinutesOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n // handlePrevSecondBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n // handleCurrSecondsOnKeyDown: (e: React.KeyboardEvent) => void;\n // handleNextSecondBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePrevMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrMeridiemOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n}\nexport interface PopperTriggerLogicT {\n showTimePicker: boolean;\n setShowTimePicker: React.Dispatch<React.SetStateAction<boolean>>;\n setPopperElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;\n setArrowElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;\n usePopperHelpers: {\n attributes: Record<string, unknown>;\n styles: Record<string, React.CSSProperties>;\n };\n handleToggleTimePicker: (e?: React.MouseEvent<HTMLButtonElement>) => void;\n handleSetTriggerRef: (instance: HTMLButtonElement) => void;\n handleMenuWrapperKeyDown: (e?: React.KeyboardEvent<HTMLElement>) => void;\n}\nexport interface useCurrentDisplayedWheelsLogicT {\n currHourNum: number;\n hours: string;\n visibleHours: string[];\n handlePrevHour: (e: React.MouseEvent) => void;\n handleNextHour: (e: React.MouseEvent) => void;\n handleTimeWheelBtnChangeHours: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;\n currMinuteNum: number;\n minutes: string;\n visibleMinutes: string[];\n handlePrevMinute: (e: React.MouseEvent) => void;\n handleNextMinute: (e: React.MouseEvent) => void;\n handleTimeWheelBtnChangeMinutes: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;\n // currSecondNum: number;\n // seconds: string;\n // visibleSeconds: string[];\n // handlePrevSecond: (e: React.MouseEvent) => void;\n // handleNextSecond: (e: React.MouseEvent) => void;\n // handleTimeWheelBtnChangeSeconds: (\n // newVal: string,\n // e: React.MouseEvent<HTMLButtonElement>,\n // ) => void;\n meridiem: string;\n handleTimeWheelBtnChangeMeridiem: (newMeridiem: string, e: React.MouseEvent) => void;\n}\nexport interface TimeWheelContextT\n extends PopperTriggerLogicT,\n useCurrentDisplayedWheelsLogicT,\n KeyboardHandlersT,\n WheelsButtonsRefsT {\n tempTimeString: string;\n isControllerOnly: boolean;\n getIsDisabledTime: (val: string) => boolean;\n}\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop = (): void => {};\nexport const defaultTimePickerContext: TimeWheelContextT = {\n tempTimeString: '',\n showTimePicker: false,\n setShowTimePicker: noop,\n setPopperElement: noop,\n setArrowElement: noop,\n usePopperHelpers: null,\n handleToggleTimePicker: noop,\n handleSetTriggerRef: noop,\n handleMenuWrapperKeyDown: noop,\n\n currHourNum: 1,\n hours: '01',\n visibleHours: [''],\n handlePrevHour: noop,\n handleNextHour: noop,\n handleTimeWheelBtnChangeHours: noop,\n currMinuteNum: 1,\n minutes: '00',\n visibleMinutes: [''],\n handlePrevMinute: noop,\n handleNextMinute: noop,\n handleTimeWheelBtnChangeMinutes: noop,\n // currSecondNum: 1,\n // seconds: '00',\n // visibleSeconds: [''],\n // handlePrevSecond: noop,\n // handleNextSecond: noop,\n // handleTimeWheelBtnChangeSeconds: noop,\n meridiem: 'AM',\n handleTimeWheelBtnChangeMeridiem: noop,\n isControllerOnly: false,\n\n handlePrevHourBtnOnKeyDown: noop,\n handleCurrHourOnKeyDown: noop,\n handleNextHourBtnOnKeyDown: noop,\n handlePrevMinuteBtnOnKeyDown: noop,\n handleCurrMinutesOnKeyDown: noop,\n handleNextMinuteBtnOnKeyDown: noop,\n // handlePrevSecondBtnOnKeyDown: noop,\n // handleCurrSecondsOnKeyDown: noop,\n // handleNextSecondBtnOnKeyDown: noop,\n handlePrevMeridiemBtnOnKeyDown: noop,\n handleCurrMeridiemOnKeyDown: noop,\n handleNextMeridiemBtnOnKeyDown: noop,\n handlePickerIconKeyDown: noop,\n\n prevHourBtnRef: createRef<HTMLButtonElement>(),\n currHourBtnRef: createRef<HTMLButtonElement>(),\n nextHourBtnRef: createRef<HTMLButtonElement>(),\n prevMinutesBtnRef: createRef<HTMLButtonElement>(),\n currMinutesBtnRef: createRef<HTMLButtonElement>(),\n nextMinutesBtnRef: createRef<HTMLButtonElement>(),\n // prevSecondsBtnRef: createRef<HTMLButtonElement>(),\n // currSecondsBtnRef: createRef<HTMLButtonElement>(),\n // nextSecondsBtnRef: createRef<HTMLButtonElement>(),\n prevMeridiemBtnRef: createRef<HTMLButtonElement>(),\n currMeridiemBtnRef: createRef<HTMLButtonElement>(),\n nextMeridiemBtnRef: createRef<HTMLButtonElement>(),\n\n getIsDisabledTime: () => false,\n};\n/** Context for cross component communication */\nexport const TimeWheelContext = createContext(defaultTimePickerContext);\n\nexport default TimeWheelContext;\n"],"names":["noop","defaultTimePickerContext","tempTimeString","showTimePicker","setShowTimePicker","setPopperElement","setArrowElement","usePopperHelpers","handleToggleTimePicker","handleSetTriggerRef","handleMenuWrapperKeyDown","currHourNum","hours","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","currMinuteNum","minutes","visibleMinutes","handlePrevMinute","handleNextMinute","handleTimeWheelBtnChangeMinutes","meridiem","handleTimeWheelBtnChangeMeridiem","isControllerOnly","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","handlePrevMinuteBtnOnKeyDown","handleCurrMinutesOnKeyDown","handleNextMinuteBtnOnKeyDown","handlePrevMeridiemBtnOnKeyDown","handleCurrMeridiemOnKeyDown","handleNextMeridiemBtnOnKeyDown","handlePickerIconKeyDown","prevHourBtnRef","createRef","currHourBtnRef","nextHourBtnRef","prevMinutesBtnRef","currMinutesBtnRef","nextMinutesBtnRef","prevMeridiemBtnRef","currMeridiemBtnRef","nextMeridiemBtnRef","getIsDisabledTime","TimeWheelContext","createContext"],"mappings":";;;;;;AAAA;;
|
|
1
|
+
{"version":3,"file":"TimeWheelContext.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/indent */\n/* eslint-disable max-lines */\nimport React, { createContext, createRef } from 'react';\n// import type { DateMonth } from '../../../index.d';\nexport interface WheelsButtonsRefsT {\n prevHourBtnRef: React.RefObject<HTMLButtonElement>;\n currHourBtnRef: React.RefObject<HTMLButtonElement>;\n nextHourBtnRef: React.RefObject<HTMLButtonElement>;\n prevMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n currMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n nextMinutesBtnRef: React.RefObject<HTMLButtonElement>;\n // prevSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n // currSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n // nextSecondsBtnRef: React.RefObject<HTMLButtonElement>;\n prevMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n currMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n nextMeridiemBtnRef: React.RefObject<HTMLButtonElement>;\n}\nexport interface KeyboardHandlersT {\n handlePrevHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrHourOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePrevMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrMinutesOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n // handlePrevSecondBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n // handleCurrSecondsOnKeyDown: (e: React.KeyboardEvent) => void;\n // handleNextSecondBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePrevMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handleCurrMeridiemOnKeyDown: (e: React.KeyboardEvent) => void;\n handleNextMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;\n handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n}\nexport interface PopperTriggerLogicT {\n showTimePicker: boolean;\n setShowTimePicker: React.Dispatch<React.SetStateAction<boolean>>;\n setPopperElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;\n setArrowElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;\n usePopperHelpers: {\n attributes: Record<string, unknown>;\n styles: Record<string, React.CSSProperties>;\n };\n handleToggleTimePicker: (e?: React.MouseEvent<HTMLButtonElement>) => void;\n handleSetTriggerRef: (instance: HTMLButtonElement) => void;\n handleMenuWrapperKeyDown: (e?: React.KeyboardEvent<HTMLElement>) => void;\n}\nexport interface useCurrentDisplayedWheelsLogicT {\n currHourNum: number;\n hours: string;\n visibleHours: string[];\n handlePrevHour: (e: React.MouseEvent) => void;\n handleNextHour: (e: React.MouseEvent) => void;\n handleTimeWheelBtnChangeHours: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;\n currMinuteNum: number;\n minutes: string;\n visibleMinutes: string[];\n handlePrevMinute: (e: React.MouseEvent) => void;\n handleNextMinute: (e: React.MouseEvent) => void;\n handleTimeWheelBtnChangeMinutes: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;\n // currSecondNum: number;\n // seconds: string;\n // visibleSeconds: string[];\n // handlePrevSecond: (e: React.MouseEvent) => void;\n // handleNextSecond: (e: React.MouseEvent) => void;\n // handleTimeWheelBtnChangeSeconds: (\n // newVal: string,\n // e: React.MouseEvent<HTMLButtonElement>,\n // ) => void;\n meridiem: string;\n handleTimeWheelBtnChangeMeridiem: (newMeridiem: string, e: React.MouseEvent) => void;\n}\nexport interface TimeWheelContextT\n extends PopperTriggerLogicT,\n useCurrentDisplayedWheelsLogicT,\n KeyboardHandlersT,\n WheelsButtonsRefsT {\n tempTimeString: string;\n isControllerOnly: boolean;\n autoFocusHourTimeWheel: boolean;\n getIsDisabledTime: (val: string) => boolean;\n}\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop = (): void => {};\nexport const defaultTimePickerContext: TimeWheelContextT = {\n tempTimeString: '',\n showTimePicker: false,\n setShowTimePicker: noop,\n setPopperElement: noop,\n setArrowElement: noop,\n usePopperHelpers: null,\n handleToggleTimePicker: noop,\n handleSetTriggerRef: noop,\n handleMenuWrapperKeyDown: noop,\n\n currHourNum: 1,\n hours: '01',\n visibleHours: [''],\n handlePrevHour: noop,\n handleNextHour: noop,\n handleTimeWheelBtnChangeHours: noop,\n currMinuteNum: 1,\n minutes: '00',\n visibleMinutes: [''],\n handlePrevMinute: noop,\n handleNextMinute: noop,\n handleTimeWheelBtnChangeMinutes: noop,\n // currSecondNum: 1,\n // seconds: '00',\n // visibleSeconds: [''],\n // handlePrevSecond: noop,\n // handleNextSecond: noop,\n // handleTimeWheelBtnChangeSeconds: noop,\n meridiem: 'AM',\n handleTimeWheelBtnChangeMeridiem: noop,\n isControllerOnly: false,\n autoFocusHourTimeWheel: false,\n\n handlePrevHourBtnOnKeyDown: noop,\n handleCurrHourOnKeyDown: noop,\n handleNextHourBtnOnKeyDown: noop,\n handlePrevMinuteBtnOnKeyDown: noop,\n handleCurrMinutesOnKeyDown: noop,\n handleNextMinuteBtnOnKeyDown: noop,\n // handlePrevSecondBtnOnKeyDown: noop,\n // handleCurrSecondsOnKeyDown: noop,\n // handleNextSecondBtnOnKeyDown: noop,\n handlePrevMeridiemBtnOnKeyDown: noop,\n handleCurrMeridiemOnKeyDown: noop,\n handleNextMeridiemBtnOnKeyDown: noop,\n handlePickerIconKeyDown: noop,\n\n prevHourBtnRef: createRef<HTMLButtonElement>(),\n currHourBtnRef: createRef<HTMLButtonElement>(),\n nextHourBtnRef: createRef<HTMLButtonElement>(),\n prevMinutesBtnRef: createRef<HTMLButtonElement>(),\n currMinutesBtnRef: createRef<HTMLButtonElement>(),\n nextMinutesBtnRef: createRef<HTMLButtonElement>(),\n // prevSecondsBtnRef: createRef<HTMLButtonElement>(),\n // currSecondsBtnRef: createRef<HTMLButtonElement>(),\n // nextSecondsBtnRef: createRef<HTMLButtonElement>(),\n prevMeridiemBtnRef: createRef<HTMLButtonElement>(),\n currMeridiemBtnRef: createRef<HTMLButtonElement>(),\n nextMeridiemBtnRef: createRef<HTMLButtonElement>(),\n\n getIsDisabledTime: () => false,\n};\n/** Context for cross component communication */\nexport const TimeWheelContext = createContext(defaultTimePickerContext);\n\nexport default TimeWheelContext;\n"],"names":["noop","defaultTimePickerContext","tempTimeString","showTimePicker","setShowTimePicker","setPopperElement","setArrowElement","usePopperHelpers","handleToggleTimePicker","handleSetTriggerRef","handleMenuWrapperKeyDown","currHourNum","hours","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","currMinuteNum","minutes","visibleMinutes","handlePrevMinute","handleNextMinute","handleTimeWheelBtnChangeMinutes","meridiem","handleTimeWheelBtnChangeMeridiem","isControllerOnly","autoFocusHourTimeWheel","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","handlePrevMinuteBtnOnKeyDown","handleCurrMinutesOnKeyDown","handleNextMinuteBtnOnKeyDown","handlePrevMeridiemBtnOnKeyDown","handleCurrMeridiemOnKeyDown","handleNextMeridiemBtnOnKeyDown","handlePickerIconKeyDown","prevHourBtnRef","createRef","currHourBtnRef","nextHourBtnRef","prevMinutesBtnRef","currMinutesBtnRef","nextMinutesBtnRef","prevMeridiemBtnRef","currMeridiemBtnRef","nextMeridiemBtnRef","getIsDisabledTime","TimeWheelContext","createContext"],"mappings":";;;;;;AAAA;;AAiFA;AACA,IAAMA,IAAI,GAAG,SAAPA,IAAO,GAAY,EAAzB;;IACaC,wBAA2C,GAAG;AACzDC,EAAAA,cAAc,EAAE,EADyC;AAEzDC,EAAAA,cAAc,EAAE,KAFyC;AAGzDC,EAAAA,iBAAiB,EAAEJ,IAHsC;AAIzDK,EAAAA,gBAAgB,EAAEL,IAJuC;AAKzDM,EAAAA,eAAe,EAAEN,IALwC;AAMzDO,EAAAA,gBAAgB,EAAE,IANuC;AAOzDC,EAAAA,sBAAsB,EAAER,IAPiC;AAQzDS,EAAAA,mBAAmB,EAAET,IARoC;AASzDU,EAAAA,wBAAwB,EAAEV,IAT+B;AAWzDW,EAAAA,WAAW,EAAE,CAX4C;AAYzDC,EAAAA,KAAK,EAAE,IAZkD;AAazDC,EAAAA,YAAY,EAAE,CAAC,EAAD,CAb2C;AAczDC,EAAAA,cAAc,EAAEd,IAdyC;AAezDe,EAAAA,cAAc,EAAEf,IAfyC;AAgBzDgB,EAAAA,6BAA6B,EAAEhB,IAhB0B;AAiBzDiB,EAAAA,aAAa,EAAE,CAjB0C;AAkBzDC,EAAAA,OAAO,EAAE,IAlBgD;AAmBzDC,EAAAA,cAAc,EAAE,CAAC,EAAD,CAnByC;AAoBzDC,EAAAA,gBAAgB,EAAEpB,IApBuC;AAqBzDqB,EAAAA,gBAAgB,EAAErB,IArBuC;AAsBzDsB,EAAAA,+BAA+B,EAAEtB,IAtBwB;AAuBzD;AACA;AACA;AACA;AACA;AACA;AACAuB,EAAAA,QAAQ,EAAE,IA7B+C;AA8BzDC,EAAAA,gCAAgC,EAAExB,IA9BuB;AA+BzDyB,EAAAA,gBAAgB,EAAE,KA/BuC;AAgCzDC,EAAAA,sBAAsB,EAAE,KAhCiC;AAkCzDC,EAAAA,0BAA0B,EAAE3B,IAlC6B;AAmCzD4B,EAAAA,uBAAuB,EAAE5B,IAnCgC;AAoCzD6B,EAAAA,0BAA0B,EAAE7B,IApC6B;AAqCzD8B,EAAAA,4BAA4B,EAAE9B,IArC2B;AAsCzD+B,EAAAA,0BAA0B,EAAE/B,IAtC6B;AAuCzDgC,EAAAA,4BAA4B,EAAEhC,IAvC2B;AAwCzD;AACA;AACA;AACAiC,EAAAA,8BAA8B,EAAEjC,IA3CyB;AA4CzDkC,EAAAA,2BAA2B,EAAElC,IA5C4B;AA6CzDmC,EAAAA,8BAA8B,EAAEnC,IA7CyB;AA8CzDoC,EAAAA,uBAAuB,EAAEpC,IA9CgC;AAgDzDqC,EAAAA,cAAc,eAAEC,eAAS,EAhDgC;AAiDzDC,EAAAA,cAAc,eAAED,eAAS,EAjDgC;AAkDzDE,EAAAA,cAAc,eAAEF,eAAS,EAlDgC;AAmDzDG,EAAAA,iBAAiB,eAAEH,eAAS,EAnD6B;AAoDzDI,EAAAA,iBAAiB,eAAEJ,eAAS,EApD6B;AAqDzDK,EAAAA,iBAAiB,eAAEL,eAAS,EArD6B;AAsDzD;AACA;AACA;AACAM,EAAAA,kBAAkB,eAAEN,eAAS,EAzD4B;AA0DzDO,EAAAA,kBAAkB,eAAEP,eAAS,EA1D4B;AA2DzDQ,EAAAA,kBAAkB,eAAER,eAAS,EA3D4B;AA6DzDS,EAAAA,iBAAiB,EAAE;AAAA,WAAM,KAAN;AAAA;AA7DsC;AA+D3D;;IACaC,gBAAgB,gBAAGC,mBAAa,CAAChD,wBAAD;;;;;;"}
|
|
@@ -42,7 +42,8 @@ var useConfigTimePickerCTX = function useConfigTimePickerCTX() {
|
|
|
42
42
|
currMeridiemBtnRef = _useContext.currMeridiemBtnRef,
|
|
43
43
|
nextMeridiemBtnRef = _useContext.nextMeridiemBtnRef,
|
|
44
44
|
isControllerOnly = _useContext.isControllerOnly,
|
|
45
|
-
isWithCalendarToo = _useContext.isWithCalendarToo
|
|
45
|
+
isWithCalendarToo = _useContext.isWithCalendarToo,
|
|
46
|
+
autoFocusHourTimeWheel = _useContext.autoFocusHourTimeWheel;
|
|
46
47
|
|
|
47
48
|
var _useCurrentDisplayedW = controlledDateTimePicker_parts_Pickers_TimeWheel_useCurrentDisplayedWheelsLogic.useCurrentDisplayedWheelsLogic({
|
|
48
49
|
minutesInterval: minutesInterval
|
|
@@ -64,8 +65,10 @@ var useConfigTimePickerCTX = function useConfigTimePickerCTX() {
|
|
|
64
65
|
|
|
65
66
|
var _usePopperTriggerLogi = controlledDateTimePicker_parts_Pickers_TimeWheel_usePopperTriggerLogic.usePopperTriggerLogic({
|
|
66
67
|
pickerButtonRef: pickerButtonRef,
|
|
68
|
+
currHourBtnRef: currHourBtnRef,
|
|
67
69
|
onPickerClose: onPickerClose,
|
|
68
|
-
onPickerOpen: onPickerOpen
|
|
70
|
+
onPickerOpen: onPickerOpen,
|
|
71
|
+
isWithCalendarToo: isWithCalendarToo
|
|
69
72
|
}),
|
|
70
73
|
showTimePicker = _usePopperTriggerLogi.showTimePicker,
|
|
71
74
|
setShowTimePicker = _usePopperTriggerLogi.setShowTimePicker,
|
|
@@ -101,7 +104,8 @@ var useConfigTimePickerCTX = function useConfigTimePickerCTX() {
|
|
|
101
104
|
hideTime: hideTime,
|
|
102
105
|
monthInputRef: monthInputRef,
|
|
103
106
|
hourInputRef: hourInputRef,
|
|
104
|
-
isWithCalendarToo: isWithCalendarToo
|
|
107
|
+
isWithCalendarToo: isWithCalendarToo,
|
|
108
|
+
isControllerOnly: isControllerOnly
|
|
105
109
|
}),
|
|
106
110
|
handlePrevHourBtnOnKeyDown = _useKeyboardHandlers.handlePrevHourBtnOnKeyDown,
|
|
107
111
|
handleCurrHourOnKeyDown = _useKeyboardHandlers.handleCurrHourOnKeyDown,
|
|
@@ -118,6 +122,7 @@ var useConfigTimePickerCTX = function useConfigTimePickerCTX() {
|
|
|
118
122
|
return {
|
|
119
123
|
tempTimeString: tempTimeString,
|
|
120
124
|
isControllerOnly: isControllerOnly,
|
|
125
|
+
autoFocusHourTimeWheel: autoFocusHourTimeWheel,
|
|
121
126
|
showTimePicker: showTimePicker,
|
|
122
127
|
setShowTimePicker: setShowTimePicker,
|
|
123
128
|
setPopperElement: setPopperElement,
|
|
@@ -173,7 +178,7 @@ var useConfigTimePickerCTX = function useConfigTimePickerCTX() {
|
|
|
173
178
|
nextMeridiemBtnRef: nextMeridiemBtnRef,
|
|
174
179
|
getIsDisabledTime: getIsDisabledTime
|
|
175
180
|
};
|
|
176
|
-
}, [tempTimeString, isControllerOnly, showTimePicker, setShowTimePicker, setPopperElement, setArrowElement, usePopperHelpers, handleToggleTimePicker, handleSetTriggerRef, handleMenuWrapperKeyDown, currHourNum, hours, visibleHours, handlePrevHour, handleNextHour, handleTimeWheelBtnChangeHours, currMinuteNum, minutes, visibleMinutes, handlePrevMinute, handleNextMinute, handleTimeWheelBtnChangeMinutes, meridiem, handleTimeWheelBtnChangeMeridiem, handlePrevHourBtnOnKeyDown, handleCurrHourOnKeyDown, handleNextHourBtnOnKeyDown, handlePrevMinuteBtnOnKeyDown, handleCurrMinutesOnKeyDown, handleNextMinuteBtnOnKeyDown, handlePrevMeridiemBtnOnKeyDown, handleCurrMeridiemOnKeyDown, handleNextMeridiemBtnOnKeyDown, handlePickerIconKeyDown, prevHourBtnRef, currHourBtnRef, nextHourBtnRef, prevMinutesBtnRef, currMinutesBtnRef, nextMinutesBtnRef, prevMeridiemBtnRef, currMeridiemBtnRef, nextMeridiemBtnRef, getIsDisabledTime]);
|
|
181
|
+
}, [tempTimeString, isControllerOnly, autoFocusHourTimeWheel, showTimePicker, setShowTimePicker, setPopperElement, setArrowElement, usePopperHelpers, handleToggleTimePicker, handleSetTriggerRef, handleMenuWrapperKeyDown, currHourNum, hours, visibleHours, handlePrevHour, handleNextHour, handleTimeWheelBtnChangeHours, currMinuteNum, minutes, visibleMinutes, handlePrevMinute, handleNextMinute, handleTimeWheelBtnChangeMinutes, meridiem, handleTimeWheelBtnChangeMeridiem, handlePrevHourBtnOnKeyDown, handleCurrHourOnKeyDown, handleNextHourBtnOnKeyDown, handlePrevMinuteBtnOnKeyDown, handleCurrMinutesOnKeyDown, handleNextMinuteBtnOnKeyDown, handlePrevMeridiemBtnOnKeyDown, handleCurrMeridiemOnKeyDown, handleNextMeridiemBtnOnKeyDown, handlePickerIconKeyDown, prevHourBtnRef, currHourBtnRef, nextHourBtnRef, prevMinutesBtnRef, currMinutesBtnRef, nextMinutesBtnRef, prevMeridiemBtnRef, currMeridiemBtnRef, nextMeridiemBtnRef, getIsDisabledTime]);
|
|
177
182
|
};
|
|
178
183
|
|
|
179
184
|
exports.useConfigTimePickerCTX = useConfigTimePickerCTX;
|
package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfigTimePickerCTX.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useContext } from 'react';\nimport { TimeWheelContextT } from './TimeWheelContext';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { usePopperTriggerLogic } from './usePopperTriggerLogic';\nimport { useCurrentDisplayedWheelsLogic } from './useCurrentDisplayedWheelsLogic';\nimport { useKeyboardHandlers } from './useKeyboardHandlers';\n\nexport const useConfigTimePickerCTX = (): TimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { minutesInterval, getIsDisabledTime, onPickerClose, onPickerOpen },\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n tempTimeString,\n prevMonthBtnRef,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n isControllerOnly,\n isWithCalendarToo,\n } = useContext(ControlledDateTimePickerContext);\n\n const {\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n // currSecondNum,\n // seconds,\n // visibleSeconds,\n // handlePrevSecond,\n // handleNextSecond,\n // handleTimeWheelBtnChangeSeconds,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n } = useCurrentDisplayedWheelsLogic({ minutesInterval });\n\n const {\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n } = usePopperTriggerLogic({ pickerButtonRef, onPickerClose, onPickerOpen });\n\n const {\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n // handlePrevSecondBtnOnKeyDown,\n // handleCurrSecondsOnKeyDown,\n // handleNextSecondBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n } = useKeyboardHandlers({\n handlePrevHour,\n handleNextHour,\n handlePrevMinute,\n handleNextMinute,\n // handlePrevSecond,\n // handleNextSecond,\n handleTimeWheelBtnChangeMeridiem,\n prevMonthBtnRef,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n // prevSecondsBtnRef,\n // currSecondsBtnRef,\n // nextSecondsBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n isWithCalendarToo,\n });\n\n return useMemo(\n () => ({\n tempTimeString,\n isControllerOnly,\n\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n // currSecondNum,\n // seconds,\n // visibleSeconds,\n // handlePrevSecond,\n // handleNextSecond,\n // handleTimeWheelBtnChangeSeconds,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n // handlePrevSecondBtnOnKeyDown,\n // handleCurrSecondsOnKeyDown,\n // handleNextSecondBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n // prevSecondsBtnRef,\n // currSecondsBtnRef,\n // nextSecondsBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n\n getIsDisabledTime,\n }),\n [\n tempTimeString,\n isControllerOnly,\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n getIsDisabledTime,\n ],\n );\n};\n"],"names":["useConfigTimePickerCTX","useContext","ControlledDateTimePickerContext","pickerButtonRef","props","minutesInterval","getIsDisabledTime","onPickerClose","onPickerOpen","hideDate","hideTime","monthInputRef","hourInputRef","tempTimeString","prevMonthBtnRef","prevHourBtnRef","currHourBtnRef","nextHourBtnRef","prevMinutesBtnRef","currMinutesBtnRef","nextMinutesBtnRef","prevMeridiemBtnRef","currMeridiemBtnRef","nextMeridiemBtnRef","isControllerOnly","isWithCalendarToo","useCurrentDisplayedWheelsLogic","currHourNum","hours","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","currMinuteNum","minutes","visibleMinutes","handlePrevMinute","handleNextMinute","handleTimeWheelBtnChangeMinutes","meridiem","handleTimeWheelBtnChangeMeridiem","usePopperTriggerLogic","showTimePicker","setShowTimePicker","setPopperElement","setArrowElement","usePopperHelpers","handleToggleTimePicker","handleSetTriggerRef","handleMenuWrapperKeyDown","useKeyboardHandlers","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","handlePrevMinuteBtnOnKeyDown","handleCurrMinutesOnKeyDown","handleNextMinuteBtnOnKeyDown","handlePrevMeridiemBtnOnKeyDown","handleCurrMeridiemOnKeyDown","handleNextMeridiemBtnOnKeyDown","handlePickerIconKeyDown","useMemo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useConfigTimePickerCTX.js","sources":["../../../../../../src/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport { useMemo, useContext } from 'react';\nimport { TimeWheelContextT } from './TimeWheelContext';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { usePopperTriggerLogic } from './usePopperTriggerLogic';\nimport { useCurrentDisplayedWheelsLogic } from './useCurrentDisplayedWheelsLogic';\nimport { useKeyboardHandlers } from './useKeyboardHandlers';\n\nexport const useConfigTimePickerCTX = (): TimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { minutesInterval, getIsDisabledTime, onPickerClose, onPickerOpen },\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n tempTimeString,\n prevMonthBtnRef,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n isControllerOnly,\n isWithCalendarToo,\n autoFocusHourTimeWheel,\n } = useContext(ControlledDateTimePickerContext);\n\n const {\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n // currSecondNum,\n // seconds,\n // visibleSeconds,\n // handlePrevSecond,\n // handleNextSecond,\n // handleTimeWheelBtnChangeSeconds,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n } = useCurrentDisplayedWheelsLogic({ minutesInterval });\n\n const {\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n } = usePopperTriggerLogic({ pickerButtonRef, currHourBtnRef, onPickerClose, onPickerOpen, isWithCalendarToo });\n\n const {\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n // handlePrevSecondBtnOnKeyDown,\n // handleCurrSecondsOnKeyDown,\n // handleNextSecondBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n } = useKeyboardHandlers({\n handlePrevHour,\n handleNextHour,\n handlePrevMinute,\n handleNextMinute,\n // handlePrevSecond,\n // handleNextSecond,\n handleTimeWheelBtnChangeMeridiem,\n prevMonthBtnRef,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n // prevSecondsBtnRef,\n // currSecondsBtnRef,\n // nextSecondsBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n hideDate,\n hideTime,\n monthInputRef,\n hourInputRef,\n isWithCalendarToo,\n isControllerOnly,\n });\n\n return useMemo(\n () => ({\n tempTimeString,\n isControllerOnly,\n autoFocusHourTimeWheel,\n\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n // currSecondNum,\n // seconds,\n // visibleSeconds,\n // handlePrevSecond,\n // handleNextSecond,\n // handleTimeWheelBtnChangeSeconds,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n // handlePrevSecondBtnOnKeyDown,\n // handleCurrSecondsOnKeyDown,\n // handleNextSecondBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n // prevSecondsBtnRef,\n // currSecondsBtnRef,\n // nextSecondsBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n\n getIsDisabledTime,\n }),\n [\n tempTimeString,\n isControllerOnly,\n autoFocusHourTimeWheel,\n showTimePicker,\n setShowTimePicker,\n setPopperElement,\n setArrowElement,\n usePopperHelpers,\n handleToggleTimePicker,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n currHourNum,\n hours,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n currMinuteNum,\n minutes,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n meridiem,\n handleTimeWheelBtnChangeMeridiem,\n handlePrevHourBtnOnKeyDown,\n handleCurrHourOnKeyDown,\n handleNextHourBtnOnKeyDown,\n handlePrevMinuteBtnOnKeyDown,\n handleCurrMinutesOnKeyDown,\n handleNextMinuteBtnOnKeyDown,\n handlePrevMeridiemBtnOnKeyDown,\n handleCurrMeridiemOnKeyDown,\n handleNextMeridiemBtnOnKeyDown,\n handlePickerIconKeyDown,\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n getIsDisabledTime,\n ],\n );\n};\n"],"names":["useConfigTimePickerCTX","useContext","ControlledDateTimePickerContext","pickerButtonRef","props","minutesInterval","getIsDisabledTime","onPickerClose","onPickerOpen","hideDate","hideTime","monthInputRef","hourInputRef","tempTimeString","prevMonthBtnRef","prevHourBtnRef","currHourBtnRef","nextHourBtnRef","prevMinutesBtnRef","currMinutesBtnRef","nextMinutesBtnRef","prevMeridiemBtnRef","currMeridiemBtnRef","nextMeridiemBtnRef","isControllerOnly","isWithCalendarToo","autoFocusHourTimeWheel","useCurrentDisplayedWheelsLogic","currHourNum","hours","visibleHours","handlePrevHour","handleNextHour","handleTimeWheelBtnChangeHours","currMinuteNum","minutes","visibleMinutes","handlePrevMinute","handleNextMinute","handleTimeWheelBtnChangeMinutes","meridiem","handleTimeWheelBtnChangeMeridiem","usePopperTriggerLogic","showTimePicker","setShowTimePicker","setPopperElement","setArrowElement","usePopperHelpers","handleToggleTimePicker","handleSetTriggerRef","handleMenuWrapperKeyDown","useKeyboardHandlers","handlePrevHourBtnOnKeyDown","handleCurrHourOnKeyDown","handleNextHourBtnOnKeyDown","handlePrevMinuteBtnOnKeyDown","handleCurrMinutesOnKeyDown","handleNextMinuteBtnOnKeyDown","handlePrevMeridiemBtnOnKeyDown","handleCurrMeridiemOnKeyDown","handleNextMeridiemBtnOnKeyDown","handlePickerIconKeyDown","useMemo"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;IASaA,sBAAsB,GAAG,SAAzBA,sBAAyB,GAAyB;AAC7D,oBAqBIC,gBAAU,CAACC,oFAAD,CArBd;AAAA,MACEC,eADF,eACEA,eADF;AAAA,sCAEEC,KAFF;AAAA,MAEWC,eAFX,qBAEWA,eAFX;AAAA,MAE4BC,iBAF5B,qBAE4BA,iBAF5B;AAAA,MAE+CC,aAF/C,qBAE+CA,aAF/C;AAAA,MAE8DC,YAF9D,qBAE8DA,YAF9D;AAAA,MAGEC,QAHF,eAGEA,QAHF;AAAA,MAIEC,QAJF,eAIEA,QAJF;AAAA,MAKEC,aALF,eAKEA,aALF;AAAA,MAMEC,YANF,eAMEA,YANF;AAAA,MAOEC,cAPF,eAOEA,cAPF;AAAA,MAQEC,eARF,eAQEA,eARF;AAAA,MASEC,cATF,eASEA,cATF;AAAA,MAUEC,cAVF,eAUEA,cAVF;AAAA,MAWEC,cAXF,eAWEA,cAXF;AAAA,MAYEC,iBAZF,eAYEA,iBAZF;AAAA,MAaEC,iBAbF,eAaEA,iBAbF;AAAA,MAcEC,iBAdF,eAcEA,iBAdF;AAAA,MAeEC,kBAfF,eAeEA,kBAfF;AAAA,MAgBEC,kBAhBF,eAgBEA,kBAhBF;AAAA,MAiBEC,kBAjBF,eAiBEA,kBAjBF;AAAA,MAkBEC,gBAlBF,eAkBEA,gBAlBF;AAAA,MAmBEC,iBAnBF,eAmBEA,iBAnBF;AAAA,MAoBEC,sBApBF,eAoBEA,sBApBF;;AAuBA,8BAqBIC,8GAA8B,CAAC;AAAEtB,IAAAA,eAAe,EAAfA;AAAF,GAAD,CArBlC;AAAA,MACEuB,WADF,yBACEA,WADF;AAAA,MAEEC,KAFF,yBAEEA,KAFF;AAAA,MAGEC,YAHF,yBAGEA,YAHF;AAAA,MAIEC,cAJF,yBAIEA,cAJF;AAAA,MAKEC,cALF,yBAKEA,cALF;AAAA,MAMEC,6BANF,yBAMEA,6BANF;AAAA,MAOEC,aAPF,yBAOEA,aAPF;AAAA,MAQEC,OARF,yBAQEA,OARF;AAAA,MASEC,cATF,yBASEA,cATF;AAAA,MAUEC,gBAVF,yBAUEA,gBAVF;AAAA,MAWEC,gBAXF,yBAWEA,gBAXF;AAAA,MAYEC,+BAZF,yBAYEA,+BAZF;AAAA,MAmBEC,QAnBF,yBAmBEA,QAnBF;AAAA,MAoBEC,gCApBF,yBAoBEA,gCApBF;;AAuBA,8BASIC,4FAAqB,CAAC;AAAEvC,IAAAA,eAAe,EAAfA,eAAF;AAAmBa,IAAAA,cAAc,EAAdA,cAAnB;AAAmCT,IAAAA,aAAa,EAAbA,aAAnC;AAAkDC,IAAAA,YAAY,EAAZA,YAAlD;AAAgEiB,IAAAA,iBAAiB,EAAjBA;AAAhE,GAAD,CATzB;AAAA,MACEkB,cADF,yBACEA,cADF;AAAA,MAEEC,iBAFF,yBAEEA,iBAFF;AAAA,MAGEC,gBAHF,yBAGEA,gBAHF;AAAA,MAIEC,eAJF,yBAIEA,eAJF;AAAA,MAKEC,gBALF,yBAKEA,gBALF;AAAA,MAMEC,sBANF,yBAMEA,sBANF;AAAA,MAOEC,mBAPF,yBAOEA,mBAPF;AAAA,MAQEC,wBARF,yBAQEA,wBARF;;AAWA,6BAcIC,wFAAmB,CAAC;AACtBpB,IAAAA,cAAc,EAAdA,cADsB;AAEtBC,IAAAA,cAAc,EAAdA,cAFsB;AAGtBK,IAAAA,gBAAgB,EAAhBA,gBAHsB;AAItBC,IAAAA,gBAAgB,EAAhBA,gBAJsB;AAKtB;AACA;AACAG,IAAAA,gCAAgC,EAAhCA,gCAPsB;AAQtB3B,IAAAA,eAAe,EAAfA,eARsB;AAStBC,IAAAA,cAAc,EAAdA,cATsB;AAUtBC,IAAAA,cAAc,EAAdA,cAVsB;AAWtBC,IAAAA,cAAc,EAAdA,cAXsB;AAYtBC,IAAAA,iBAAiB,EAAjBA,iBAZsB;AAatBC,IAAAA,iBAAiB,EAAjBA,iBAbsB;AActBC,IAAAA,iBAAiB,EAAjBA,iBAdsB;AAetB;AACA;AACA;AACAC,IAAAA,kBAAkB,EAAlBA,kBAlBsB;AAmBtBC,IAAAA,kBAAkB,EAAlBA,kBAnBsB;AAoBtBC,IAAAA,kBAAkB,EAAlBA,kBApBsB;AAqBtBd,IAAAA,QAAQ,EAARA,QArBsB;AAsBtBC,IAAAA,QAAQ,EAARA,QAtBsB;AAuBtBC,IAAAA,aAAa,EAAbA,aAvBsB;AAwBtBC,IAAAA,YAAY,EAAZA,YAxBsB;AAyBtBa,IAAAA,iBAAiB,EAAjBA,iBAzBsB;AA0BtBD,IAAAA,gBAAgB,EAAhBA;AA1BsB,GAAD,CAdvB;AAAA,MACE4B,0BADF,wBACEA,0BADF;AAAA,MAEEC,uBAFF,wBAEEA,uBAFF;AAAA,MAGEC,0BAHF,wBAGEA,0BAHF;AAAA,MAIEC,4BAJF,wBAIEA,4BAJF;AAAA,MAKEC,0BALF,wBAKEA,0BALF;AAAA,MAMEC,4BANF,wBAMEA,4BANF;AAAA,MAUEC,8BAVF,wBAUEA,8BAVF;AAAA,MAWEC,2BAXF,wBAWEA,2BAXF;AAAA,MAYEC,8BAZF,wBAYEA,8BAZF;AAAA,MAaEC,uBAbF,wBAaEA,uBAbF;;AA2CA,SAAOC,aAAO,CACZ;AAAA,WAAO;AACLjD,MAAAA,cAAc,EAAdA,cADK;AAELW,MAAAA,gBAAgB,EAAhBA,gBAFK;AAGLE,MAAAA,sBAAsB,EAAtBA,sBAHK;AAKLiB,MAAAA,cAAc,EAAdA,cALK;AAMLC,MAAAA,iBAAiB,EAAjBA,iBANK;AAOLC,MAAAA,gBAAgB,EAAhBA,gBAPK;AAQLC,MAAAA,eAAe,EAAfA,eARK;AASLC,MAAAA,gBAAgB,EAAhBA,gBATK;AAULC,MAAAA,sBAAsB,EAAtBA,sBAVK;AAWLC,MAAAA,mBAAmB,EAAnBA,mBAXK;AAYLC,MAAAA,wBAAwB,EAAxBA,wBAZK;AAcLtB,MAAAA,WAAW,EAAXA,WAdK;AAeLC,MAAAA,KAAK,EAALA,KAfK;AAgBLC,MAAAA,YAAY,EAAZA,YAhBK;AAiBLC,MAAAA,cAAc,EAAdA,cAjBK;AAkBLC,MAAAA,cAAc,EAAdA,cAlBK;AAmBLC,MAAAA,6BAA6B,EAA7BA,6BAnBK;AAoBLC,MAAAA,aAAa,EAAbA,aApBK;AAqBLC,MAAAA,OAAO,EAAPA,OArBK;AAsBLC,MAAAA,cAAc,EAAdA,cAtBK;AAuBLC,MAAAA,gBAAgB,EAAhBA,gBAvBK;AAwBLC,MAAAA,gBAAgB,EAAhBA,gBAxBK;AAyBLC,MAAAA,+BAA+B,EAA/BA,+BAzBK;AA0BL;AACA;AACA;AACA;AACA;AACA;AACAC,MAAAA,QAAQ,EAARA,QAhCK;AAiCLC,MAAAA,gCAAgC,EAAhCA,gCAjCK;AAmCLW,MAAAA,0BAA0B,EAA1BA,0BAnCK;AAoCLC,MAAAA,uBAAuB,EAAvBA,uBApCK;AAqCLC,MAAAA,0BAA0B,EAA1BA,0BArCK;AAsCLC,MAAAA,4BAA4B,EAA5BA,4BAtCK;AAuCLC,MAAAA,0BAA0B,EAA1BA,0BAvCK;AAwCLC,MAAAA,4BAA4B,EAA5BA,4BAxCK;AAyCL;AACA;AACA;AACAC,MAAAA,8BAA8B,EAA9BA,8BA5CK;AA6CLC,MAAAA,2BAA2B,EAA3BA,2BA7CK;AA8CLC,MAAAA,8BAA8B,EAA9BA,8BA9CK;AA+CLC,MAAAA,uBAAuB,EAAvBA,uBA/CK;AAiDL9C,MAAAA,cAAc,EAAdA,cAjDK;AAkDLC,MAAAA,cAAc,EAAdA,cAlDK;AAmDLC,MAAAA,cAAc,EAAdA,cAnDK;AAoDLC,MAAAA,iBAAiB,EAAjBA,iBApDK;AAqDLC,MAAAA,iBAAiB,EAAjBA,iBArDK;AAsDLC,MAAAA,iBAAiB,EAAjBA,iBAtDK;AAuDL;AACA;AACA;AACAC,MAAAA,kBAAkB,EAAlBA,kBA1DK;AA2DLC,MAAAA,kBAAkB,EAAlBA,kBA3DK;AA4DLC,MAAAA,kBAAkB,EAAlBA,kBA5DK;AA8DLjB,MAAAA,iBAAiB,EAAjBA;AA9DK,KAAP;AAAA,GADY,EAiEZ,CACEO,cADF,EAEEW,gBAFF,EAGEE,sBAHF,EAIEiB,cAJF,EAKEC,iBALF,EAMEC,gBANF,EAOEC,eAPF,EAQEC,gBARF,EASEC,sBATF,EAUEC,mBAVF,EAWEC,wBAXF,EAYEtB,WAZF,EAaEC,KAbF,EAcEC,YAdF,EAeEC,cAfF,EAgBEC,cAhBF,EAiBEC,6BAjBF,EAkBEC,aAlBF,EAmBEC,OAnBF,EAoBEC,cApBF,EAqBEC,gBArBF,EAsBEC,gBAtBF,EAuBEC,+BAvBF,EAwBEC,QAxBF,EAyBEC,gCAzBF,EA0BEW,0BA1BF,EA2BEC,uBA3BF,EA4BEC,0BA5BF,EA6BEC,4BA7BF,EA8BEC,0BA9BF,EA+BEC,4BA/BF,EAgCEC,8BAhCF,EAiCEC,2BAjCF,EAkCEC,8BAlCF,EAmCEC,uBAnCF,EAoCE9C,cApCF,EAqCEC,cArCF,EAsCEC,cAtCF,EAuCEC,iBAvCF,EAwCEC,iBAxCF,EAyCEC,iBAzCF,EA0CEC,kBA1CF,EA2CEC,kBA3CF,EA4CEC,kBA5CF,EA6CEjB,iBA7CF,CAjEY,CAAd;AAiHD;;;;"}
|