willba-component-library 0.2.63 → 0.2.65
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/components/FilterCalendar/FilterCalendar.d.ts +1 -1
- package/lib/components/FilterCalendar/hooks/useFilterCalendar.d.ts +4 -2
- package/lib/core/components/calendar/hooks/useUpdateDisabledDates.d.ts +2 -1
- package/lib/core/components/calendar/utils/handleCalendarModifiers.d.ts +2 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.esm.js +151 -32
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +151 -32
- package/lib/index.js.map +1 -1
- package/lib/index.umd.js +151 -32
- package/lib/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/components/FilterCalendar/FilterCalendar.css +12 -1
- package/src/components/FilterCalendar/FilterCalendar.stories.tsx +50 -50
- package/src/components/FilterCalendar/FilterCalendar.tsx +43 -16
- package/src/components/FilterCalendar/hooks/useFilterCalendar.ts +35 -2
- package/src/core/components/calendar/Calendar.tsx +7 -15
- package/src/core/components/calendar/hooks/useUpdateDisabledDates.tsx +19 -2
- package/src/core/components/calendar/utils/handleCalendarModifiers.tsx +4 -2
- package/src/locales/en/common.json +9 -1
- package/src/locales/en/filterBar.json +2 -1
- package/src/locales/fi/common.json +9 -1
- package/src/locales/fi/filterBar.json +2 -1
|
@@ -2,4 +2,4 @@ import React from 'react';
|
|
|
2
2
|
import '../../themes/Default.css';
|
|
3
3
|
import { FilterCalendarTypes } from './FilterCalendarTypes';
|
|
4
4
|
import './FilterCalendar.css';
|
|
5
|
-
export default function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates, toggleCalendar, loadingData, setToggleCalendar, requestDates, showFeedback, noActiveSelection, rangeContext: outerRangeContext, }: FilterCalendarTypes): React.JSX.Element;
|
|
5
|
+
export default function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates: outerDisableCalendarDates, toggleCalendar, loadingData, setToggleCalendar, requestDates, showFeedback, noActiveSelection, rangeContext: outerRangeContext, }: FilterCalendarTypes): React.JSX.Element;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DateRange, Matcher } from 'react-day-picker';
|
|
3
|
-
import { RangeContext } from 'src/core/components/calendar/CalendarTypes';
|
|
3
|
+
import { DisableCalendarDates, RangeContext } from 'src/core/components/calendar/CalendarTypes';
|
|
4
4
|
type Props = {
|
|
5
5
|
onSubmit: (val: any) => void;
|
|
6
6
|
setToggleCalendar: (val: boolean) => void;
|
|
7
7
|
noActiveSelection?: boolean;
|
|
8
8
|
toggleCalendar?: boolean;
|
|
9
9
|
outerRangeContext?: RangeContext;
|
|
10
|
+
outerDisableCalendarDates?: DisableCalendarDates;
|
|
10
11
|
};
|
|
11
|
-
export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActiveSelection, toggleCalendar, outerRangeContext, }: Props) => {
|
|
12
|
+
export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActiveSelection, toggleCalendar, outerRangeContext, outerDisableCalendarDates, }: Props) => {
|
|
12
13
|
handleSubmit: () => void;
|
|
13
14
|
handleClearDates: () => void;
|
|
14
15
|
setCalendarRange: import("react").Dispatch<import("react").SetStateAction<DateRange | undefined>>;
|
|
@@ -22,5 +23,6 @@ export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActive
|
|
|
22
23
|
setCalendarHasError: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
23
24
|
setUpdatedForSubmit: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
24
25
|
rangeContext: RangeContext | undefined;
|
|
26
|
+
disableCalendarDates: DisableCalendarDates | undefined;
|
|
25
27
|
};
|
|
26
28
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DateRange } from 'react-day-picker';
|
|
1
|
+
import { DateRange, Matcher } from 'react-day-picker';
|
|
2
2
|
import { DisableCalendarDates } from '../CalendarTypes';
|
|
3
3
|
type Props = {
|
|
4
4
|
disableCalendarDates?: DisableCalendarDates;
|
|
@@ -9,5 +9,6 @@ type Props = {
|
|
|
9
9
|
export declare const useUpdateDisabledDates: ({ disableCalendarDates, calendarRange, updateCalendarMonthNavigation, updateCalendarDefaultMonth, }: Props) => {
|
|
10
10
|
newDisableCalendarDates: DisableCalendarDates | undefined;
|
|
11
11
|
overlappingDate: DateRange[] | undefined;
|
|
12
|
+
lastPossibleCheckout: Matcher;
|
|
12
13
|
};
|
|
13
14
|
export {};
|
|
@@ -8,6 +8,7 @@ type Props = {
|
|
|
8
8
|
to: Date;
|
|
9
9
|
}[];
|
|
10
10
|
disabledDates?: Matcher[];
|
|
11
|
+
lastPossibleCheckout?: Matcher;
|
|
11
12
|
overlappingDate?: DateRange[];
|
|
12
13
|
rangeContext?: RangeContext;
|
|
13
14
|
findFirstPossibleRangeContextCheckIn?: NonNullable<DisableCalendarDates['availableDates']>['0'];
|
|
@@ -16,7 +17,7 @@ type Props = {
|
|
|
16
17
|
lastPossibleRangeContextCheckOut: Matcher[];
|
|
17
18
|
currentSelectionLastCheckoutDate?: NonNullable<DisableCalendarDates['availableDates']>['0'];
|
|
18
19
|
};
|
|
19
|
-
export declare const handleCalendarModifiers: ({ newDisableCalendarDates, calendarRange, disabledDatesByPage, disabledDates, overlappingDate, rangeContext, firstPossibleRangeContextCheckIn, lastPossibleRangeContextCheckOut, findFirstPossibleRangeContextCheckIn, findLastPossibleRangeContextCheckOut, currentSelectionLastCheckoutDate, }: Props) => {
|
|
20
|
+
export declare const handleCalendarModifiers: ({ newDisableCalendarDates, calendarRange, disabledDatesByPage, disabledDates, overlappingDate, rangeContext, firstPossibleRangeContextCheckIn, lastPossibleRangeContextCheckOut, findFirstPossibleRangeContextCheckIn, findLastPossibleRangeContextCheckOut, currentSelectionLastCheckoutDate, lastPossibleCheckout, }: Props) => {
|
|
20
21
|
booked: Matcher[];
|
|
21
22
|
disabledAfterCheckIn: {
|
|
22
23
|
after: Date;
|
package/lib/index.d.ts
CHANGED
|
@@ -122,6 +122,6 @@ interface FilterCalendarTypes extends Partial<CalendarTypes> {
|
|
|
122
122
|
setToggleCalendar: (val: boolean) => void;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
declare function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates, toggleCalendar, loadingData, setToggleCalendar, requestDates, showFeedback, noActiveSelection, rangeContext: outerRangeContext, }: FilterCalendarTypes): React.JSX.Element;
|
|
125
|
+
declare function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates: outerDisableCalendarDates, toggleCalendar, loadingData, setToggleCalendar, requestDates, showFeedback, noActiveSelection, rangeContext: outerRangeContext, }: FilterCalendarTypes): React.JSX.Element;
|
|
126
126
|
|
|
127
127
|
export { Button, FilterBar, FilterCalendar, FilterCalendarTypes, Tab };
|
package/lib/index.esm.js
CHANGED
|
@@ -2819,7 +2819,8 @@ var calendar$1 = {
|
|
|
2819
2819
|
endDate: "End date",
|
|
2820
2820
|
title: "Calendar",
|
|
2821
2821
|
checkoutOnly: "Check-out only",
|
|
2822
|
-
hasDisableDates: "Contains unavailable dates"
|
|
2822
|
+
hasDisableDates: "Contains unavailable dates",
|
|
2823
|
+
minNights: "2 nights min"
|
|
2823
2824
|
};
|
|
2824
2825
|
var guests$1 = {
|
|
2825
2826
|
label: "Number of guests",
|
|
@@ -2855,6 +2856,14 @@ var clearDates$1 = "Clear dates";
|
|
|
2855
2856
|
var noCheckIn$1 = "Room not available";
|
|
2856
2857
|
var noCheckOut$1 = "Check-out not available";
|
|
2857
2858
|
var checkOutOnly$1 = "Check-out only";
|
|
2859
|
+
var onlyCheckOut$1 = "Check-in only";
|
|
2860
|
+
var onlyCheckIn$1 = "Check-out only";
|
|
2861
|
+
var errors$1 = {
|
|
2862
|
+
calendarErrors: {
|
|
2863
|
+
checkInAvailabilityError: "Check-in available for second room only with connection dates",
|
|
2864
|
+
checkInAvailabilityGuide: "Start or end day need connection for previous reservation"
|
|
2865
|
+
}
|
|
2866
|
+
};
|
|
2858
2867
|
var enCommon = {
|
|
2859
2868
|
night: night$1,
|
|
2860
2869
|
nights: nights$1,
|
|
@@ -2865,7 +2874,10 @@ var enCommon = {
|
|
|
2865
2874
|
clearDates: clearDates$1,
|
|
2866
2875
|
noCheckIn: noCheckIn$1,
|
|
2867
2876
|
noCheckOut: noCheckOut$1,
|
|
2868
|
-
checkOutOnly: checkOutOnly$1
|
|
2877
|
+
checkOutOnly: checkOutOnly$1,
|
|
2878
|
+
onlyCheckOut: onlyCheckOut$1,
|
|
2879
|
+
onlyCheckIn: onlyCheckIn$1,
|
|
2880
|
+
errors: errors$1
|
|
2869
2881
|
};
|
|
2870
2882
|
|
|
2871
2883
|
var calendar = {
|
|
@@ -2876,7 +2888,8 @@ var calendar = {
|
|
|
2876
2888
|
endDate: "Loppu",
|
|
2877
2889
|
title: "Kalenteri",
|
|
2878
2890
|
checkoutOnly: "Check-out only",
|
|
2879
|
-
hasDisableDates: "Contains unavailable dates"
|
|
2891
|
+
hasDisableDates: "Contains unavailable dates",
|
|
2892
|
+
minNights: "2 nights min"
|
|
2880
2893
|
};
|
|
2881
2894
|
var guests = {
|
|
2882
2895
|
label: "Vierasmäärä",
|
|
@@ -2914,6 +2927,14 @@ var clearDates = "Tyhjennä";
|
|
|
2914
2927
|
var noCheckIn = "Huone ei saatavilla";
|
|
2915
2928
|
var noCheckOut = "Uloskirjaus ei saatavilla";
|
|
2916
2929
|
var checkOutOnly = "Vain uloskirjaus";
|
|
2930
|
+
var onlyCheckOut = "Check-in only";
|
|
2931
|
+
var onlyCheckIn = "Check-out only";
|
|
2932
|
+
var errors = {
|
|
2933
|
+
calendarErrors: {
|
|
2934
|
+
checkInAvailabilityError: "Check-in available for second room only with connection dates",
|
|
2935
|
+
checkInAvailabilityGuide: "Start or end day need connection for previous reservation"
|
|
2936
|
+
}
|
|
2937
|
+
};
|
|
2917
2938
|
var fiCommon = {
|
|
2918
2939
|
night: night,
|
|
2919
2940
|
nights: nights,
|
|
@@ -2924,7 +2945,10 @@ var fiCommon = {
|
|
|
2924
2945
|
clearDates: clearDates,
|
|
2925
2946
|
noCheckIn: noCheckIn,
|
|
2926
2947
|
noCheckOut: noCheckOut,
|
|
2927
|
-
checkOutOnly: checkOutOnly
|
|
2948
|
+
checkOutOnly: checkOutOnly,
|
|
2949
|
+
onlyCheckOut: onlyCheckOut,
|
|
2950
|
+
onlyCheckIn: onlyCheckIn,
|
|
2951
|
+
errors: errors
|
|
2928
2952
|
};
|
|
2929
2953
|
|
|
2930
2954
|
var urlParams = typeof window !== 'undefined'
|
|
@@ -3566,6 +3590,53 @@ function min(dirtyDatesArray) {
|
|
|
3566
3590
|
return result || new Date(NaN);
|
|
3567
3591
|
}
|
|
3568
3592
|
|
|
3593
|
+
/**
|
|
3594
|
+
* @name compareAsc
|
|
3595
|
+
* @category Common Helpers
|
|
3596
|
+
* @summary Compare the two dates and return -1, 0 or 1.
|
|
3597
|
+
*
|
|
3598
|
+
* @description
|
|
3599
|
+
* Compare the two dates and return 1 if the first date is after the second,
|
|
3600
|
+
* -1 if the first date is before the second or 0 if dates are equal.
|
|
3601
|
+
*
|
|
3602
|
+
* @param {Date|Number} dateLeft - the first date to compare
|
|
3603
|
+
* @param {Date|Number} dateRight - the second date to compare
|
|
3604
|
+
* @returns {Number} the result of the comparison
|
|
3605
|
+
* @throws {TypeError} 2 arguments required
|
|
3606
|
+
*
|
|
3607
|
+
* @example
|
|
3608
|
+
* // Compare 11 February 1987 and 10 July 1989:
|
|
3609
|
+
* const result = compareAsc(new Date(1987, 1, 11), new Date(1989, 6, 10))
|
|
3610
|
+
* //=> -1
|
|
3611
|
+
*
|
|
3612
|
+
* @example
|
|
3613
|
+
* // Sort the array of dates:
|
|
3614
|
+
* const result = [
|
|
3615
|
+
* new Date(1995, 6, 2),
|
|
3616
|
+
* new Date(1987, 1, 11),
|
|
3617
|
+
* new Date(1989, 6, 10)
|
|
3618
|
+
* ].sort(compareAsc)
|
|
3619
|
+
* //=> [
|
|
3620
|
+
* // Wed Feb 11 1987 00:00:00,
|
|
3621
|
+
* // Mon Jul 10 1989 00:00:00,
|
|
3622
|
+
* // Sun Jul 02 1995 00:00:00
|
|
3623
|
+
* // ]
|
|
3624
|
+
*/
|
|
3625
|
+
function compareAsc(dirtyDateLeft, dirtyDateRight) {
|
|
3626
|
+
requiredArgs(2, arguments);
|
|
3627
|
+
var dateLeft = toDate(dirtyDateLeft);
|
|
3628
|
+
var dateRight = toDate(dirtyDateRight);
|
|
3629
|
+
var diff = dateLeft.getTime() - dateRight.getTime();
|
|
3630
|
+
if (diff < 0) {
|
|
3631
|
+
return -1;
|
|
3632
|
+
} else if (diff > 0) {
|
|
3633
|
+
return 1;
|
|
3634
|
+
// Return 0 if diff is 0; return NaN if diff is NaN
|
|
3635
|
+
} else {
|
|
3636
|
+
return diff;
|
|
3637
|
+
}
|
|
3638
|
+
}
|
|
3639
|
+
|
|
3569
3640
|
/**
|
|
3570
3641
|
* @name isSameDay
|
|
3571
3642
|
* @category Day Helpers
|
|
@@ -11150,7 +11221,7 @@ var disabledDatesByPage = function (_a) {
|
|
|
11150
11221
|
|
|
11151
11222
|
var handleCalendarModifiers = function (_a) {
|
|
11152
11223
|
var _b;
|
|
11153
|
-
var newDisableCalendarDates = _a.newDisableCalendarDates, calendarRange = _a.calendarRange, disabledDatesByPage = _a.disabledDatesByPage, disabledDates = _a.disabledDates, overlappingDate = _a.overlappingDate, rangeContext = _a.rangeContext, firstPossibleRangeContextCheckIn = _a.firstPossibleRangeContextCheckIn, lastPossibleRangeContextCheckOut = _a.lastPossibleRangeContextCheckOut, findFirstPossibleRangeContextCheckIn = _a.findFirstPossibleRangeContextCheckIn, findLastPossibleRangeContextCheckOut = _a.findLastPossibleRangeContextCheckOut, currentSelectionLastCheckoutDate = _a.currentSelectionLastCheckoutDate;
|
|
11224
|
+
var newDisableCalendarDates = _a.newDisableCalendarDates, calendarRange = _a.calendarRange, disabledDatesByPage = _a.disabledDatesByPage, disabledDates = _a.disabledDates, overlappingDate = _a.overlappingDate, rangeContext = _a.rangeContext, firstPossibleRangeContextCheckIn = _a.firstPossibleRangeContextCheckIn, lastPossibleRangeContextCheckOut = _a.lastPossibleRangeContextCheckOut, findFirstPossibleRangeContextCheckIn = _a.findFirstPossibleRangeContextCheckIn, findLastPossibleRangeContextCheckOut = _a.findLastPossibleRangeContextCheckOut, currentSelectionLastCheckoutDate = _a.currentSelectionLastCheckoutDate, lastPossibleCheckout = _a.lastPossibleCheckout;
|
|
11154
11225
|
// Parse data
|
|
11155
11226
|
var calendarRangeFrom = (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) && endOfDay(calendarRange.from);
|
|
11156
11227
|
var calendarRangeTo = (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) && endOfDay(calendarRange.to);
|
|
@@ -11185,13 +11256,16 @@ var handleCalendarModifiers = function (_a) {
|
|
|
11185
11256
|
})));
|
|
11186
11257
|
})
|
|
11187
11258
|
: [];
|
|
11188
|
-
console.log();
|
|
11189
11259
|
return {
|
|
11190
11260
|
booked: disabledDatesByPage.length
|
|
11191
11261
|
? disabledDatesByPage
|
|
11192
11262
|
: (disabledDates === null || disabledDates === void 0 ? void 0 : disabledDates.length)
|
|
11193
|
-
? __spreadArray$1(__spreadArray$1(__spreadArray$1([
|
|
11194
|
-
|
|
11263
|
+
? __spreadArray$1(__spreadArray$1(__spreadArray$1([
|
|
11264
|
+
lastPossibleCheckout || []
|
|
11265
|
+
], __read(disabledDates), false), __read(firstPossibleRangeContextCheckIn), false), __read(lastPossibleRangeContextCheckOut), false) : ((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.length)
|
|
11266
|
+
? __spreadArray$1(__spreadArray$1(__spreadArray$1([
|
|
11267
|
+
lastPossibleCheckout || []
|
|
11268
|
+
], __read(newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates), false), __read(firstPossibleRangeContextCheckIn), false), __read(lastPossibleRangeContextCheckOut), false) : [],
|
|
11195
11269
|
disabledAfterCheckIn: calendarRangeFrom
|
|
11196
11270
|
? [{ after: calendarRangeFrom }]
|
|
11197
11271
|
: [],
|
|
@@ -11409,6 +11483,7 @@ var useCalendarLoadingSpinner = function (_a) {
|
|
|
11409
11483
|
var useUpdateDisabledDates = function (_a) {
|
|
11410
11484
|
var disableCalendarDates = _a.disableCalendarDates, calendarRange = _a.calendarRange, updateCalendarMonthNavigation = _a.updateCalendarMonthNavigation, updateCalendarDefaultMonth = _a.updateCalendarDefaultMonth;
|
|
11411
11485
|
var _b = __read(useState(undefined), 2), overlappingDate = _b[0], setOverlappingDate = _b[1];
|
|
11486
|
+
var _c = __read(useState([]), 2), lastPossibleCheckout = _c[0], setLatsPossibleCheckout = _c[1];
|
|
11412
11487
|
var newDisableCalendarDates = useMemo(function () {
|
|
11413
11488
|
if (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) {
|
|
11414
11489
|
var dateFormat_1 = 'dd-MM-yyyy';
|
|
@@ -11437,12 +11512,21 @@ var useUpdateDisabledDates = function (_a) {
|
|
|
11437
11512
|
}
|
|
11438
11513
|
return acc;
|
|
11439
11514
|
}, { updatedDisabledDates: [], newOverlappingDates: [] }), updatedDisabledDates = _a.updatedDisabledDates, newOverlappingDates_1 = _a.newOverlappingDates;
|
|
11515
|
+
// Find last possible checkout ( disable all dates after the last possible checkout )
|
|
11516
|
+
var lastPossibleCheckout_1 = disableCalendarDates.availableDates[disableCalendarDates.availableDates.length - 1].lastCheckOut;
|
|
11517
|
+
if (lastPossibleCheckout_1) {
|
|
11518
|
+
setLatsPossibleCheckout({ after: lastPossibleCheckout_1 });
|
|
11519
|
+
}
|
|
11520
|
+
// Extract overlapping dates ( dates that are only available for checkout )
|
|
11440
11521
|
if (newOverlappingDates_1.length) {
|
|
11441
11522
|
setOverlappingDate(function (prev) {
|
|
11442
11523
|
if (prev === void 0) { prev = []; }
|
|
11443
11524
|
return __spreadArray$1(__spreadArray$1([], __read(prev), false), __read(newOverlappingDates_1), false);
|
|
11444
11525
|
});
|
|
11445
11526
|
}
|
|
11527
|
+
if (newOverlappingDates_1.length) {
|
|
11528
|
+
console.log(newOverlappingDates_1);
|
|
11529
|
+
}
|
|
11446
11530
|
var newDisableCalendarDates_1 = __assign$2(__assign$2({}, disableCalendarDates), { disabledDates: updatedDisabledDates });
|
|
11447
11531
|
return newDisableCalendarDates_1;
|
|
11448
11532
|
}
|
|
@@ -11453,7 +11537,7 @@ var useUpdateDisabledDates = function (_a) {
|
|
|
11453
11537
|
updateCalendarMonthNavigation,
|
|
11454
11538
|
updateCalendarDefaultMonth,
|
|
11455
11539
|
]);
|
|
11456
|
-
return { newDisableCalendarDates: newDisableCalendarDates, overlappingDate: overlappingDate };
|
|
11540
|
+
return { newDisableCalendarDates: newDisableCalendarDates, overlappingDate: overlappingDate, lastPossibleCheckout: lastPossibleCheckout };
|
|
11457
11541
|
};
|
|
11458
11542
|
|
|
11459
11543
|
var css_248z$9 = ".rdp {\n --rdp-cell-size: 40px;\n --rdp-caption-font-size: 18px;\n --rdp-accent-color: #0000ff;\n --rdp-background-color: #e7edff;\n --rdp-accent-color-dark: #3003e1;\n --rdp-background-color-dark: #180270;\n --rdp-outline: 2px solid var(--rdp-accent-color); /* Outline border for focused elements */\n --rdp-outline-selected: 3px solid var(--rdp-accent-color); /* Outline border for focused _and_ selected elements */\n\n margin: 1em;\n}\n\n/* Hide elements for devices that are not screen readers */\n.rdp-vhidden {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n position: absolute !important;\n top: 0;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n overflow: hidden !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n border: 0 !important;\n}\n\n/* Buttons */\n.rdp-button_reset {\n appearance: none;\n position: relative;\n margin: 0;\n padding: 0;\n cursor: default;\n color: inherit;\n background: none;\n font: inherit;\n\n -moz-appearance: none;\n -webkit-appearance: none;\n}\n\n.rdp-button_reset:focus-visible {\n /* Make sure to reset outline only when :focus-visible is supported */\n outline: none;\n}\n\n.rdp-button {\n border: 2px solid transparent;\n}\n\n.rdp-button[disabled]:not(.rdp-day_selected) {\n opacity: 0.25;\n}\n\n.rdp-button:not([disabled]) {\n cursor: pointer;\n}\n\n.rdp-button:focus-visible:not([disabled]) {\n color: inherit;\n background-color: var(--rdp-background-color);\n border: var(--rdp-outline);\n}\n\n.rdp-button:hover:not([disabled]):not(.rdp-day_selected) {\n background-color: var(--rdp-background-color);\n}\n\n.rdp-months {\n display: flex;\n}\n\n.rdp-month {\n margin: 0 1em;\n}\n\n.rdp-month:first-child {\n margin-left: 0;\n}\n\n.rdp-month:last-child {\n margin-right: 0;\n}\n\n.rdp-table {\n margin: 0;\n max-width: calc(var(--rdp-cell-size) * 7);\n border-collapse: collapse;\n}\n\n.rdp-with_weeknumber .rdp-table {\n max-width: calc(var(--rdp-cell-size) * 8);\n border-collapse: collapse;\n}\n\n.rdp-caption {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0;\n text-align: left;\n}\n\n.rdp-multiple_months .rdp-caption {\n position: relative;\n display: block;\n text-align: center;\n}\n\n.rdp-caption_dropdowns {\n position: relative;\n display: inline-flex;\n}\n\n.rdp-caption_label {\n position: relative;\n z-index: 1;\n display: inline-flex;\n align-items: center;\n margin: 0;\n padding: 0 0.25em;\n white-space: nowrap;\n color: currentColor;\n border: 0;\n border: 2px solid transparent;\n font-family: inherit;\n font-size: var(--rdp-caption-font-size);\n font-weight: bold;\n}\n\n.rdp-nav {\n white-space: nowrap;\n}\n\n.rdp-multiple_months .rdp-caption_start .rdp-nav {\n position: absolute;\n top: 50%;\n left: 0;\n transform: translateY(-50%);\n}\n\n.rdp-multiple_months .rdp-caption_end .rdp-nav {\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n}\n\n.rdp-nav_button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--rdp-cell-size);\n height: var(--rdp-cell-size);\n padding: 0.25em;\n border-radius: 100%;\n}\n\n/* ---------- */\n/* Dropdowns */\n/* ---------- */\n\n.rdp-dropdown_year,\n.rdp-dropdown_month {\n position: relative;\n display: inline-flex;\n align-items: center;\n}\n\n.rdp-dropdown {\n appearance: none;\n position: absolute;\n z-index: 2;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n margin: 0;\n padding: 0;\n cursor: inherit;\n opacity: 0;\n border: none;\n background-color: transparent;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n.rdp-dropdown[disabled] {\n opacity: unset;\n color: unset;\n}\n\n.rdp-dropdown:focus-visible:not([disabled]) + .rdp-caption_label {\n background-color: var(--rdp-background-color);\n border: var(--rdp-outline);\n border-radius: 6px;\n}\n\n.rdp-dropdown_icon {\n margin: 0 0 0 5px;\n}\n\n.rdp-head {\n border: 0;\n}\n\n.rdp-head_row,\n.rdp-row {\n height: 100%;\n}\n\n.rdp-head_cell {\n vertical-align: middle;\n font-size: 0.75em;\n font-weight: 700;\n text-align: center;\n height: 100%;\n height: var(--rdp-cell-size);\n padding: 0;\n text-transform: uppercase;\n}\n\n.rdp-tbody {\n border: 0;\n}\n\n.rdp-tfoot {\n margin: 0.5em;\n}\n\n.rdp-cell {\n width: var(--rdp-cell-size);\n height: 100%;\n height: var(--rdp-cell-size);\n padding: 0;\n text-align: center;\n}\n\n.rdp-weeknumber {\n font-size: 0.75em;\n}\n\n.rdp-weeknumber,\n.rdp-day {\n display: flex;\n overflow: hidden;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: var(--rdp-cell-size);\n max-width: var(--rdp-cell-size);\n height: var(--rdp-cell-size);\n margin: 0;\n border: 2px solid transparent;\n border-radius: 100%;\n}\n\n.rdp-day_today:not(.rdp-day_outside) {\n font-weight: bold;\n}\n\n.rdp-day_selected,\n.rdp-day_selected:focus-visible,\n.rdp-day_selected:hover {\n color: white;\n opacity: 1;\n background-color: var(--rdp-accent-color);\n}\n\n.rdp-day_outside {\n opacity: 0.5;\n}\n\n.rdp-day_selected:focus-visible {\n /* Since the background is the same use again the outline */\n outline: var(--rdp-outline);\n outline-offset: 2px;\n z-index: 1;\n}\n\n.rdp:not([dir='rtl']) .rdp-day_range_start:not(.rdp-day_range_end) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.rdp:not([dir='rtl']) .rdp-day_range_end:not(.rdp-day_range_start) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.rdp[dir='rtl'] .rdp-day_range_start:not(.rdp-day_range_end) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.rdp[dir='rtl'] .rdp-day_range_end:not(.rdp-day_range_start) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.rdp-day_range_end.rdp-day_range_start {\n border-radius: 100%;\n}\n\n.rdp-day_range_middle {\n border-radius: 0;\n}";
|
|
@@ -11463,7 +11547,7 @@ var css_248z$8 = ".will-calendar-filter-container {\n display: flex;\n justify
|
|
|
11463
11547
|
styleInject(css_248z$8);
|
|
11464
11548
|
|
|
11465
11549
|
var Calendar = forwardRef(function (_a, ref) {
|
|
11466
|
-
var _b, _c
|
|
11550
|
+
var _b, _c;
|
|
11467
11551
|
var selectedPath = _a.selectedPath, calendarRange = _a.calendarRange, setCalendarRange = _a.setCalendarRange, language = _a.language, disableCalendarDates = _a.disableCalendarDates, requestDates = _a.requestDates, disabledDates = _a.disabledDates, setDisabledDates = _a.setDisabledDates, updateCalendarMonthNavigation = _a.updateCalendarMonthNavigation, setUpdateCalendarMonthNavigation = _a.setUpdateCalendarMonthNavigation, updateCalendarDefaultMonth = _a.updateCalendarDefaultMonth, loadingData = _a.loadingData, showFeedback = _a.showFeedback, palette = _a.palette, setCalendarHasError = _a.setCalendarHasError, setUpdatedForSubmit = _a.setUpdatedForSubmit, rangeContext = _a.rangeContext, calendarHasError = _a.calendarHasError;
|
|
11468
11552
|
// Translations
|
|
11469
11553
|
var t = useTranslation('common').t;
|
|
@@ -11471,13 +11555,13 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11471
11555
|
var today = startOfDay(new Date());
|
|
11472
11556
|
var selectedStartDate = calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from;
|
|
11473
11557
|
var rangeContextStartDate = rangeContext === null || rangeContext === void 0 ? void 0 : rangeContext.from;
|
|
11474
|
-
// Handle overlapping availableDates.lastCheckOut and disabledDates.start
|
|
11475
|
-
var
|
|
11558
|
+
// Handle initial disable dates including overlapping availableDates.lastCheckOut and disabledDates.start
|
|
11559
|
+
var _d = useUpdateDisabledDates({
|
|
11476
11560
|
disableCalendarDates: disableCalendarDates,
|
|
11477
11561
|
calendarRange: calendarRange,
|
|
11478
11562
|
updateCalendarMonthNavigation: updateCalendarMonthNavigation,
|
|
11479
11563
|
updateCalendarDefaultMonth: updateCalendarDefaultMonth,
|
|
11480
|
-
}), newDisableCalendarDates =
|
|
11564
|
+
}), newDisableCalendarDates = _d.newDisableCalendarDates, overlappingDate = _d.overlappingDate, lastPossibleCheckout = _d.lastPossibleCheckout;
|
|
11481
11565
|
// Handle disable dates by page
|
|
11482
11566
|
var disabledDatesByPage$1 = disabledDatesByPage({
|
|
11483
11567
|
today: today,
|
|
@@ -11508,11 +11592,11 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11508
11592
|
setUpdatedForSubmit && setUpdatedForSubmit(true);
|
|
11509
11593
|
};
|
|
11510
11594
|
// Handle disabled dates for range context
|
|
11511
|
-
var
|
|
11595
|
+
var _e = handleRangeContextDisabledDates({
|
|
11512
11596
|
rangeContext: rangeContext,
|
|
11513
11597
|
availableDates: newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.availableDates,
|
|
11514
11598
|
calendarRange: calendarRange,
|
|
11515
|
-
}), findFirstPossibleRangeContextCheckIn =
|
|
11599
|
+
}), findFirstPossibleRangeContextCheckIn = _e.findFirstPossibleRangeContextCheckIn, findLastPossibleRangeContextCheckOut = _e.findLastPossibleRangeContextCheckOut, firstPossibleRangeContextCheckIn = _e.firstPossibleRangeContextCheckIn, lastPossibleRangeContextCheckOut = _e.lastPossibleRangeContextCheckOut, currentSelectionLastCheckoutDate = _e.currentSelectionLastCheckoutDate;
|
|
11516
11600
|
// Handle check for continuous selection in the range context
|
|
11517
11601
|
checkForContinuousSelection({
|
|
11518
11602
|
setCalendarHasError: setCalendarHasError,
|
|
@@ -11520,25 +11604,21 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11520
11604
|
calendarRange: calendarRange,
|
|
11521
11605
|
calendarHasError: calendarHasError,
|
|
11522
11606
|
});
|
|
11523
|
-
// Find last possible checkout for dates
|
|
11524
|
-
var lastPossibleCheckout = !!((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.availableDates) === null || _b === void 0 ? void 0 : _b.length)
|
|
11525
|
-
? newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.availableDates[newDisableCalendarDates.availableDates.length - 1].lastCheckOut
|
|
11526
|
-
: null;
|
|
11527
11607
|
return (React__default__default.createElement("div", { className: "will-filter-bar-calendar", ref: ref },
|
|
11528
11608
|
React__default__default.createElement("div", { className: "will-calendar-filter-container" },
|
|
11529
11609
|
React__default__default.createElement(DayPicker, { key: updateCalendarDefaultMonth, id: "will-calendar", mode: "range", locale: language === 'en' ? enUS : fi, numberOfMonths: !isTablet ? 2 : 1, weekStartsOn: 1, selected: calendarRange, onSelect: function (range) { return handleOnSelect(range); }, captionLayout: "dropdown-buttons", defaultMonth: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) ||
|
|
11530
11610
|
selectedStartDate ||
|
|
11531
11611
|
rangeContextStartDate ||
|
|
11532
|
-
(((
|
|
11612
|
+
(((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.length)
|
|
11533
11613
|
? newDisableCalendarDates.disabledDates[0].from
|
|
11534
11614
|
: today), disabled: disabledDatesByPage$1.length
|
|
11535
11615
|
? disabledDatesByPage$1
|
|
11536
11616
|
: (disabledDates === null || disabledDates === void 0 ? void 0 : disabledDates.length)
|
|
11537
11617
|
? __spreadArray$1(__spreadArray$1(__spreadArray$1([
|
|
11538
|
-
lastPossibleCheckout
|
|
11539
|
-
], __read(disabledDates), false), __read(firstPossibleRangeContextCheckIn), false), __read(lastPossibleRangeContextCheckOut), false) : ((
|
|
11618
|
+
lastPossibleCheckout && lastPossibleCheckout
|
|
11619
|
+
], __read(disabledDates), false), __read(firstPossibleRangeContextCheckIn), false), __read(lastPossibleRangeContextCheckOut), false) : ((_c = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) === null || _c === void 0 ? void 0 : _c.length)
|
|
11540
11620
|
? __spreadArray$1(__spreadArray$1(__spreadArray$1([
|
|
11541
|
-
lastPossibleCheckout
|
|
11621
|
+
lastPossibleCheckout && lastPossibleCheckout
|
|
11542
11622
|
], __read(newDisableCalendarDates.disabledDates), false), __read(firstPossibleRangeContextCheckIn), false), __read(lastPossibleRangeContextCheckOut), false) : [], fromMonth: today, onMonthChange: function (val) {
|
|
11543
11623
|
requestDates && setUpdateCalendarMonthNavigation
|
|
11544
11624
|
? (requestDates(val),
|
|
@@ -11567,6 +11647,7 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11567
11647
|
disabledDates: disabledDates,
|
|
11568
11648
|
overlappingDate: overlappingDate,
|
|
11569
11649
|
rangeContext: rangeContext,
|
|
11650
|
+
lastPossibleCheckout: lastPossibleCheckout,
|
|
11570
11651
|
findFirstPossibleRangeContextCheckIn: findFirstPossibleRangeContextCheckIn,
|
|
11571
11652
|
findLastPossibleRangeContextCheckOut: findLastPossibleRangeContextCheckOut,
|
|
11572
11653
|
firstPossibleRangeContextCheckIn: firstPossibleRangeContextCheckIn,
|
|
@@ -11956,7 +12037,7 @@ var AGE_CATEGORIES_FALLBACK = [
|
|
|
11956
12037
|
var REDIRECT_URL_FALLBACK = 'http://localhost:3000/';
|
|
11957
12038
|
|
|
11958
12039
|
var useFilterCalendar = function (_a) {
|
|
11959
|
-
var onSubmit = _a.onSubmit, setToggleCalendar = _a.setToggleCalendar, noActiveSelection = _a.noActiveSelection, toggleCalendar = _a.toggleCalendar, outerRangeContext = _a.outerRangeContext;
|
|
12040
|
+
var onSubmit = _a.onSubmit, setToggleCalendar = _a.setToggleCalendar, noActiveSelection = _a.noActiveSelection, toggleCalendar = _a.toggleCalendar, outerRangeContext = _a.outerRangeContext, outerDisableCalendarDates = _a.outerDisableCalendarDates;
|
|
11960
12041
|
// State
|
|
11961
12042
|
var _b = __read(useState(), 2), calendarRange = _b[0], setCalendarRange = _b[1];
|
|
11962
12043
|
var _c = __read(useState(outerRangeContext), 2), rangeContext = _c[0], setRangeContext = _c[1];
|
|
@@ -11966,7 +12047,24 @@ var useFilterCalendar = function (_a) {
|
|
|
11966
12047
|
var _g = __read(useState(0), 2), updateCalendarDefaultMonth = _g[0], setUpdateCalendarDefaultMonth = _g[1];
|
|
11967
12048
|
var _h = __read(useState(false), 2), calendarHasError = _h[0], setCalendarHasError = _h[1];
|
|
11968
12049
|
var _j = __read(useState(false), 2), updatedForSubmit = _j[0], setUpdatedForSubmit = _j[1];
|
|
12050
|
+
var _k = __read(useState(), 2), disableCalendarDates = _k[0], setDisableCalendarDates = _k[1];
|
|
11969
12051
|
// Lifecycle
|
|
12052
|
+
// Handle update component with new data
|
|
12053
|
+
useEffect(function () {
|
|
12054
|
+
console.log('1', outerDisableCalendarDates);
|
|
12055
|
+
if (outerDisableCalendarDates === null || outerDisableCalendarDates === void 0 ? void 0 : outerDisableCalendarDates.availableDates) {
|
|
12056
|
+
setDisableCalendarDates({
|
|
12057
|
+
availableDates: __spreadArray$1([], __read(outerDisableCalendarDates.availableDates.sort(function (a, b) {
|
|
12058
|
+
return compareAsc(a.checkIn, b.checkIn);
|
|
12059
|
+
})), false),
|
|
12060
|
+
disabledDates: outerDisableCalendarDates.disabledDates
|
|
12061
|
+
? __spreadArray$1([], __read(outerDisableCalendarDates.disabledDates.sort(function (a, b) {
|
|
12062
|
+
return compareAsc(a.from, b.from);
|
|
12063
|
+
})), false) : [],
|
|
12064
|
+
});
|
|
12065
|
+
}
|
|
12066
|
+
}, [outerDisableCalendarDates]);
|
|
12067
|
+
// Handle Range Context initial selections
|
|
11970
12068
|
useEffect(function () {
|
|
11971
12069
|
if (typeof window === 'undefined')
|
|
11972
12070
|
return;
|
|
@@ -11996,6 +12094,7 @@ var useFilterCalendar = function (_a) {
|
|
|
11996
12094
|
}
|
|
11997
12095
|
}
|
|
11998
12096
|
}, [toggleCalendar]);
|
|
12097
|
+
// Handle submit dates
|
|
11999
12098
|
useEffect(function () {
|
|
12000
12099
|
var formatString = 'dd.MM.yyyy';
|
|
12001
12100
|
var initialRangeTo = (initialCalendarRange === null || initialCalendarRange === void 0 ? void 0 : initialCalendarRange.to)
|
|
@@ -12045,25 +12144,29 @@ var useFilterCalendar = function (_a) {
|
|
|
12045
12144
|
setCalendarHasError: setCalendarHasError,
|
|
12046
12145
|
setUpdatedForSubmit: setUpdatedForSubmit,
|
|
12047
12146
|
rangeContext: rangeContext,
|
|
12147
|
+
disableCalendarDates: disableCalendarDates,
|
|
12048
12148
|
};
|
|
12049
12149
|
};
|
|
12050
12150
|
|
|
12051
|
-
var css_248z = ".will-root .will-calendar-wrapper {\n box-shadow: var(--will-box-shadow-dark);\n border-radius: 20px;\n background-color: var(--will-white);\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-header,\n.will-root .will-calendar-wrapper .will-calendar-main,\n.will-root .will-calendar-wrapper .will-calendar-footer {\n padding: 20px;\n}\n\n/* Header */\n\n.will-root .will-calendar-wrapper .will-calendar-header {\n display: flex;\n justify-content: space-between;\n border-bottom: 1px solid var(--will-grey);\n align-items: center;\n}\n\n/* Footer */\n\n.will-root .will-calendar-wrapper .will-calendar-footer {\n border-top: 1px solid var(--will-grey);\n}\n\n/* Footer actions */\n\n.will-root .will-calendar-wrapper .will-calendar-footer-actions-wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 10px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates > div {\n margin-bottom: 5px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates-separator {\n margin: 0 15px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates .will-calendar-footer-booked {\n display: flex;\n min-height: 20.5px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-actions {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n@media (max-width: 960px) {\n .will-root .will-calendar-wrapper {\n width: -webkit-fill-available;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-header,\n .will-root .will-calendar-wrapper .will-calendar-main,\n .will-root .will-calendar-wrapper .will-calendar-footer {\n padding: 20px 10px;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer {\n flex-direction: column;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-dates {\n margin-bottom: 12px;\n text-align: center;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-dates .will-calendar-footer-booked {\n justify-content: center;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-actions {\n flex-direction: column;\n width: 100%;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-actions button{\n width: 100%;\n }\n }\n\n.will-root .will-calendar-wrapper .will-calendar-header .will-filter-bar-close-button {\n position: initial;\n}";
|
|
12151
|
+
var css_248z = ".will-root .will-calendar-wrapper {\n box-shadow: var(--will-box-shadow-dark);\n border-radius: 20px;\n background-color: var(--will-white);\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-header,\n.will-root .will-calendar-wrapper .will-calendar-main,\n.will-root .will-calendar-wrapper .will-calendar-footer {\n padding: 20px;\n}\n\n/* Header */\n\n.will-root .will-calendar-wrapper .will-calendar-header {\n display: flex;\n justify-content: space-between;\n border-bottom: 1px solid var(--will-grey);\n align-items: center;\n}\n\n/* Footer */\n\n.will-root .will-calendar-wrapper .will-calendar-footer {\n border-top: 1px solid var(--will-grey);\n}\n\n/* Footer actions */\n\n.will-root .will-calendar-wrapper .will-calendar-footer-actions-wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 10px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates > div {\n margin-bottom: 5px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates-separator {\n margin: 0 15px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-dates .will-calendar-footer-booked {\n display: flex;\n min-height: 20.5px;\n margin-top: 10px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-actions {\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.will-root .will-calendar-wrapper .will-calendar-footer-error {\n display: flex;\n align-items: center;\n}\n\n@media (max-width: 960px) {\n .will-root .will-calendar-wrapper {\n width: -webkit-fill-available;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-header,\n .will-root .will-calendar-wrapper .will-calendar-main,\n .will-root .will-calendar-wrapper .will-calendar-footer {\n padding: 20px 10px;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-actions-wrapper {\n flex-direction: column;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-dates {\n margin-bottom: 12px;\n text-align: center;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-dates .will-calendar-footer-booked {\n justify-content: center;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-actions {\n flex-direction: column;\n width: 100%;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-actions button{\n width: 100%;\n }\n\n .will-root .will-calendar-wrapper .will-calendar-footer-error {\n min-width: 20px;\n margin-bottom: 10px; \n }\n }\n\n.will-root .will-calendar-wrapper .will-calendar-header .will-filter-bar-close-button {\n position: initial;\n}";
|
|
12052
12152
|
styleInject(css_248z);
|
|
12053
12153
|
|
|
12054
12154
|
function FilterCalendar(_a) {
|
|
12055
|
-
var calendarOffset = _a.calendarOffset, language = _a.language, palette = _a.palette, onSubmit = _a.onSubmit,
|
|
12155
|
+
var calendarOffset = _a.calendarOffset, language = _a.language, palette = _a.palette, onSubmit = _a.onSubmit, outerDisableCalendarDates = _a.disableCalendarDates, toggleCalendar = _a.toggleCalendar, loadingData = _a.loadingData, setToggleCalendar = _a.setToggleCalendar, requestDates = _a.requestDates, showFeedback = _a.showFeedback, noActiveSelection = _a.noActiveSelection, outerRangeContext = _a.rangeContext;
|
|
12056
12156
|
var themePalette = useTheme({ palette: palette });
|
|
12057
12157
|
// Translations
|
|
12058
12158
|
useUpdateTranslations({ language: language });
|
|
12059
12159
|
var t = useTranslation().t;
|
|
12160
|
+
var isMobile = reactResponsiveExports.useMediaQuery({ maxWidth: 690 });
|
|
12161
|
+
console.log('2', { outerDisableCalendarDates: outerDisableCalendarDates });
|
|
12060
12162
|
var _b = useFilterCalendar({
|
|
12061
12163
|
onSubmit: onSubmit,
|
|
12062
12164
|
setToggleCalendar: setToggleCalendar,
|
|
12063
12165
|
noActiveSelection: noActiveSelection,
|
|
12064
12166
|
toggleCalendar: toggleCalendar,
|
|
12065
12167
|
outerRangeContext: outerRangeContext,
|
|
12066
|
-
|
|
12168
|
+
outerDisableCalendarDates: outerDisableCalendarDates,
|
|
12169
|
+
}), setCalendarRange = _b.setCalendarRange, handleClearDates = _b.handleClearDates, calendarRange = _b.calendarRange, disabledDates = _b.disabledDates, setDisabledDates = _b.setDisabledDates, updateCalendarMonthNavigation = _b.updateCalendarMonthNavigation, updateCalendarDefaultMonth = _b.updateCalendarDefaultMonth, setUpdateCalendarMonthNavigation = _b.setUpdateCalendarMonthNavigation, calendarHasError = _b.calendarHasError, setCalendarHasError = _b.setCalendarHasError, setUpdatedForSubmit = _b.setUpdatedForSubmit, rangeContext = _b.rangeContext, disableCalendarDates = _b.disableCalendarDates;
|
|
12067
12170
|
// Display component after fully loaded
|
|
12068
12171
|
useAwaitRender();
|
|
12069
12172
|
// Handle close filter section
|
|
@@ -12082,7 +12185,7 @@ function FilterCalendar(_a) {
|
|
|
12082
12185
|
React__default__default.createElement("div", { className: "will-calendar-footer" },
|
|
12083
12186
|
React__default__default.createElement("div", { className: "will-calendar-footer-actions-wrapper" },
|
|
12084
12187
|
React__default__default.createElement("div", { className: "will-calendar-footer-dates" },
|
|
12085
|
-
calendarHasError ? (React__default__default.createElement("span", null, "
|
|
12188
|
+
calendarHasError ? (React__default__default.createElement("span", null, t("common:errors.calendarErrors.checkInAvailabilityGuide"))) : (React__default__default.createElement("div", null,
|
|
12086
12189
|
React__default__default.createElement("span", null, parseDate({
|
|
12087
12190
|
date: calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from,
|
|
12088
12191
|
dateFormat: 'EEEEEE d.M.yyyy',
|
|
@@ -12095,16 +12198,32 @@ function FilterCalendar(_a) {
|
|
|
12095
12198
|
language: language,
|
|
12096
12199
|
}) || t('common:checkOut')))),
|
|
12097
12200
|
React__default__default.createElement("span", { className: "will-calendar-footer-booked" }, calendarHasError
|
|
12098
|
-
?
|
|
12201
|
+
? t("filterBar:calendar.minNights")
|
|
12099
12202
|
: nights
|
|
12100
12203
|
? "".concat(nights, " ").concat(t("common:".concat(nights === 1 ? 'night' : 'nights')))
|
|
12101
12204
|
: '')),
|
|
12205
|
+
calendarHasError &&
|
|
12206
|
+
isMobile &&
|
|
12207
|
+
renderCalendarErrorMessage({
|
|
12208
|
+
palette: palette,
|
|
12209
|
+
message: t("common:errors.calendarErrors.checkInAvailabilityError"),
|
|
12210
|
+
}),
|
|
12102
12211
|
React__default__default.createElement("div", { className: "will-calendar-footer-actions" },
|
|
12103
12212
|
React__default__default.createElement(SubmitButton, { onClick: handleClearDates, disabled: !(calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from), label: t("common:clearDates") }))),
|
|
12104
|
-
calendarHasError &&
|
|
12105
|
-
|
|
12106
|
-
|
|
12213
|
+
calendarHasError &&
|
|
12214
|
+
!isMobile &&
|
|
12215
|
+
renderCalendarErrorMessage({
|
|
12216
|
+
palette: palette,
|
|
12217
|
+
message: t("common:errors.calendarErrors.checkInAvailabilityError"),
|
|
12218
|
+
}))))));
|
|
12107
12219
|
}
|
|
12220
|
+
/////////
|
|
12221
|
+
var renderCalendarErrorMessage = function (_a) {
|
|
12222
|
+
var message = _a.message, palette = _a.palette;
|
|
12223
|
+
return (React__default__default.createElement("div", { className: "will-calendar-footer-error" },
|
|
12224
|
+
React__default__default.createElement(IconsSvg, { fill: (palette === null || palette === void 0 ? void 0 : palette.error) || 'inherit', size: 25, icon: "warning" }),
|
|
12225
|
+
React__default__default.createElement("span", { style: { marginLeft: '10px' } }, message || '')));
|
|
12226
|
+
};
|
|
12108
12227
|
|
|
12109
12228
|
export { Button$1 as Button, FilterBar, FilterCalendar };
|
|
12110
12229
|
//# sourceMappingURL=index.esm.js.map
|