@uxf/datepicker 1.2.1 → 10.0.0-beta.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/contexts/date-picker-context.d.ts +1 -1
- package/contexts/date-picker-context.js +18 -19
- package/contexts/date-range-picker-context.d.ts +1 -1
- package/contexts/date-range-picker-context.js +21 -22
- package/contexts/time-picker-context.d.ts +1 -1
- package/contexts/time-picker-context.js +9 -10
- package/hooks/use-date-picker-navigation.js +32 -36
- package/hooks/use-date-picker-navigation.test.js +37 -46
- package/hooks/use-date-picker.d.ts +1 -1
- package/hooks/use-date-picker.js +66 -86
- package/hooks/use-date-picker.test.js +25 -32
- package/hooks/use-date-range-picker.d.ts +1 -1
- package/hooks/use-date-range-picker.js +94 -113
- package/hooks/use-date-range-picker.test.js +39 -50
- package/hooks/use-day.js +12 -14
- package/hooks/use-day.test.js +42 -47
- package/hooks/use-decade.js +11 -15
- package/hooks/use-decade.test.js +13 -18
- package/hooks/use-hour.js +6 -8
- package/hooks/use-hour.test.js +26 -31
- package/hooks/use-hours.d.ts +1 -1
- package/hooks/use-hours.js +7 -11
- package/hooks/use-hours.test.js +8 -11
- package/hooks/use-minute.js +6 -8
- package/hooks/use-minute.test.js +26 -31
- package/hooks/use-minutes.d.ts +1 -1
- package/hooks/use-minutes.js +7 -11
- package/hooks/use-minutes.test.js +8 -11
- package/hooks/use-month.js +12 -14
- package/hooks/use-month.test.js +17 -22
- package/hooks/use-time-picker.d.ts +2 -2
- package/hooks/use-time-picker.js +43 -61
- package/hooks/use-time-picker.test.js +31 -40
- package/hooks/use-year.js +8 -10
- package/hooks/use-year.test.js +13 -18
- package/package.json +5 -21
- package/utils/can-select-range.js +9 -11
- package/utils/can-select-range.test.js +10 -11
- package/utils/dayjs-en.js +8 -5
- package/utils/get-current-year-month-and-date.js +2 -3
- package/utils/get-current-year-month-and-date.test.js +4 -5
- package/utils/get-date-month-and-year.js +6 -7
- package/utils/get-date-month-and-year.test.js +2 -3
- package/utils/get-days.d.ts +1 -1
- package/utils/get-days.js +20 -47
- package/utils/get-days.test.js +6 -7
- package/utils/get-each.js +3 -5
- package/utils/get-each.test.js +6 -7
- package/utils/get-initial-months.js +7 -8
- package/utils/get-initial-months.test.js +5 -6
- package/utils/get-months.d.ts +1 -1
- package/utils/get-months.js +8 -10
- package/utils/get-months.test.js +5 -6
- package/utils/get-next-active-month.js +5 -6
- package/utils/get-next-active-month.test.js +8 -9
- package/utils/get-weekday-labels.js +6 -8
- package/utils/get-weekday-labels.test.js +8 -9
- package/utils/get-years.d.ts +1 -1
- package/utils/get-years.js +5 -7
- package/utils/get-years.test.js +5 -6
- package/utils/is-browser.js +0 -1
- package/utils/is-date-blocked.js +5 -7
- package/utils/is-date-blocked.test.js +3 -4
- package/utils/is-date-hovered.js +6 -8
- package/utils/is-date-hovered.test.js +9 -10
- package/utils/is-date-inside-range.js +1 -2
- package/utils/is-date-selected.test.js +2 -3
- package/utils/is-end-date.js +1 -2
- package/utils/is-end-date.test.js +2 -3
- package/utils/is-first-or-last-selected-date.js +1 -2
- package/utils/is-first-or-last-selected-date.test.js +2 -3
- package/utils/is-in-unavailable-dates.js +3 -5
- package/utils/is-in-unavailable-dates.test.js +2 -3
- package/utils/is-start-date.js +1 -2
- package/utils/is-start-date.test.js +2 -3
- package/utils/types.d.ts +1 -1
- package/utils/types.js +0 -1
|
@@ -1,113 +1,77 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
-
if (!m) return o;
|
|
16
|
-
var i = m.call(o), r, ar = [], e;
|
|
17
|
-
try {
|
|
18
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
-
}
|
|
20
|
-
catch (error) { e = { error: error }; }
|
|
21
|
-
finally {
|
|
22
|
-
try {
|
|
23
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
-
}
|
|
25
|
-
finally { if (e) throw e.error; }
|
|
26
|
-
}
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
3
|
exports.useDateRangePicker = exports.END_DATE = exports.START_DATE = void 0;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const can_select_range_1 = require("../utils/can-select-range");
|
|
6
|
+
const get_initial_months_1 = require("../utils/get-initial-months");
|
|
7
|
+
const is_date_blocked_1 = require("../utils/is-date-blocked");
|
|
8
|
+
const is_date_hovered_1 = require("../utils/is-date-hovered");
|
|
9
|
+
const is_date_inside_range_1 = require("../utils/is-date-inside-range");
|
|
10
|
+
const is_end_date_1 = require("../utils/is-end-date");
|
|
11
|
+
const is_first_or_last_selected_date_1 = require("../utils/is-first-or-last-selected-date");
|
|
12
|
+
const is_in_unavailable_dates_1 = require("../utils/is-in-unavailable-dates");
|
|
13
|
+
const is_start_date_1 = require("../utils/is-start-date");
|
|
14
|
+
const use_date_picker_navigation_1 = require("./use-date-picker-navigation");
|
|
15
|
+
const is_browser_1 = require("../utils/is-browser");
|
|
16
|
+
const dayjs_en_1 = require("../utils/dayjs-en");
|
|
44
17
|
exports.START_DATE = "startDate";
|
|
45
18
|
exports.END_DATE = "endDate";
|
|
46
|
-
function useDateRangePicker(
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
var _k = __read((0, react_1.useState)(null), 2), hoveredDate = _k[0], setHoveredDate = _k[1];
|
|
54
|
-
var _l = __read((0, react_1.useState)(startDate), 2), focusedDate = _l[0], setFocusedDate = _l[1];
|
|
55
|
-
var disabledDatesByUser = function (date) {
|
|
19
|
+
function useDateRangePicker({ changeActiveMonthOnSelect = false, endDate, exactMinBookingDays = false, firstDayOfWeek = 0, focusedInput, initialVisibleMonth, isDateBlocked: isDateBlockedProps = () => false, maxBookingDate, minBookingDate, minBookingDays = 1, numberOfMonths = 2, onDatesChange, startDate, unavailableDates = [], }) {
|
|
20
|
+
const [activeMonths, setActiveMonths] = (0, react_1.useState)(() => startDate
|
|
21
|
+
? (0, get_initial_months_1.getInitialMonths)(numberOfMonths, startDate)
|
|
22
|
+
: (0, get_initial_months_1.getInitialMonths)(numberOfMonths, initialVisibleMonth || null));
|
|
23
|
+
const [hoveredDate, setHoveredDate] = (0, react_1.useState)(null);
|
|
24
|
+
const [focusedDate, setFocusedDate] = (0, react_1.useState)(startDate);
|
|
25
|
+
const disabledDatesByUser = (date) => {
|
|
56
26
|
return (0, is_in_unavailable_dates_1.isInUnavailableDates)(unavailableDates, date) || isDateBlockedProps(date);
|
|
57
27
|
};
|
|
58
|
-
|
|
28
|
+
const onDateFocus = (0, react_1.useCallback)((date) => {
|
|
59
29
|
setFocusedDate(date);
|
|
60
|
-
if (!focusedDate || !activeMonths.map(
|
|
30
|
+
if (!focusedDate || !activeMonths.map((m) => m.month).includes((0, dayjs_en_1.dayjsEn)(date).month())) {
|
|
61
31
|
setActiveMonths((0, get_initial_months_1.getInitialMonths)(numberOfMonths, date));
|
|
62
32
|
}
|
|
63
33
|
}, [activeMonths, focusedDate, numberOfMonths]);
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
minBookingDays: minBookingDays,
|
|
89
|
-
exactMinBookingDays: exactMinBookingDays,
|
|
90
|
-
isDateBlocked: disabledDatesByUser,
|
|
91
|
-
});
|
|
92
|
-
};
|
|
93
|
-
(0, react_1.useEffect)(function () {
|
|
34
|
+
const _isDateSelected = (date) => (0, is_date_inside_range_1.isDateInsideRange)(date, startDate, endDate) || (0, is_first_or_last_selected_date_1.isFirstOrLastSelectedDate)(date, startDate, endDate);
|
|
35
|
+
const _isStartDate = (date) => (0, is_start_date_1.isStartDate)(date, startDate);
|
|
36
|
+
const _isEndDate = (date) => (0, is_end_date_1.isEndDate)(date, endDate);
|
|
37
|
+
const _isDateInsideRange = (date) => (0, is_date_inside_range_1.isDateInsideRange)(date, startDate, endDate);
|
|
38
|
+
const _isDateBlocked = (date) => (0, is_date_blocked_1.isDateBlocked)({
|
|
39
|
+
date,
|
|
40
|
+
minBookingDate,
|
|
41
|
+
maxBookingDate,
|
|
42
|
+
startDate,
|
|
43
|
+
endDate,
|
|
44
|
+
minBookingDays,
|
|
45
|
+
isDateBlockedFn: disabledDatesByUser,
|
|
46
|
+
});
|
|
47
|
+
const isDateFocused = (date) => (focusedDate ? (0, dayjs_en_1.dayjsEn)(date).isSame(focusedDate, "day") : false);
|
|
48
|
+
const _isDateHovered = (date) => (0, is_date_hovered_1.isDateHovered)({
|
|
49
|
+
date,
|
|
50
|
+
hoveredDate,
|
|
51
|
+
startDate,
|
|
52
|
+
endDate,
|
|
53
|
+
minBookingDays,
|
|
54
|
+
exactMinBookingDays,
|
|
55
|
+
isDateBlocked: disabledDatesByUser,
|
|
56
|
+
});
|
|
57
|
+
(0, react_1.useEffect)(() => {
|
|
94
58
|
if (!is_browser_1.isBrowser) {
|
|
95
59
|
return;
|
|
96
60
|
}
|
|
97
61
|
function handleKeyDown(e) {
|
|
98
62
|
if ((e.key === "ArrowRight" || e.key === "ArrowLeft" || e.key === "ArrowDown" || e.key === "ArrowUp") &&
|
|
99
63
|
!focusedDate) {
|
|
100
|
-
|
|
64
|
+
const activeMonth = activeMonths[0];
|
|
101
65
|
onDateFocus(activeMonth.date);
|
|
102
66
|
setActiveMonths((0, get_initial_months_1.getInitialMonths)(numberOfMonths, activeMonth.date));
|
|
103
67
|
}
|
|
104
68
|
}
|
|
105
69
|
window.addEventListener("keydown", handleKeyDown);
|
|
106
|
-
return
|
|
70
|
+
return () => {
|
|
107
71
|
window.removeEventListener("keydown", handleKeyDown);
|
|
108
72
|
};
|
|
109
73
|
}, [activeMonths, focusedDate, numberOfMonths, onDateFocus]);
|
|
110
|
-
|
|
74
|
+
const onResetDates = (0, react_1.useCallback)(() => {
|
|
111
75
|
onDatesChange({
|
|
112
76
|
startDate: null,
|
|
113
77
|
endDate: null,
|
|
@@ -120,10 +84,10 @@ function useDateRangePicker(_a) {
|
|
|
120
84
|
minBookingDays > 0 &&
|
|
121
85
|
exactMinBookingDays &&
|
|
122
86
|
(0, can_select_range_1.canSelectRange)({
|
|
123
|
-
minBookingDays
|
|
124
|
-
exactMinBookingDays
|
|
125
|
-
minBookingDate
|
|
126
|
-
maxBookingDate
|
|
87
|
+
minBookingDays,
|
|
88
|
+
exactMinBookingDays,
|
|
89
|
+
minBookingDate,
|
|
90
|
+
maxBookingDate,
|
|
127
91
|
isDateBlocked: disabledDatesByUser,
|
|
128
92
|
startDate: date,
|
|
129
93
|
endDate: null,
|
|
@@ -140,14 +104,14 @@ function useDateRangePicker(_a) {
|
|
|
140
104
|
(focusedInput === exports.START_DATE && endDate && (0, dayjs_en_1.dayjsEn)(date).isAfter(endDate))) &&
|
|
141
105
|
!exactMinBookingDays &&
|
|
142
106
|
(0, can_select_range_1.canSelectRange)({
|
|
143
|
-
minBookingDays
|
|
107
|
+
minBookingDays,
|
|
144
108
|
isDateBlocked: disabledDatesByUser,
|
|
145
109
|
startDate: date,
|
|
146
110
|
endDate: null,
|
|
147
111
|
})) ||
|
|
148
112
|
(focusedInput === exports.START_DATE &&
|
|
149
113
|
!exactMinBookingDays &&
|
|
150
|
-
(0, can_select_range_1.canSelectRange)({ minBookingDays
|
|
114
|
+
(0, can_select_range_1.canSelectRange)({ minBookingDays, isDateBlocked: disabledDatesByUser, endDate, startDate: date }))) {
|
|
151
115
|
onDatesChange({
|
|
152
116
|
endDate: null,
|
|
153
117
|
startDate: date,
|
|
@@ -157,7 +121,7 @@ function useDateRangePicker(_a) {
|
|
|
157
121
|
else if (focusedInput === exports.START_DATE &&
|
|
158
122
|
!exactMinBookingDays &&
|
|
159
123
|
(0, can_select_range_1.canSelectRange)({
|
|
160
|
-
minBookingDays
|
|
124
|
+
minBookingDays,
|
|
161
125
|
isDateBlocked: disabledDatesByUser,
|
|
162
126
|
endDate: null,
|
|
163
127
|
startDate: date,
|
|
@@ -172,9 +136,9 @@ function useDateRangePicker(_a) {
|
|
|
172
136
|
startDate &&
|
|
173
137
|
!(0, dayjs_en_1.dayjsEn)(date).isBefore(startDate) &&
|
|
174
138
|
!exactMinBookingDays &&
|
|
175
|
-
(0, can_select_range_1.canSelectRange)({ minBookingDays
|
|
139
|
+
(0, can_select_range_1.canSelectRange)({ minBookingDays, isDateBlocked: disabledDatesByUser, startDate, endDate: date })) {
|
|
176
140
|
onDatesChange({
|
|
177
|
-
startDate
|
|
141
|
+
startDate,
|
|
178
142
|
endDate: date,
|
|
179
143
|
focusedInput: null,
|
|
180
144
|
});
|
|
@@ -191,38 +155,38 @@ function useDateRangePicker(_a) {
|
|
|
191
155
|
setHoveredDate(null);
|
|
192
156
|
}
|
|
193
157
|
else {
|
|
194
|
-
|
|
195
|
-
|
|
158
|
+
const isNotBlocked = !_isDateBlocked(date) || (startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day"));
|
|
159
|
+
const isHoveredDateAfterOrEqualMinDate = minBookingDate
|
|
196
160
|
? !(0, dayjs_en_1.dayjsEn)(date).isBefore((0, dayjs_en_1.dayjsEn)(minBookingDate).subtract(1, "day"))
|
|
197
161
|
: true;
|
|
198
|
-
|
|
162
|
+
const isHoveredDateBeforeOrEqualMaxDate = maxBookingDate ? !(0, dayjs_en_1.dayjsEn)(date).isAfter(maxBookingDate) : true;
|
|
199
163
|
// Exact minimal booking days
|
|
200
|
-
|
|
164
|
+
const potentialEndDate = (0, dayjs_en_1.dayjsEn)(date)
|
|
201
165
|
.add(minBookingDays - 1, "day")
|
|
202
166
|
.toDate();
|
|
203
|
-
|
|
167
|
+
const isPotentialEndDateAfterOrEqualMinDate = minBookingDate
|
|
204
168
|
? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isBefore(minBookingDate)
|
|
205
169
|
: true;
|
|
206
|
-
|
|
170
|
+
const isPotentialEndDateBeforeOrEqualMaxDate = maxBookingDate
|
|
207
171
|
? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isAfter(maxBookingDate)
|
|
208
172
|
: true;
|
|
209
|
-
|
|
173
|
+
const isExactAndInRange = exactMinBookingDays &&
|
|
210
174
|
minBookingDays > 1 &&
|
|
211
175
|
isHoveredDateAfterOrEqualMinDate &&
|
|
212
176
|
isHoveredDateBeforeOrEqualMaxDate &&
|
|
213
177
|
isPotentialEndDateAfterOrEqualMinDate &&
|
|
214
178
|
isPotentialEndDateBeforeOrEqualMaxDate;
|
|
215
179
|
// Is date in range
|
|
216
|
-
|
|
180
|
+
const isInRange = startDate &&
|
|
217
181
|
!endDate &&
|
|
218
182
|
!exactMinBookingDays &&
|
|
219
183
|
isHoveredDateAfterOrEqualMinDate &&
|
|
220
184
|
isHoveredDateBeforeOrEqualMaxDate;
|
|
221
185
|
// Is start date hovered and in range
|
|
222
|
-
|
|
186
|
+
const isMinBookingDaysInRange = minBookingDays > 1 && startDate
|
|
223
187
|
? (0, dayjs_en_1.dayjsEn)(date).isBetween(startDate, (0, dayjs_en_1.dayjsEn)(startDate).add(minBookingDays - 2, "day"))
|
|
224
188
|
: true;
|
|
225
|
-
|
|
189
|
+
const isStartDateHoveredAndInRange = startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day") && isMinBookingDaysInRange;
|
|
226
190
|
if (isNotBlocked && (isExactAndInRange || isInRange || isStartDateHoveredAndInRange)) {
|
|
227
191
|
setHoveredDate(date);
|
|
228
192
|
}
|
|
@@ -231,14 +195,31 @@ function useDateRangePicker(_a) {
|
|
|
231
195
|
}
|
|
232
196
|
}
|
|
233
197
|
}
|
|
234
|
-
return
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
198
|
+
return {
|
|
199
|
+
...(0, use_date_picker_navigation_1.useDatePickerNavigation)({
|
|
200
|
+
activeMonths,
|
|
201
|
+
maxBookingDate,
|
|
202
|
+
minBookingDate,
|
|
203
|
+
numberOfMonths,
|
|
204
|
+
setActiveMonths,
|
|
205
|
+
setFocusedDate,
|
|
206
|
+
}),
|
|
207
|
+
activeMonths,
|
|
208
|
+
firstDayOfWeek,
|
|
209
|
+
focusedDate,
|
|
210
|
+
hoveredDate,
|
|
211
|
+
isDateBlocked: _isDateBlocked,
|
|
212
|
+
isDateFocused,
|
|
213
|
+
isDateHovered: _isDateHovered,
|
|
214
|
+
isDateInsideRange: _isDateInsideRange,
|
|
215
|
+
isDateSelected: _isDateSelected,
|
|
216
|
+
isEndDate: _isEndDate,
|
|
217
|
+
isStartDate: _isStartDate,
|
|
218
|
+
numberOfMonths,
|
|
219
|
+
onDateFocus,
|
|
220
|
+
onDateHover,
|
|
221
|
+
onDateSelect,
|
|
222
|
+
onResetDates,
|
|
223
|
+
};
|
|
242
224
|
}
|
|
243
225
|
exports.useDateRangePicker = useDateRangePicker;
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRhdGUtcmFuZ2UtcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZS1kYXRlLXJhbmdlLXBpY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBeUQ7QUFDekQsOERBQTJEO0FBQzNELGtFQUErRDtBQUMvRCw0REFBeUQ7QUFDekQsNERBQXlEO0FBQ3pELHNFQUFrRTtBQUNsRSxvREFBaUQ7QUFDakQsMEZBQW9GO0FBQ3BGLDRFQUF3RTtBQUN4RSx3REFBcUQ7QUFFckQsMkVBQTBHO0FBQzFHLGtEQUFnRDtBQUNoRCw4Q0FBNEM7QUFFL0IsUUFBQSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBQ3pCLFFBQUEsUUFBUSxHQUFHLFNBQVMsQ0FBQztBQThDbEMsU0FBZ0Isa0JBQWtCLENBQUMsRUFlVDtRQWR0QixpQ0FBaUMsRUFBakMseUJBQXlCLG1CQUFHLEtBQUssS0FBQSxFQUNqQyxPQUFPLGFBQUEsRUFDUCwyQkFBMkIsRUFBM0IsbUJBQW1CLG1CQUFHLEtBQUssS0FBQSxFQUMzQixzQkFBa0IsRUFBbEIsY0FBYyxtQkFBRyxDQUFDLEtBQUEsRUFDbEIsWUFBWSxrQkFBQSxFQUNaLG1CQUFtQix5QkFBQSxFQUNuQixxQkFBK0MsRUFBaEMsa0JBQWtCLG1CQUFHLGNBQU0sT0FBQSxLQUFLLEVBQUwsQ0FBSyxLQUFBLEVBQy9DLGNBQWMsb0JBQUEsRUFDZCxjQUFjLG9CQUFBLEVBQ2Qsc0JBQWtCLEVBQWxCLGNBQWMsbUJBQUcsQ0FBQyxLQUFBLEVBQ2xCLHNCQUFrQixFQUFsQixjQUFjLG1CQUFHLENBQUMsS0FBQSxFQUNsQixhQUFhLG1CQUFBLEVBQ2IsU0FBUyxlQUFBLEVBQ1Qsd0JBQXFCLEVBQXJCLGdCQUFnQixtQkFBRyxFQUFFLEtBQUE7SUFFZixJQUFBLEtBQUEsT0FBa0MsSUFBQSxnQkFBUSxFQUFDO1FBQzdDLE9BQUEs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
|
|
@@ -1,22 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
beforeAll(
|
|
7
|
-
jest.useFakeTimers(
|
|
3
|
+
const react_hooks_1 = require("@testing-library/react-hooks");
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const use_date_range_picker_1 = require("./use-date-range-picker");
|
|
6
|
+
beforeAll(() => {
|
|
7
|
+
jest.useFakeTimers();
|
|
8
8
|
jest.setSystemTime(new Date("2021-09-25"));
|
|
9
9
|
});
|
|
10
|
-
test("base data",
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
});
|
|
19
|
-
}).result;
|
|
10
|
+
test("base data", () => {
|
|
11
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_date_range_picker_1.useDateRangePicker)({
|
|
12
|
+
startDate: null,
|
|
13
|
+
endDate: null,
|
|
14
|
+
onDatesChange: () => undefined,
|
|
15
|
+
focusedInput: "startDate",
|
|
16
|
+
minBookingDate: new Date("2020-01-01"),
|
|
17
|
+
}));
|
|
20
18
|
expect(result.current.firstDayOfWeek).toBe(0);
|
|
21
19
|
expect(result.current.focusedDate).toBe(null);
|
|
22
20
|
expect(result.current.hoveredDate).toBe(null);
|
|
@@ -35,64 +33,55 @@ test("base data", function () {
|
|
|
35
33
|
expect(result.current.isDateBlocked(new Date("2020-01-01"))).toBe(false);
|
|
36
34
|
expect(result.current.isDateBlocked(new Date("2019-12-31"))).toBe(true);
|
|
37
35
|
});
|
|
38
|
-
test("date focus",
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
minBookingDate: new Date("2020-01-01"),
|
|
50
|
-
});
|
|
51
|
-
}).result;
|
|
52
|
-
var NEW_DATE = new Date("2022-12-22");
|
|
36
|
+
test("date focus", () => {
|
|
37
|
+
const BASE_DATE = new Date("2021-09-15");
|
|
38
|
+
const { result: state } = (0, react_hooks_1.renderHook)(() => (0, react_1.useState)({ startDate: null, endDate: null, focusedInput: "startDate" }));
|
|
39
|
+
const { result } = (0, react_hooks_1.renderHook)(() => (0, use_date_range_picker_1.useDateRangePicker)({
|
|
40
|
+
startDate: state.current[0].startDate,
|
|
41
|
+
endDate: state.current[0].endDate,
|
|
42
|
+
onDatesChange: (data) => state.current[1](data),
|
|
43
|
+
focusedInput: state.current[0].focusedInput,
|
|
44
|
+
minBookingDate: new Date("2020-01-01"),
|
|
45
|
+
}));
|
|
46
|
+
const NEW_DATE = new Date("2022-12-22");
|
|
53
47
|
expect(result.current.isDateFocused(BASE_DATE)).toBe(false);
|
|
54
48
|
expect(result.current.isDateFocused(NEW_DATE)).toBe(false);
|
|
55
|
-
(0, react_hooks_1.act)(
|
|
49
|
+
(0, react_hooks_1.act)(() => {
|
|
56
50
|
result.current.onDateFocus(NEW_DATE);
|
|
57
51
|
});
|
|
58
52
|
expect(result.current.isDateFocused(NEW_DATE)).toBe(true);
|
|
59
53
|
expect(result.current.isDateFocused(BASE_DATE)).toBe(false);
|
|
60
54
|
});
|
|
61
|
-
test("date select",
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
minBookingDate: new Date("2020-01-01"),
|
|
73
|
-
});
|
|
74
|
-
}), result = _a.result, rerender = _a.rerender;
|
|
75
|
-
var NEW_DATE = new Date("2022-12-22");
|
|
55
|
+
test("date select", () => {
|
|
56
|
+
const BASE_DATE = new Date("2021-09-15");
|
|
57
|
+
const { result: state } = (0, react_hooks_1.renderHook)(() => (0, react_1.useState)({ startDate: null, endDate: null, focusedInput: "startDate" }));
|
|
58
|
+
const { result, rerender } = (0, react_hooks_1.renderHook)(() => (0, use_date_range_picker_1.useDateRangePicker)({
|
|
59
|
+
startDate: state.current[0].startDate,
|
|
60
|
+
endDate: state.current[0].endDate,
|
|
61
|
+
onDatesChange: (data) => state.current[1](data),
|
|
62
|
+
focusedInput: state.current[0].focusedInput,
|
|
63
|
+
minBookingDate: new Date("2020-01-01"),
|
|
64
|
+
}));
|
|
65
|
+
const NEW_DATE = new Date("2022-12-22");
|
|
76
66
|
expect(result.current.isDateSelected(BASE_DATE)).toBe(false);
|
|
77
67
|
expect(result.current.isDateSelected(NEW_DATE)).toBe(false);
|
|
78
|
-
(0, react_hooks_1.act)(
|
|
68
|
+
(0, react_hooks_1.act)(() => {
|
|
79
69
|
result.current.onDateSelect(NEW_DATE);
|
|
80
70
|
rerender();
|
|
81
71
|
});
|
|
82
72
|
expect(result.current.isDateSelected(NEW_DATE)).toBe(true);
|
|
83
73
|
expect(result.current.isDateSelected(BASE_DATE)).toBe(false);
|
|
84
74
|
// select another
|
|
85
|
-
(0, react_hooks_1.act)(
|
|
75
|
+
(0, react_hooks_1.act)(() => {
|
|
86
76
|
result.current.onDateSelect(BASE_DATE);
|
|
87
77
|
rerender();
|
|
88
78
|
});
|
|
89
79
|
expect(result.current.isDateSelected(BASE_DATE)).toBe(true);
|
|
90
80
|
// reset
|
|
91
|
-
(0, react_hooks_1.act)(
|
|
81
|
+
(0, react_hooks_1.act)(() => {
|
|
92
82
|
result.current.onDateSelect(BASE_DATE);
|
|
93
83
|
result.current.onResetDates();
|
|
94
84
|
rerender();
|
|
95
85
|
});
|
|
96
86
|
expect(result.current.isDateSelected(BASE_DATE)).toBe(false);
|
|
97
87
|
});
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRhdGUtcmFuZ2UtcGlja2VyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlLWRhdGUtcmFuZ2UtcGlja2VyLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0REFBK0Q7QUFDL0QsK0JBQWlDO0FBQ2pDLGlFQUFpRjtBQUVqRixTQUFTLENBQUM7SUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxXQUFXLEVBQUU7SUFDTixJQUFBLE1BQU0sR0FBSyxJQUFBLHdCQUFVLEVBQUM7UUFDMUIsT0FBQSxJQUFBLDBDQUFrQixFQUFDO1lBQ2YsU0FBUyxFQUFFLElBQUk7WUFDZixPQUFPLEVBQUUsSUFBSTtZQUNiLGFBQWEsRUFBRSxjQUFNLE9BQUEsU0FBUyxFQUFULENBQVM7WUFDOUIsWUFBWSxFQUFFLFdBQVc7WUFDekIsY0FBYyxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztTQUN6QyxDQUFDO0lBTkYsQ0FNRSxDQUNMLE9BUmEsQ0FRWjtJQUVGLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUM5QztZQUNJLElBQUks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
|
package/hooks/use-day.js
CHANGED
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useDay = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
function useDay(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
(0, react_1.useEffect)(function () {
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const dayjs_en_1 = require("../utils/dayjs-en");
|
|
6
|
+
function useDay({ date, dayRef, focusedDate, isDateBlocked, isDateFocused, isDateHovered, isDateInsideRange, isDateSelected, onDateFocus, onDateHover, onDateSelect, }) {
|
|
7
|
+
const onClick = (0, react_1.useCallback)(() => onDateSelect(date), [date, onDateSelect]);
|
|
8
|
+
const onMouseEnter = (0, react_1.useCallback)(() => onDateHover(date), [date, onDateHover]);
|
|
9
|
+
const disabled = isDateBlocked(date) && !isDateHovered(date);
|
|
10
|
+
const isToday = (0, dayjs_en_1.dayjsEn)().isSame(date, "day");
|
|
11
|
+
(0, react_1.useEffect)(() => {
|
|
13
12
|
if (dayRef && dayRef.current && isDateFocused(date)) {
|
|
14
13
|
dayRef.current.focus();
|
|
15
14
|
}
|
|
16
15
|
}, [dayRef, date, isDateFocused]);
|
|
17
|
-
|
|
16
|
+
const onKeyDown = (0, react_1.useCallback)((e) => {
|
|
18
17
|
if (["ArrowRight", "ArrowLeft", "ArrowUp", "ArrowDown"].includes(e.key)) {
|
|
19
18
|
e.preventDefault();
|
|
20
19
|
switch (e.key) {
|
|
@@ -40,11 +39,10 @@ function useDay(_a) {
|
|
|
40
39
|
isInsideRange: isDateInsideRange ? isDateInsideRange(date) : false,
|
|
41
40
|
isWithinHoverRange: isDateHovered(date),
|
|
42
41
|
onClick: !disabled ? onClick : undefined,
|
|
43
|
-
onKeyDown
|
|
44
|
-
onMouseEnter
|
|
42
|
+
onKeyDown,
|
|
43
|
+
onMouseEnter,
|
|
45
44
|
tabIndex: focusedDate === null || isDateFocused(date) ? 0 : -1,
|
|
46
|
-
isToday
|
|
45
|
+
isToday,
|
|
47
46
|
};
|
|
48
47
|
}
|
|
49
48
|
exports.useDay = useDay;
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtZGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUF5RTtBQUN6RSw4Q0FBNEM7QUE2QjVDLFNBQWdCLE1BQU0sQ0FBQyxFQVlUO1FBWFYsSUFBSSxVQUFBLEVBQ0osTUFBTSxZQUFBLEVBQ04sV0FBVyxpQkFBQSxFQUNYLGFBQWEsbUJBQUEsRUFDYixhQUFhLG1CQUFBLEVBQ2IsYUFBYSxtQkFBQSxFQUNiLGlCQUFpQix1QkFBQSxFQUNqQixjQUFjLG9CQUFBLEVBQ2QsV0FBVyxpQkFBQSxFQUNYLFdBQVcsaUJBQUEsRUFDWCxZQUFZLGtCQUFBO0lBRVosSUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBVyxFQUFDLGNBQU0sT0FBQSxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQWxCLENBQWtCLEVBQUUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM1RSxJQUFNLFlBQVksR0FBRyxJQUFBLG1CQUFXLEVBQUMsY0FBTSxPQUFBLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBakIsQ0FBaUIsRUFBRSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQy9FLElBQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3RCxJQUFNLE9BQU8sR0FBRyxJQUFBLGtCQUFPLEdBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRTlDLElBQUEsaUJBQVMsRUFBQztRQUNOLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pELE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDMUI7SUFDTCxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFFbEMsSUFBTSxTQUFTLEdBQUcsSUFBQSxtQkFBVyxFQUN6QixVQUFDLENBQTZCO1FBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3JFLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNuQixRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1gsS0FBSyxZQUFZO29CQUNiLFdBQVcsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUNsRCxNQUFNO2dCQUNWLEtBQUssV0FBVztvQkFDWixXQUFXLENBQUMsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztvQkFDdkQsTUFBTTtnQkFDVixLQUFLLFNBQVM7b0JBQ1YsV0FBVyxDQUFDLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7b0JBQ3ZELE1BQU07Z0JBQ1YsS0FBSyxXQUFXO29CQUNaLFdBQVcsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUNsRCxNQUFNO2FBQ2I7U0FDSjtJQUNMLENBQUMsRUFDRCxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FDdEIsQ0FBQztJQUVGLE9BQU87UUFDSCxZQUFZLEVBQUUsUUFBUTtRQUN0QixTQUFTLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQztRQUM5QixVQUFVLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQztRQUNoQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQ2xFLGtCQUFrQixFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFDdkMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDeEMsU0FBUyxXQUFBO1FBQ1QsWUFBWSxjQUFBO1FBQ1osUUFBUSxFQUFFLFdBQVcsS0FBSyxJQUFJLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RCxPQUFPLFNBQUE7S0FDVixDQUFDO0FBQ04sQ0FBQztBQTNERCx3QkEyREMifQ==
|