willba-component-library 0.2.41 → 0.2.43

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/lib/index.umd.js CHANGED
@@ -10833,7 +10833,7 @@
10833
10833
  var selectedStartDate = calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from;
10834
10834
  // Handle overlapping availableDates.lastCheckOut and disabledDates.start
10835
10835
  var _c = __read(React__default.useState(undefined), 2), overlappingDate = _c[0], setOverlappingDate = _c[1];
10836
- React__default.useMemo(function () {
10836
+ var newDisableCalendarDates = React__default.useMemo(function () {
10837
10837
  if (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) {
10838
10838
  var dateFormat_1 = 'dd-MM-yyyy';
10839
10839
  var disabledDates_1 = disableCalendarDates.disabledDates;
@@ -10867,14 +10867,22 @@
10867
10867
  return __spreadArray$1(__spreadArray$1([], __read(prev), false), __read(newOverlappingDates_1), false);
10868
10868
  });
10869
10869
  }
10870
- disableCalendarDates.disabledDates = updatedDisabledDates;
10870
+ var newDisableCalendarDates_1 = __assign$2(__assign$2({}, disableCalendarDates), { disabledDates: updatedDisabledDates });
10871
+ return newDisableCalendarDates_1;
10871
10872
  }
10872
- }, [disableCalendarDates]);
10873
+ return disableCalendarDates;
10874
+ }, [
10875
+ disableCalendarDates,
10876
+ calendarRange,
10877
+ updateCalendarMonthNavigation,
10878
+ initialCalendarRange,
10879
+ updateCalendarDefaultMoth,
10880
+ ]);
10873
10881
  // Handle disable dates by page
10874
10882
  var disabledDatesByPage = handleDisabledDatesByPage({
10875
10883
  today: today,
10876
10884
  selectedPath: selectedPath,
10877
- disableCalendarDates: disableCalendarDates,
10885
+ newDisableCalendarDates: newDisableCalendarDates,
10878
10886
  });
10879
10887
  // Handle tooltip
10880
10888
  React__default.useEffect(function () {
@@ -10953,7 +10961,7 @@
10953
10961
  React__default.createElement(DayPicker, { key: updateCalendarDefaultMoth, id: "will-calendar", mode: "range", locale: language === 'en' ? enUS : fi, numberOfMonths: !isTablet ? 2 : 1, weekStartsOn: 1, selected: calendarRange, onSelect: function (range) {
10954
10962
  return handleSelectedCheckIn({
10955
10963
  range: range,
10956
- disableCalendarDates: disableCalendarDates,
10964
+ newDisableCalendarDates: newDisableCalendarDates,
10957
10965
  setCalendarRange: setCalendarRange,
10958
10966
  setDisabledDates: setDisabledDates,
10959
10967
  calendarRange: calendarRange,
@@ -10961,13 +10969,13 @@
10961
10969
  });
10962
10970
  }, captionLayout: "dropdown-buttons", defaultMonth: (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.from) ||
10963
10971
  selectedStartDate ||
10964
- (((_b = disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.length)
10965
- ? disableCalendarDates.disabledDates[0].from
10972
+ (((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.length)
10973
+ ? newDisableCalendarDates.disabledDates[0].from
10966
10974
  : today), disabled: disabledDatesByPage.length
10967
10975
  ? disabledDatesByPage
10968
10976
  : (disabledDates === null || disabledDates === void 0 ? void 0 : disabledDates.length)
10969
10977
  ? disabledDates
10970
- : (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDates) || [], fromMonth: today, onMonthChange: function (val) {
10978
+ : (newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) || [], fromMonth: today, onMonthChange: function (val) {
10971
10979
  requestDates && setUpdateCalendarMonthNavigation
10972
10980
  ? (requestDates(val),
10973
10981
  setUpdateCalendarMonthNavigation(function (prev) { return !prev; }))
@@ -10985,7 +10993,7 @@
10985
10993
  ? disabledDatesByPage
10986
10994
  : (disabledDates === null || disabledDates === void 0 ? void 0 : disabledDates.length)
10987
10995
  ? disabledDates
10988
- : (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDates) || [],
10996
+ : (newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) || [],
10989
10997
  disabledAfterCheckIn: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from)
10990
10998
  ? [{ after: calendarRange.from }]
10991
10999
  : [],
@@ -11023,7 +11031,7 @@
11023
11031
  /////////
11024
11032
  var handleSelectedCheckIn = function (_a) {
11025
11033
  var _b;
11026
- var range = _a.range, disableCalendarDates = _a.disableCalendarDates, setCalendarRange = _a.setCalendarRange, setDisabledDates = _a.setDisabledDates, calendarRange = _a.calendarRange, overlappingDate = _a.overlappingDate;
11034
+ var range = _a.range, newDisableCalendarDates = _a.newDisableCalendarDates, setCalendarRange = _a.setCalendarRange, setDisabledDates = _a.setDisabledDates, calendarRange = _a.calendarRange, overlappingDate = _a.overlappingDate;
11027
11035
  // Calendar dates select logic
11028
11036
  var dateFormat = 'dd-MM-yyyy';
11029
11037
  var rangeFrom = (range === null || range === void 0 ? void 0 : range.from) ? format(range.from, dateFormat) : null;
@@ -11034,8 +11042,8 @@
11034
11042
  var overlappingDateFrom = (overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
11035
11043
  ? overlappingDate.find(function (date) { return format(date.from || 1, dateFormat) === rangeFrom; })
11036
11044
  : null;
11037
- var checkOutRange = ((_b = disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) === null || _b === void 0 ? void 0 : _b.length)
11038
- ? disableCalendarDates.availableDates.find(function (checkInDate) {
11045
+ var checkOutRange = ((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.availableDates) === null || _b === void 0 ? void 0 : _b.length)
11046
+ ? newDisableCalendarDates.availableDates.find(function (checkInDate) {
11039
11047
  return format(checkInDate.checkIn || 1, dateFormat) ===
11040
11048
  format((range === null || range === void 0 ? void 0 : range.from) || 1, dateFormat);
11041
11049
  })
@@ -11045,7 +11053,7 @@
11045
11053
  var firstCheckOut = addDays(checkOutRange.firstCheckOut, -1);
11046
11054
  var noDatesRange = format(checkIn, dateFormat) ===
11047
11055
  format(checkOutRange.firstCheckOut, dateFormat);
11048
- setDisabledDates(__spreadArray$1(__spreadArray$1([], __read(((disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDates) || [])), false), [
11056
+ setDisabledDates(__spreadArray$1(__spreadArray$1([], __read(((newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) || [])), false), [
11049
11057
  {
11050
11058
  from: noDatesRange ? undefined : checkIn,
11051
11059
  to: noDatesRange ? undefined : firstCheckOut,
@@ -11071,10 +11079,10 @@
11071
11079
  };
11072
11080
  var handleDisabledDatesByPage = function (_a) {
11073
11081
  var _b, _c, _d;
11074
- var disableCalendarDates = _a.disableCalendarDates, selectedPath = _a.selectedPath, today = _a.today;
11075
- var daysToOffsetCalendar = (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDatesByPage) && selectedPath
11082
+ var newDisableCalendarDates = _a.newDisableCalendarDates, selectedPath = _a.selectedPath, today = _a.today;
11083
+ var daysToOffsetCalendar = (newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDatesByPage) && selectedPath
11076
11084
  ? [
11077
- (_b = disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.disabledDatesByPage) === null || _b === void 0 ? void 0 : _b.find(function (item) { return selectedPath === item.page; }),
11085
+ (_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDatesByPage) === null || _b === void 0 ? void 0 : _b.find(function (item) { return selectedPath === item.page; }),
11078
11086
  ]
11079
11087
  : [];
11080
11088
  return daysToOffsetCalendar.length
@@ -11489,7 +11497,7 @@
11489
11497
  var endDateParam = urlSearchParams.get('endDate');
11490
11498
  if (startDateParam && endDateParam) {
11491
11499
  if (noActiveSelection) {
11492
- setCalendarRange(undefined);
11500
+ handleClearDates();
11493
11501
  setUpdateCalendarDefaultMoth(function (prev) { return prev + 1; });
11494
11502
  setInitialCalendarRange({
11495
11503
  from: new Date(startDateParam),
@@ -11547,7 +11555,9 @@
11547
11555
  var filtersRef = useCloseFilterSection({
11548
11556
  handleSelectedFilter: setToggleCalendar,
11549
11557
  }).filtersRef;
11550
- var nights = nightsCount({ calendarRange: calendarRange });
11558
+ var nights = nightsCount({
11559
+ calendarRange: calendarRange || initialCalendarRange,
11560
+ });
11551
11561
  return (React__default.createElement("div", { className: "will-root", style: themePalette }, toggleCalendar && (React__default.createElement("div", { className: "will-calendar-wrapper", ref: filtersRef },
11552
11562
  React__default.createElement("div", { className: "will-calendar-header" },
11553
11563
  React__default.createElement("h2", null, t('filterBar:calendar.title')),
@@ -11558,13 +11568,13 @@
11558
11568
  React__default.createElement("div", { className: "will-calendar-footer-dates" },
11559
11569
  React__default.createElement("div", null,
11560
11570
  React__default.createElement("span", null, parseDate({
11561
- date: (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.from) || (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from),
11571
+ date: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) || (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.from),
11562
11572
  dateFormat: 'EEEEEE d.M.yyyy',
11563
11573
  language: language,
11564
11574
  }) || t('common:checkIn')),
11565
11575
  React__default.createElement("span", { className: "will-calendar-footer-dates-separator" }, "-"),
11566
11576
  React__default.createElement("span", null, parseDate({
11567
- date: (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.to) || (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to),
11577
+ date: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) || (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.to),
11568
11578
  dateFormat: 'EEEEEE d.M.yyyy',
11569
11579
  language: language,
11570
11580
  }) || t('common:checkOut'))),