@uxf/datepicker 1.2.0 → 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.
Files changed (81) hide show
  1. package/contexts/date-picker-context.d.ts +1 -1
  2. package/contexts/date-picker-context.js +18 -19
  3. package/contexts/date-range-picker-context.d.ts +1 -1
  4. package/contexts/date-range-picker-context.js +21 -21
  5. package/contexts/time-picker-context.d.ts +1 -1
  6. package/contexts/time-picker-context.js +9 -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 +1 -1
  10. package/hooks/use-date-picker.js +66 -86
  11. package/hooks/use-date-picker.test.js +25 -32
  12. package/hooks/use-date-range-picker.d.ts +2 -1
  13. package/hooks/use-date-range-picker.js +94 -112
  14. package/hooks/use-date-range-picker.test.js +39 -50
  15. package/hooks/use-day.d.ts +3 -1
  16. package/hooks/use-day.js +13 -14
  17. package/hooks/use-day.test.js +44 -44
  18. package/hooks/use-decade.js +11 -15
  19. package/hooks/use-decade.test.js +13 -18
  20. package/hooks/use-hour.js +6 -8
  21. package/hooks/use-hour.test.js +26 -31
  22. package/hooks/use-hours.d.ts +1 -1
  23. package/hooks/use-hours.js +7 -11
  24. package/hooks/use-hours.test.js +8 -11
  25. package/hooks/use-minute.js +6 -8
  26. package/hooks/use-minute.test.js +26 -31
  27. package/hooks/use-minutes.d.ts +1 -1
  28. package/hooks/use-minutes.js +7 -11
  29. package/hooks/use-minutes.test.js +8 -11
  30. package/hooks/use-month.js +12 -14
  31. package/hooks/use-month.test.js +17 -22
  32. package/hooks/use-time-picker.d.ts +2 -2
  33. package/hooks/use-time-picker.js +43 -61
  34. package/hooks/use-time-picker.test.js +31 -40
  35. package/hooks/use-year.js +8 -10
  36. package/hooks/use-year.test.js +13 -18
  37. package/package.json +5 -21
  38. package/utils/can-select-range.js +9 -11
  39. package/utils/can-select-range.test.js +10 -11
  40. package/utils/dayjs-en.js +8 -5
  41. package/utils/get-current-year-month-and-date.js +2 -3
  42. package/utils/get-current-year-month-and-date.test.js +4 -5
  43. package/utils/get-date-month-and-year.js +6 -7
  44. package/utils/get-date-month-and-year.test.js +2 -3
  45. package/utils/get-days.d.ts +1 -1
  46. package/utils/get-days.js +20 -47
  47. package/utils/get-days.test.js +6 -7
  48. package/utils/get-each.js +3 -5
  49. package/utils/get-each.test.js +6 -7
  50. package/utils/get-initial-months.js +7 -8
  51. package/utils/get-initial-months.test.js +5 -6
  52. package/utils/get-months.d.ts +1 -1
  53. package/utils/get-months.js +8 -10
  54. package/utils/get-months.test.js +5 -6
  55. package/utils/get-next-active-month.js +5 -6
  56. package/utils/get-next-active-month.test.js +8 -9
  57. package/utils/get-weekday-labels.js +6 -8
  58. package/utils/get-weekday-labels.test.js +8 -9
  59. package/utils/get-years.d.ts +1 -1
  60. package/utils/get-years.js +5 -7
  61. package/utils/get-years.test.js +5 -6
  62. package/utils/is-browser.js +0 -1
  63. package/utils/is-date-blocked.js +5 -7
  64. package/utils/is-date-blocked.test.js +3 -4
  65. package/utils/is-date-hovered.js +6 -8
  66. package/utils/is-date-hovered.test.js +9 -10
  67. package/utils/is-date-inside-range.d.ts +1 -0
  68. package/utils/is-date-inside-range.js +11 -0
  69. package/utils/is-date-selected.test.js +10 -11
  70. package/utils/is-end-date.js +1 -2
  71. package/utils/is-end-date.test.js +2 -3
  72. package/utils/is-first-or-last-selected-date.js +1 -2
  73. package/utils/is-first-or-last-selected-date.test.js +2 -3
  74. package/utils/is-in-unavailable-dates.js +3 -5
  75. package/utils/is-in-unavailable-dates.test.js +2 -3
  76. package/utils/is-start-date.js +1 -2
  77. package/utils/is-start-date.test.js +2 -3
  78. package/utils/types.d.ts +1 -1
  79. package/utils/types.js +0 -1
  80. package/utils/is-date-selected.d.ts +0 -1
  81. package/utils/is-date-selected.js +0 -12
@@ -1,112 +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_selected_1 = require("../utils/is-date-selected");
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_selected_1.isDateSelected)(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 _isDateBlocked = function (date) {
70
- return (0, is_date_blocked_1.isDateBlocked)({
71
- date: date,
72
- minBookingDate: minBookingDate,
73
- maxBookingDate: maxBookingDate,
74
- startDate: startDate,
75
- endDate: endDate,
76
- minBookingDays: minBookingDays,
77
- isDateBlockedFn: disabledDatesByUser,
78
- });
79
- };
80
- var isDateFocused = function (date) { return (focusedDate ? (0, dayjs_en_1.dayjsEn)(date).isSame(focusedDate, "day") : false); };
81
- var _isDateHovered = function (date) {
82
- return (0, is_date_hovered_1.isDateHovered)({
83
- date: date,
84
- hoveredDate: hoveredDate,
85
- startDate: startDate,
86
- endDate: endDate,
87
- minBookingDays: minBookingDays,
88
- exactMinBookingDays: exactMinBookingDays,
89
- isDateBlocked: disabledDatesByUser,
90
- });
91
- };
92
- (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)(() => {
93
58
  if (!is_browser_1.isBrowser) {
94
59
  return;
95
60
  }
96
61
  function handleKeyDown(e) {
97
62
  if ((e.key === "ArrowRight" || e.key === "ArrowLeft" || e.key === "ArrowDown" || e.key === "ArrowUp") &&
98
63
  !focusedDate) {
99
- var activeMonth = activeMonths[0];
64
+ const activeMonth = activeMonths[0];
100
65
  onDateFocus(activeMonth.date);
101
66
  setActiveMonths((0, get_initial_months_1.getInitialMonths)(numberOfMonths, activeMonth.date));
102
67
  }
103
68
  }
104
69
  window.addEventListener("keydown", handleKeyDown);
105
- return function () {
70
+ return () => {
106
71
  window.removeEventListener("keydown", handleKeyDown);
107
72
  };
108
73
  }, [activeMonths, focusedDate, numberOfMonths, onDateFocus]);
109
- var onResetDates = (0, react_1.useCallback)(function () {
74
+ const onResetDates = (0, react_1.useCallback)(() => {
110
75
  onDatesChange({
111
76
  startDate: null,
112
77
  endDate: null,
@@ -119,10 +84,10 @@ function useDateRangePicker(_a) {
119
84
  minBookingDays > 0 &&
120
85
  exactMinBookingDays &&
121
86
  (0, can_select_range_1.canSelectRange)({
122
- minBookingDays: minBookingDays,
123
- exactMinBookingDays: exactMinBookingDays,
124
- minBookingDate: minBookingDate,
125
- maxBookingDate: maxBookingDate,
87
+ minBookingDays,
88
+ exactMinBookingDays,
89
+ minBookingDate,
90
+ maxBookingDate,
126
91
  isDateBlocked: disabledDatesByUser,
127
92
  startDate: date,
128
93
  endDate: null,
@@ -139,14 +104,14 @@ function useDateRangePicker(_a) {
139
104
  (focusedInput === exports.START_DATE && endDate && (0, dayjs_en_1.dayjsEn)(date).isAfter(endDate))) &&
140
105
  !exactMinBookingDays &&
141
106
  (0, can_select_range_1.canSelectRange)({
142
- minBookingDays: minBookingDays,
107
+ minBookingDays,
143
108
  isDateBlocked: disabledDatesByUser,
144
109
  startDate: date,
145
110
  endDate: null,
146
111
  })) ||
147
112
  (focusedInput === exports.START_DATE &&
148
113
  !exactMinBookingDays &&
149
- (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 }))) {
150
115
  onDatesChange({
151
116
  endDate: null,
152
117
  startDate: date,
@@ -156,7 +121,7 @@ function useDateRangePicker(_a) {
156
121
  else if (focusedInput === exports.START_DATE &&
157
122
  !exactMinBookingDays &&
158
123
  (0, can_select_range_1.canSelectRange)({
159
- minBookingDays: minBookingDays,
124
+ minBookingDays,
160
125
  isDateBlocked: disabledDatesByUser,
161
126
  endDate: null,
162
127
  startDate: date,
@@ -171,9 +136,9 @@ function useDateRangePicker(_a) {
171
136
  startDate &&
172
137
  !(0, dayjs_en_1.dayjsEn)(date).isBefore(startDate) &&
173
138
  !exactMinBookingDays &&
174
- (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 })) {
175
140
  onDatesChange({
176
- startDate: startDate,
141
+ startDate,
177
142
  endDate: date,
178
143
  focusedInput: null,
179
144
  });
@@ -190,38 +155,38 @@ function useDateRangePicker(_a) {
190
155
  setHoveredDate(null);
191
156
  }
192
157
  else {
193
- var isNotBlocked = !_isDateBlocked(date) || (startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day"));
194
- var isHoveredDateAfterOrEqualMinDate = minBookingDate
158
+ const isNotBlocked = !_isDateBlocked(date) || (startDate && (0, dayjs_en_1.dayjsEn)(date).isSame(startDate, "day"));
159
+ const isHoveredDateAfterOrEqualMinDate = minBookingDate
195
160
  ? !(0, dayjs_en_1.dayjsEn)(date).isBefore((0, dayjs_en_1.dayjsEn)(minBookingDate).subtract(1, "day"))
196
161
  : true;
197
- 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;
198
163
  // Exact minimal booking days
199
- var potentialEndDate = (0, dayjs_en_1.dayjsEn)(date)
164
+ const potentialEndDate = (0, dayjs_en_1.dayjsEn)(date)
200
165
  .add(minBookingDays - 1, "day")
201
166
  .toDate();
202
- var isPotentialEndDateAfterOrEqualMinDate = minBookingDate
167
+ const isPotentialEndDateAfterOrEqualMinDate = minBookingDate
203
168
  ? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isBefore(minBookingDate)
204
169
  : true;
205
- var isPotentialEndDateBeforeOrEqualMaxDate = maxBookingDate
170
+ const isPotentialEndDateBeforeOrEqualMaxDate = maxBookingDate
206
171
  ? !(0, dayjs_en_1.dayjsEn)(potentialEndDate).isAfter(maxBookingDate)
207
172
  : true;
208
- var isExactAndInRange = exactMinBookingDays &&
173
+ const isExactAndInRange = exactMinBookingDays &&
209
174
  minBookingDays > 1 &&
210
175
  isHoveredDateAfterOrEqualMinDate &&
211
176
  isHoveredDateBeforeOrEqualMaxDate &&
212
177
  isPotentialEndDateAfterOrEqualMinDate &&
213
178
  isPotentialEndDateBeforeOrEqualMaxDate;
214
179
  // Is date in range
215
- var isInRange = startDate &&
180
+ const isInRange = startDate &&
216
181
  !endDate &&
217
182
  !exactMinBookingDays &&
218
183
  isHoveredDateAfterOrEqualMinDate &&
219
184
  isHoveredDateBeforeOrEqualMaxDate;
220
185
  // Is start date hovered and in range
221
- var isMinBookingDaysInRange = minBookingDays > 1 && startDate
186
+ const isMinBookingDaysInRange = minBookingDays > 1 && startDate
222
187
  ? (0, dayjs_en_1.dayjsEn)(date).isBetween(startDate, (0, dayjs_en_1.dayjsEn)(startDate).add(minBookingDays - 2, "day"))
223
188
  : true;
224
- 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;
225
190
  if (isNotBlocked && (isExactAndInRange || isInRange || isStartDateHoveredAndInRange)) {
226
191
  setHoveredDate(date);
227
192
  }
@@ -230,14 +195,31 @@ function useDateRangePicker(_a) {
230
195
  }
231
196
  }
232
197
  }
233
- return __assign(__assign({}, (0, use_date_picker_navigation_1.useDatePickerNavigation)({
234
- activeMonths: activeMonths,
235
- maxBookingDate: maxBookingDate,
236
- minBookingDate: minBookingDate,
237
- numberOfMonths: numberOfMonths,
238
- setActiveMonths: setActiveMonths,
239
- setFocusedDate: setFocusedDate,
240
- })), { activeMonths: activeMonths, firstDayOfWeek: firstDayOfWeek, focusedDate: focusedDate, hoveredDate: hoveredDate, isDateBlocked: _isDateBlocked, isDateFocused: isDateFocused, isDateHovered: _isDateHovered, 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
+ };
241
224
  }
242
225
  exports.useDateRangePicker = useDateRangePicker;
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRhdGUtcmFuZ2UtcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZS1kYXRlLXJhbmdlLXBpY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBeUQ7QUFDekQsOERBQTJEO0FBQzNELGtFQUErRDtBQUMvRCw0REFBeUQ7QUFDekQsNERBQXlEO0FBQ3pELDhEQUEyRDtBQUMzRCxvREFBaUQ7QUFDakQsMEZBQW9GO0FBQ3BGLDRFQUF3RTtBQUN4RSx3REFBcUQ7QUFFckQsMkVBQTBHO0FBQzFHLGtEQUFnRDtBQUNoRCw4Q0FBNEM7QUFFL0IsUUFBQSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBQ3pCLFFBQUEsUUFBUSxHQUFHLFNBQVMsQ0FBQztBQTZDbEMsU0FBZ0Isa0JBQWtCLENBQUMsRUFlVDtRQWR0QixpQ0FBaUMsRUFBakMseUJBQXlCLG1CQUFHLEtBQUssS0FBQSxFQUNqQyxPQUFPLGFBQUEsRUFDUCwyQkFBMkIsRUFBM0IsbUJBQW1CLG1CQUFHLEtBQUssS0FBQSxFQUMzQixzQkFBa0IsRUFBbEIsY0FBYyxtQkFBRyxDQUFDLEtBQUEsRUFDbEIsWUFBWSxrQkFBQSxFQUNaLG1CQUFtQix5QkFBQSxFQUNuQixxQkFBK0MsRUFBaEMsa0JBQWtCLG1CQUFHLGNBQU0sT0FBQSxLQUFLLEVBQUwsQ0FBSyxLQUFBLEVBQy9DLGNBQWMsb0JBQUEsRUFDZCxjQUFjLG9CQUFBLEVBQ2Qsc0JBQWtCLEVBQWxCLGNBQWMsbUJBQUcsQ0FBQyxLQUFBLEVBQ2xCLHNCQUFrQixFQUFsQixjQUFjLG1CQUFHLENBQUMsS0FBQSxFQUNsQixhQUFhLG1CQUFBLEVBQ2IsU0FBUyxlQUFBLEVBQ1Qsd0JBQXFCLEVBQXJCLGdCQUFnQixtQkFBRyxFQUFFLEtBQUE7SUFFZixJQUFBLEtBQUEsT0FBa0MsSUFBQSxnQkFBUSxFQUFDO1FBQzdDLE9BQUEs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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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
@@ -6,6 +6,7 @@ export interface UseDayProps {
6
6
  isDateBlocked: (date: Date) => boolean;
7
7
  isDateFocused: (date: Date) => boolean;
8
8
  isDateHovered: (date: Date) => boolean;
9
+ isDateInsideRange?: (date: Date) => boolean;
9
10
  isDateSelected: (date: Date) => boolean;
10
11
  onDateFocus: (date: Date) => void;
11
12
  onDateHover: (date: Date) => void;
@@ -15,6 +16,7 @@ export interface UseDayReturnType {
15
16
  disabledDate: boolean;
16
17
  isHovered: boolean;
17
18
  isSelected: boolean;
19
+ isInsideRange: boolean;
18
20
  isToday: boolean;
19
21
  isWithinHoverRange: boolean;
20
22
  onClick?: () => void;
@@ -22,4 +24,4 @@ export interface UseDayReturnType {
22
24
  onMouseEnter: () => void;
23
25
  tabIndex: number;
24
26
  }
25
- export declare function useDay({ date, dayRef, focusedDate, isDateBlocked, isDateFocused, isDateHovered, isDateSelected, onDateFocus, onDateHover, onDateSelect, }: UseDayProps): UseDayReturnType;
27
+ export declare function useDay({ date, dayRef, focusedDate, isDateBlocked, isDateFocused, isDateHovered, isDateInsideRange, isDateSelected, onDateFocus, onDateHover, onDateSelect, }: UseDayProps): UseDayReturnType;
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
- 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, 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, }) {
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
- var onKeyDown = (0, react_1.useCallback)(function (e) {
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) {
@@ -37,13 +36,13 @@ function useDay(_a) {
37
36
  disabledDate: disabled,
38
37
  isHovered: isDateHovered(date),
39
38
  isSelected: isDateSelected(date),
39
+ isInsideRange: isDateInsideRange ? isDateInsideRange(date) : false,
40
40
  isWithinHoverRange: isDateHovered(date),
41
41
  onClick: !disabled ? onClick : undefined,
42
- onKeyDown: onKeyDown,
43
- onMouseEnter: onMouseEnter,
42
+ onKeyDown,
43
+ onMouseEnter,
44
44
  tabIndex: focusedDate === null || isDateFocused(date) ? 0 : -1,
45
- isToday: isToday,
45
+ isToday,
46
46
  };
47
47
  }
48
48
  exports.useDay = useDay;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWRheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtZGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUF5RTtBQUN6RSw4Q0FBNEM7QUEyQjVDLFNBQWdCLE1BQU0sQ0FBQyxFQVdUO1FBVlYsSUFBSSxVQUFBLEVBQ0osTUFBTSxZQUFBLEVBQ04sV0FBVyxpQkFBQSxFQUNYLGFBQWEsbUJBQUEsRUFDYixhQUFhLG1CQUFBLEVBQ2IsYUFBYSxtQkFBQSxFQUNiLGNBQWMsb0JBQUEsRUFDZCxXQUFXLGlCQUFBLEVBQ1gsV0FBVyxpQkFBQSxFQUNYLFlBQVksa0JBQUE7SUFFWixJQUFNLE9BQU8sR0FBRyxJQUFBLG1CQUFXLEVBQUMsY0FBTSxPQUFBLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBbEIsQ0FBa0IsRUFBRSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzVFLElBQU0sWUFBWSxHQUFHLElBQUEsbUJBQVcsRUFBQyxjQUFNLE9BQUEsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFqQixDQUFpQixFQUFFLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDL0UsSUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdELElBQU0sT0FBTyxHQUFHLElBQUEsa0JBQU8sR0FBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFOUMsSUFBQSxpQkFBUyxFQUFDO1FBQ04sSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMxQjtJQUNMLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUVsQyxJQUFNLFNBQVMsR0FBRyxJQUFBLG1CQUFXLEVBQ3pCLFVBQUMsQ0FBNkI7UUFDMUIsSUFBSSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckUsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25CLFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRTtnQkFDWCxLQUFLLFlBQVk7b0JBQ2IsV0FBVyxDQUFDLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7b0JBQ2xELE1BQU07Z0JBQ1YsS0FBSyxXQUFXO29CQUNaLFdBQVcsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO29CQUN2RCxNQUFNO2dCQUNWLEtBQUssU0FBUztvQkFDVixXQUFXLENBQUMsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztvQkFDdkQsTUFBTTtnQkFDVixLQUFLLFdBQVc7b0JBQ1osV0FBVyxDQUFDLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7b0JBQ2xELE1BQU07YUFDYjtTQUNKO0lBQ0wsQ0FBQyxFQUNELENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUN0QixDQUFDO0lBRUYsT0FBTztRQUNILFlBQVksRUFBRSxRQUFRO1FBQ3RCLFNBQVMsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDO1FBQzlCLFVBQVUsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQ2hDLGtCQUFrQixFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFDdkMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDeEMsU0FBUyxXQUFBO1FBQ1QsWUFBWSxjQUFBO1FBQ1osUUFBUSxFQUFFLFdBQVcsS0FBSyxJQUFJLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RCxPQUFPLFNBQUE7S0FDVixDQUFDO0FBQ04sQ0FBQztBQXpERCx3QkF5REMifQ==