@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,10 +1,11 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
|
+
import { type Context, type Ref, type SyntheticEvent } from "react";
|
|
2
3
|
import type { DateRangeSelection, SingleDateSelection } from "../calendar";
|
|
3
|
-
import type {
|
|
4
|
+
import type { DateInputRangeDetails, DateInputSingleDetails } from "../date-input";
|
|
4
5
|
/**
|
|
5
6
|
* Interface representing the base state for a DatePicker.
|
|
6
7
|
*/
|
|
7
|
-
interface DatePickerBaseState {
|
|
8
|
+
interface DatePickerBaseState<TDate extends DateFrameworkType> {
|
|
8
9
|
/**
|
|
9
10
|
* The state properties of the DatePicker.
|
|
10
11
|
*/
|
|
@@ -28,23 +29,15 @@ interface DatePickerBaseState {
|
|
|
28
29
|
/**
|
|
29
30
|
* The minimum selectable date.
|
|
30
31
|
*/
|
|
31
|
-
minDate?:
|
|
32
|
+
minDate?: TDate;
|
|
32
33
|
/**
|
|
33
34
|
* The maximum selectable date.
|
|
34
35
|
*/
|
|
35
|
-
maxDate?:
|
|
36
|
+
maxDate?: TDate;
|
|
36
37
|
/**
|
|
37
38
|
* Reference to the container element.
|
|
38
39
|
*/
|
|
39
|
-
containerRef:
|
|
40
|
-
/**
|
|
41
|
-
* The locale used for date formatting.
|
|
42
|
-
*/
|
|
43
|
-
locale?: string;
|
|
44
|
-
/**
|
|
45
|
-
* The time zone used for date formatting.
|
|
46
|
-
*/
|
|
47
|
-
timeZone?: string;
|
|
40
|
+
containerRef: Ref<HTMLDivElement>;
|
|
48
41
|
};
|
|
49
42
|
/**
|
|
50
43
|
* Helper functions for managing the DatePicker state.
|
|
@@ -61,99 +54,89 @@ interface DatePickerBaseState {
|
|
|
61
54
|
setEnableApply: (newEnableApply: boolean) => void;
|
|
62
55
|
};
|
|
63
56
|
}
|
|
64
|
-
/**
|
|
65
|
-
* Type representing a single date picker error.
|
|
66
|
-
*/
|
|
67
|
-
export declare type SingleDatePickerError = DateInputSingleError;
|
|
68
|
-
/**
|
|
69
|
-
* Type representing a range date picker error.
|
|
70
|
-
*/
|
|
71
|
-
export declare type RangeDatePickerError = DateInputRangeError;
|
|
72
57
|
/**
|
|
73
58
|
* Interface representing the state for a single date picker.
|
|
74
59
|
*/
|
|
75
|
-
export interface SingleDatePickerState extends DatePickerBaseState {
|
|
60
|
+
export interface SingleDatePickerState<TDate extends DateFrameworkType> extends DatePickerBaseState<TDate> {
|
|
76
61
|
/**
|
|
77
62
|
* The state properties of the single date picker.
|
|
78
63
|
*/
|
|
79
|
-
state: DatePickerBaseState["state"] & {
|
|
64
|
+
state: DatePickerBaseState<TDate>["state"] & {
|
|
80
65
|
/**
|
|
81
66
|
* The selected date.
|
|
82
67
|
*/
|
|
83
|
-
selectedDate: SingleDateSelection | null;
|
|
68
|
+
selectedDate: SingleDateSelection<TDate> | null;
|
|
84
69
|
/**
|
|
85
70
|
* The default selected date.
|
|
86
71
|
*/
|
|
87
|
-
defaultSelectedDate?: SingleDateSelection
|
|
72
|
+
defaultSelectedDate?: SingleDateSelection<TDate>;
|
|
88
73
|
};
|
|
89
74
|
/**
|
|
90
75
|
* Helper functions for managing the single date picker state.
|
|
91
76
|
*/
|
|
92
|
-
helpers: DatePickerBaseState["helpers"] & {
|
|
77
|
+
helpers: DatePickerBaseState<TDate>["helpers"] & {
|
|
93
78
|
/**
|
|
94
|
-
*
|
|
95
|
-
* @param
|
|
96
|
-
* @param
|
|
79
|
+
* Apply the selected single date.
|
|
80
|
+
* @param event - The synthetic event.
|
|
81
|
+
* @param date - The new applied date.
|
|
97
82
|
*/
|
|
98
|
-
apply: (
|
|
83
|
+
apply: (event: SyntheticEvent, date: SingleDateSelection<TDate> | null) => void;
|
|
99
84
|
/**
|
|
100
|
-
*
|
|
101
|
-
* @param
|
|
102
|
-
* @param
|
|
85
|
+
* Select a single date.
|
|
86
|
+
* @param event - The synthetic event.
|
|
87
|
+
* @param date - The selected date or null.
|
|
88
|
+
* @param details - Details of selection, such as errors and original value.
|
|
103
89
|
*/
|
|
104
|
-
|
|
90
|
+
select: (event: SyntheticEvent, date: SingleDateSelection<TDate> | null, details?: DateInputSingleDetails) => void;
|
|
105
91
|
};
|
|
106
92
|
}
|
|
107
93
|
/**
|
|
108
94
|
* Interface representing the state for a range date picker.
|
|
109
95
|
*/
|
|
110
|
-
export interface RangeDatePickerState extends DatePickerBaseState {
|
|
96
|
+
export interface RangeDatePickerState<TDate extends DateFrameworkType> extends DatePickerBaseState<TDate> {
|
|
111
97
|
/**
|
|
112
98
|
* The state properties of the range date picker.
|
|
113
99
|
*/
|
|
114
|
-
state: DatePickerBaseState["state"] & {
|
|
100
|
+
state: DatePickerBaseState<TDate>["state"] & {
|
|
115
101
|
/**
|
|
116
102
|
* The selected date range.
|
|
117
103
|
*/
|
|
118
|
-
selectedDate: DateRangeSelection | null;
|
|
104
|
+
selectedDate: DateRangeSelection<TDate> | null;
|
|
119
105
|
/**
|
|
120
106
|
* The default selected date range.
|
|
121
107
|
*/
|
|
122
|
-
defaultSelectedDate?: DateRangeSelection
|
|
108
|
+
defaultSelectedDate?: DateRangeSelection<TDate>;
|
|
123
109
|
};
|
|
124
110
|
/**
|
|
125
111
|
* Helper functions for managing the range date picker state.
|
|
126
112
|
*/
|
|
127
|
-
helpers: DatePickerBaseState["helpers"] & {
|
|
113
|
+
helpers: DatePickerBaseState<TDate>["helpers"] & {
|
|
128
114
|
/**
|
|
129
|
-
*
|
|
130
|
-
* @param
|
|
131
|
-
* @param
|
|
115
|
+
* Apply the selected date range.
|
|
116
|
+
* @param event - The synthetic event.
|
|
117
|
+
* @param date - The new applied date range
|
|
132
118
|
*/
|
|
133
|
-
apply: (
|
|
119
|
+
apply: (event: SyntheticEvent, date: DateRangeSelection<TDate> | null) => void;
|
|
134
120
|
/**
|
|
135
|
-
*
|
|
136
|
-
* @param
|
|
137
|
-
* @param
|
|
138
|
-
*/
|
|
139
|
-
|
|
140
|
-
startDate: string | false;
|
|
141
|
-
endDate: string | false;
|
|
142
|
-
}) => void;
|
|
121
|
+
* Select a date range.
|
|
122
|
+
* @param event - The synthetic event.
|
|
123
|
+
* @param date - The selected date.
|
|
124
|
+
* @param details - Details of selection, such as errors and original value. */
|
|
125
|
+
select: (event: SyntheticEvent, date: DateRangeSelection<TDate> | null, details?: DateInputRangeDetails) => void;
|
|
143
126
|
};
|
|
144
127
|
}
|
|
145
128
|
/**
|
|
146
129
|
* Type representing the state of a date picker, either single or range.
|
|
147
130
|
*/
|
|
148
|
-
export declare type DatePickerState = SingleDatePickerState | RangeDatePickerState
|
|
131
|
+
export declare type DatePickerState<TDate extends DateFrameworkType> = SingleDatePickerState<TDate> | RangeDatePickerState<TDate>;
|
|
149
132
|
/**
|
|
150
133
|
* Context for single date selection.
|
|
151
134
|
*/
|
|
152
|
-
export declare const SingleDateSelectionContext:
|
|
135
|
+
export declare const SingleDateSelectionContext: Context<SingleDatePickerState<any> | undefined>;
|
|
153
136
|
/**
|
|
154
137
|
* Context for date range selection.
|
|
155
138
|
*/
|
|
156
|
-
export declare const DateRangeSelectionContext:
|
|
139
|
+
export declare const DateRangeSelectionContext: Context<RangeDatePickerState<any> | undefined>;
|
|
157
140
|
/**
|
|
158
141
|
* Props for using the date picker context.
|
|
159
142
|
*/
|
|
@@ -168,15 +151,15 @@ export interface UseDatePickerContextProps {
|
|
|
168
151
|
* @param props - The props for the hook.
|
|
169
152
|
* @returns The state of the single date picker.
|
|
170
153
|
*/
|
|
171
|
-
export declare function useDatePickerContext(props: {
|
|
154
|
+
export declare function useDatePickerContext<TDate extends DateFrameworkType>(props: {
|
|
172
155
|
selectionVariant: "single";
|
|
173
|
-
}): SingleDatePickerState
|
|
156
|
+
}): SingleDatePickerState<TDate>;
|
|
174
157
|
/**
|
|
175
158
|
* Hook to use the date picker context for range date selection.
|
|
176
159
|
* @param props - The props for the hook.
|
|
177
160
|
* @returns The state of the range date picker.
|
|
178
161
|
*/
|
|
179
|
-
export declare function useDatePickerContext(props: {
|
|
162
|
+
export declare function useDatePickerContext<TDate extends DateFrameworkType>(props: {
|
|
180
163
|
selectionVariant: "range";
|
|
181
|
-
}): RangeDatePickerState
|
|
164
|
+
}): RangeDatePickerState<TDate>;
|
|
182
165
|
export {};
|
|
@@ -31,6 +31,11 @@ interface DatePickerOverlayHelpers {
|
|
|
31
31
|
* @param newOpen - The new value for the open state.
|
|
32
32
|
*/
|
|
33
33
|
setOpen: (newOpen: boolean) => void;
|
|
34
|
+
/**~
|
|
35
|
+
* Register a callback for when onDismiss is called
|
|
36
|
+
* @param onDismissCallback
|
|
37
|
+
*/
|
|
38
|
+
setOnDismiss: (onDismissCallback: () => void) => void;
|
|
34
39
|
}
|
|
35
40
|
/**
|
|
36
41
|
* Interface representing the context type for a DatePicker overlay.
|
|
@@ -53,6 +58,11 @@ interface DatePickerOverlayProviderProps {
|
|
|
53
58
|
* If `true`, the overlay is open.
|
|
54
59
|
*/
|
|
55
60
|
open?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Handler for when open state changes
|
|
63
|
+
* @param newOpen - true when opened
|
|
64
|
+
*/
|
|
65
|
+
onOpen?: (newOpen: boolean) => void;
|
|
56
66
|
/**
|
|
57
67
|
* The default open state of the overlay.
|
|
58
68
|
*/
|
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type DateFrameworkType, type SaltDateAdapter } from "@salt-ds/date-adapters";
|
|
2
|
+
import type { DateRangeSelection } from "../calendar";
|
|
3
|
+
import { type DateInputRangeDetails, type DateInputRangeProps } from "../date-input";
|
|
2
4
|
/**
|
|
3
5
|
* Props for the DatePickerRangeInput component.
|
|
4
6
|
*/
|
|
5
|
-
export interface DatePickerRangeInputProps extends DateInputRangeProps {
|
|
7
|
+
export interface DatePickerRangeInputProps<TDate extends DateFrameworkType> extends DateInputRangeProps<TDate> {
|
|
8
|
+
/**
|
|
9
|
+
* Function to validate the entered date
|
|
10
|
+
* @param date - The selected date
|
|
11
|
+
* @param details - The details of date selection, either a valid date or error
|
|
12
|
+
* @returns updated DateInputRangeDetails details
|
|
13
|
+
*/
|
|
14
|
+
validate?: (date: DateRangeSelection<TDate> | null, details: DateInputRangeDetails) => DateInputRangeDetails;
|
|
6
15
|
}
|
|
7
|
-
export declare
|
|
16
|
+
export declare function defaultRangeValidator<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, date: DateRangeSelection<TDate> | null, details: DateInputRangeDetails, minDate: TDate | undefined, maxDate: TDate | undefined): DateInputRangeDetails;
|
|
17
|
+
export declare const DatePickerRangeInput: import("react").ForwardRefExoticComponent<DatePickerRangeInputProps<Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import { type ComponentPropsWithoutRef, type SyntheticEvent } from "react";
|
|
3
|
-
import { type
|
|
3
|
+
import { type CalendarGridProps, type CalendarNavigationProps, type CalendarOffsetProps, type CalendarRangeProps, type CalendarWeekHeaderProps, type DateRangeSelection } from "../calendar";
|
|
4
4
|
/**
|
|
5
5
|
* Props for the DatePickerRangePanel component.
|
|
6
6
|
* @template T - The type of the selected date range.
|
|
7
7
|
*/
|
|
8
|
-
export interface DatePickerRangePanelProps<
|
|
8
|
+
export interface DatePickerRangePanelProps<TDate extends DateFrameworkType> extends ComponentPropsWithoutRef<"div"> {
|
|
9
9
|
/**
|
|
10
10
|
* Callback fired when a date range is selected.
|
|
11
11
|
* @param event - The synthetic event.
|
|
12
12
|
* @param selectedDate - The selected date range or null.
|
|
13
13
|
*/
|
|
14
|
-
|
|
14
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate?: DateRangeSelection<TDate> | null) => void;
|
|
15
15
|
/**
|
|
16
16
|
* Helper text to be displayed below the date picker.
|
|
17
17
|
*/
|
|
@@ -19,39 +19,39 @@ export interface DatePickerRangePanelProps<T> extends ComponentPropsWithoutRef<"
|
|
|
19
19
|
/**
|
|
20
20
|
* The currently visible month for the start date.
|
|
21
21
|
*/
|
|
22
|
-
startVisibleMonth?:
|
|
22
|
+
startVisibleMonth?: TDate;
|
|
23
23
|
/**
|
|
24
24
|
* The default visible month for the start date.
|
|
25
25
|
*/
|
|
26
|
-
defaultStartVisibleMonth?:
|
|
26
|
+
defaultStartVisibleMonth?: TDate;
|
|
27
27
|
/**
|
|
28
28
|
* Callback fired when the visible month for the start date changes.
|
|
29
29
|
* @param event - The synthetic event.
|
|
30
30
|
* @param visibleMonth - The new visible month for the start date.
|
|
31
31
|
*/
|
|
32
|
-
onStartVisibleMonthChange?: (event: SyntheticEvent, visibleMonth:
|
|
32
|
+
onStartVisibleMonthChange?: (event: SyntheticEvent, visibleMonth: TDate) => void;
|
|
33
33
|
/**
|
|
34
34
|
* The currently visible month for the end date.
|
|
35
35
|
*/
|
|
36
|
-
endVisibleMonth?:
|
|
36
|
+
endVisibleMonth?: TDate;
|
|
37
37
|
/**
|
|
38
38
|
* The default visible month for the end date.
|
|
39
39
|
*/
|
|
40
|
-
defaultEndVisibleMonth?:
|
|
40
|
+
defaultEndVisibleMonth?: TDate;
|
|
41
41
|
/**
|
|
42
42
|
* Callback fired when the visible month for the end date changes.
|
|
43
43
|
* @param event - The synthetic event.
|
|
44
44
|
* @param visibleMonth - The new visible month for the end date.
|
|
45
45
|
*/
|
|
46
|
-
onEndVisibleMonthChange?: (event: SyntheticEvent, visibleMonth:
|
|
46
|
+
onEndVisibleMonthChange?: (event: SyntheticEvent, visibleMonth: TDate) => void;
|
|
47
47
|
/**
|
|
48
48
|
* Props to be passed to the start date CalendarNavigation component.
|
|
49
49
|
*/
|
|
50
|
-
StartCalendarNavigationProps?: CalendarNavigationProps
|
|
50
|
+
StartCalendarNavigationProps?: CalendarNavigationProps<TDate>;
|
|
51
51
|
/**
|
|
52
52
|
* Props to be passed to the start date calendar component.
|
|
53
53
|
*/
|
|
54
|
-
StartCalendarProps?: Partial<Omit<CalendarRangeProps | CalendarOffsetProps
|
|
54
|
+
StartCalendarProps?: Partial<Omit<CalendarRangeProps<TDate> | CalendarOffsetProps<TDate>, "selectedDate" | "defaultSelectedDate" | "onSelectionChange" | "onVisibleMonthChange">>;
|
|
55
55
|
/**
|
|
56
56
|
* Props to be passed to the start date CalendarWeekHeader component.
|
|
57
57
|
*/
|
|
@@ -59,15 +59,15 @@ export interface DatePickerRangePanelProps<T> extends ComponentPropsWithoutRef<"
|
|
|
59
59
|
/**
|
|
60
60
|
* Props to be passed to the start date CalendarDataGrid component.
|
|
61
61
|
*/
|
|
62
|
-
StartCalendarDataGridProps?:
|
|
62
|
+
StartCalendarDataGridProps?: CalendarGridProps<TDate>;
|
|
63
63
|
/**
|
|
64
64
|
* Props to be passed to the end date CalendarNavigation component.
|
|
65
65
|
*/
|
|
66
|
-
EndCalendarProps?: Partial<Omit<CalendarRangeProps
|
|
66
|
+
EndCalendarProps?: Partial<Omit<CalendarRangeProps<TDate>, "selectedDate" | "defaultSelectedDate" | "onSelectionChange" | "onVisibleMonthChange">>;
|
|
67
67
|
/**
|
|
68
68
|
* Props to be passed to the end date CalendarNavigation component.
|
|
69
69
|
*/
|
|
70
|
-
EndCalendarNavigationProps?: CalendarNavigationProps
|
|
70
|
+
EndCalendarNavigationProps?: CalendarNavigationProps<TDate>;
|
|
71
71
|
/**
|
|
72
72
|
* Props to be passed to the end date CalendarWeekHeader component.
|
|
73
73
|
*/
|
|
@@ -75,6 +75,6 @@ export interface DatePickerRangePanelProps<T> extends ComponentPropsWithoutRef<"
|
|
|
75
75
|
/**
|
|
76
76
|
* Props to be passed to the end date CalendarDataGrid component.
|
|
77
77
|
*/
|
|
78
|
-
EndCalendarDataGridProps?:
|
|
78
|
+
EndCalendarDataGridProps?: CalendarGridProps<TDate>;
|
|
79
79
|
}
|
|
80
|
-
export declare const DatePickerRangePanel: import("react").ForwardRefExoticComponent<DatePickerRangePanelProps<
|
|
80
|
+
export declare const DatePickerRangePanel: import("react").ForwardRefExoticComponent<DatePickerRangePanelProps<Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,7 +1,16 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
|
+
import type { SingleDateSelection } from "../calendar";
|
|
3
|
+
import { type DateInputSingleDetails, type DateInputSingleProps } from "../date-input";
|
|
2
4
|
/**
|
|
3
5
|
* Props for the DatePickerSingleInput component.
|
|
4
6
|
*/
|
|
5
|
-
export interface DatePickerSingleInputProps extends DateInputSingleProps {
|
|
7
|
+
export interface DatePickerSingleInputProps<TDate extends DateFrameworkType> extends DateInputSingleProps<TDate> {
|
|
8
|
+
/**
|
|
9
|
+
* Function to validate the entered date
|
|
10
|
+
* @param date - The selected date
|
|
11
|
+
* @param details - The details of date selection, either a valid date or error
|
|
12
|
+
* @returns updated DateInputSingleDetails details
|
|
13
|
+
*/
|
|
14
|
+
validate?: (date: SingleDateSelection<TDate>, details: DateInputSingleDetails) => DateInputSingleDetails;
|
|
6
15
|
}
|
|
7
|
-
export declare const DatePickerSingleInput: import("react").ForwardRefExoticComponent<DatePickerSingleInputProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
16
|
+
export declare const DatePickerSingleInput: import("react").ForwardRefExoticComponent<DatePickerSingleInputProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import { type ComponentPropsWithoutRef, type SyntheticEvent } from "react";
|
|
3
|
-
import { type
|
|
3
|
+
import { type CalendarGridProps, type CalendarNavigationProps, type CalendarSingleProps, type CalendarWeekHeaderProps } from "../calendar";
|
|
4
4
|
/**
|
|
5
5
|
* Props for the DatePickerSinglePanel component.
|
|
6
6
|
* @template T - The type of the selected date.
|
|
7
7
|
*/
|
|
8
|
-
export interface DatePickerSinglePanelProps<
|
|
8
|
+
export interface DatePickerSinglePanelProps<TDate extends DateFrameworkType> extends ComponentPropsWithoutRef<"div"> {
|
|
9
9
|
/**
|
|
10
10
|
* Callback fired when a date is selected.
|
|
11
11
|
* @param event - The synthetic event.
|
|
12
12
|
* @param selectedDate - The selected date or null.
|
|
13
13
|
*/
|
|
14
|
-
|
|
14
|
+
onSelectionChange?: (event: SyntheticEvent, selectedDate?: TDate | null) => void;
|
|
15
15
|
/**
|
|
16
16
|
* Helper text to be displayed below the date picker.
|
|
17
17
|
*/
|
|
@@ -19,25 +19,25 @@ export interface DatePickerSinglePanelProps<T> extends ComponentPropsWithoutRef<
|
|
|
19
19
|
/**
|
|
20
20
|
* The currently visible month.
|
|
21
21
|
*/
|
|
22
|
-
visibleMonth?:
|
|
22
|
+
visibleMonth?: TDate;
|
|
23
23
|
/**
|
|
24
24
|
* The default visible month.
|
|
25
25
|
*/
|
|
26
|
-
defaultVisibleMonth?:
|
|
26
|
+
defaultVisibleMonth?: TDate;
|
|
27
27
|
/**
|
|
28
28
|
* Callback fired when the visible month changes.
|
|
29
29
|
* @param event - The synthetic event.
|
|
30
30
|
* @param visibleMonth - The new visible month.
|
|
31
31
|
*/
|
|
32
|
-
onVisibleMonthChange?: (event: SyntheticEvent, visibleMonth:
|
|
32
|
+
onVisibleMonthChange?: (event: SyntheticEvent, visibleMonth: TDate) => void;
|
|
33
33
|
/**
|
|
34
34
|
* Props to be passed to the Calendar component.
|
|
35
35
|
*/
|
|
36
|
-
CalendarProps?: Partial<Omit<CalendarSingleProps
|
|
36
|
+
CalendarProps?: Partial<Omit<CalendarSingleProps<TDate>, "selectionVariant" | "selectedDate" | "defaultSelectedDate" | "onSelectionChange" | "onVisibleMonthChange">>;
|
|
37
37
|
/**
|
|
38
38
|
* Props to be passed to the CalendarNavigation component.
|
|
39
39
|
*/
|
|
40
|
-
CalendarNavigationProps?: CalendarNavigationProps
|
|
40
|
+
CalendarNavigationProps?: CalendarNavigationProps<TDate>;
|
|
41
41
|
/**
|
|
42
42
|
* Props to be passed to the CalendarWeekHeader component.
|
|
43
43
|
*/
|
|
@@ -45,6 +45,6 @@ export interface DatePickerSinglePanelProps<T> extends ComponentPropsWithoutRef<
|
|
|
45
45
|
/**
|
|
46
46
|
* Props to be passed to the CalendarDataGrid component.
|
|
47
47
|
*/
|
|
48
|
-
CalendarDataGridProps?:
|
|
48
|
+
CalendarDataGridProps?: CalendarGridProps<TDate>;
|
|
49
49
|
}
|
|
50
|
-
export declare const DatePickerSinglePanel: import("react").ForwardRefExoticComponent<DatePickerSinglePanelProps<
|
|
50
|
+
export declare const DatePickerSinglePanel: import("react").ForwardRefExoticComponent<DatePickerSinglePanelProps<Date | import("dayjs").Dayjs | import("luxon").DateTime<boolean> | import("moment").Moment> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Props for the DatePickerTrigger component.
|
|
4
|
+
*/
|
|
5
|
+
export interface DatePickerTriggerProps {
|
|
6
|
+
className?: string;
|
|
7
|
+
children?: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export declare const DatePickerTrigger: import("react").ForwardRefExoticComponent<DatePickerTriggerProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -2,7 +2,8 @@ export * from "./DatePicker";
|
|
|
2
2
|
export * from "./DatePickerActions";
|
|
3
3
|
export * from "./DatePickerContext";
|
|
4
4
|
export * from "./DatePickerOverlay";
|
|
5
|
-
export * from "./DatePickerSingleInput";
|
|
6
|
-
export * from "./DatePickerSinglePanel";
|
|
7
5
|
export * from "./DatePickerRangeInput";
|
|
8
6
|
export * from "./DatePickerRangePanel";
|
|
7
|
+
export * from "./DatePickerSingleInput";
|
|
8
|
+
export * from "./DatePickerSinglePanel";
|
|
9
|
+
export * from "./DatePickerTrigger";
|
|
@@ -1,112 +1,105 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
|
+
import { type SyntheticEvent } from "react";
|
|
3
|
+
import type { DateRangeSelection, SingleDateSelection } from "../calendar";
|
|
4
|
+
import type { DateInputRangeDetails, DateInputSingleDetails } from "../date-input";
|
|
3
5
|
import type { RangeDatePickerState, SingleDatePickerState } from "./DatePickerContext";
|
|
4
|
-
interface UseDatePickerBaseProps<
|
|
6
|
+
interface UseDatePickerBaseProps<TDate> {
|
|
5
7
|
/** If `true`, the component is disabled. */
|
|
6
8
|
disabled?: boolean;
|
|
7
9
|
/** If `true`, the component is read-only. */
|
|
8
10
|
readOnly?: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* The selected date. The selected date will be controlled when this prop is provided.
|
|
11
|
-
*/
|
|
12
|
-
selectedDate?: T | null;
|
|
13
|
-
/**
|
|
14
|
-
* The initial selected date, when the selected date is uncontrolled.
|
|
15
|
-
*/
|
|
16
|
-
defaultSelectedDate?: UseDatePickerBaseProps<T>["selectedDate"];
|
|
17
11
|
/**
|
|
18
12
|
* The minimum date for the range, default is 1900.
|
|
19
13
|
*/
|
|
20
|
-
minDate?:
|
|
14
|
+
minDate?: TDate;
|
|
21
15
|
/**
|
|
22
16
|
* The maximum date for the range, default is 2100.
|
|
23
17
|
*/
|
|
24
|
-
maxDate?:
|
|
18
|
+
maxDate?: TDate;
|
|
25
19
|
/**
|
|
26
20
|
* Handler for when the date selection is cancelled.
|
|
27
21
|
*/
|
|
28
22
|
onCancel?: () => void;
|
|
29
|
-
/**
|
|
30
|
-
* Time zone of the date selection, defaults to the current time zone of the user.
|
|
31
|
-
*/
|
|
32
|
-
timeZone?: string;
|
|
33
|
-
/**
|
|
34
|
-
* Locale of the date selection, defaults to the current locale of the user.
|
|
35
|
-
*/
|
|
36
|
-
locale?: string;
|
|
37
23
|
}
|
|
38
24
|
/**
|
|
39
25
|
* Props for single date selection.
|
|
40
26
|
*
|
|
41
|
-
* @
|
|
42
|
-
* @property {"single"} selectionVariant - Single date selection.
|
|
43
|
-
* @property {(selectedSingleDate: SingleDateSelection | null, singleError: string | false) => void} [onSelectedDateChange] - Handler called when the selected date changes.
|
|
44
|
-
* @property {(appliedSingleDate: SingleDateSelection | null, singleError: string | false) => void} [onApply] - Handler called when the selected date is confirmed/applied.
|
|
27
|
+
* @template TDate - The type of the date framework.
|
|
45
28
|
*/
|
|
46
|
-
export interface UseDatePickerSingleProps extends UseDatePickerBaseProps<
|
|
29
|
+
export interface UseDatePickerSingleProps<TDate extends DateFrameworkType> extends UseDatePickerBaseProps<TDate> {
|
|
47
30
|
/**
|
|
48
31
|
* Single date selection.
|
|
49
32
|
*/
|
|
50
33
|
selectionVariant: "single";
|
|
34
|
+
/**
|
|
35
|
+
* The selected date. The selected date will be controlled when this prop is provided.
|
|
36
|
+
*/
|
|
37
|
+
selectedDate?: SingleDateSelection<TDate> | null;
|
|
38
|
+
/**
|
|
39
|
+
* The initial selected date, when the selected date is uncontrolled.
|
|
40
|
+
*/
|
|
41
|
+
defaultSelectedDate?: SingleDateSelection<TDate> | null;
|
|
51
42
|
/**
|
|
52
43
|
* Handler called when the selected date changes.
|
|
53
|
-
* @param
|
|
54
|
-
* @param
|
|
44
|
+
* @param event - The synthetic event.
|
|
45
|
+
* @param date - The selected date or null.
|
|
46
|
+
* @param details - The selected date details.
|
|
55
47
|
*/
|
|
56
|
-
|
|
48
|
+
onSelectionChange?: (event: SyntheticEvent, date: SingleDateSelection<TDate> | null, details?: DateInputSingleDetails) => void;
|
|
57
49
|
/**
|
|
58
50
|
* Handler called when the selected date is confirmed/applied.
|
|
59
|
-
* @param
|
|
60
|
-
* @param
|
|
51
|
+
* @param event - The synthetic event.
|
|
52
|
+
* @param date - The selected date or null.
|
|
61
53
|
*/
|
|
62
|
-
onApply?: (
|
|
54
|
+
onApply?: (event: SyntheticEvent, date: SingleDateSelection<TDate> | null) => void;
|
|
63
55
|
}
|
|
64
56
|
/**
|
|
65
57
|
* Props for date range selection.
|
|
66
58
|
*
|
|
67
|
-
* @
|
|
68
|
-
* @property {"range"} selectionVariant - Date range selection.
|
|
69
|
-
* @property {(selectedRangeDate: DateRangeSelection | null, rangeError: { startDate: string | false; endDate: string | false }) => void} [onSelectedDateChange] - Handler called when the selected date changes.
|
|
70
|
-
* @property {(appliedRangeDate: DateRangeSelection | null, rangeError: { startDate: string | false; endDate: string | false }) => void} [onApply] - Handler called when the selected date is confirmed/applied.
|
|
59
|
+
* @template TDate - The type of the date framework.
|
|
71
60
|
*/
|
|
72
|
-
export interface UseDatePickerRangeProps extends UseDatePickerBaseProps<
|
|
61
|
+
export interface UseDatePickerRangeProps<TDate extends DateFrameworkType> extends UseDatePickerBaseProps<TDate> {
|
|
73
62
|
/**
|
|
74
63
|
* Date range selection.
|
|
75
64
|
*/
|
|
76
65
|
selectionVariant: "range";
|
|
77
66
|
/**
|
|
78
|
-
*
|
|
79
|
-
* @param {DateRangeSelection | null} selectedRangeDate - The selected date.
|
|
80
|
-
* @param {{ startDate: string | false; endDate: string | false }} rangeError - Error returned by the parser or `false`.
|
|
67
|
+
* The selected date range. The selected date will be controlled when this prop is provided.
|
|
81
68
|
*/
|
|
82
|
-
|
|
83
|
-
startDate: string | false;
|
|
84
|
-
endDate: string | false;
|
|
85
|
-
}) => void;
|
|
69
|
+
selectedDate?: DateRangeSelection<TDate> | null;
|
|
86
70
|
/**
|
|
87
|
-
*
|
|
88
|
-
|
|
89
|
-
|
|
71
|
+
* The initial selected date range, when the selected date is uncontrolled.
|
|
72
|
+
*/
|
|
73
|
+
defaultSelectedDate?: DateRangeSelection<TDate> | null;
|
|
74
|
+
/**
|
|
75
|
+
* Handler called when the selected date range changes.
|
|
76
|
+
* @param event - The synthetic event.
|
|
77
|
+
* @param date - The selected date range or null.
|
|
78
|
+
* @param details - The selected date range details.
|
|
79
|
+
*/
|
|
80
|
+
onSelectionChange?: (event: SyntheticEvent, date: DateRangeSelection<TDate> | null, details?: DateInputRangeDetails) => void;
|
|
81
|
+
/**
|
|
82
|
+
* Handler called when the selected date range is confirmed/applied.
|
|
83
|
+
* @param event - The synthetic event.
|
|
84
|
+
* @param date - The selected date range.
|
|
90
85
|
*/
|
|
91
|
-
onApply?: (
|
|
92
|
-
startDate: string | false;
|
|
93
|
-
endDate: string | false;
|
|
94
|
-
}) => void;
|
|
86
|
+
onApply?: (event: SyntheticEvent, date: DateRangeSelection<TDate> | null) => void;
|
|
95
87
|
}
|
|
96
88
|
/**
|
|
97
89
|
* Props for the useDatePicker hook.
|
|
98
90
|
*
|
|
99
|
-
* @template
|
|
100
|
-
* @
|
|
91
|
+
* @template TDate - The type of the date framework.
|
|
92
|
+
* @template SelectionVariant - The selection variant, either "single" or "range".
|
|
101
93
|
*/
|
|
102
|
-
export declare type UseDatePickerProps<SelectionVariant> = SelectionVariant extends "single" ? UseDatePickerSingleProps : SelectionVariant extends "range" ? UseDatePickerRangeProps : never;
|
|
94
|
+
export declare type UseDatePickerProps<TDate extends DateFrameworkType, SelectionVariant> = SelectionVariant extends "single" ? UseDatePickerSingleProps<TDate> : SelectionVariant extends "range" ? UseDatePickerRangeProps<TDate> : never;
|
|
103
95
|
/**
|
|
104
96
|
* Custom hook for managing date picker state.
|
|
105
97
|
*
|
|
106
|
-
* @template
|
|
107
|
-
* @
|
|
108
|
-
* @param
|
|
109
|
-
* @
|
|
98
|
+
* @template TDate - The type of the date framework.
|
|
99
|
+
* @template SelectionVariant - The selection variant, either "single" or "range".
|
|
100
|
+
* @param props - The props for the date picker.
|
|
101
|
+
* @param ref - The ref for the date picker container.
|
|
102
|
+
* @returns The date picker state and helpers.
|
|
110
103
|
*/
|
|
111
|
-
export declare function useDatePicker<SelectionVariant extends "single" | "range">(props: UseDatePickerProps<SelectionVariant>, ref: React.ForwardedRef<HTMLDivElement>): SingleDatePickerState | RangeDatePickerState
|
|
104
|
+
export declare function useDatePicker<TDate extends DateFrameworkType, SelectionVariant extends "single" | "range">(props: UseDatePickerProps<TDate, SelectionVariant>, ref: React.ForwardedRef<HTMLDivElement>): SingleDatePickerState<TDate> | RangeDatePickerState<TDate>;
|
|
112
105
|
export {};
|
package/dist-types/index.d.ts
CHANGED
|
@@ -27,9 +27,11 @@ export { InputLegacy as Input, type InputLegacyProps as InputProps, StaticInputA
|
|
|
27
27
|
export * from "./layer-layout";
|
|
28
28
|
export * from "./list";
|
|
29
29
|
export * from "./list-next";
|
|
30
|
+
export * from "./localization-provider";
|
|
30
31
|
export * from "./logo";
|
|
31
32
|
export * from "./menu-button";
|
|
32
33
|
export * from "./metric";
|
|
34
|
+
export * from "./overlay";
|
|
33
35
|
export * from "./portal";
|
|
34
36
|
export * from "./query-input";
|
|
35
37
|
export * from "./responsive";
|