@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.
Files changed (81) hide show
  1. package/cjs/controlled-date-time-picker/ControlledDateTimePickerCTX.js +10 -0
  2. package/cjs/controlled-date-time-picker/ControlledDateTimePickerCTX.js.map +1 -1
  3. package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js +41 -23
  4. package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
  5. package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js +2 -0
  6. package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js.map +1 -1
  7. package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js +33 -4
  8. package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js.map +1 -1
  9. package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js +2 -0
  10. package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js.map +1 -1
  11. package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js +3 -1
  12. package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js.map +1 -1
  13. package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +17 -12
  14. package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
  15. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
  16. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
  17. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +6 -2
  18. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js.map +1 -1
  19. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -3
  20. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
  21. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +102 -27
  22. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
  23. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +3 -1
  24. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
  25. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +3 -1
  26. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
  27. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +1 -0
  28. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
  29. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +9 -4
  30. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
  31. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +181 -67
  32. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
  33. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +14 -8
  34. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
  35. package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js +3 -1
  36. package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js.map +1 -1
  37. package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +3 -1
  38. package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js.map +1 -1
  39. package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +15 -10
  40. package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js.map +1 -1
  41. package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js +10 -0
  42. package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js.map +1 -1
  43. package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js +41 -23
  44. package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
  45. package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js +2 -0
  46. package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js.map +1 -1
  47. package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js +33 -4
  48. package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js.map +1 -1
  49. package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js +2 -0
  50. package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js.map +1 -1
  51. package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js +3 -1
  52. package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js.map +1 -1
  53. package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +17 -12
  54. package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
  55. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
  56. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
  57. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +6 -2
  58. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js.map +1 -1
  59. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -3
  60. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
  61. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +102 -27
  62. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
  63. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +3 -1
  64. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
  65. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +3 -1
  66. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
  67. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +1 -0
  68. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
  69. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +9 -4
  70. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
  71. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +181 -67
  72. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
  73. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +14 -8
  74. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
  75. package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js +3 -1
  76. package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js.map +1 -1
  77. package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +3 -1
  78. package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js.map +1 -1
  79. package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +15 -10
  80. package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js.map +1 -1
  81. 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 onHomeKeyDown = React.useCallback(function () {
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 === 'Home') onHomeKeyDown();
57
- }, [onHomeKeyDown]);
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
- });else if (key === 'ArrowDown') newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
83
+ });
84
+ if (key === 'ArrowDown') newFocusedDayDate = controlledDateTimePicker_utils_dateHelpers.sumValuesToDate(day, {
66
85
  daysToSum: 7
67
- });else if (key === 'ArrowLeft') {
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
- } else if (key === 'ArrowRight') {
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
- } else if (key === 'Tab') {
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 (!isWithTimeWheelToo) {
90
- var _prevMonthBtnRef$curr, _prevMonthBtnRef$curr2;
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
- e.preventDefault();
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
- }, [nextMonthBtnRef, nextYearBtnRef]);
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
- var _currMeridiemBtnRef$c, _currMeridiemBtnRef$c2;
170
+ // TAB CYCLE IMPLEMENTATION
171
+ if (!isControllerOnly) {
172
+ var _currMeridiemBtnRef$c3, _currMeridiemBtnRef$c4;
131
173
 
132
- 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();
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
- }, [currMeridiemBtnRef, isWithTimeWheelToo, nextMonthBtnRef, tryToFocusDayRegion]);
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
- }, [prevMonthBtnRef, prevYearBtnRef]);
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
- }, [tryToFocusDayRegion, prevYearBtnRef]);
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":";;;;;;;;;;;AAAA;IAgCaA,mBAAmB,GAAG,SAAtBA,mBAAsB,OAqBgB;AAAA,MApBjDC,UAoBiD,QApBjDA,UAoBiD;AAAA,MAnBjDC,SAmBiD,QAnBjDA,SAmBiD;AAAA,MAlBjDC,eAkBiD,QAlBjDA,eAkBiD;AAAA,MAjBjDC,eAiBiD,QAjBjDA,eAiBiD;AAAA,MAhBjDC,cAgBiD,QAhBjDA,cAgBiD;AAAA,MAfjDC,eAeiD,QAfjDA,eAeiD;AAAA,MAdjDC,eAciD,QAdjDA,eAciD;AAAA,MAbjDC,cAaiD,QAbjDA,cAaiD;AAAA,MAZjDC,kBAYiD,QAZjDA,kBAYiD;AAAA,MAXjDC,cAWiD,QAXjDA,cAWiD;AAAA,MAVjDC,kBAUiD,QAVjDA,kBAUiD;AAAA,MATjDC,gBASiD,QATjDA,gBASiD;AAAA,MARjDC,kBAQiD,QARjDA,kBAQiD;AAAA,MAPjDC,uBAOiD,QAPjDA,uBAOiD;AAAA,MANjDC,mCAMiD,QANjDA,mCAMiD;AAAA,MALjDC,QAKiD,QALjDA,QAKiD;AAAA,MAJjDC,QAIiD,QAJjDA,QAIiD;AAAA,MAHjDC,aAGiD,QAHjDA,aAGiD;AAAA,MAFjDC,YAEiD,QAFjDA,YAEiD;AAAA,MADjDC,0BACiD,QADjDA,0BACiD;AACjD,MAAMC,mBAAmB,GAAGC,iBAAW,CAAC,YAAM;AAC5CF,IAAAA,0BAA0B,CAAC,eAAD,CAA1B;;AACA,QAAI,CAACnB,UAAL,EAAiB;AACf,UAAMsB,WAAW,GAAGrB,SAAS,CAACsB,IAAV,CAAe;AAAA,YAAGC,cAAH,SAAGA,cAAH;AAAA,eAAwBA,cAAxB;AAAA,OAAf,CAApB;AACA,UAAIF,WAAJ,EACEG,UAAU,CAAC,YAAM;AACfb,QAAAA,kBAAkB,CAACU,WAAD,CAAlB;AACD,OAFS,CAAV;AAGH,KAND,MAMO;AACLR,MAAAA,mCAAmC;AACpC;AACF,GAXsC,EAWpC,CAACb,SAAD,EAAYD,UAAZ,EAAwBY,kBAAxB,EAA4CO,0BAA5C,EAAwEL,mCAAxE,CAXoC,CAAvC;AAaA,MAAMY,2BAA2B,GAAGL,iBAAW,CAAC,YAAM;AAAA;;AACpDhB,IAAAA,eAAe,SAAf,IAAAA,eAAe,WAAf,qCAAAA,eAAe,CAAEsB,OAAjB,0GAA0BC,KAA1B;AACD,GAF8C,EAE5C,CAACvB,eAAD,CAF4C,CAA/C;AAGA,MAAMwB,0BAA0B,GAAGR,iBAAW,CAAC,YAAM;AAAA;;AACnD,QAAIX,kBAAJ,EAAwBF,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,qCAAAA,kBAAkB,CAAEmB,OAApB,0GAA6BC,KAA7B,8GAAxB,KACKR,mBAAmB;AACzB,GAH6C,EAG3C,CAACZ,kBAAD,EAAqBE,kBAArB,EAAyCU,mBAAzC,CAH2C,CAA9C;AAKA,MAAMU,wBAAwB,GAAGT,iBAAW,CAAC,YAAM;AAAA;;AACjD,QAAI,CAACN,QAAL,EAAeE,aAAa,SAAb,IAAAA,aAAa,WAAb,qCAAAA,aAAa,CAAEU,OAAf,0GAAwBC,KAAxB,8GAAf,KACK,IAAI,CAACZ,QAAL,EAAeE,YAAY,SAAZ,IAAAA,YAAY,WAAZ,qCAAAA,YAAY,CAAES,OAAd,0GAAuBC,KAAvB;AACrB,GAH2C,EAGzC,CAACb,QAAD,EAAWC,QAAX,EAAqBC,aAArB,EAAoCC,YAApC,CAHyC,CAA5C;AAIA,MAAMa,uBAAsD,GAAGV,iBAAW,CACxE,UAACW,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,EAAoBH,wBAAwB;AAC7C,GARuE,EASxE,CAACA,wBAAD,CATwE,CAA1E;AAYA,MAAMS,kBAAuC,GAAGlB,iBAAW,CACzD,UAACW,CAAD,EAAIQ,OAAJ,EAAgB;AACd,QAAIC,iBAAJ;AACA,QAAQC,GAAR,GAAgBF,OAAhB,CAAQE,GAAR;AACA,QAAQT,GAAR,GAA0BD,CAA1B,CAAQC,GAAR;AAAA,QAAaU,QAAb,GAA0BX,CAA1B,CAAaW,QAAb;AACA,QAAMT,kBAAkB,GAAG,CAAC,MAAD,EAAS,KAAT,EAAgB,SAAhB,EAA2B,WAA3B,EAAwC,WAAxC,EAAqD,YAArD,CAA3B;AACA,QAAMC,mBAAmB,GAAG,CAAC,MAAD,EAAS,KAAT,EAAgB,SAAhB,EAA2B,WAA3B,EAAwC,WAAxC,EAAqD,YAArD,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;AAEvC,QAAIL,GAAG,KAAK,SAAZ,EAAuBQ,iBAAiB,GAAGG,0DAAe,CAACF,GAAD,EAAM;AAAEG,MAAAA,SAAS,EAAE,CAAC;AAAd,KAAN,CAAnC;AACvB,QAAIZ,GAAG,KAAK,WAAZ,EAAyBQ,iBAAiB,GAAGG,0DAAe,CAACF,GAAD,EAAM;AAAEG,MAAAA,SAAS,EAAE;AAAb,KAAN,CAAnC;;AACzB,QAAIZ,GAAG,KAAK,WAAZ,EAAyB;AACvBQ,MAAAA,iBAAiB,GAAGG,0DAAe,CAACF,GAAD,EAAM;AAAEG,QAAAA,SAAS,EAAE,CAAC;AAAd,OAAN,CAAnC;;AACA,UAAIL,OAAO,KAAKvC,SAAS,CAAC,CAAD,CAAzB,EAA8B;AAC5BC,QAAAA,eAAe;AAChB;AACF;;AACD,QAAI+B,GAAG,KAAK,YAAZ,EAA0B;AACxBQ,MAAAA,iBAAiB,GAAGG,0DAAe,CAACF,GAAD,EAAM;AAAEG,QAAAA,SAAS,EAAE;AAAb,OAAN,CAAnC;;AACA,UAAIL,OAAO,KAAKvC,SAAS,CAACA,SAAS,CAAC6C,MAAV,GAAmB,CAApB,CAAzB,EAAiD;AAC/C3C,QAAAA,eAAe;AAChB;AACF;;AACD,QAAIsC,iBAAJ,EAAuB;AACrB5B,MAAAA,uBAAuB,CAAC4B,iBAAD,CAAvB;AACAhB,MAAAA,UAAU,CAACX,mCAAD,CAAV;AACD;;AACD,QAAImB,GAAG,KAAK,MAAZ,EAAoBP,2BAA2B;AAC/C,QAAIO,GAAG,KAAK,KAAZ,EAAmBJ,0BAA0B,GA5B/B;;AA8Bd,QAAI,CAAClB,gBAAL,EACE,IAAIsB,GAAG,KAAK,KAAZ,EAAmB;AACjBD,MAAAA,CAAC,CAACK,cAAF,GADiB;;AAEjB,UAAIM,QAAJ,EAAc;AAAA;;AACZpC,QAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,qCAAAA,cAAc,CAAEoB,OAAhB,0GAAyBC,KAAzB;AACD,OAFD,MAEO,IAAIlB,kBAAJ,EAAwB;AAAA;;AAC7BD,QAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,qCAAAA,cAAc,CAAEkB,OAAhB,0GAAyBC,KAAzB;AACD,OAFM,MAEA;AAAA;;AACL;AACA;AACA;AACA;AACA;AACA;AACAvB,QAAAA,eAAe,SAAf,IAAAA,eAAe,WAAf,sCAAAA,eAAe,CAAEsB,OAAjB,4GAA0BC,KAA1B;AACD;AACF;AACJ,GAhDwD,EAiDzD,CACEnB,cADF,EAEER,SAFF,EAGEY,uBAHF,EAIEV,eAJF,EAKED,eALF,EAMES,gBANF,EAOED,kBAPF,EAQEH,cARF,EASEsB,0BATF,EAUEH,2BAVF,EAWErB,eAXF,EAYES,mCAZF,CAjDyD,CAA3D;AAgEA,MAAMiC,qBAAqB,GAAG1B,iBAAW,CACvC,UAACW,CAAD,EAAO;AACL,QAAQC,GAAR,GAA0BD,CAA1B,CAAQC,GAAR;AAAA,QAAaU,QAAb,GAA0BX,CAA1B,CAAaW,QAAb;;AACA,QAAIV,GAAG,KAAK,KAAZ,EAAmB;AACjBD,MAAAA,CAAC,CAACK,cAAF;;AACA,UAAIM,QAAJ,EAAc;AACZrC,QAAAA,eAAe,CAACqB,OAAhB,CAAwBC,KAAxB;AACD,OAFD,MAEO;AACLrB,QAAAA,cAAc,CAACoB,OAAf,CAAuBC,KAAvB;AACD;AACF;;AACD,QAAIK,GAAG,KAAK,MAAZ,EAAoB;AAClBP,MAAAA,2BAA2B;AAC3BM,MAAAA,CAAC,CAACK,cAAF;AACD;;AACD,QAAIJ,GAAG,KAAK,KAAZ,EAAmB;AACjBJ,MAAAA,0BAA0B;AAC1BG,MAAAA,CAAC,CAACK,cAAF;AACD;AACF,GAnBsC,EAoBvC,CAAC/B,eAAD,EAAkBC,cAAlB,EAAkCsB,0BAAlC,EAA8DH,2BAA9D,CApBuC,CAAzC;AAsBA,MAAMsB,sBAAsB,GAAG3B,iBAAW,CACxC,UAACW,CAAD,EAAO;AACL,QAAQC,GAAR,GAA0BD,CAA1B,CAAQC,GAAR;AAAA,QAAaU,QAAb,GAA0BX,CAA1B,CAAaW,QAAb;;AACA,QAAIV,GAAG,KAAK,KAAZ,EAAmB;AACjB,UAAIU,QAAJ,EAAc;AACZ;AACA,YAAI,CAAChC,gBAAL,EAAuB;AAAA;;AACrBqB,UAAAA,CAAC,CAACK,cAAF;AACA,cAAI3B,kBAAJ,EAAwBF,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,sCAAAA,kBAAkB,CAAEmB,OAApB,4GAA6BC,KAA7B,+GAAxB,KACKR,mBAAmB;AACzB;AACF,OAPD,MAOO;AACLY,QAAAA,CAAC,CAACK,cAAF;AACA/B,QAAAA,eAAe,CAACqB,OAAhB,CAAwBC,KAAxB;AACD;AACF;;AACD,QAAIK,GAAG,KAAK,MAAZ,EAAoB;AAClBP,MAAAA,2BAA2B;AAC3BM,MAAAA,CAAC,CAACK,cAAF;AACD;;AACD,QAAIJ,GAAG,KAAK,KAAZ,EAAmB;AACjBJ,MAAAA,0BAA0B;AAC1BG,MAAAA,CAAC,CAACK,cAAF;AACD;AACF,GAxBuC,EAyBxC,CACE7B,kBADF,EAEEG,gBAFF,EAGED,kBAHF,EAIEJ,eAJF,EAKEuB,0BALF,EAMEH,2BANF,EAOEN,mBAPF,CAzBwC,CAA1C;AAmCA,MAAM6B,sBAAsB,GAAG5B,iBAAW,CACxC,UAACW,CAAD,EAAO;AACL,QAAQC,GAAR,GAA0BD,CAA1B,CAAQC,GAAR;AAAA,QAAaU,QAAb,GAA0BX,CAA1B,CAAaW,QAAb;;AACA,QAAIV,GAAG,KAAK,KAAZ,EAAmB;AACjBD,MAAAA,CAAC,CAACK,cAAF;;AACA,UAAIM,QAAJ,EAAc;AACZtC,QAAAA,eAAe,CAACsB,OAAhB,CAAwBC,KAAxB;AACD,OAFD,MAEO;AACLxB,QAAAA,cAAc,CAACuB,OAAf,CAAuBC,KAAvB;AACD;AACF;;AACD,QAAIK,GAAG,KAAK,MAAZ,EAAoB;AAClBP,MAAAA,2BAA2B;AAC3BM,MAAAA,CAAC,CAACK,cAAF;AACD;;AACD,QAAIJ,GAAG,KAAK,KAAZ,EAAmB;AACjBJ,MAAAA,0BAA0B;AAC1BG,MAAAA,CAAC,CAACK,cAAF;AACD;AACF,GAnBuC,EAoBxC,CAACR,0BAAD,EAA6BH,2BAA7B,EAA0DrB,eAA1D,EAA2ED,cAA3E,CApBwC,CAA1C;AAsBA,MAAM8C,qBAAqB,GAAG7B,iBAAW,CACvC,UAACW,CAAD,EAAO;AACL,QAAQC,GAAR,GAA0BD,CAA1B,CAAQC,GAAR;AAAA,QAAaU,QAAb,GAA0BX,CAA1B,CAAaW,QAAb;;AACA,QAAIV,GAAG,KAAK,KAAZ,EAAmB;AACjBD,MAAAA,CAAC,CAACK,cAAF;;AACA,UAAIM,QAAJ,EAAc;AAAA;;AACZvC,QAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,qCAAAA,cAAc,CAAEuB,OAAhB,0GAAyBC,KAAzB;AACD;;AACD,UAAI,CAACe,QAAL,EAAevB,mBAAmB;AACnC;;AACD,QAAIa,GAAG,KAAK,MAAZ,EAAoB;AAClBP,MAAAA,2BAA2B;AAC3BM,MAAAA,CAAC,CAACK,cAAF;AACD;;AACD,QAAIJ,GAAG,KAAK,KAAZ,EAAmB;AACjBJ,MAAAA,0BAA0B;AAC1BG,MAAAA,CAAC,CAACK,cAAF;AACD;AACF,GAlBsC,EAmBvC,CAACjB,mBAAD,EAAsBhB,cAAtB,EAAsCsB,2BAAtC,EAAmEG,0BAAnE,CAnBuC,CAAzC;AAsBA,SAAOsB,aAAO,CACZ;AAAA,WAAO;AACLZ,MAAAA,kBAAkB,EAAlBA,kBADK;AAELQ,MAAAA,qBAAqB,EAArBA,qBAFK;AAGLC,MAAAA,sBAAsB,EAAtBA,sBAHK;AAILC,MAAAA,sBAAsB,EAAtBA,sBAJK;AAKLC,MAAAA,qBAAqB,EAArBA,qBALK;AAMLnB,MAAAA,uBAAuB,EAAvBA;AANK,KAAP;AAAA,GADY,EASZ,CACEQ,kBADF,EAEEQ,qBAFF,EAGEC,sBAHF,EAIEC,sBAJF,EAKEC,qBALF,EAMEnB,uBANF,CATY,CAAd;AAkBD;;;;"}
@@ -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":"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"}
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":"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"}
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":"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"}
@@ -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;;AAgFA;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;AAiCzDC,EAAAA,0BAA0B,EAAE1B,IAjC6B;AAkCzD2B,EAAAA,uBAAuB,EAAE3B,IAlCgC;AAmCzD4B,EAAAA,0BAA0B,EAAE5B,IAnC6B;AAoCzD6B,EAAAA,4BAA4B,EAAE7B,IApC2B;AAqCzD8B,EAAAA,0BAA0B,EAAE9B,IArC6B;AAsCzD+B,EAAAA,4BAA4B,EAAE/B,IAtC2B;AAuCzD;AACA;AACA;AACAgC,EAAAA,8BAA8B,EAAEhC,IA1CyB;AA2CzDiC,EAAAA,2BAA2B,EAAEjC,IA3C4B;AA4CzDkC,EAAAA,8BAA8B,EAAElC,IA5CyB;AA6CzDmC,EAAAA,uBAAuB,EAAEnC,IA7CgC;AA+CzDoC,EAAAA,cAAc,eAAEC,eAAS,EA/CgC;AAgDzDC,EAAAA,cAAc,eAAED,eAAS,EAhDgC;AAiDzDE,EAAAA,cAAc,eAAEF,eAAS,EAjDgC;AAkDzDG,EAAAA,iBAAiB,eAAEH,eAAS,EAlD6B;AAmDzDI,EAAAA,iBAAiB,eAAEJ,eAAS,EAnD6B;AAoDzDK,EAAAA,iBAAiB,eAAEL,eAAS,EApD6B;AAqDzD;AACA;AACA;AACAM,EAAAA,kBAAkB,eAAEN,eAAS,EAxD4B;AAyDzDO,EAAAA,kBAAkB,eAAEP,eAAS,EAzD4B;AA0DzDQ,EAAAA,kBAAkB,eAAER,eAAS,EA1D4B;AA4DzDS,EAAAA,iBAAiB,EAAE;AAAA,WAAM,KAAN;AAAA;AA5DsC;AA8D3D;;IACaC,gBAAgB,gBAAGC,mBAAa,CAAC/C,wBAAD;;;;;;"}
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;
@@ -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":"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"}