willba-component-library 0.2.33 → 0.2.34

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.esm.js CHANGED
@@ -10826,26 +10826,40 @@ var Calendar = forwardRef(function (_a, ref) {
10826
10826
  // Handle overlapping availableDates.lastCheckOut and disabledDates.start
10827
10827
  var _c = __read(useState(undefined), 2), overlappingDate = _c[0], setOverlappingDate = _c[1];
10828
10828
  useMemo(function () {
10829
- var _a, _b;
10829
+ var _a;
10830
10830
  if (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) {
10831
10831
  var dateFormat_1 = 'dd-MM-yyyy';
10832
- var availableDateMap_1 = new Map();
10833
- (_a = disableCalendarDates.availableDates) === null || _a === void 0 ? void 0 : _a.forEach(function (available) {
10834
- availableDateMap_1.set(format(available.lastCheckOut, dateFormat_1), available);
10835
- });
10836
- var updatedDisabledDates = (_b = disableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.map(function (dateRange) {
10832
+ var newOverlappingDates_1 = [];
10833
+ var updatedDisabledDates = (_a = disableCalendarDates.disabledDates) === null || _a === void 0 ? void 0 : _a.map(function (dateRange) {
10834
+ var _a, _b;
10837
10835
  var formattedFromDate = format(dateRange.from, dateFormat_1);
10838
- if (availableDateMap_1.has(formattedFromDate)) {
10839
- if (!overlappingDate) {
10840
- setOverlappingDate([dateRange]);
10841
- }
10842
- else {
10843
- setOverlappingDate(__spreadArray$1(__spreadArray$1([], __read(overlappingDate), false), [dateRange], false));
10844
- }
10836
+ var hasTwoOverlappingDates = (_a = disableCalendarDates.disabledDates) === null || _a === void 0 ? void 0 : _a.some(function (item) {
10837
+ return format(item.from, dateFormat_1) === formattedFromDate &&
10838
+ format(item.to, dateFormat_1) === formattedFromDate;
10839
+ });
10840
+ var hasOneOverlappingDate = (_b = disableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.some(function (item) {
10841
+ return format(item.from, dateFormat_1) === formattedFromDate &&
10842
+ format(item.to, dateFormat_1) !== formattedFromDate;
10843
+ });
10844
+ if (hasTwoOverlappingDates) {
10845
+ newOverlappingDates_1.push(dateRange);
10846
+ return {
10847
+ from: new Date(1),
10848
+ to: new Date(1),
10849
+ };
10850
+ }
10851
+ else if (hasOneOverlappingDate) {
10852
+ newOverlappingDates_1.push(dateRange);
10845
10853
  return __assign$2(__assign$2({}, dateRange), { from: addDays(dateRange.from, 1) });
10846
10854
  }
10847
10855
  return dateRange;
10848
10856
  });
10857
+ if (newOverlappingDates_1.length) {
10858
+ setOverlappingDate(function (prev) {
10859
+ if (prev === void 0) { prev = []; }
10860
+ return __spreadArray$1(__spreadArray$1([], __read(prev), false), __read(newOverlappingDates_1), false);
10861
+ });
10862
+ }
10849
10863
  disableCalendarDates.disabledDates = updatedDisabledDates;
10850
10864
  }
10851
10865
  }, [disableCalendarDates]);
@@ -11002,6 +11016,7 @@ var handleSelectedCheckIn = function (_a) {
11002
11016
  var overlappingDateFrom = (overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
11003
11017
  ? overlappingDate.find(function (date) { return format(date.from || 1, dateFormat) === rangeFrom; })
11004
11018
  : null;
11019
+ console.log(overlappingDateFrom);
11005
11020
  var checkOutRange = ((_b = disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) === null || _b === void 0 ? void 0 : _b.length)
11006
11021
  ? disableCalendarDates.availableDates.find(function (checkInDate) {
11007
11022
  return format(checkInDate.checkIn || 1, dateFormat) ===