willba-component-library 0.2.58 → 0.2.60
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 +5 -2
- package/lib/core/components/calendar/CalendarTypes.d.ts +1 -1
- package/lib/core/components/calendar/hooks/useCalendarLoadingSpinner.d.ts +1 -3
- package/lib/core/components/calendar/hooks/useCalendarTooltips.d.ts +1 -6
- package/lib/core/components/calendar/hooks/useUpdateDisabledDates.d.ts +2 -2
- package/lib/core/components/calendar/utils/handleCalendarModifiers.d.ts +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.esm.js +47 -43
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +47 -43
- package/lib/index.js.map +1 -1
- package/lib/index.umd.js +47 -43
- package/lib/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/components/FilterCalendar/FilterCalendar.stories.tsx +415 -379
- package/src/components/FilterCalendar/FilterCalendar.tsx +5 -3
- package/src/components/FilterCalendar/hooks/useFilterCalendar.ts +11 -3
- package/src/core/components/calendar/Calendar.tsx +4 -10
- package/src/core/components/calendar/CalendarTypes.ts +1 -1
- package/src/core/components/calendar/hooks/useCalendarLoadingSpinner.tsx +2 -8
- package/src/core/components/calendar/hooks/useCalendarTooltips.tsx +2 -18
- package/src/core/components/calendar/hooks/useUpdateDisabledDates.tsx +3 -3
- package/src/core/components/calendar/utils/calendarSelectionRules.tsx +14 -1
- package/src/core/components/calendar/utils/handleCalendarModifiers.tsx +15 -13
|
@@ -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, }: FilterCalendarTypes): React.JSX.Element;
|
|
5
|
+
export default function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates, toggleCalendar, loadingData, setToggleCalendar, requestDates, showFeedback, noActiveSelection, rangeContext: outerRangeContext, }: FilterCalendarTypes): React.JSX.Element;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DateRange, Matcher } from 'react-day-picker';
|
|
3
|
+
import { RangeContext } from 'src/core/components/calendar/CalendarTypes';
|
|
3
4
|
type Props = {
|
|
4
5
|
onSubmit: (val: any) => void;
|
|
5
6
|
setToggleCalendar: (val: boolean) => void;
|
|
6
7
|
noActiveSelection?: boolean;
|
|
7
8
|
toggleCalendar?: boolean;
|
|
9
|
+
outerRangeContext?: RangeContext;
|
|
8
10
|
};
|
|
9
|
-
export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActiveSelection, toggleCalendar, }: Props) => {
|
|
11
|
+
export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActiveSelection, toggleCalendar, outerRangeContext, }: Props) => {
|
|
10
12
|
handleSubmit: () => void;
|
|
11
13
|
handleClearDates: () => void;
|
|
12
14
|
setCalendarRange: import("react").Dispatch<import("react").SetStateAction<DateRange | undefined>>;
|
|
@@ -15,9 +17,10 @@ export declare const useFilterCalendar: ({ onSubmit, setToggleCalendar, noActive
|
|
|
15
17
|
calendarRange: DateRange | undefined;
|
|
16
18
|
disabledDates: Matcher[];
|
|
17
19
|
updateCalendarMonthNavigation: boolean;
|
|
18
|
-
|
|
20
|
+
updateCalendarDefaultMonth: number;
|
|
19
21
|
calendarHasError: boolean;
|
|
20
22
|
setCalendarHasError: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
21
23
|
setUpdatedForSubmit: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
24
|
+
rangeContext: RangeContext | undefined;
|
|
22
25
|
};
|
|
23
26
|
export {};
|
|
@@ -38,7 +38,7 @@ export type CalendarTypes = {
|
|
|
38
38
|
palette?: Palette;
|
|
39
39
|
updateCalendarMonthNavigation?: boolean;
|
|
40
40
|
setUpdateCalendarMonthNavigation?: (arg: (prev: boolean) => boolean) => void;
|
|
41
|
-
|
|
41
|
+
updateCalendarDefaultMonth?: number;
|
|
42
42
|
setCalendarHasError?: (arg: boolean) => void;
|
|
43
43
|
setUpdatedForSubmit?: (arg: boolean) => void;
|
|
44
44
|
rangeContext?: RangeContext;
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
type Props = {
|
|
2
2
|
loadingData?: boolean;
|
|
3
|
-
updateCalendarMonthNavigation?: boolean;
|
|
4
|
-
updateCalendarDefaultMoth?: number;
|
|
5
3
|
};
|
|
6
|
-
export declare const useCalendarLoadingSpinner: ({ loadingData
|
|
4
|
+
export declare const useCalendarLoadingSpinner: ({ loadingData }: Props) => void;
|
|
7
5
|
export {};
|
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
import { DateRange } from 'react-day-picker';
|
|
2
1
|
type Props = {
|
|
3
|
-
calendarRange?: DateRange;
|
|
4
|
-
updateCalendarMonthNavigation?: boolean;
|
|
5
|
-
overlappingDate?: DateRange[];
|
|
6
|
-
updateCalendarDefaultMoth?: number;
|
|
7
2
|
showFeedback?: boolean;
|
|
8
3
|
};
|
|
9
|
-
export declare const useCalendarTooltips: ({
|
|
4
|
+
export declare const useCalendarTooltips: ({ showFeedback }: Props) => void;
|
|
10
5
|
export {};
|
|
@@ -4,9 +4,9 @@ type Props = {
|
|
|
4
4
|
disableCalendarDates?: DisableCalendarDates;
|
|
5
5
|
calendarRange?: DateRange;
|
|
6
6
|
updateCalendarMonthNavigation?: boolean;
|
|
7
|
-
|
|
7
|
+
updateCalendarDefaultMonth?: number;
|
|
8
8
|
};
|
|
9
|
-
export declare const useUpdateDisabledDates: ({ disableCalendarDates, calendarRange, updateCalendarMonthNavigation,
|
|
9
|
+
export declare const useUpdateDisabledDates: ({ disableCalendarDates, calendarRange, updateCalendarMonthNavigation, updateCalendarDefaultMonth, }: Props) => {
|
|
10
10
|
newDisableCalendarDates: DisableCalendarDates | undefined;
|
|
11
11
|
overlappingDate: DateRange[] | undefined;
|
|
12
12
|
};
|
|
@@ -25,11 +25,11 @@ export declare const handleCalendarModifiers: ({ newDisableCalendarDates, calend
|
|
|
25
25
|
from: Date | undefined;
|
|
26
26
|
}[];
|
|
27
27
|
noActiveSelectionStart: never[] | Date;
|
|
28
|
+
noActiveSelectionEnd: never[] | Date;
|
|
28
29
|
noActiveSelectionMid: {
|
|
29
30
|
from: Date;
|
|
30
31
|
to: Date;
|
|
31
32
|
}[];
|
|
32
|
-
noActiveSelectionEnd: never[] | Date;
|
|
33
33
|
checkoutOptionsMid: {
|
|
34
34
|
after: Date;
|
|
35
35
|
before: Date;
|
package/lib/index.d.ts
CHANGED
|
@@ -72,7 +72,7 @@ type CalendarTypes = {
|
|
|
72
72
|
palette?: Palette;
|
|
73
73
|
updateCalendarMonthNavigation?: boolean;
|
|
74
74
|
setUpdateCalendarMonthNavigation?: (arg: (prev: boolean) => boolean) => void;
|
|
75
|
-
|
|
75
|
+
updateCalendarDefaultMonth?: number;
|
|
76
76
|
setCalendarHasError?: (arg: boolean) => void;
|
|
77
77
|
setUpdatedForSubmit?: (arg: boolean) => void;
|
|
78
78
|
rangeContext?: RangeContext;
|
|
@@ -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, }: FilterCalendarTypes): React.JSX.Element;
|
|
125
|
+
declare function FilterCalendar({ calendarOffset, language, palette, onSubmit, disableCalendarDates, 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
|
@@ -10978,6 +10978,8 @@ var calendarSelectionRules = function (_a) {
|
|
|
10978
10978
|
? endOfDay(rangeContext.from)
|
|
10979
10979
|
: null;
|
|
10980
10980
|
var rangeContextTo = (rangeContext === null || rangeContext === void 0 ? void 0 : rangeContext.to) ? endOfDay(rangeContext.to) : null;
|
|
10981
|
+
// When some dates are not available for selection, the earliest date will be available only for "end"
|
|
10982
|
+
// and the latest date will only be available for "start"
|
|
10981
10983
|
var overlappingDateFrom = (overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
|
|
10982
10984
|
? overlappingDate.find(function (date) {
|
|
10983
10985
|
return !!(date.from && rangeFrom)
|
|
@@ -10985,6 +10987,12 @@ var calendarSelectionRules = function (_a) {
|
|
|
10985
10987
|
: false;
|
|
10986
10988
|
})
|
|
10987
10989
|
: null;
|
|
10990
|
+
var overlappingDateTo = (overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
|
|
10991
|
+
? overlappingDate.find(function (date) {
|
|
10992
|
+
return !!(date.from && rangeTo) ? isEqual(endOfDay(date.from), rangeTo) : false;
|
|
10993
|
+
})
|
|
10994
|
+
: null;
|
|
10995
|
+
//----------
|
|
10988
10996
|
var checkOutRange = ((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.availableDates) === null || _b === void 0 ? void 0 : _b.length)
|
|
10989
10997
|
? newDisableCalendarDates.availableDates.find(function (checkInDate) {
|
|
10990
10998
|
return !!(checkInDate.checkIn && rangeFrom)
|
|
@@ -11002,7 +11010,8 @@ var calendarSelectionRules = function (_a) {
|
|
|
11002
11010
|
// Calendar selection rules: The cases are handled sequentially, starting from simple selections to more complex contextual selections.
|
|
11003
11011
|
// The rules are processed in a specific order, so one case is handled before another.
|
|
11004
11012
|
// Changing the order will cause the rules to break or not work properly.
|
|
11005
|
-
if (!!overlappingDateFrom
|
|
11013
|
+
if (!!overlappingDateFrom ||
|
|
11014
|
+
(calendarRangeFrom && calendarRangeTo && overlappingDateTo)) {
|
|
11006
11015
|
// 1. If dates overlap, clear the selection.
|
|
11007
11016
|
return setCalendarRange(undefined);
|
|
11008
11017
|
}
|
|
@@ -11123,24 +11132,26 @@ var handleCalendarModifiers = function (_a) {
|
|
|
11123
11132
|
disabledAfterCheckIn: (calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from)
|
|
11124
11133
|
? [{ after: calendarRange.from }]
|
|
11125
11134
|
: [],
|
|
11126
|
-
overlappingDate: __spreadArray$1([], __read((!(calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) && !!(overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
|
|
11135
|
+
overlappingDate: __spreadArray$1([], __read((!(calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) && !!(overlappingDate === null || overlappingDate === void 0 ? void 0 : overlappingDate.length)
|
|
11127
11136
|
? overlappingDate.map(function (date) { return ({ from: date.from }); })
|
|
11128
11137
|
: [])), false),
|
|
11129
11138
|
noActiveSelectionStart: (rangeContext === null || rangeContext === void 0 ? void 0 : rangeContext.from) &&
|
|
11130
|
-
!((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) &&
|
|
11131
|
-
(rangeContext
|
|
11132
|
-
|
|
11139
|
+
!(((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) &&
|
|
11140
|
+
isEqual(endOfDay(rangeContext.from), endOfDay(calendarRange.from))) ||
|
|
11141
|
+
((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) &&
|
|
11142
|
+
isEqual(endOfDay(rangeContext.from), endOfDay(calendarRange.to))))
|
|
11133
11143
|
? rangeContext.from
|
|
11134
11144
|
: [],
|
|
11135
|
-
noActiveSelectionMid: __spreadArray$1([], __read((rangeContextMiddleSelection.length
|
|
11136
|
-
? rangeContextMiddleSelection
|
|
11137
|
-
: [])), false),
|
|
11138
11145
|
noActiveSelectionEnd: (rangeContext === null || rangeContext === void 0 ? void 0 : rangeContext.to) &&
|
|
11139
|
-
!((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) &&
|
|
11140
|
-
(rangeContext
|
|
11141
|
-
|
|
11146
|
+
!(((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) &&
|
|
11147
|
+
isEqual(endOfDay(rangeContext.to), endOfDay(calendarRange.from))) ||
|
|
11148
|
+
((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) &&
|
|
11149
|
+
isEqual(endOfDay(rangeContext.to), endOfDay(calendarRange.to))))
|
|
11142
11150
|
? rangeContext.to
|
|
11143
11151
|
: [],
|
|
11152
|
+
noActiveSelectionMid: __spreadArray$1([], __read((rangeContextMiddleSelection.length
|
|
11153
|
+
? rangeContextMiddleSelection
|
|
11154
|
+
: [])), false),
|
|
11144
11155
|
checkoutOptionsMid: __spreadArray$1([], __read(((calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.from) &&
|
|
11145
11156
|
!(calendarRange === null || calendarRange === void 0 ? void 0 : calendarRange.to) &&
|
|
11146
11157
|
(currentSelectionLastCheckoutDate === null || currentSelectionLastCheckoutDate === void 0 ? void 0 : currentSelectionLastCheckoutDate.lastCheckOut)
|
|
@@ -11243,7 +11254,7 @@ var checkForContinuousSelection = function (_a) {
|
|
|
11243
11254
|
};
|
|
11244
11255
|
|
|
11245
11256
|
var useCalendarTooltips = function (_a) {
|
|
11246
|
-
var
|
|
11257
|
+
var showFeedback = _a.showFeedback;
|
|
11247
11258
|
return useEffect(function () {
|
|
11248
11259
|
if (typeof document === 'undefined' || !showFeedback)
|
|
11249
11260
|
return;
|
|
@@ -11310,16 +11321,11 @@ var useCalendarTooltips = function (_a) {
|
|
|
11310
11321
|
tooltipClonesSpinner.forEach(function (clone) { return clone.remove(); });
|
|
11311
11322
|
tooltipClonesOverlappingDates.forEach(function (clone) { return clone.remove(); });
|
|
11312
11323
|
};
|
|
11313
|
-
}
|
|
11314
|
-
calendarRange,
|
|
11315
|
-
updateCalendarMonthNavigation,
|
|
11316
|
-
overlappingDate,
|
|
11317
|
-
updateCalendarDefaultMoth,
|
|
11318
|
-
]);
|
|
11324
|
+
});
|
|
11319
11325
|
};
|
|
11320
11326
|
|
|
11321
11327
|
var useCalendarLoadingSpinner = function (_a) {
|
|
11322
|
-
var loadingData = _a.loadingData
|
|
11328
|
+
var loadingData = _a.loadingData;
|
|
11323
11329
|
return useEffect(function () {
|
|
11324
11330
|
if (typeof document === 'undefined')
|
|
11325
11331
|
return;
|
|
@@ -11332,11 +11338,11 @@ var useCalendarLoadingSpinner = function (_a) {
|
|
|
11332
11338
|
if (loadingSpinner)
|
|
11333
11339
|
loadingSpinner.style.display = 'none';
|
|
11334
11340
|
}
|
|
11335
|
-
}
|
|
11341
|
+
});
|
|
11336
11342
|
};
|
|
11337
11343
|
|
|
11338
11344
|
var useUpdateDisabledDates = function (_a) {
|
|
11339
|
-
var disableCalendarDates = _a.disableCalendarDates, calendarRange = _a.calendarRange, updateCalendarMonthNavigation = _a.updateCalendarMonthNavigation,
|
|
11345
|
+
var disableCalendarDates = _a.disableCalendarDates, calendarRange = _a.calendarRange, updateCalendarMonthNavigation = _a.updateCalendarMonthNavigation, updateCalendarDefaultMonth = _a.updateCalendarDefaultMonth;
|
|
11340
11346
|
var _b = __read(useState(undefined), 2), overlappingDate = _b[0], setOverlappingDate = _b[1];
|
|
11341
11347
|
var newDisableCalendarDates = useMemo(function () {
|
|
11342
11348
|
if (disableCalendarDates === null || disableCalendarDates === void 0 ? void 0 : disableCalendarDates.availableDates) {
|
|
@@ -11380,7 +11386,7 @@ var useUpdateDisabledDates = function (_a) {
|
|
|
11380
11386
|
disableCalendarDates,
|
|
11381
11387
|
calendarRange,
|
|
11382
11388
|
updateCalendarMonthNavigation,
|
|
11383
|
-
|
|
11389
|
+
updateCalendarDefaultMonth,
|
|
11384
11390
|
]);
|
|
11385
11391
|
return { newDisableCalendarDates: newDisableCalendarDates, overlappingDate: overlappingDate };
|
|
11386
11392
|
};
|
|
@@ -11393,7 +11399,7 @@ styleInject(css_248z$8);
|
|
|
11393
11399
|
|
|
11394
11400
|
var Calendar = forwardRef(function (_a, ref) {
|
|
11395
11401
|
var _b, _c;
|
|
11396
|
-
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,
|
|
11402
|
+
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;
|
|
11397
11403
|
// Translations
|
|
11398
11404
|
var t = useTranslation('common').t;
|
|
11399
11405
|
var isTablet = reactResponsiveExports.useMediaQuery({ maxWidth: 960 });
|
|
@@ -11405,7 +11411,7 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11405
11411
|
disableCalendarDates: disableCalendarDates,
|
|
11406
11412
|
calendarRange: calendarRange,
|
|
11407
11413
|
updateCalendarMonthNavigation: updateCalendarMonthNavigation,
|
|
11408
|
-
|
|
11414
|
+
updateCalendarDefaultMonth: updateCalendarDefaultMonth,
|
|
11409
11415
|
}), newDisableCalendarDates = _d.newDisableCalendarDates, overlappingDate = _d.overlappingDate;
|
|
11410
11416
|
// Handle disable dates by page
|
|
11411
11417
|
var disabledDatesByPage$1 = disabledDatesByPage({
|
|
@@ -11415,17 +11421,11 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11415
11421
|
});
|
|
11416
11422
|
// Handle tooltip
|
|
11417
11423
|
useCalendarTooltips({
|
|
11418
|
-
calendarRange: calendarRange,
|
|
11419
|
-
updateCalendarMonthNavigation: updateCalendarMonthNavigation,
|
|
11420
|
-
overlappingDate: overlappingDate,
|
|
11421
|
-
updateCalendarDefaultMoth: updateCalendarDefaultMoth,
|
|
11422
11424
|
showFeedback: showFeedback,
|
|
11423
11425
|
});
|
|
11424
11426
|
// Handle loading spinner
|
|
11425
11427
|
useCalendarLoadingSpinner({
|
|
11426
11428
|
loadingData: loadingData,
|
|
11427
|
-
updateCalendarMonthNavigation: updateCalendarMonthNavigation,
|
|
11428
|
-
updateCalendarDefaultMoth: updateCalendarDefaultMoth,
|
|
11429
11429
|
});
|
|
11430
11430
|
// Handle the date selection and availability for selection logic.
|
|
11431
11431
|
var handleOnSelect = function (range) {
|
|
@@ -11457,7 +11457,7 @@ var Calendar = forwardRef(function (_a, ref) {
|
|
|
11457
11457
|
});
|
|
11458
11458
|
return (React__default__default.createElement("div", { className: "will-filter-bar-calendar", ref: ref },
|
|
11459
11459
|
React__default__default.createElement("div", { className: "will-calendar-filter-container" },
|
|
11460
|
-
React__default__default.createElement(DayPicker, { key:
|
|
11460
|
+
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) ||
|
|
11461
11461
|
selectedStartDate ||
|
|
11462
11462
|
rangeContextStartDate ||
|
|
11463
11463
|
(((_b = newDisableCalendarDates === null || newDisableCalendarDates === void 0 ? void 0 : newDisableCalendarDates.disabledDates) === null || _b === void 0 ? void 0 : _b.length)
|
|
@@ -11883,15 +11883,16 @@ var AGE_CATEGORIES_FALLBACK = [
|
|
|
11883
11883
|
var REDIRECT_URL_FALLBACK = 'http://localhost:3000/';
|
|
11884
11884
|
|
|
11885
11885
|
var useFilterCalendar = function (_a) {
|
|
11886
|
-
var onSubmit = _a.onSubmit, setToggleCalendar = _a.setToggleCalendar, noActiveSelection = _a.noActiveSelection, toggleCalendar = _a.toggleCalendar;
|
|
11886
|
+
var onSubmit = _a.onSubmit, setToggleCalendar = _a.setToggleCalendar, noActiveSelection = _a.noActiveSelection, toggleCalendar = _a.toggleCalendar, outerRangeContext = _a.outerRangeContext;
|
|
11887
11887
|
// State
|
|
11888
11888
|
var _b = __read(useState(), 2), calendarRange = _b[0], setCalendarRange = _b[1];
|
|
11889
|
-
var _c = __read(useState(), 2),
|
|
11890
|
-
var _d = __read(useState(
|
|
11891
|
-
var _e = __read(useState(
|
|
11892
|
-
var _f = __read(useState(
|
|
11893
|
-
var _g = __read(useState(
|
|
11894
|
-
var _h = __read(useState(false), 2),
|
|
11889
|
+
var _c = __read(useState(outerRangeContext), 2), rangeContext = _c[0], setRangeContext = _c[1];
|
|
11890
|
+
var _d = __read(useState(), 2), initialCalendarRange = _d[0], setInitialCalendarRange = _d[1];
|
|
11891
|
+
var _e = __read(useState([]), 2), disabledDates = _e[0], setDisabledDates = _e[1];
|
|
11892
|
+
var _f = __read(useState(false), 2), updateCalendarMonthNavigation = _f[0], setUpdateCalendarMonthNavigation = _f[1];
|
|
11893
|
+
var _g = __read(useState(0), 2), updateCalendarDefaultMonth = _g[0], setUpdateCalendarDefaultMonth = _g[1];
|
|
11894
|
+
var _h = __read(useState(false), 2), calendarHasError = _h[0], setCalendarHasError = _h[1];
|
|
11895
|
+
var _j = __read(useState(false), 2), updatedForSubmit = _j[0], setUpdatedForSubmit = _j[1];
|
|
11895
11896
|
// Lifecycle
|
|
11896
11897
|
useEffect(function () {
|
|
11897
11898
|
if (typeof window === 'undefined')
|
|
@@ -11902,8 +11903,9 @@ var useFilterCalendar = function (_a) {
|
|
|
11902
11903
|
if (startDateParam && endDateParam) {
|
|
11903
11904
|
if (noActiveSelection) {
|
|
11904
11905
|
handleClearDates();
|
|
11905
|
-
|
|
11906
|
+
setUpdateCalendarDefaultMonth(function (prev) { return prev + 1; });
|
|
11906
11907
|
setUpdatedForSubmit(false);
|
|
11908
|
+
setRangeContext(outerRangeContext);
|
|
11907
11909
|
setInitialCalendarRange({
|
|
11908
11910
|
from: new Date(startDateParam),
|
|
11909
11911
|
to: new Date(endDateParam),
|
|
@@ -11965,10 +11967,11 @@ var useFilterCalendar = function (_a) {
|
|
|
11965
11967
|
calendarRange: calendarRange,
|
|
11966
11968
|
disabledDates: disabledDates,
|
|
11967
11969
|
updateCalendarMonthNavigation: updateCalendarMonthNavigation,
|
|
11968
|
-
|
|
11970
|
+
updateCalendarDefaultMonth: updateCalendarDefaultMonth,
|
|
11969
11971
|
calendarHasError: calendarHasError,
|
|
11970
11972
|
setCalendarHasError: setCalendarHasError,
|
|
11971
11973
|
setUpdatedForSubmit: setUpdatedForSubmit,
|
|
11974
|
+
rangeContext: rangeContext,
|
|
11972
11975
|
};
|
|
11973
11976
|
};
|
|
11974
11977
|
|
|
@@ -11976,7 +11979,7 @@ var css_248z = ".will-root .will-calendar-wrapper {\n box-shadow: var(--will-
|
|
|
11976
11979
|
styleInject(css_248z);
|
|
11977
11980
|
|
|
11978
11981
|
function FilterCalendar(_a) {
|
|
11979
|
-
var calendarOffset = _a.calendarOffset, language = _a.language, palette = _a.palette, onSubmit = _a.onSubmit, disableCalendarDates = _a.disableCalendarDates, toggleCalendar = _a.toggleCalendar, loadingData = _a.loadingData, setToggleCalendar = _a.setToggleCalendar, requestDates = _a.requestDates, showFeedback = _a.showFeedback, noActiveSelection = _a.noActiveSelection,
|
|
11982
|
+
var calendarOffset = _a.calendarOffset, language = _a.language, palette = _a.palette, onSubmit = _a.onSubmit, disableCalendarDates = _a.disableCalendarDates, toggleCalendar = _a.toggleCalendar, loadingData = _a.loadingData, setToggleCalendar = _a.setToggleCalendar, requestDates = _a.requestDates, showFeedback = _a.showFeedback, noActiveSelection = _a.noActiveSelection, outerRangeContext = _a.rangeContext;
|
|
11980
11983
|
var themePalette = useTheme({ palette: palette });
|
|
11981
11984
|
// Translations
|
|
11982
11985
|
useUpdateTranslations({ language: language });
|
|
@@ -11986,7 +11989,8 @@ function FilterCalendar(_a) {
|
|
|
11986
11989
|
setToggleCalendar: setToggleCalendar,
|
|
11987
11990
|
noActiveSelection: noActiveSelection,
|
|
11988
11991
|
toggleCalendar: toggleCalendar,
|
|
11989
|
-
|
|
11992
|
+
outerRangeContext: outerRangeContext,
|
|
11993
|
+
}), 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;
|
|
11990
11994
|
// Display component after fully loaded
|
|
11991
11995
|
useAwaitRender();
|
|
11992
11996
|
// Handle close filter section
|
|
@@ -12001,7 +12005,7 @@ function FilterCalendar(_a) {
|
|
|
12001
12005
|
React__default__default.createElement("h2", null, t('filterBar:calendar.title')),
|
|
12002
12006
|
React__default__default.createElement(CloseButton, { handleClose: function () { return setToggleCalendar(false); } })),
|
|
12003
12007
|
React__default__default.createElement("div", { className: "will-calendar-main" },
|
|
12004
|
-
React__default__default.createElement(Calendar, { calendarRange: calendarRange, setCalendarRange: setCalendarRange, calendarOffset: calendarOffset, selectedPath: '/rooms', language: language, disableCalendarDates: disableCalendarDates, requestDates: requestDates, disabledDates: disabledDates, setDisabledDates: setDisabledDates, updateCalendarMonthNavigation: updateCalendarMonthNavigation, setUpdateCalendarMonthNavigation: setUpdateCalendarMonthNavigation,
|
|
12008
|
+
React__default__default.createElement(Calendar, { calendarRange: calendarRange, setCalendarRange: setCalendarRange, calendarOffset: calendarOffset, selectedPath: '/rooms', language: language, disableCalendarDates: disableCalendarDates, requestDates: requestDates, disabledDates: disabledDates, setDisabledDates: setDisabledDates, updateCalendarMonthNavigation: updateCalendarMonthNavigation, setUpdateCalendarMonthNavigation: setUpdateCalendarMonthNavigation, updateCalendarDefaultMonth: updateCalendarDefaultMonth, loadingData: loadingData, showFeedback: showFeedback, noActiveSelection: noActiveSelection, palette: palette, setCalendarHasError: setCalendarHasError, setUpdatedForSubmit: setUpdatedForSubmit, rangeContext: rangeContext, calendarHasError: calendarHasError })),
|
|
12005
12009
|
React__default__default.createElement("div", { className: "will-calendar-footer" },
|
|
12006
12010
|
React__default__default.createElement("div", { className: "will-calendar-footer-actions-wrapper" },
|
|
12007
12011
|
React__default__default.createElement("div", { className: "will-calendar-footer-dates" },
|