@uxf/datepicker 1.2.1 → 10.0.0-beta.37

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 (80) hide show
  1. package/contexts/date-picker-context.d.ts +1 -1
  2. package/contexts/date-picker-context.js +19 -19
  3. package/contexts/date-range-picker-context.d.ts +1 -1
  4. package/contexts/date-range-picker-context.js +21 -22
  5. package/contexts/time-picker-context.d.ts +2 -1
  6. package/contexts/time-picker-context.js +10 -10
  7. package/hooks/use-date-picker-navigation.js +32 -36
  8. package/hooks/use-date-picker-navigation.test.js +37 -46
  9. package/hooks/use-date-picker.d.ts +4 -2
  10. package/hooks/use-date-picker.js +67 -86
  11. package/hooks/use-date-picker.test.js +25 -32
  12. package/hooks/use-date-range-picker.d.ts +1 -1
  13. package/hooks/use-date-range-picker.js +94 -113
  14. package/hooks/use-date-range-picker.test.js +39 -50
  15. package/hooks/use-day.d.ts +2 -1
  16. package/hooks/use-day.js +16 -16
  17. package/hooks/use-day.test.js +42 -47
  18. package/hooks/use-decade.js +11 -15
  19. package/hooks/use-decade.test.js +13 -18
  20. package/hooks/use-hour.d.ts +2 -1
  21. package/hooks/use-hour.js +10 -10
  22. package/hooks/use-hour.test.js +26 -31
  23. package/hooks/use-hours.d.ts +1 -1
  24. package/hooks/use-hours.js +7 -11
  25. package/hooks/use-hours.test.js +8 -11
  26. package/hooks/use-minute.d.ts +2 -1
  27. package/hooks/use-minute.js +10 -10
  28. package/hooks/use-minute.test.js +26 -31
  29. package/hooks/use-minutes.d.ts +1 -1
  30. package/hooks/use-minutes.js +7 -11
  31. package/hooks/use-minutes.test.js +8 -11
  32. package/hooks/use-month.js +12 -14
  33. package/hooks/use-month.test.js +17 -22
  34. package/hooks/use-time-picker.d.ts +5 -3
  35. package/hooks/use-time-picker.js +44 -61
  36. package/hooks/use-time-picker.test.js +31 -40
  37. package/hooks/use-year.js +8 -10
  38. package/hooks/use-year.test.js +13 -18
  39. package/package.json +5 -21
  40. package/utils/can-select-range.js +9 -11
  41. package/utils/can-select-range.test.js +10 -11
  42. package/utils/dayjs-en.js +8 -5
  43. package/utils/get-current-year-month-and-date.js +2 -3
  44. package/utils/get-current-year-month-and-date.test.js +4 -5
  45. package/utils/get-date-month-and-year.js +6 -7
  46. package/utils/get-date-month-and-year.test.js +2 -3
  47. package/utils/get-days.d.ts +1 -1
  48. package/utils/get-days.js +20 -47
  49. package/utils/get-days.test.js +6 -7
  50. package/utils/get-each.js +3 -5
  51. package/utils/get-each.test.js +6 -7
  52. package/utils/get-initial-months.js +7 -8
  53. package/utils/get-initial-months.test.js +5 -6
  54. package/utils/get-months.d.ts +1 -1
  55. package/utils/get-months.js +8 -10
  56. package/utils/get-months.test.js +5 -6
  57. package/utils/get-next-active-month.js +5 -6
  58. package/utils/get-next-active-month.test.js +8 -9
  59. package/utils/get-weekday-labels.js +6 -8
  60. package/utils/get-weekday-labels.test.js +8 -9
  61. package/utils/get-years.d.ts +1 -1
  62. package/utils/get-years.js +5 -7
  63. package/utils/get-years.test.js +5 -6
  64. package/utils/is-browser.js +0 -1
  65. package/utils/is-date-blocked.js +5 -7
  66. package/utils/is-date-blocked.test.js +3 -4
  67. package/utils/is-date-hovered.js +6 -8
  68. package/utils/is-date-hovered.test.js +9 -10
  69. package/utils/is-date-inside-range.js +1 -2
  70. package/utils/is-date-selected.test.js +2 -3
  71. package/utils/is-end-date.js +1 -2
  72. package/utils/is-end-date.test.js +2 -3
  73. package/utils/is-first-or-last-selected-date.js +1 -2
  74. package/utils/is-first-or-last-selected-date.test.js +2 -3
  75. package/utils/is-in-unavailable-dates.js +3 -5
  76. package/utils/is-in-unavailable-dates.test.js +2 -3
  77. package/utils/is-start-date.js +1 -2
  78. package/utils/is-start-date.test.js +2 -3
  79. package/utils/types.d.ts +1 -1
  80. 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
- var react_1 = require("react");
32
- var can_select_range_1 = require("../utils/can-select-range");
33
- var get_initial_months_1 = require("../utils/get-initial-months");
34
- var is_date_blocked_1 = require("../utils/is-date-blocked");
35
- var is_date_hovered_1 = require("../utils/is-date-hovered");
36
- var is_date_inside_range_1 = require("../utils/is-date-inside-range");
37
- var is_end_date_1 = require("../utils/is-end-date");
38
- var is_first_or_last_selected_date_1 = require("../utils/is-first-or-last-selected-date");
39
- var is_in_unavailable_dates_1 = require("../utils/is-in-unavailable-dates");
40
- var is_start_date_1 = require("../utils/is-start-date");
41
- var use_date_picker_navigation_1 = require("./use-date-picker-navigation");
42
- var is_browser_1 = require("../utils/is-browser");
43
- var dayjs_en_1 = require("../utils/dayjs-en");
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(_a) {
47
- var _b = _a.changeActiveMonthOnSelect, changeActiveMonthOnSelect = _b === void 0 ? false : _b, endDate = _a.endDate, _c = _a.exactMinBookingDays, exactMinBookingDays = _c === void 0 ? false : _c, _d = _a.firstDayOfWeek, firstDayOfWeek = _d === void 0 ? 0 : _d, focusedInput = _a.focusedInput, initialVisibleMonth = _a.initialVisibleMonth, _e = _a.isDateBlocked, isDateBlockedProps = _e === void 0 ? function () { return false; } : _e, maxBookingDate = _a.maxBookingDate, minBookingDate = _a.minBookingDate, _f = _a.minBookingDays, minBookingDays = _f === void 0 ? 1 : _f, _g = _a.numberOfMonths, numberOfMonths = _g === void 0 ? 2 : _g, onDatesChange = _a.onDatesChange, startDate = _a.startDate, _h = _a.unavailableDates, unavailableDates = _h === void 0 ? [] : _h;
48
- var _j = __read((0, react_1.useState)(function () {
49
- return startDate
50
- ? (0, get_initial_months_1.getInitialMonths)(numberOfMonths, startDate)
51
- : (0, get_initial_months_1.getInitialMonths)(numberOfMonths, initialVisibleMonth || null);
52
- }), 2), activeMonths = _j[0], setActiveMonths = _j[1];
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
- var onDateFocus = (0, react_1.useCallback)(function (date) {
28
+ const onDateFocus = (0, react_1.useCallback)((date) => {
59
29
  setFocusedDate(date);
60
- if (!focusedDate || !activeMonths.map(function (m) { return m.month; }).includes((0, dayjs_en_1.dayjsEn)(date).month())) {
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
- var _isDateSelected = function (date) {
65
- return (0, is_date_inside_range_1.isDateInsideRange)(date, startDate, endDate) || (0, is_first_or_last_selected_date_1.isFirstOrLastSelectedDate)(date, startDate, endDate);
66
- };
67
- var _isStartDate = function (date) { return (0, is_start_date_1.isStartDate)(date, startDate); };
68
- var _isEndDate = function (date) { return (0, is_end_date_1.isEndDate)(date, endDate); };
69
- var _isDateInsideRange = function (date) { return (0, is_date_inside_range_1.isDateInsideRange)(date, startDate, endDate); };
70
- var _isDateBlocked = function (date) {
71
- return (0, is_date_blocked_1.isDateBlocked)({
72
- date: date,
73
- minBookingDate: minBookingDate,
74
- maxBookingDate: maxBookingDate,
75
- startDate: startDate,
76
- endDate: endDate,
77
- minBookingDays: minBookingDays,
78
- isDateBlockedFn: disabledDatesByUser,
79
- });
80
- };
81
- var isDateFocused = function (date) { return (focusedDate ? (0, dayjs_en_1.dayjsEn)(date).isSame(focusedDate, "day") : false); };
82
- var _isDateHovered = function (date) {
83
- return (0, is_date_hovered_1.isDateHovered)({
84
- date: date,
85
- hoveredDate: hoveredDate,
86
- startDate: startDate,
87
- endDate: endDate,
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
- var activeMonth = activeMonths[0];
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 function () {
70
+ return () => {
107
71
  window.removeEventListener("keydown", handleKeyDown);
108
72
  };
109
73
  }, [activeMonths, focusedDate, numberOfMonths, onDateFocus]);
110
- var onResetDates = (0, react_1.useCallback)(function () {
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: minBookingDays,
124
- exactMinBookingDays: exactMinBookingDays,
125
- minBookingDate: minBookingDate,
126
- maxBookingDate: 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: 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: minBookingDays, isDateBlocked: disabledDatesByUser, endDate: endDate, startDate: date }))) {
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: 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: minBookingDays, isDateBlocked: disabledDatesByUser, startDate: startDate, endDate: date })) {
139
+ (0, can_select_range_1.canSelectRange)({ minBookingDays, isDateBlocked: disabledDatesByUser, startDate, endDate: date })) {
176
140
  onDatesChange({
177
- startDate: 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
- var isNotBlocked = !_isDateBlocked(date) || (startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day"));
195
- var isHoveredDateAfterOrEqualMinDate = minBookingDate
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
- var isHoveredDateBeforeOrEqualMaxDate = maxBookingDate ? !(0, dayjs_en_1.dayjsEn)(date).isAfter(maxBookingDate) : true;
162
+ const isHoveredDateBeforeOrEqualMaxDate = maxBookingDate ? !(0, dayjs_en_1.dayjsEn)(date).isAfter(maxBookingDate) : true;
199
163
  // Exact minimal booking days
200
- var potentialEndDate = (0, dayjs_en_1.dayjsEn)(date)
164
+ const potentialEndDate = (0, dayjs_en_1.dayjsEn)(date)
201
165
  .add(minBookingDays - 1, "day")
202
166
  .toDate();
203
- var isPotentialEndDateAfterOrEqualMinDate = minBookingDate
167
+ const isPotentialEndDateAfterOrEqualMinDate = minBookingDate
204
168
  ? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isBefore(minBookingDate)
205
169
  : true;
206
- var isPotentialEndDateBeforeOrEqualMaxDate = maxBookingDate
170
+ const isPotentialEndDateBeforeOrEqualMaxDate = maxBookingDate
207
171
  ? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isAfter(maxBookingDate)
208
172
  : true;
209
- var isExactAndInRange = exactMinBookingDays &&
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
- var isInRange = startDate &&
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
- var isMinBookingDaysInRange = minBookingDays > 1 && startDate
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
- var isStartDateHoveredAndInRange = startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day") && isMinBookingDaysInRange;
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 __assign(__assign({}, (0, use_date_picker_navigation_1.useDatePickerNavigation)({
235
- activeMonths: activeMonths,
236
- maxBookingDate: maxBookingDate,
237
- minBookingDate: minBookingDate,
238
- numberOfMonths: numberOfMonths,
239
- setActiveMonths: setActiveMonths,
240
- setFocusedDate: setFocusedDate,
241
- })), { activeMonths: activeMonths, firstDayOfWeek: firstDayOfWeek, focusedDate: focusedDate, hoveredDate: hoveredDate, isDateBlocked: _isDateBlocked, isDateFocused: isDateFocused, isDateHovered: _isDateHovered, isDateInsideRange: _isDateInsideRange, isDateSelected: _isDateSelected, isEndDate: _isEndDate, isStartDate: _isStartDate, numberOfMonths: numberOfMonths, onDateFocus: onDateFocus, onDateHover: onDateHover, onDateSelect: onDateSelect, onResetDates: onResetDates });
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
- var react_hooks_1 = require("@testing-library/react-hooks");
4
- var react_1 = require("react");
5
- var use_date_range_picker_1 = require("./use-date-range-picker");
6
- beforeAll(function () {
7
- jest.useFakeTimers("modern");
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", function () {
11
- var result = (0, react_hooks_1.renderHook)(function () {
12
- return (0, use_date_range_picker_1.useDateRangePicker)({
13
- startDate: null,
14
- endDate: null,
15
- onDatesChange: function () { return undefined; },
16
- focusedInput: "startDate",
17
- minBookingDate: new Date("2020-01-01"),
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", function () {
39
- var BASE_DATE = new Date("2021-09-15");
40
- var state = (0, react_hooks_1.renderHook)(function () {
41
- return (0, react_1.useState)({ startDate: null, endDate: null, focusedInput: "startDate" });
42
- }).result;
43
- var result = (0, react_hooks_1.renderHook)(function () {
44
- return (0, use_date_range_picker_1.useDateRangePicker)({
45
- startDate: state.current[0].startDate,
46
- endDate: state.current[0].endDate,
47
- onDatesChange: function (data) { return state.current[1](data); },
48
- focusedInput: state.current[0].focusedInput,
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)(function () {
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", function () {
62
- var BASE_DATE = new Date("2021-09-15");
63
- var state = (0, react_hooks_1.renderHook)(function () {
64
- return (0, react_1.useState)({ startDate: null, endDate: null, focusedInput: "startDate" });
65
- }).result;
66
- var _a = (0, react_hooks_1.renderHook)(function () {
67
- return (0, use_date_range_picker_1.useDateRangePicker)({
68
- startDate: state.current[0].startDate,
69
- endDate: state.current[0].endDate,
70
- onDatesChange: function (data) { return state.current[1](data); },
71
- focusedInput: state.current[0].focusedInput,
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)(function () {
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)(function () {
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)(function () {
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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
@@ -11,6 +11,7 @@ export interface UseDayProps {
11
11
  onDateFocus: (date: Date) => void;
12
12
  onDateHover: (date: Date) => void;
13
13
  onDateSelect: (date: Date) => void;
14
+ preventScroll?: boolean;
14
15
  }
15
16
  export interface UseDayReturnType {
16
17
  disabledDate: boolean;
@@ -24,4 +25,4 @@ export interface UseDayReturnType {
24
25
  onMouseEnter: () => void;
25
26
  tabIndex: number;
26
27
  }
27
- export declare function useDay({ date, dayRef, focusedDate, isDateBlocked, isDateFocused, isDateHovered, isDateInsideRange, isDateSelected, onDateFocus, onDateHover, onDateSelect, }: UseDayProps): UseDayReturnType;
28
+ export declare function useDay({ date, dayRef, focusedDate, isDateBlocked, isDateFocused, isDateHovered, isDateInsideRange, isDateSelected, onDateFocus, onDateHover, onDateSelect, preventScroll, }: UseDayProps): UseDayReturnType;
package/hooks/use-day.js CHANGED
@@ -1,20 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useDay = void 0;
4
- var react_1 = require("react");
5
- var dayjs_en_1 = require("../utils/dayjs-en");
6
- function useDay(_a) {
7
- var date = _a.date, dayRef = _a.dayRef, focusedDate = _a.focusedDate, isDateBlocked = _a.isDateBlocked, isDateFocused = _a.isDateFocused, isDateHovered = _a.isDateHovered, isDateInsideRange = _a.isDateInsideRange, isDateSelected = _a.isDateSelected, onDateFocus = _a.onDateFocus, onDateHover = _a.onDateHover, onDateSelect = _a.onDateSelect;
8
- var onClick = (0, react_1.useCallback)(function () { return onDateSelect(date); }, [date, onDateSelect]);
9
- var onMouseEnter = (0, react_1.useCallback)(function () { return onDateHover(date); }, [date, onDateHover]);
10
- var disabled = isDateBlocked(date) && !isDateHovered(date);
11
- var isToday = (0, dayjs_en_1.dayjsEn)().isSame(date, "day");
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, preventScroll, }) {
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
- dayRef.current.focus();
13
+ dayRef.current.focus({
14
+ preventScroll,
15
+ });
15
16
  }
16
- }, [dayRef, date, isDateFocused]);
17
- var onKeyDown = (0, react_1.useCallback)(function (e) {
17
+ }, [dayRef, date, isDateFocused, preventScroll]);
18
+ const onKeyDown = (0, react_1.useCallback)((e) => {
18
19
  if (["ArrowRight", "ArrowLeft", "ArrowUp", "ArrowDown"].includes(e.key)) {
19
20
  e.preventDefault();
20
21
  switch (e.key) {
@@ -40,11 +41,10 @@ function useDay(_a) {
40
41
  isInsideRange: isDateInsideRange ? isDateInsideRange(date) : false,
41
42
  isWithinHoverRange: isDateHovered(date),
42
43
  onClick: !disabled ? onClick : undefined,
43
- onKeyDown: onKeyDown,
44
- onMouseEnter: onMouseEnter,
44
+ onKeyDown,
45
+ onMouseEnter,
45
46
  tabIndex: focusedDate === null || isDateFocused(date) ? 0 : -1,
46
- isToday: isToday,
47
+ isToday,
47
48
  };
48
49
  }
49
50
  exports.useDay = useDay;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtZGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUF5RTtBQUN6RSw4Q0FBNEM7QUE2QjVDLFNBQWdCLE1BQU0sQ0FBQyxFQVlUO1FBWFYsSUFBSSxVQUFBLEVBQ0osTUFBTSxZQUFBLEVBQ04sV0FBVyxpQkFBQSxFQUNYLGFBQWEsbUJBQUEsRUFDYixhQUFhLG1CQUFBLEVBQ2IsYUFBYSxtQkFBQSxFQUNiLGlCQUFpQix1QkFBQSxFQUNqQixjQUFjLG9CQUFBLEVBQ2QsV0FBVyxpQkFBQSxFQUNYLFdBQVcsaUJBQUEsRUFDWCxZQUFZLGtCQUFBO0lBRVosSUFBTSxPQUFPLEdBQUcsSUFBQSxtQkFBVyxFQUFDLGNBQU0sT0FBQSxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQWxCLENBQWtCLEVBQUUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM1RSxJQUFNLFlBQVksR0FBRyxJQUFBLG1CQUFXLEVBQUMsY0FBTSxPQUFBLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBakIsQ0FBaUIsRUFBRSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQy9FLElBQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3RCxJQUFNLE9BQU8sR0FBRyxJQUFBLGtCQUFPLEdBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRTlDLElBQUEsaUJBQVMsRUFBQztRQUNOLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pELE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDMUI7SUFDTCxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFFbEMsSUFBTSxTQUFTLEdBQUcsSUFBQSxtQkFBVyxFQUN6QixVQUFDLENBQTZCO1FBQzFCLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3JFLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNuQixRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1gsS0FBSyxZQUFZO29CQUNiLFdBQVcsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUNsRCxNQUFNO2dCQUNWLEtBQUssV0FBVztvQkFDWixXQUFXLENBQUMsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztvQkFDdkQsTUFBTTtnQkFDVixLQUFLLFNBQVM7b0JBQ1YsV0FBVyxDQUFDLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7b0JBQ3ZELE1BQU07Z0JBQ1YsS0FBSyxXQUFXO29CQUNaLFdBQVcsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUNsRCxNQUFNO2FBQ2I7U0FDSjtJQUNMLENBQUMsRUFDRCxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FDdEIsQ0FBQztJQUVGLE9BQU87UUFDSCxZQUFZLEVBQUUsUUFBUTtRQUN0QixTQUFTLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQztRQUM5QixVQUFVLEVBQUUsY0FBYyxDQUFDLElBQUksQ0FBQztRQUNoQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQ2xFLGtCQUFrQixFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFDdkMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDeEMsU0FBUyxXQUFBO1FBQ1QsWUFBWSxjQUFBO1FBQ1osUUFBUSxFQUFFLFdBQVcsS0FBSyxJQUFJLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RCxPQUFPLFNBQUE7S0FDVixDQUFDO0FBQ04sQ0FBQztBQTNERCx3QkEyREMifQ==