@salt-ds/lab 1.0.0-alpha.55 → 1.0.0-alpha.57
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/CHANGELOG.md +167 -0
- package/css/salt-lab.css +44 -7
- package/dist-cjs/calendar/Calendar.js +12 -12
- package/dist-cjs/calendar/Calendar.js.map +1 -1
- package/dist-cjs/calendar/CalendarGrid.css.js +6 -0
- package/dist-cjs/calendar/CalendarGrid.css.js.map +1 -0
- package/dist-cjs/calendar/CalendarGrid.js +107 -0
- package/dist-cjs/calendar/CalendarGrid.js.map +1 -0
- package/dist-cjs/calendar/CalendarNavigation.js +219 -201
- package/dist-cjs/calendar/CalendarNavigation.js.map +1 -1
- package/dist-cjs/calendar/CalendarWeekHeader.js +10 -4
- package/dist-cjs/calendar/CalendarWeekHeader.js.map +1 -1
- package/dist-cjs/calendar/internal/CalendarContext.js +6 -2
- package/dist-cjs/calendar/internal/CalendarContext.js.map +1 -1
- package/dist-cjs/calendar/internal/CalendarDay.js +6 -9
- package/dist-cjs/calendar/internal/CalendarDay.js.map +1 -1
- package/dist-cjs/calendar/internal/CalendarMonth.css.js +1 -1
- package/dist-cjs/calendar/internal/CalendarMonth.js +47 -54
- package/dist-cjs/calendar/internal/CalendarMonth.js.map +1 -1
- package/dist-cjs/calendar/internal/useFocusManagement.js +18 -18
- package/dist-cjs/calendar/internal/useFocusManagement.js.map +1 -1
- package/dist-cjs/calendar/internal/utils.js +33 -48
- package/dist-cjs/calendar/internal/utils.js.map +1 -1
- package/dist-cjs/calendar/useCalendar.js +46 -38
- package/dist-cjs/calendar/useCalendar.js.map +1 -1
- package/dist-cjs/calendar/useCalendarDay.js +15 -21
- package/dist-cjs/calendar/useCalendarDay.js.map +1 -1
- package/dist-cjs/calendar/useCalendarSelection.js +44 -35
- package/dist-cjs/calendar/useCalendarSelection.js.map +1 -1
- package/dist-cjs/date-input/DateInput.css.js +1 -1
- package/dist-cjs/date-input/DateInputRange.js +102 -107
- package/dist-cjs/date-input/DateInputRange.js.map +1 -1
- package/dist-cjs/date-input/DateInputSingle.js +39 -51
- package/dist-cjs/date-input/DateInputSingle.js.map +1 -1
- package/dist-cjs/date-picker/DatePicker.js +15 -13
- package/dist-cjs/date-picker/DatePicker.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerActions.js +3 -8
- package/dist-cjs/date-picker/DatePickerActions.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerContext.js +6 -2
- package/dist-cjs/date-picker/DatePickerContext.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerOverlay.js +1 -0
- package/dist-cjs/date-picker/DatePickerOverlay.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerOverlayProvider.js +21 -8
- package/dist-cjs/date-picker/DatePickerOverlayProvider.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerRangeInput.js +77 -28
- package/dist-cjs/date-picker/DatePickerRangeInput.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerRangePanel.js +45 -40
- package/dist-cjs/date-picker/DatePickerRangePanel.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerSingleInput.js +123 -84
- package/dist-cjs/date-picker/DatePickerSingleInput.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerSinglePanel.js +17 -20
- package/dist-cjs/date-picker/DatePickerSinglePanel.js.map +1 -1
- package/dist-cjs/date-picker/DatePickerTrigger.js +32 -0
- package/dist-cjs/date-picker/DatePickerTrigger.js.map +1 -0
- package/dist-cjs/date-picker/useDatePicker.js +60 -110
- package/dist-cjs/date-picker/useDatePicker.js.map +1 -1
- package/dist-cjs/dropdown/DropdownButton.js.map +1 -1
- package/dist-cjs/index.js +19 -20
- package/dist-cjs/index.js.map +1 -1
- package/dist-cjs/localization-provider/LocalizationProvider.js +48 -0
- package/dist-cjs/localization-provider/LocalizationProvider.js.map +1 -0
- package/dist-cjs/overlay/OverlayHeader.css.js +6 -0
- package/dist-cjs/overlay/OverlayHeader.css.js.map +1 -0
- package/dist-cjs/overlay/OverlayHeader.js +35 -0
- package/dist-cjs/overlay/OverlayHeader.js.map +1 -0
- package/dist-cjs/system-status/SystemStatus.css.js +1 -1
- package/dist-cjs/tabs-next/TabListNext.css.js +1 -1
- package/dist-cjs/tabs-next/TabListNext.js +4 -0
- package/dist-cjs/tabs-next/TabListNext.js.map +1 -1
- package/dist-es/calendar/Calendar.js +12 -12
- package/dist-es/calendar/Calendar.js.map +1 -1
- package/dist-es/calendar/CalendarGrid.css.js +4 -0
- package/dist-es/calendar/CalendarGrid.css.js.map +1 -0
- package/dist-es/calendar/CalendarGrid.js +105 -0
- package/dist-es/calendar/CalendarGrid.js.map +1 -0
- package/dist-es/calendar/CalendarNavigation.js +220 -202
- package/dist-es/calendar/CalendarNavigation.js.map +1 -1
- package/dist-es/calendar/CalendarWeekHeader.js +11 -5
- package/dist-es/calendar/CalendarWeekHeader.js.map +1 -1
- package/dist-es/calendar/internal/CalendarContext.js +6 -2
- package/dist-es/calendar/internal/CalendarContext.js.map +1 -1
- package/dist-es/calendar/internal/CalendarDay.js +6 -9
- package/dist-es/calendar/internal/CalendarDay.js.map +1 -1
- package/dist-es/calendar/internal/CalendarMonth.css.js +1 -1
- package/dist-es/calendar/internal/CalendarMonth.js +48 -55
- package/dist-es/calendar/internal/CalendarMonth.js.map +1 -1
- package/dist-es/calendar/internal/useFocusManagement.js +15 -15
- package/dist-es/calendar/internal/useFocusManagement.js.map +1 -1
- package/dist-es/calendar/internal/utils.js +32 -45
- package/dist-es/calendar/internal/utils.js.map +1 -1
- package/dist-es/calendar/useCalendar.js +40 -32
- package/dist-es/calendar/useCalendar.js.map +1 -1
- package/dist-es/calendar/useCalendarDay.js +11 -17
- package/dist-es/calendar/useCalendarDay.js.map +1 -1
- package/dist-es/calendar/useCalendarSelection.js +40 -29
- package/dist-es/calendar/useCalendarSelection.js.map +1 -1
- package/dist-es/date-input/DateInput.css.js +1 -1
- package/dist-es/date-input/DateInputRange.js +101 -107
- package/dist-es/date-input/DateInputRange.js.map +1 -1
- package/dist-es/date-input/DateInputSingle.js +39 -51
- package/dist-es/date-input/DateInputSingle.js.map +1 -1
- package/dist-es/date-picker/DatePicker.js +15 -13
- package/dist-es/date-picker/DatePicker.js.map +1 -1
- package/dist-es/date-picker/DatePickerActions.js +3 -8
- package/dist-es/date-picker/DatePickerActions.js.map +1 -1
- package/dist-es/date-picker/DatePickerContext.js +6 -2
- package/dist-es/date-picker/DatePickerContext.js.map +1 -1
- package/dist-es/date-picker/DatePickerOverlay.js +1 -0
- package/dist-es/date-picker/DatePickerOverlay.js.map +1 -1
- package/dist-es/date-picker/DatePickerOverlayProvider.js +21 -8
- package/dist-es/date-picker/DatePickerOverlayProvider.js.map +1 -1
- package/dist-es/date-picker/DatePickerRangeInput.js +78 -30
- package/dist-es/date-picker/DatePickerRangeInput.js.map +1 -1
- package/dist-es/date-picker/DatePickerRangePanel.js +44 -39
- package/dist-es/date-picker/DatePickerRangePanel.js.map +1 -1
- package/dist-es/date-picker/DatePickerSingleInput.js +124 -85
- package/dist-es/date-picker/DatePickerSingleInput.js.map +1 -1
- package/dist-es/date-picker/DatePickerSinglePanel.js +17 -20
- package/dist-es/date-picker/DatePickerSinglePanel.js.map +1 -1
- package/dist-es/date-picker/DatePickerTrigger.js +30 -0
- package/dist-es/date-picker/DatePickerTrigger.js.map +1 -0
- package/dist-es/date-picker/useDatePicker.js +61 -111
- package/dist-es/date-picker/useDatePicker.js.map +1 -1
- package/dist-es/dropdown/DropdownButton.js.map +1 -1
- package/dist-es/index.js +8 -7
- package/dist-es/index.js.map +1 -1
- package/dist-es/localization-provider/LocalizationProvider.js +44 -0
- package/dist-es/localization-provider/LocalizationProvider.js.map +1 -0
- package/dist-es/overlay/OverlayHeader.css.js +4 -0
- package/dist-es/overlay/OverlayHeader.css.js.map +1 -0
- package/dist-es/overlay/OverlayHeader.js +33 -0
- package/dist-es/overlay/OverlayHeader.js.map +1 -0
- package/dist-es/system-status/SystemStatus.css.js +1 -1
- package/dist-es/tabs-next/TabListNext.css.js +1 -1
- package/dist-es/tabs-next/TabListNext.js +5 -1
- package/dist-es/tabs-next/TabListNext.js.map +1 -1
- package/dist-types/calendar/Calendar.d.ts +11 -6
- package/dist-types/calendar/CalendarGrid.d.ts +13 -0
- package/dist-types/calendar/CalendarNavigation.d.ts +9 -11
- package/dist-types/calendar/CalendarWeekHeader.d.ts +4 -3
- package/dist-types/calendar/index.d.ts +1 -2
- package/dist-types/calendar/internal/CalendarContext.d.ts +5 -6
- package/dist-types/calendar/internal/CalendarDay.d.ts +6 -8
- package/dist-types/calendar/internal/CalendarMonth.d.ts +5 -6
- package/dist-types/calendar/internal/useFocusManagement.d.ts +3 -4
- package/dist-types/calendar/internal/utils.d.ts +7 -11
- package/dist-types/calendar/useCalendar.d.ts +207 -55
- package/dist-types/calendar/useCalendarDay.d.ts +5 -7
- package/dist-types/calendar/useCalendarSelection.d.ts +92 -58
- package/dist-types/date-input/DateInputRange.d.ts +38 -56
- package/dist-types/date-input/DateInputSingle.d.ts +32 -49
- package/dist-types/date-input/index.d.ts +0 -1
- package/dist-types/date-picker/DatePicker.d.ts +23 -5
- package/dist-types/date-picker/DatePickerActions.d.ts +13 -12
- package/dist-types/date-picker/DatePickerContext.d.ts +42 -59
- package/dist-types/date-picker/DatePickerOverlayProvider.d.ts +10 -0
- package/dist-types/date-picker/DatePickerRangeInput.d.ts +13 -3
- package/dist-types/date-picker/DatePickerRangePanel.d.ts +17 -17
- package/dist-types/date-picker/DatePickerSingleInput.d.ts +12 -3
- package/dist-types/date-picker/DatePickerSinglePanel.d.ts +11 -11
- package/dist-types/date-picker/DatePickerTrigger.d.ts +9 -0
- package/dist-types/date-picker/index.d.ts +3 -2
- package/dist-types/date-picker/useDatePicker.d.ts +52 -59
- package/dist-types/index.d.ts +2 -0
- package/dist-types/localization-provider/LocalizationProvider.d.ts +62 -0
- package/dist-types/localization-provider/index.d.ts +1 -0
- package/dist-types/overlay/OverlayHeader.d.ts +20 -0
- package/dist-types/overlay/index.d.ts +1 -0
- package/package.json +11 -3
- package/dist-cjs/calendar/CalendarDateGrid.css.js +0 -6
- package/dist-cjs/calendar/CalendarDateGrid.css.js.map +0 -1
- package/dist-cjs/calendar/CalendarDateGrid.js +0 -105
- package/dist-cjs/calendar/CalendarDateGrid.js.map +0 -1
- package/dist-cjs/calendar/formatDate.js +0 -51
- package/dist-cjs/calendar/formatDate.js.map +0 -1
- package/dist-cjs/date-input/utils.js +0 -63
- package/dist-cjs/date-input/utils.js.map +0 -1
- package/dist-es/calendar/CalendarDateGrid.css.js +0 -4
- package/dist-es/calendar/CalendarDateGrid.css.js.map +0 -1
- package/dist-es/calendar/CalendarDateGrid.js +0 -103
- package/dist-es/calendar/CalendarDateGrid.js.map +0 -1
- package/dist-es/calendar/formatDate.js +0 -48
- package/dist-es/calendar/formatDate.js.map +0 -1
- package/dist-es/date-input/utils.js +0 -57
- package/dist-es/date-input/utils.js.map +0 -1
- package/dist-types/calendar/CalendarDateGrid.d.ts +0 -10
- package/dist-types/calendar/formatDate.d.ts +0 -14
- package/dist-types/date-input/utils.d.ts +0 -43
|
@@ -1,164 +1,198 @@
|
|
|
1
|
-
import
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import type { KeyboardEventHandler, MouseEventHandler, SyntheticEvent } from "react";
|
|
3
3
|
/**
|
|
4
4
|
* Type representing a single date selection.
|
|
5
5
|
*/
|
|
6
|
-
export declare type SingleDateSelection =
|
|
6
|
+
export declare type SingleDateSelection<TDate extends DateFrameworkType> = TDate;
|
|
7
7
|
/**
|
|
8
8
|
* Type representing multiple date selections.
|
|
9
9
|
*/
|
|
10
|
-
export declare type MultipleDateSelection =
|
|
10
|
+
export declare type MultipleDateSelection<TDate extends DateFrameworkType> = TDate[];
|
|
11
11
|
/**
|
|
12
12
|
* Type representing a date range selection.
|
|
13
13
|
*/
|
|
14
|
-
export declare type DateRangeSelection = {
|
|
14
|
+
export declare type DateRangeSelection<TDate extends DateFrameworkType> = {
|
|
15
15
|
/**
|
|
16
16
|
* The start date of the range.
|
|
17
17
|
*/
|
|
18
|
-
startDate?:
|
|
18
|
+
startDate?: TDate | null;
|
|
19
19
|
/**
|
|
20
20
|
* The end date of the range.
|
|
21
21
|
*/
|
|
22
|
-
endDate?:
|
|
22
|
+
endDate?: TDate | null;
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Type representing all possible selection value types.
|
|
26
26
|
*/
|
|
27
|
-
export declare type AllSelectionValueType = SingleDateSelection | MultipleDateSelection | DateRangeSelection | null;
|
|
28
|
-
/**
|
|
29
|
-
* The default minimum year used by the calendar.
|
|
30
|
-
*/
|
|
31
|
-
export declare const CALENDAR_MIN_YEAR = 1900;
|
|
32
|
-
/**
|
|
33
|
-
* The default maximum year used by the calendar.
|
|
34
|
-
*/
|
|
35
|
-
export declare const CALENDAR_MAX_YEAR = 2100;
|
|
27
|
+
export declare type AllSelectionValueType<TDate extends DateFrameworkType> = SingleDateSelection<TDate> | MultipleDateSelection<TDate> | DateRangeSelection<TDate> | null;
|
|
36
28
|
/**
|
|
37
29
|
* Checks if a value is a single date selection.
|
|
38
30
|
* @param value - The value to check.
|
|
39
31
|
* @returns `true` if the value is a single date selection, otherwise `false`.
|
|
40
32
|
*/
|
|
41
|
-
export declare function isSingleSelectionValueType(value: any): value is
|
|
33
|
+
export declare function isSingleSelectionValueType<TDate extends DateFrameworkType>(value: any): value is TDate;
|
|
42
34
|
/**
|
|
43
35
|
* Checks if a value is a date range selection.
|
|
44
36
|
* @param value - The value to check.
|
|
45
37
|
* @returns `true` if the value is a date range selection, otherwise `false`.
|
|
46
38
|
*/
|
|
47
|
-
export declare function isDateRangeSelection(value: any): value is DateRangeSelection
|
|
39
|
+
export declare function isDateRangeSelection<TDate extends DateFrameworkType>(value: any): value is DateRangeSelection<TDate>;
|
|
48
40
|
/**
|
|
49
41
|
* Checks if a value is a multiple date selection.
|
|
50
42
|
* @param value - The value to check.
|
|
51
43
|
* @returns `true` if the value is a multiple date selection, otherwise `false`.
|
|
52
44
|
*/
|
|
53
|
-
export declare function isMultipleDateSelection(value: any): value is MultipleDateSelection
|
|
45
|
+
export declare function isMultipleDateSelection<TDate extends DateFrameworkType>(value: any): value is MultipleDateSelection<TDate>;
|
|
54
46
|
/**
|
|
55
47
|
* Base properties for calendar UseCalendarSelection hook.
|
|
56
48
|
* @template SelectionVariantType - The type of the selection variant.
|
|
57
49
|
*/
|
|
58
|
-
interface UseCalendarSelectionBaseProps<
|
|
50
|
+
interface UseCalendarSelectionBaseProps<TDate extends DateFrameworkType> {
|
|
59
51
|
/**
|
|
60
52
|
* The currently hovered date.
|
|
61
53
|
*/
|
|
62
|
-
hoveredDate?:
|
|
63
|
-
/**
|
|
64
|
-
* The currently selected date.
|
|
65
|
-
*/
|
|
66
|
-
selectedDate?: SelectionVariantType | null;
|
|
67
|
-
/**
|
|
68
|
-
* The default selected date.
|
|
69
|
-
*/
|
|
70
|
-
defaultSelectedDate?: SelectionVariantType;
|
|
71
|
-
/**
|
|
72
|
-
* Callback fired when the selected date changes.
|
|
73
|
-
* @param event - The synthetic event.
|
|
74
|
-
* @param selectedDate - The new selected date.
|
|
75
|
-
*/
|
|
76
|
-
onSelectedDateChange?: (event: SyntheticEvent, selectedDate: SelectionVariantType | null) => void;
|
|
54
|
+
hoveredDate?: TDate | null;
|
|
77
55
|
/**
|
|
78
56
|
* Function to determine if a day is selectable.
|
|
79
57
|
* @param date - The date to check.
|
|
80
58
|
* @returns `true` if the day is selectable, otherwise `false`.
|
|
81
59
|
*/
|
|
82
|
-
isDaySelectable?: (date:
|
|
60
|
+
isDaySelectable?: (date: TDate) => boolean;
|
|
83
61
|
/**
|
|
84
62
|
* Callback fired when the hovered date changes.
|
|
85
63
|
* @param event - The synthetic event.
|
|
86
64
|
* @param hoveredDate - The new hovered date.
|
|
87
65
|
*/
|
|
88
|
-
onHoveredDateChange?: (event: SyntheticEvent, hoveredDate:
|
|
66
|
+
onHoveredDateChange?: (event: SyntheticEvent, hoveredDate: TDate | null) => void;
|
|
89
67
|
}
|
|
90
68
|
/**
|
|
91
69
|
* UseCalendar hook props to return a calendar day's status
|
|
92
70
|
*/
|
|
93
|
-
export interface UseCalendarSelectionOffsetProps extends Omit<UseCalendarSelectionBaseProps<
|
|
71
|
+
export interface UseCalendarSelectionOffsetProps<TDate extends DateFrameworkType> extends Omit<UseCalendarSelectionBaseProps<TDate>, "startDateOffset" | "endDateOffset"> {
|
|
94
72
|
/**
|
|
95
73
|
* The selection variant, set to "offset".
|
|
96
74
|
*/
|
|
97
75
|
selectionVariant: "offset";
|
|
76
|
+
/**
|
|
77
|
+
* The currently selected date.
|
|
78
|
+
*/
|
|
79
|
+
selectedDate?: DateRangeSelection<TDate>;
|
|
80
|
+
/**
|
|
81
|
+
* The default selected date.
|
|
82
|
+
*/
|
|
83
|
+
defaultSelectedDate?: DateRangeSelection<TDate>;
|
|
84
|
+
/**
|
|
85
|
+
* Callback fired when the selected date changes.
|
|
86
|
+
* @param event - The synthetic event.
|
|
87
|
+
* @param selectedDate - The new selected date.
|
|
88
|
+
*/
|
|
89
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate: DateRangeSelection<TDate>) => void;
|
|
98
90
|
/**
|
|
99
91
|
* Function to calculate the start date offset.
|
|
100
92
|
* @param date - The date to offset.
|
|
101
93
|
* @returns The offset start date.
|
|
102
94
|
*/
|
|
103
|
-
startDateOffset?: (date:
|
|
95
|
+
startDateOffset?: (date: TDate) => TDate;
|
|
104
96
|
/**
|
|
105
97
|
* Function to calculate the end date offset.
|
|
106
98
|
* @param date - The date to offset.
|
|
107
99
|
* @returns The offset end date.
|
|
108
100
|
*/
|
|
109
|
-
endDateOffset?: (date:
|
|
101
|
+
endDateOffset?: (date: TDate) => TDate;
|
|
110
102
|
}
|
|
111
103
|
/**
|
|
112
104
|
* Properties for the range date selection hook.
|
|
113
105
|
*/
|
|
114
|
-
export interface UseCalendarSelectionRangeProps extends UseCalendarSelectionBaseProps<
|
|
106
|
+
export interface UseCalendarSelectionRangeProps<TDate extends DateFrameworkType> extends UseCalendarSelectionBaseProps<TDate> {
|
|
115
107
|
/**
|
|
116
108
|
* The selection variant, set to "range".
|
|
117
109
|
*/
|
|
118
110
|
selectionVariant: "range";
|
|
111
|
+
/**
|
|
112
|
+
* The currently selected date.
|
|
113
|
+
*/
|
|
114
|
+
selectedDate?: DateRangeSelection<TDate>;
|
|
115
|
+
/**
|
|
116
|
+
* The default selected date.
|
|
117
|
+
*/
|
|
118
|
+
defaultSelectedDate?: DateRangeSelection<TDate>;
|
|
119
|
+
/**
|
|
120
|
+
* Callback fired when the selected date changes.
|
|
121
|
+
* @param event - The synthetic event.
|
|
122
|
+
* @param selectedDate - The new selected date.
|
|
123
|
+
*/
|
|
124
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate: DateRangeSelection<TDate>) => void;
|
|
119
125
|
}
|
|
120
126
|
/**
|
|
121
127
|
* Properties for the multi-select date selection hook.
|
|
122
128
|
*/
|
|
123
|
-
export interface UseCalendarSelectionMultiSelectProps extends UseCalendarSelectionBaseProps<
|
|
129
|
+
export interface UseCalendarSelectionMultiSelectProps<TDate extends DateFrameworkType> extends UseCalendarSelectionBaseProps<TDate> {
|
|
124
130
|
/**
|
|
125
131
|
* The selection variant, set to "multiselect".
|
|
126
132
|
*/
|
|
127
133
|
selectionVariant: "multiselect";
|
|
134
|
+
/**
|
|
135
|
+
* The currently selected date.
|
|
136
|
+
*/
|
|
137
|
+
selectedDate?: MultipleDateSelection<TDate>;
|
|
138
|
+
/**
|
|
139
|
+
* The default selected date.
|
|
140
|
+
*/
|
|
141
|
+
defaultSelectedDate?: MultipleDateSelection<TDate>;
|
|
142
|
+
/**
|
|
143
|
+
* Callback fired when the selected date changes.
|
|
144
|
+
* @param event - The synthetic event.
|
|
145
|
+
* @param selectedDate - The new selected date.
|
|
146
|
+
*/
|
|
147
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate: MultipleDateSelection<TDate>) => void;
|
|
128
148
|
}
|
|
129
149
|
/**
|
|
130
150
|
* Properties for the single date selection hook.
|
|
131
151
|
*/
|
|
132
|
-
export interface UseCalendarSelectionSingleProps extends UseCalendarSelectionBaseProps<
|
|
152
|
+
export interface UseCalendarSelectionSingleProps<TDate extends DateFrameworkType> extends UseCalendarSelectionBaseProps<TDate> {
|
|
133
153
|
/**
|
|
134
154
|
* The selection variant, set to "single".
|
|
135
155
|
*/
|
|
136
156
|
selectionVariant: "single";
|
|
157
|
+
/**
|
|
158
|
+
* The currently selected date.
|
|
159
|
+
*/
|
|
160
|
+
selectedDate?: SingleDateSelection<TDate> | null;
|
|
161
|
+
/**
|
|
162
|
+
* The default selected date.
|
|
163
|
+
*/
|
|
164
|
+
defaultSelectedDate?: SingleDateSelection<TDate> | null;
|
|
165
|
+
/**
|
|
166
|
+
* Callback fired when the selected date changes.
|
|
167
|
+
* @param event - The synthetic event.
|
|
168
|
+
* @param selectedDate - The new selected date.
|
|
169
|
+
*/
|
|
170
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate: SingleDateSelection<TDate> | null) => void;
|
|
137
171
|
}
|
|
138
172
|
/**
|
|
139
173
|
* UseCalendarSelection hook props, wth the selection variant determining the return type of the date selection
|
|
140
174
|
*/
|
|
141
|
-
export declare type UseCalendarSelectionProps = UseCalendarSelectionSingleProps | UseCalendarSelectionMultiSelectProps | UseCalendarSelectionRangeProps | UseCalendarSelectionOffsetProps
|
|
142
|
-
export declare function useCalendarSelection(props: UseCalendarSelectionProps): {
|
|
175
|
+
export declare type UseCalendarSelectionProps<TDate extends DateFrameworkType> = UseCalendarSelectionSingleProps<TDate> | UseCalendarSelectionMultiSelectProps<TDate> | UseCalendarSelectionRangeProps<TDate> | UseCalendarSelectionOffsetProps<TDate>;
|
|
176
|
+
export declare function useCalendarSelection<TDate extends DateFrameworkType>(props: UseCalendarSelectionProps<TDate>): {
|
|
143
177
|
state: {
|
|
144
|
-
selectedDate:
|
|
145
|
-
hoveredDate:
|
|
178
|
+
selectedDate: TDate | MultipleDateSelection<TDate> | DateRangeSelection<TDate> | null | undefined;
|
|
179
|
+
hoveredDate: TDate | null | undefined;
|
|
146
180
|
};
|
|
147
181
|
helpers: {
|
|
148
|
-
setSelectedDate: (event: SyntheticEvent<HTMLButtonElement>, newSelectedDate:
|
|
149
|
-
isSelected: (date:
|
|
150
|
-
setHoveredDate: (event: SyntheticEvent, date:
|
|
151
|
-
isHovered: (date:
|
|
152
|
-
isSelectedSpan: (date:
|
|
153
|
-
isHoveredSpan: (date:
|
|
154
|
-
isSelectedStart: (date:
|
|
155
|
-
isSelectedEnd: (date:
|
|
156
|
-
isHoveredOffset: (date:
|
|
157
|
-
isDaySelectable: ((date:
|
|
182
|
+
setSelectedDate: (event: SyntheticEvent<HTMLButtonElement>, newSelectedDate: TDate) => void;
|
|
183
|
+
isSelected: (date: TDate) => boolean;
|
|
184
|
+
setHoveredDate: (event: SyntheticEvent, date: TDate | null) => void;
|
|
185
|
+
isHovered: (date: TDate) => boolean;
|
|
186
|
+
isSelectedSpan: (date: TDate) => boolean;
|
|
187
|
+
isHoveredSpan: (date: TDate) => boolean;
|
|
188
|
+
isSelectedStart: (date: TDate) => boolean;
|
|
189
|
+
isSelectedEnd: (date: TDate) => boolean;
|
|
190
|
+
isHoveredOffset: (date: TDate) => boolean;
|
|
191
|
+
isDaySelectable: ((date: TDate) => boolean) | undefined;
|
|
158
192
|
};
|
|
159
193
|
};
|
|
160
|
-
export declare function useCalendarSelectionDay({ date }: {
|
|
161
|
-
date:
|
|
194
|
+
export declare function useCalendarSelectionDay<TDate extends DateFrameworkType>({ date, }: {
|
|
195
|
+
date: TDate;
|
|
162
196
|
}): {
|
|
163
197
|
handleClick: MouseEventHandler<HTMLButtonElement>;
|
|
164
198
|
handleKeyDown: KeyboardEventHandler<HTMLButtonElement>;
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
import { type DateValue } from "@internationalized/date";
|
|
2
1
|
import { type InputProps } from "@salt-ds/core";
|
|
2
|
+
import type { DateDetail, DateFrameworkType, ParserResult } from "@salt-ds/date-adapters";
|
|
3
3
|
import { type ChangeEvent, type ComponentPropsWithoutRef, type InputHTMLAttributes, type ReactNode, type Ref, type SyntheticEvent } from "react";
|
|
4
|
-
import {
|
|
5
|
-
import type { DateInputSingleParserError } from "./DateInputSingle";
|
|
6
|
-
/**
|
|
7
|
-
* Date error produced by DateInputRange parser.
|
|
8
|
-
*/
|
|
9
|
-
export declare type DateInputRangeParserError = string | false;
|
|
4
|
+
import type { DateRangeSelection } from "../calendar";
|
|
10
5
|
/**
|
|
11
6
|
* DateInputRange raw value or null if no date is defined.
|
|
12
7
|
*/
|
|
@@ -15,37 +10,26 @@ export declare type DateInputRangeValue = {
|
|
|
15
10
|
endDate?: string | null;
|
|
16
11
|
};
|
|
17
12
|
/**
|
|
18
|
-
*
|
|
19
|
-
* @template T
|
|
13
|
+
* Details of parsing the date range
|
|
20
14
|
*/
|
|
21
|
-
export
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
* The error encountered during parsing, if any.
|
|
28
|
-
*/
|
|
29
|
-
error: DateInputRangeParserError;
|
|
30
|
-
}
|
|
15
|
+
export declare type DateInputRangeDetails = {
|
|
16
|
+
/** Details of parsing the start date and applying any validation */
|
|
17
|
+
startDate?: DateDetail;
|
|
18
|
+
/** Details of parsing the end date and applying any validation */
|
|
19
|
+
endDate?: DateDetail;
|
|
20
|
+
};
|
|
31
21
|
/**
|
|
32
|
-
*
|
|
22
|
+
* Enum to identify the field being parsed
|
|
33
23
|
*/
|
|
34
|
-
export declare
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
startDate: DateInputSingleParserError;
|
|
39
|
-
/**
|
|
40
|
-
* The error for the end date.
|
|
41
|
-
*/
|
|
42
|
-
endDate: DateInputSingleParserError;
|
|
43
|
-
};
|
|
24
|
+
export declare enum DateParserField {
|
|
25
|
+
START = "start",
|
|
26
|
+
END = "end"
|
|
27
|
+
}
|
|
44
28
|
/**
|
|
45
29
|
* Props for the DateInputRange component.
|
|
46
30
|
* @template T
|
|
47
31
|
*/
|
|
48
|
-
export interface DateInputRangeProps<
|
|
32
|
+
export interface DateInputRangeProps<TDate extends DateFrameworkType> extends Omit<ComponentPropsWithoutRef<"div">, "defaultValue" | "onChange">, Omit<InputProps, "defaultValue" | "inputRef" | "value" | "onChange"> {
|
|
49
33
|
/**
|
|
50
34
|
* The aria-label for accessibility.
|
|
51
35
|
*/
|
|
@@ -86,9 +70,9 @@ export interface DateInputRangeProps<T = DateRangeSelection> extends Omit<Compon
|
|
|
86
70
|
*/
|
|
87
71
|
variant?: "primary" | "secondary";
|
|
88
72
|
/**
|
|
89
|
-
*
|
|
73
|
+
* Format string for date.
|
|
90
74
|
*/
|
|
91
|
-
format?:
|
|
75
|
+
format?: string;
|
|
92
76
|
/**
|
|
93
77
|
* Optional ref for the start input component.
|
|
94
78
|
*/
|
|
@@ -97,6 +81,18 @@ export interface DateInputRangeProps<T = DateRangeSelection> extends Omit<Compon
|
|
|
97
81
|
* Optional ref for the end input component.
|
|
98
82
|
*/
|
|
99
83
|
endInputRef?: Ref<HTMLInputElement>;
|
|
84
|
+
/**
|
|
85
|
+
* Locale for date formatting and parsing
|
|
86
|
+
*/
|
|
87
|
+
locale?: any;
|
|
88
|
+
/**
|
|
89
|
+
* Parser callback, if not using the adapter's parser
|
|
90
|
+
* @param value - date string to parse
|
|
91
|
+
* @param field: DateParserField to identify value,
|
|
92
|
+
* @param format - format required
|
|
93
|
+
* @param locale - locale required
|
|
94
|
+
*/
|
|
95
|
+
parse?: (value: string, field: DateParserField, format: string, locale?: any) => ParserResult<TDate>;
|
|
100
96
|
/**
|
|
101
97
|
* Input value. Use when the input value is controlled.
|
|
102
98
|
*/
|
|
@@ -108,43 +104,29 @@ export interface DateInputRangeProps<T = DateRangeSelection> extends Omit<Compon
|
|
|
108
104
|
/**
|
|
109
105
|
* The date value. Use when the component is controlled.
|
|
110
106
|
*/
|
|
111
|
-
date?:
|
|
107
|
+
date?: DateRangeSelection<TDate> | null;
|
|
112
108
|
/**
|
|
113
109
|
* The initial selected date value. Use when the component is uncontrolled.
|
|
114
110
|
*/
|
|
115
|
-
defaultDate?:
|
|
111
|
+
defaultDate?: DateRangeSelection<TDate> | null;
|
|
116
112
|
/**
|
|
117
113
|
* Callback fired when the input value changes.
|
|
118
114
|
* @param event - The change event.
|
|
119
115
|
* @param date - The new date input range value.
|
|
120
116
|
*/
|
|
121
|
-
onChange?: (event: ChangeEvent<HTMLInputElement
|
|
117
|
+
onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
122
118
|
/**
|
|
123
119
|
* Callback fired when the selected date changes.
|
|
124
120
|
* @param event - The synthetic event.
|
|
125
|
-
* @param date -
|
|
126
|
-
* @param
|
|
121
|
+
* @param date - the selected date, invalid date if not a valid date or undefined (uncontrolled) or null (controlled) if not defined
|
|
122
|
+
* @param details - The details of date selection, either a valid date or error
|
|
127
123
|
*/
|
|
128
|
-
onDateChange?: (event: SyntheticEvent, date:
|
|
124
|
+
onDateChange?: (event: SyntheticEvent, date: DateRangeSelection<TDate> | null, details: DateInputRangeDetails) => void;
|
|
129
125
|
/**
|
|
130
126
|
* Called when input values change, either due to user interaction or programmatic formatting of valid dates.
|
|
127
|
+
* @param event - The synthetic event or null if a programmatic change.
|
|
131
128
|
* @param newValue - The new date input range value.
|
|
132
|
-
* @param isFormatted - Whether the value is formatted.
|
|
133
|
-
*/
|
|
134
|
-
onDateValueChange?: (newValue: DateInputRangeValue, isFormatted: boolean) => void;
|
|
135
|
-
/**
|
|
136
|
-
* Function to parse date string to valid `DateValue` or null, if invalid.
|
|
137
|
-
* @param inputDate - The input date string.
|
|
138
|
-
* @returns The result of the date input range parser.
|
|
139
|
-
*/
|
|
140
|
-
parse?: (inputDate: string) => DateInputRangeParserResult;
|
|
141
|
-
/**
|
|
142
|
-
* Locale of the entered date.
|
|
143
|
-
*/
|
|
144
|
-
locale?: string;
|
|
145
|
-
/**
|
|
146
|
-
* Timezone of the entered date.
|
|
147
129
|
*/
|
|
148
|
-
|
|
130
|
+
onDateValueChange?: (event: SyntheticEvent | null, newValue: DateInputRangeValue) => void;
|
|
149
131
|
}
|
|
150
|
-
export declare const DateInputRange: import("react").ForwardRefExoticComponent<DateInputRangeProps<
|
|
132
|
+
export declare const DateInputRange: import("react").ForwardRefExoticComponent<DateInputRangeProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,33 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type ComponentPropsWithoutRef, type InputHTMLAttributes, type ReactNode, type
|
|
3
|
-
import {
|
|
1
|
+
import type { DateDetail, DateFrameworkType, ParserResult } from "@salt-ds/date-adapters";
|
|
2
|
+
import { type ComponentPropsWithoutRef, type InputHTMLAttributes, type ReactNode, type Ref, type SyntheticEvent } from "react";
|
|
3
|
+
import type { SingleDateSelection } from "../calendar";
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Details of parsing the date
|
|
6
6
|
*/
|
|
7
|
-
export declare type
|
|
8
|
-
/**
|
|
9
|
-
* Date error produced by DateInputSingle parser.
|
|
10
|
-
*/
|
|
11
|
-
export declare type DateInputSingleError = DateInputSingleParserError;
|
|
12
|
-
/**
|
|
13
|
-
* Return value of DateInputSingle parser.
|
|
14
|
-
* @template T
|
|
15
|
-
*/
|
|
16
|
-
export interface DateInputSingleParserResult<T = DateValue | null> {
|
|
17
|
-
/**
|
|
18
|
-
* The parsed date value.
|
|
19
|
-
*/
|
|
20
|
-
date: T;
|
|
21
|
-
/**
|
|
22
|
-
* The error encountered during parsing, if any.
|
|
23
|
-
*/
|
|
24
|
-
error: DateInputSingleParserError;
|
|
25
|
-
}
|
|
7
|
+
export declare type DateInputSingleDetails = DateDetail;
|
|
26
8
|
/**
|
|
27
9
|
* Props for the DateInputSingle component.
|
|
28
10
|
* @template T
|
|
29
11
|
*/
|
|
30
|
-
export interface DateInputSingleProps<
|
|
12
|
+
export interface DateInputSingleProps<TDate extends DateFrameworkType> extends Omit<ComponentPropsWithoutRef<"div">, "defaultValue">, Pick<ComponentPropsWithoutRef<"input">, "disabled" | "value" | "defaultValue" | "placeholder"> {
|
|
31
13
|
/**
|
|
32
14
|
* The aria-label for accessibility.
|
|
33
15
|
*/
|
|
@@ -54,6 +36,10 @@ export interface DateInputSingleProps<T = SingleDateSelection> extends Omit<Comp
|
|
|
54
36
|
* If `true`, the component is read-only.
|
|
55
37
|
*/
|
|
56
38
|
readOnly?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Start adornment component
|
|
41
|
+
*/
|
|
42
|
+
startAdornment?: ReactNode;
|
|
57
43
|
/**
|
|
58
44
|
* Validation status.
|
|
59
45
|
*/
|
|
@@ -63,13 +49,24 @@ export interface DateInputSingleProps<T = SingleDateSelection> extends Omit<Comp
|
|
|
63
49
|
*/
|
|
64
50
|
variant?: "primary" | "secondary";
|
|
65
51
|
/**
|
|
66
|
-
*
|
|
52
|
+
* Format string for date.
|
|
67
53
|
*/
|
|
68
|
-
format?:
|
|
54
|
+
format?: string;
|
|
69
55
|
/**
|
|
70
56
|
* Reference for the input.
|
|
71
57
|
*/
|
|
72
|
-
inputRef?:
|
|
58
|
+
inputRef?: Ref<HTMLInputElement>;
|
|
59
|
+
/**
|
|
60
|
+
* Locale for date formatting and parsing
|
|
61
|
+
*/
|
|
62
|
+
locale?: any;
|
|
63
|
+
/**
|
|
64
|
+
* Parser callback, if not using the adapter's parser
|
|
65
|
+
* @param value - date string to parse
|
|
66
|
+
* @param format - format required
|
|
67
|
+
* @param locale - locale required
|
|
68
|
+
*/
|
|
69
|
+
parse?: (value: string, format: string, locale?: any) => ParserResult<TDate>;
|
|
73
70
|
/**
|
|
74
71
|
* Input value. Use when the input value is controlled.
|
|
75
72
|
*/
|
|
@@ -81,37 +78,23 @@ export interface DateInputSingleProps<T = SingleDateSelection> extends Omit<Comp
|
|
|
81
78
|
/**
|
|
82
79
|
* The date value. Use when the component is controlled.
|
|
83
80
|
*/
|
|
84
|
-
date?:
|
|
81
|
+
date?: TDate | null;
|
|
85
82
|
/**
|
|
86
83
|
* The initial selected date value. Use when the component is uncontrolled.
|
|
87
84
|
*/
|
|
88
|
-
defaultDate?:
|
|
85
|
+
defaultDate?: TDate | null;
|
|
89
86
|
/**
|
|
90
87
|
* Callback fired when the selected date changes.
|
|
91
88
|
* @param event - The synthetic event.
|
|
92
|
-
* @param date -
|
|
93
|
-
* @param
|
|
89
|
+
* @param date - the selected date, invalid date if not a valid date or undefined (uncontrolled) or null (controlled) if not defined
|
|
90
|
+
* @param details - The details of date selection, either a valid date or error
|
|
94
91
|
*/
|
|
95
|
-
onDateChange?: (event: SyntheticEvent, date:
|
|
96
|
-
/**
|
|
97
|
-
* Function to parse date string to valid `DateValue` or null, if invalid or empty.
|
|
98
|
-
* @param inputDate - The input date string.
|
|
99
|
-
* @returns The result of the date input single parser.
|
|
100
|
-
*/
|
|
101
|
-
parse?: (inputDate: string) => DateInputSingleParserResult;
|
|
92
|
+
onDateChange?: (event: SyntheticEvent, date: SingleDateSelection<TDate> | null | undefined, details: DateInputSingleDetails) => void;
|
|
102
93
|
/**
|
|
103
94
|
* Called when input value changes, either due to user interaction or programmatic formatting of valid dates.
|
|
95
|
+
* @param event - The synthetic event or null if a programmatic change.
|
|
104
96
|
* @param newValue - The new date input value.
|
|
105
|
-
* @param isFormatted - Whether the value is formatted.
|
|
106
|
-
*/
|
|
107
|
-
onDateValueChange?: (newValue: string, isFormatted: boolean) => void;
|
|
108
|
-
/**
|
|
109
|
-
* Locale of the entered date.
|
|
110
|
-
*/
|
|
111
|
-
locale?: string;
|
|
112
|
-
/**
|
|
113
|
-
* Timezone of the entered date.
|
|
114
97
|
*/
|
|
115
|
-
|
|
98
|
+
onDateValueChange?: (event: SyntheticEvent | null, newValue: string) => void;
|
|
116
99
|
}
|
|
117
|
-
export declare const DateInputSingle: import("react").ForwardRefExoticComponent<DateInputSingleProps<
|
|
100
|
+
export declare const DateInputSingle: import("react").ForwardRefExoticComponent<DateInputSingleProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
1
2
|
import { type ReactNode } from "react";
|
|
2
3
|
import { type UseDatePickerRangeProps, type UseDatePickerSingleProps } from "./useDatePicker";
|
|
3
4
|
/**
|
|
@@ -8,17 +9,34 @@ export interface DatePickerBaseProps {
|
|
|
8
9
|
children?: ReactNode;
|
|
9
10
|
/** the open/close state of the overlay. The open/close state will be controlled when this prop is provided. */
|
|
10
11
|
open?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Handler for when open state changes
|
|
14
|
+
* @param newOpen - true when opened
|
|
15
|
+
*/
|
|
16
|
+
onOpen?: (newOpen: boolean) => void;
|
|
11
17
|
/**
|
|
12
18
|
* the initial open/close state of the overlay, when the open/close state is un-controlled.
|
|
13
19
|
*/
|
|
14
20
|
defaultOpen?: DatePickerBaseProps["open"];
|
|
15
21
|
}
|
|
16
|
-
|
|
22
|
+
/**
|
|
23
|
+
* Props for the DatePicker component, when `selectionVariant` is `single`.
|
|
24
|
+
* @template T
|
|
25
|
+
*/
|
|
26
|
+
export interface DatePickerSingleProps<TDate extends DateFrameworkType> extends DatePickerBaseProps, UseDatePickerSingleProps<TDate> {
|
|
17
27
|
selectionVariant: "single";
|
|
18
28
|
}
|
|
19
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Props for the DatePicker component, when `selectionVariant` is `range`.
|
|
31
|
+
* @template T
|
|
32
|
+
*/
|
|
33
|
+
export interface DatePickerRangeProps<TDate extends DateFrameworkType> extends DatePickerBaseProps, UseDatePickerRangeProps<TDate> {
|
|
20
34
|
selectionVariant: "range";
|
|
21
35
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Props for the DatePicker component.
|
|
38
|
+
* @template T
|
|
39
|
+
*/
|
|
40
|
+
export declare type DatePickerProps<TDate extends DateFrameworkType> = DatePickerSingleProps<TDate> | DatePickerRangeProps<TDate>;
|
|
41
|
+
export declare const DatePickerMain: import("react").ForwardRefExoticComponent<DatePickerProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
42
|
+
export declare const DatePicker: import("react").ForwardRefExoticComponent<DatePickerProps<Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -2,8 +2,9 @@ import { type ButtonProps } from "@salt-ds/core";
|
|
|
2
2
|
import { type ComponentPropsWithoutRef, type Ref, type SyntheticEvent } from "react";
|
|
3
3
|
import type { DateRangeSelection, SingleDateSelection } from "../calendar";
|
|
4
4
|
import "./DatePickerActions.css";
|
|
5
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
5
6
|
/**
|
|
6
|
-
* Base props for DatePicker actions.
|
|
7
|
+
* Base props for DatePicker actions component.
|
|
7
8
|
*/
|
|
8
9
|
export interface DatePickerActionsBaseProps extends ComponentPropsWithoutRef<"div"> {
|
|
9
10
|
/**
|
|
@@ -32,7 +33,7 @@ export interface DatePickerActionsBaseProps extends ComponentPropsWithoutRef<"di
|
|
|
32
33
|
* Props for the DatePicker actions component.
|
|
33
34
|
* @template SelectionVariant - The selection variant, either "single" or "range".
|
|
34
35
|
*/
|
|
35
|
-
export declare type DatePickerActionsProps<SelectionVariant extends "single" | "range"> = SelectionVariant extends "single" ? DatePickerActionsBaseProps & {
|
|
36
|
+
export declare type DatePickerActionsProps<TDate extends DateFrameworkType, SelectionVariant extends "single" | "range"> = SelectionVariant extends "single" ? DatePickerActionsBaseProps & {
|
|
36
37
|
/**
|
|
37
38
|
* The selection variant, set to "single".
|
|
38
39
|
*/
|
|
@@ -42,7 +43,7 @@ export declare type DatePickerActionsProps<SelectionVariant extends "single" | "
|
|
|
42
43
|
* @param _event - The synthetic event.
|
|
43
44
|
* @param date - The selected single date or null.
|
|
44
45
|
*/
|
|
45
|
-
onApply?: (_event: SyntheticEvent, date: SingleDateSelection | null) => void;
|
|
46
|
+
onApply?: (_event: SyntheticEvent, date: SingleDateSelection<TDate> | null) => void;
|
|
46
47
|
} : DatePickerActionsBaseProps & {
|
|
47
48
|
/**
|
|
48
49
|
* The selection variant, set to "range".
|
|
@@ -53,28 +54,28 @@ export declare type DatePickerActionsProps<SelectionVariant extends "single" | "
|
|
|
53
54
|
* @param _event - The synthetic event.
|
|
54
55
|
* @param date - The selected date range or null.
|
|
55
56
|
*/
|
|
56
|
-
onApply?: (_event: SyntheticEvent, date: DateRangeSelection | null) => void;
|
|
57
|
+
onApply?: (_event: SyntheticEvent, date: DateRangeSelection<TDate> | null) => void;
|
|
57
58
|
};
|
|
58
59
|
export declare const DatePickerActions: import("react").ForwardRefExoticComponent<((DatePickerActionsBaseProps & {
|
|
59
60
|
/**
|
|
60
|
-
* The selection variant, set to "
|
|
61
|
+
* The selection variant, set to "range".
|
|
61
62
|
*/
|
|
62
|
-
selectionVariant: "
|
|
63
|
+
selectionVariant: "range";
|
|
63
64
|
/**
|
|
64
65
|
* Callback fired when the apply action is triggered.
|
|
65
66
|
* @param _event - The synthetic event.
|
|
66
|
-
* @param date - The selected
|
|
67
|
+
* @param date - The selected date range or null.
|
|
67
68
|
*/
|
|
68
|
-
onApply?: ((_event: SyntheticEvent, date:
|
|
69
|
+
onApply?: ((_event: SyntheticEvent, date: DateRangeSelection<Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment> | null) => void) | undefined;
|
|
69
70
|
}) | (DatePickerActionsBaseProps & {
|
|
70
71
|
/**
|
|
71
|
-
* The selection variant, set to "
|
|
72
|
+
* The selection variant, set to "single".
|
|
72
73
|
*/
|
|
73
|
-
selectionVariant: "
|
|
74
|
+
selectionVariant: "single";
|
|
74
75
|
/**
|
|
75
76
|
* Callback fired when the apply action is triggered.
|
|
76
77
|
* @param _event - The synthetic event.
|
|
77
|
-
* @param date - The selected date
|
|
78
|
+
* @param date - The selected single date or null.
|
|
78
79
|
*/
|
|
79
|
-
onApply?: ((_event: SyntheticEvent, date:
|
|
80
|
+
onApply?: ((_event: SyntheticEvent, date: Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment | null) => void) | undefined;
|
|
80
81
|
})) & import("react").RefAttributes<HTMLDivElement>>;
|