@salt-ds/lab 1.0.0-alpha.55 → 1.0.0-alpha.56
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 +161 -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 +76 -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 +77 -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,5 +1,6 @@
|
|
|
1
1
|
import { type ComponentPropsWithoutRef, type ReactNode } from "react";
|
|
2
2
|
import { type UseCalendarMultiSelectProps, type UseCalendarOffsetProps, type UseCalendarRangeProps, type UseCalendarSingleProps } from "./useCalendar";
|
|
3
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
3
4
|
/**
|
|
4
5
|
* Base props for the Calendar component.
|
|
5
6
|
*/
|
|
@@ -12,11 +13,15 @@ export interface CalendarBaseProps extends ComponentPropsWithoutRef<"div"> {
|
|
|
12
13
|
* If `true`, hides dates that are out of the selectable range.
|
|
13
14
|
*/
|
|
14
15
|
hideOutOfRangeDates?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Locale for date formatting
|
|
18
|
+
*/
|
|
19
|
+
locale?: any;
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* Props for the Calendar component with single date selection.
|
|
18
23
|
*/
|
|
19
|
-
export interface CalendarSingleProps extends CalendarBaseProps, UseCalendarSingleProps {
|
|
24
|
+
export interface CalendarSingleProps<TDate extends DateFrameworkType> extends CalendarBaseProps, UseCalendarSingleProps<TDate> {
|
|
20
25
|
/**
|
|
21
26
|
* The selection variant, set to "single".
|
|
22
27
|
*/
|
|
@@ -25,7 +30,7 @@ export interface CalendarSingleProps extends CalendarBaseProps, UseCalendarSingl
|
|
|
25
30
|
/**
|
|
26
31
|
* Props for the Calendar component with date range selection.
|
|
27
32
|
*/
|
|
28
|
-
export interface CalendarRangeProps extends CalendarBaseProps, UseCalendarRangeProps {
|
|
33
|
+
export interface CalendarRangeProps<TDate extends DateFrameworkType> extends CalendarBaseProps, UseCalendarRangeProps<TDate> {
|
|
29
34
|
/**
|
|
30
35
|
* The selection variant, set to "range".
|
|
31
36
|
*/
|
|
@@ -34,7 +39,7 @@ export interface CalendarRangeProps extends CalendarBaseProps, UseCalendarRangeP
|
|
|
34
39
|
/**
|
|
35
40
|
* Props for the Calendar component with multi-select date selection.
|
|
36
41
|
*/
|
|
37
|
-
export interface CalendarMultiSelectProps extends CalendarBaseProps, UseCalendarMultiSelectProps {
|
|
42
|
+
export interface CalendarMultiSelectProps<TDate extends DateFrameworkType> extends CalendarBaseProps, UseCalendarMultiSelectProps<TDate> {
|
|
38
43
|
/**
|
|
39
44
|
* The selection variant, set to "multiselect".
|
|
40
45
|
*/
|
|
@@ -43,7 +48,7 @@ export interface CalendarMultiSelectProps extends CalendarBaseProps, UseCalendar
|
|
|
43
48
|
/**
|
|
44
49
|
* Props for the Calendar component with offset date selection.
|
|
45
50
|
*/
|
|
46
|
-
export interface CalendarOffsetProps extends CalendarBaseProps, UseCalendarOffsetProps {
|
|
51
|
+
export interface CalendarOffsetProps<TDate extends DateFrameworkType> extends CalendarBaseProps, UseCalendarOffsetProps<TDate> {
|
|
47
52
|
/**
|
|
48
53
|
* The selection variant, set to "offset".
|
|
49
54
|
*/
|
|
@@ -52,5 +57,5 @@ export interface CalendarOffsetProps extends CalendarBaseProps, UseCalendarOffse
|
|
|
52
57
|
/**
|
|
53
58
|
* Type representing the props for the Calendar component with various selection variants.
|
|
54
59
|
*/
|
|
55
|
-
export declare type CalendarProps = CalendarSingleProps | CalendarRangeProps | CalendarMultiSelectProps | CalendarOffsetProps
|
|
56
|
-
export declare const Calendar: import("react").ForwardRefExoticComponent<CalendarProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
60
|
+
export declare type CalendarProps<TDate extends DateFrameworkType> = CalendarSingleProps<TDate> | CalendarRangeProps<TDate> | CalendarMultiSelectProps<TDate> | CalendarOffsetProps<TDate>;
|
|
61
|
+
export declare const Calendar: import("react").ForwardRefExoticComponent<CalendarProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ComponentPropsWithoutRef } from "react";
|
|
2
|
+
import { type CalendarMonthProps } from "./internal/CalendarMonth";
|
|
3
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
4
|
+
/**
|
|
5
|
+
* Props for the CalendarGrid component.
|
|
6
|
+
*/
|
|
7
|
+
export interface CalendarGridProps<TDate extends DateFrameworkType> extends ComponentPropsWithoutRef<"div"> {
|
|
8
|
+
/**
|
|
9
|
+
* Props getter to pass to each CalendarMonth element
|
|
10
|
+
*/
|
|
11
|
+
getCalendarMonthProps?: (date: TDate) => Omit<CalendarMonthProps<TDate>, "date">;
|
|
12
|
+
}
|
|
13
|
+
export declare const CalendarGrid: import("react").ForwardRefExoticComponent<CalendarGridProps<any> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,29 +1,28 @@
|
|
|
1
1
|
import { type ButtonProps, type DropdownProps } from "@salt-ds/core";
|
|
2
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
3
|
import { type ComponentPropsWithRef } from "react";
|
|
3
|
-
import { type DateValue } from "@internationalized/date";
|
|
4
|
-
declare type DateDropdownProps = DropdownProps<DateValue>;
|
|
5
4
|
/**
|
|
6
5
|
* Props for the CalendarNavigation component.
|
|
7
6
|
*/
|
|
8
|
-
export interface CalendarNavigationProps extends ComponentPropsWithRef<"div"> {
|
|
7
|
+
export interface CalendarNavigationProps<TDate extends DateFrameworkType> extends ComponentPropsWithRef<"div"> {
|
|
9
8
|
/**
|
|
10
9
|
* Props for the month dropdown component.
|
|
11
10
|
*/
|
|
12
|
-
MonthDropdownProps?:
|
|
11
|
+
MonthDropdownProps?: DropdownProps<TDate>;
|
|
13
12
|
/**
|
|
14
13
|
* Props for the year dropdown component.
|
|
15
14
|
*/
|
|
16
|
-
YearDropdownProps?:
|
|
15
|
+
YearDropdownProps?: DropdownProps<TDate>;
|
|
17
16
|
/**
|
|
18
17
|
* Callback fired when a month is selected.
|
|
19
18
|
* @param event - The change event.
|
|
20
19
|
*/
|
|
21
|
-
onMonthSelect?:
|
|
20
|
+
onMonthSelect?: DropdownProps<TDate>["onChange"];
|
|
22
21
|
/**
|
|
23
22
|
* Callback fired when a year is selected.
|
|
24
23
|
* @param event - The change event.
|
|
25
24
|
*/
|
|
26
|
-
onYearSelect?:
|
|
25
|
+
onYearSelect?: DropdownProps<TDate>["onChange"];
|
|
27
26
|
/**
|
|
28
27
|
* Callback fired when navigating to the next month.
|
|
29
28
|
* @param event - The click event.
|
|
@@ -46,12 +45,11 @@ export interface CalendarNavigationProps extends ComponentPropsWithRef<"div"> {
|
|
|
46
45
|
* Format the month dropdown values
|
|
47
46
|
* @param date
|
|
48
47
|
*/
|
|
49
|
-
formatMonth?:
|
|
48
|
+
formatMonth?: string;
|
|
50
49
|
/**
|
|
51
50
|
* Format the year dropdown values
|
|
52
51
|
* @param date
|
|
53
52
|
*/
|
|
54
|
-
formatYear?:
|
|
53
|
+
formatYear?: string;
|
|
55
54
|
}
|
|
56
|
-
export declare const CalendarNavigation: import("react").ForwardRefExoticComponent<Omit<CalendarNavigationProps
|
|
57
|
-
export {};
|
|
55
|
+
export declare const CalendarNavigation: import("react").ForwardRefExoticComponent<Omit<CalendarNavigationProps<any>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type ComponentPropsWithRef } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Props for the CalendarWeekHeader component.
|
|
4
|
+
*/
|
|
5
|
+
export declare type CalendarWeekHeaderProps = ComponentPropsWithRef<"div"> & {};
|
|
5
6
|
export declare const CalendarWeekHeader: import("react").ForwardRefExoticComponent<Omit<CalendarWeekHeaderProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
export * from "./Calendar";
|
|
2
2
|
export * from "./CalendarNavigation";
|
|
3
3
|
export * from "./CalendarWeekHeader";
|
|
4
|
-
export * from "./
|
|
4
|
+
export * from "./CalendarGrid";
|
|
5
5
|
export * from "./useCalendarDay";
|
|
6
6
|
export * from "./useCalendar";
|
|
7
7
|
export * from "./useCalendarSelection";
|
|
8
|
-
export * from "./formatDate";
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
helpers: ReturnType<typeof useCalendar>["helpers"];
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
|
+
import type { UseCalendarReturn } from "../useCalendar";
|
|
3
|
+
interface CalendarState<TDate extends DateFrameworkType> extends UseCalendarReturn<TDate> {
|
|
5
4
|
}
|
|
6
|
-
declare const CalendarContext: import("react").Context<CalendarState | null>;
|
|
7
|
-
declare function useCalendarContext(): CalendarState
|
|
5
|
+
declare const CalendarContext: import("react").Context<CalendarState<any> | null>;
|
|
6
|
+
declare function useCalendarContext<TDate extends DateFrameworkType>(): CalendarState<TDate>;
|
|
8
7
|
export { CalendarContext, useCalendarContext };
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import type { DateValue } from "@internationalized/date";
|
|
2
1
|
import { type TooltipProps } from "@salt-ds/core";
|
|
3
2
|
import { type ComponentPropsWithRef, type ReactElement } from "react";
|
|
4
3
|
import { type DayStatus } from "../useCalendarDay";
|
|
5
|
-
import { formatDate as defaultFormatDate } from "./utils";
|
|
6
4
|
export declare type DateFormatter = (day: Date) => string | undefined;
|
|
7
|
-
export interface CalendarDayProps extends Omit<ComponentPropsWithRef<"button">, "children"> {
|
|
8
|
-
day:
|
|
9
|
-
|
|
10
|
-
renderDayContents?: (date:
|
|
5
|
+
export interface CalendarDayProps<TDate> extends Omit<ComponentPropsWithRef<"button">, "children"> {
|
|
6
|
+
day: TDate;
|
|
7
|
+
format?: string;
|
|
8
|
+
renderDayContents?: (date: TDate, status: DayStatus) => ReactElement;
|
|
11
9
|
status?: DayStatus;
|
|
12
|
-
month:
|
|
10
|
+
month: TDate;
|
|
13
11
|
TooltipProps?: Partial<TooltipProps>;
|
|
14
12
|
}
|
|
15
|
-
export declare const CalendarDay: import("react").ForwardRefExoticComponent<Omit<CalendarDayProps
|
|
13
|
+
export declare const CalendarDay: import("react").ForwardRefExoticComponent<Omit<CalendarDayProps<any>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import type { DateValue } from "@internationalized/date";
|
|
2
1
|
import { type ComponentPropsWithRef } from "react";
|
|
3
2
|
import { type CalendarDayProps } from "./CalendarDay";
|
|
4
|
-
export interface CalendarMonthProps extends ComponentPropsWithRef<"div"> {
|
|
3
|
+
export interface CalendarMonthProps<TDate> extends ComponentPropsWithRef<"div"> {
|
|
5
4
|
/**
|
|
6
5
|
* Month to render as selectable dates
|
|
7
6
|
*/
|
|
8
|
-
date:
|
|
7
|
+
date: TDate;
|
|
9
8
|
/**
|
|
10
9
|
* Function to render the contents of a day.
|
|
11
10
|
*/
|
|
12
|
-
renderDayContents?: CalendarDayProps["renderDayContents"];
|
|
11
|
+
renderDayContents?: CalendarDayProps<TDate>["renderDayContents"];
|
|
13
12
|
/**
|
|
14
13
|
* Props for the tooltip component.
|
|
15
14
|
*/
|
|
16
|
-
TooltipProps?: CalendarDayProps["TooltipProps"];
|
|
15
|
+
TooltipProps?: CalendarDayProps<TDate>["TooltipProps"];
|
|
17
16
|
}
|
|
18
|
-
export declare const CalendarMonth: import("react").ForwardRefExoticComponent<Omit<CalendarMonthProps
|
|
17
|
+
export declare const CalendarMonth: import("react").ForwardRefExoticComponent<Omit<CalendarMonthProps<any>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import type { FocusEventHandler, KeyboardEventHandler, MouseEventHandler } from "react";
|
|
3
|
-
export declare function useFocusManagement({ date,
|
|
4
|
-
date:
|
|
5
|
-
locale: string;
|
|
3
|
+
export declare function useFocusManagement<TDate extends DateFrameworkType>({ date, }: {
|
|
4
|
+
date: TDate;
|
|
6
5
|
}): {
|
|
7
6
|
handleClick: MouseEventHandler<HTMLButtonElement>;
|
|
8
7
|
handleKeyDown: KeyboardEventHandler<HTMLButtonElement>;
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function
|
|
3
|
-
export declare function
|
|
4
|
-
declare
|
|
5
|
-
|
|
6
|
-
export declare function monthsForLocale(currentYear: DateValue, locale: string): (CalendarDate | import("@internationalized/date").CalendarDateTime | import("@internationalized/date").ZonedDateTime)[];
|
|
7
|
-
export declare function generateVisibleDays(currentMonth: DateValue, locale: string): {
|
|
8
|
-
date: DateValue;
|
|
1
|
+
import type { DateFrameworkType, SaltDateAdapter } from "@salt-ds/date-adapters";
|
|
2
|
+
export declare function daysOfWeek<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, format: "long" | "short" | "narrow", locale?: any): string[];
|
|
3
|
+
export declare function generateMonthsForYear<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, currentYear: TDate): TDate[];
|
|
4
|
+
export declare function generateVisibleDays<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, currentMonth: TDate, locale?: any): {
|
|
5
|
+
date: TDate;
|
|
9
6
|
dateOfMonth: number;
|
|
10
7
|
isCurrentMonth: boolean;
|
|
11
8
|
}[];
|
|
12
|
-
export declare function monthDiff(a:
|
|
13
|
-
export declare function generateDatesForMonth(date:
|
|
14
|
-
export {};
|
|
9
|
+
export declare function monthDiff<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, a: TDate, b: TDate): number;
|
|
10
|
+
export declare function generateDatesForMonth<TDate extends DateFrameworkType>(dateAdapter: SaltDateAdapter<TDate>, date: TDate): TDate[];
|
|
@@ -1,67 +1,63 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import { type SyntheticEvent } from "react";
|
|
3
3
|
import { type UseCalendarSelectionMultiSelectProps, type UseCalendarSelectionOffsetProps, type UseCalendarSelectionRangeProps, type UseCalendarSelectionSingleProps } from "./useCalendarSelection";
|
|
4
4
|
/**
|
|
5
5
|
* Interface representing the base properties UseCalendar hook.
|
|
6
6
|
*/
|
|
7
|
-
interface UseCalendarBaseProps {
|
|
7
|
+
interface UseCalendarBaseProps<TDate> {
|
|
8
8
|
/**
|
|
9
9
|
* The default visible month.
|
|
10
10
|
*/
|
|
11
|
-
defaultVisibleMonth?:
|
|
11
|
+
defaultVisibleMonth?: TDate;
|
|
12
12
|
/**
|
|
13
13
|
* Callback fired when the visible month changes.
|
|
14
14
|
* @param event - The synthetic event.
|
|
15
15
|
* @param visibleMonth - The new visible month.
|
|
16
16
|
*/
|
|
17
|
-
onVisibleMonthChange?: (event: SyntheticEvent, visibleMonth:
|
|
17
|
+
onVisibleMonthChange?: (event: SyntheticEvent, visibleMonth: TDate) => void;
|
|
18
18
|
/**
|
|
19
19
|
* Function to determine if a day is unselectable.
|
|
20
20
|
* @param date - The date to check.
|
|
21
21
|
* @returns A string reason if the day is unselectable, otherwise `false` or `undefined`.
|
|
22
22
|
*/
|
|
23
|
-
isDayUnselectable?: (date:
|
|
23
|
+
isDayUnselectable?: (date: TDate) => string | false | undefined;
|
|
24
24
|
/**
|
|
25
25
|
* Function to determine if a day is highlighted.
|
|
26
26
|
* @param date - The date to check.
|
|
27
27
|
* @returns A string reason if the day is highlighted, otherwise `false` or `undefined`.
|
|
28
28
|
*/
|
|
29
|
-
isDayHighlighted?: (date:
|
|
29
|
+
isDayHighlighted?: (date: TDate) => string | false | undefined;
|
|
30
30
|
/**
|
|
31
31
|
* Function to determine if a day is disabled.
|
|
32
32
|
* @param date - The date to check.
|
|
33
33
|
* @returns A string reason if the day is disabled, otherwise `false` or `undefined`.
|
|
34
34
|
*/
|
|
35
|
-
isDayDisabled?: (date:
|
|
35
|
+
isDayDisabled?: (date: TDate) => string | false | undefined;
|
|
36
36
|
/**
|
|
37
37
|
* The currently visible month.
|
|
38
38
|
*/
|
|
39
|
-
visibleMonth?:
|
|
39
|
+
visibleMonth?: TDate;
|
|
40
40
|
/**
|
|
41
41
|
* If `true`, hides dates that are out of the selectable range.
|
|
42
42
|
*/
|
|
43
43
|
hideOutOfRangeDates?: boolean;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
46
|
-
*/
|
|
47
|
-
minDate?: DateValue;
|
|
48
|
-
/**
|
|
49
|
-
* The maximum selectable date.
|
|
45
|
+
* Locale for date formatting
|
|
50
46
|
*/
|
|
51
|
-
|
|
47
|
+
locale?: any;
|
|
52
48
|
/**
|
|
53
|
-
* The
|
|
49
|
+
* The minimum selectable date.
|
|
54
50
|
*/
|
|
55
|
-
|
|
51
|
+
minDate?: TDate;
|
|
56
52
|
/**
|
|
57
|
-
* The
|
|
53
|
+
* The maximum selectable date.
|
|
58
54
|
*/
|
|
59
|
-
|
|
55
|
+
maxDate?: TDate;
|
|
60
56
|
}
|
|
61
57
|
/**
|
|
62
58
|
* UseCalendar hook props for a single date selection Calendar.
|
|
63
59
|
*/
|
|
64
|
-
export interface UseCalendarSingleProps extends UseCalendarSelectionSingleProps
|
|
60
|
+
export interface UseCalendarSingleProps<TDate extends DateFrameworkType> extends UseCalendarSelectionSingleProps<TDate>, UseCalendarBaseProps<TDate> {
|
|
65
61
|
/**
|
|
66
62
|
* The selection variant, set to "single".
|
|
67
63
|
*/
|
|
@@ -70,7 +66,7 @@ export interface UseCalendarSingleProps extends UseCalendarSelectionSingleProps,
|
|
|
70
66
|
/**
|
|
71
67
|
* UseCalendar hook props for a date range selection Calendar.
|
|
72
68
|
*/
|
|
73
|
-
export interface UseCalendarRangeProps extends UseCalendarSelectionRangeProps
|
|
69
|
+
export interface UseCalendarRangeProps<TDate extends DateFrameworkType> extends UseCalendarSelectionRangeProps<TDate>, UseCalendarBaseProps<TDate> {
|
|
74
70
|
/**
|
|
75
71
|
* The selection variant, set to "range".
|
|
76
72
|
*/
|
|
@@ -79,7 +75,7 @@ export interface UseCalendarRangeProps extends UseCalendarSelectionRangeProps, U
|
|
|
79
75
|
/**
|
|
80
76
|
* UseCalendar hook props for a multi-select Calendar.
|
|
81
77
|
*/
|
|
82
|
-
export interface UseCalendarMultiSelectProps extends UseCalendarSelectionMultiSelectProps
|
|
78
|
+
export interface UseCalendarMultiSelectProps<TDate extends DateFrameworkType> extends UseCalendarSelectionMultiSelectProps<TDate>, UseCalendarBaseProps<TDate> {
|
|
83
79
|
/**
|
|
84
80
|
* The selection variant, set to "multiselect".
|
|
85
81
|
*/
|
|
@@ -88,7 +84,7 @@ export interface UseCalendarMultiSelectProps extends UseCalendarSelectionMultiSe
|
|
|
88
84
|
/**
|
|
89
85
|
* UseCalendar hook props for an offset date selection Calendar.
|
|
90
86
|
*/
|
|
91
|
-
export interface UseCalendarOffsetProps extends UseCalendarSelectionOffsetProps
|
|
87
|
+
export interface UseCalendarOffsetProps<TDate extends DateFrameworkType> extends UseCalendarSelectionOffsetProps<TDate>, UseCalendarBaseProps<TDate> {
|
|
92
88
|
/**
|
|
93
89
|
* The selection variant, set to "offset".
|
|
94
90
|
*/
|
|
@@ -97,42 +93,198 @@ export interface UseCalendarOffsetProps extends UseCalendarSelectionOffsetProps,
|
|
|
97
93
|
/**
|
|
98
94
|
* UseCalendar hook props, wth the selection variant determining the return type of the date selection
|
|
99
95
|
*/
|
|
100
|
-
export declare type UseCalendarProps = UseCalendarSingleProps | UseCalendarRangeProps | UseCalendarMultiSelectProps | UseCalendarOffsetProps
|
|
101
|
-
|
|
96
|
+
export declare type UseCalendarProps<TDate extends DateFrameworkType> = UseCalendarSingleProps<TDate> | UseCalendarRangeProps<TDate> | UseCalendarMultiSelectProps<TDate> | UseCalendarOffsetProps<TDate>;
|
|
97
|
+
/**
|
|
98
|
+
* Represents the return type of the useCalendar hook.
|
|
99
|
+
*
|
|
100
|
+
* @template TDate - The type of the date object used in the calendar.
|
|
101
|
+
*/
|
|
102
|
+
export interface UseCalendarReturn<TDate extends DateFrameworkType> {
|
|
103
|
+
/**
|
|
104
|
+
* The state of the calendar.
|
|
105
|
+
*/
|
|
102
106
|
state: {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
107
|
+
/**
|
|
108
|
+
* The currently visible month in the calendar.
|
|
109
|
+
*/
|
|
110
|
+
visibleMonth: TDate;
|
|
111
|
+
/**
|
|
112
|
+
* The currently focused date in the calendar, or null if no date is focused.
|
|
113
|
+
*/
|
|
114
|
+
focusedDate: TDate | null;
|
|
115
|
+
/**
|
|
116
|
+
* The locale used for date formatting.
|
|
117
|
+
*/
|
|
118
|
+
locale: any;
|
|
119
|
+
/**
|
|
120
|
+
* The minimum selectable date in the calendar.
|
|
121
|
+
*/
|
|
122
|
+
minDate: TDate;
|
|
123
|
+
/**
|
|
124
|
+
* The maximum selectable date in the calendar.
|
|
125
|
+
*/
|
|
126
|
+
maxDate: TDate;
|
|
127
|
+
/**
|
|
128
|
+
* The selection variant of the calendar, indicating the type of selection allowed.
|
|
129
|
+
*/
|
|
130
|
+
selectionVariant: "single" | "range" | "multiselect" | "offset";
|
|
131
|
+
/**
|
|
132
|
+
* Whether to hide dates that are out of the selectable range.
|
|
133
|
+
*/
|
|
134
|
+
hideOutOfRangeDates?: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Whether the calendar is currently focused.
|
|
137
|
+
*/
|
|
111
138
|
calendarFocused: boolean;
|
|
112
|
-
|
|
113
|
-
|
|
139
|
+
/**
|
|
140
|
+
* Additional state properties from selectionManager.state.
|
|
141
|
+
*/
|
|
142
|
+
[key: string]: any;
|
|
114
143
|
};
|
|
144
|
+
/**
|
|
145
|
+
* Helper functions for interacting with the calendar.
|
|
146
|
+
*/
|
|
115
147
|
helpers: {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
148
|
+
/**
|
|
149
|
+
* Sets the visible month in the calendar.
|
|
150
|
+
*
|
|
151
|
+
* @param event - The synthetic event triggering the change.
|
|
152
|
+
* @param newVisibleMonth - The new visible month to set.
|
|
153
|
+
*/
|
|
154
|
+
setVisibleMonth: (event: SyntheticEvent, newVisibleMonth: TDate) => void;
|
|
155
|
+
/**
|
|
156
|
+
* Sets the focused date in the calendar.
|
|
157
|
+
*
|
|
158
|
+
* @param event - The synthetic event triggering the change.
|
|
159
|
+
* @param date - The new date to focus.
|
|
160
|
+
*/
|
|
161
|
+
setFocusedDate: (event: SyntheticEvent, date: TDate) => void;
|
|
162
|
+
/**
|
|
163
|
+
* Sets whether the calendar is focused.
|
|
164
|
+
*
|
|
165
|
+
* @param focused - Whether the calendar should be focused.
|
|
166
|
+
*/
|
|
167
|
+
setCalendarFocused: (focused: boolean) => void;
|
|
168
|
+
/**
|
|
169
|
+
* Determines if a day is unselectable.
|
|
170
|
+
*
|
|
171
|
+
* @param date - The date to check.
|
|
172
|
+
* @returns A string reason if the day is unselectable, otherwise `false` or `undefined`.
|
|
173
|
+
*/
|
|
174
|
+
isDayUnselectable: (date: TDate) => string | false | undefined;
|
|
175
|
+
/**
|
|
176
|
+
* Determines if a day is highlighted.
|
|
177
|
+
*
|
|
178
|
+
* @param date - The date to check.
|
|
179
|
+
* @returns A string reason if the day is highlighted, otherwise `false` or `undefined`.
|
|
180
|
+
*/
|
|
181
|
+
isDayHighlighted: (date: TDate) => string | false | undefined;
|
|
182
|
+
/**
|
|
183
|
+
* Determines if a day is disabled.
|
|
184
|
+
*
|
|
185
|
+
* @param date - The date to check.
|
|
186
|
+
* @returns A string reason if the day is disabled, otherwise `false` or `undefined`.
|
|
187
|
+
*/
|
|
188
|
+
isDayDisabled: (date: TDate) => string | false | undefined;
|
|
189
|
+
/**
|
|
190
|
+
* Determines if a day is visible in the calendar.
|
|
191
|
+
*
|
|
192
|
+
* @param date - The date to check.
|
|
193
|
+
* @returns `true` if the day is visible, otherwise `false`.
|
|
194
|
+
*/
|
|
195
|
+
isDayVisible: (date: TDate) => boolean;
|
|
196
|
+
/**
|
|
197
|
+
* Determines if a date is outside the allowed date range.
|
|
198
|
+
*
|
|
199
|
+
* @param date - The date to check.
|
|
200
|
+
* @returns `true` if the date is outside the allowed range, otherwise `false`.
|
|
201
|
+
*/
|
|
202
|
+
isOutsideAllowedDates: (date: TDate) => boolean;
|
|
203
|
+
/**
|
|
204
|
+
* Determines if a month is outside the allowed range.
|
|
205
|
+
*
|
|
206
|
+
* @param date - The date to check.
|
|
207
|
+
* @returns `true` if the month is outside the allowed range, otherwise `false`.
|
|
208
|
+
*/
|
|
209
|
+
isOutsideAllowedMonths: (date: TDate) => boolean;
|
|
210
|
+
/**
|
|
211
|
+
* Determines if a year is outside the allowed range.
|
|
212
|
+
*
|
|
213
|
+
* @param date - The date to check.
|
|
214
|
+
* @returns `true` if the year is outside the allowed range, otherwise `false`.
|
|
215
|
+
*/
|
|
216
|
+
isOutsideAllowedYears: (date: TDate) => boolean;
|
|
217
|
+
/**
|
|
218
|
+
* Sets the selected date in the calendar.
|
|
219
|
+
*
|
|
220
|
+
* @param event - The event triggering the change.
|
|
221
|
+
* @param newSelectedDate - The new date to select.
|
|
222
|
+
*/
|
|
223
|
+
setSelectedDate: (event: React.KeyboardEvent<HTMLButtonElement> | React.MouseEvent<HTMLButtonElement, MouseEvent>, newSelectedDate: TDate) => void;
|
|
224
|
+
/**
|
|
225
|
+
* Determines if a date is selected.
|
|
226
|
+
*
|
|
227
|
+
* @param date - The date to check.
|
|
228
|
+
* @returns `true` if the date is selected, otherwise `false`.
|
|
229
|
+
*/
|
|
230
|
+
isSelected: (date: TDate) => boolean;
|
|
231
|
+
/**
|
|
232
|
+
* Sets the hovered date in the calendar.
|
|
233
|
+
*
|
|
234
|
+
* @param event - The event triggering the change.
|
|
235
|
+
* @param newHoveredDate - The new date to hover.
|
|
236
|
+
*/
|
|
237
|
+
setHoveredDate: (event: SyntheticEvent, newHoveredDate: TDate | null) => void;
|
|
238
|
+
/**
|
|
239
|
+
* Determines if a date is part of a selected span.
|
|
240
|
+
*
|
|
241
|
+
* @param date - The date to check.
|
|
242
|
+
* @returns `true` if the date is part of a selected span, otherwise `false`.
|
|
243
|
+
*/
|
|
244
|
+
isSelectedSpan: (date: TDate) => boolean;
|
|
245
|
+
/**
|
|
246
|
+
* Determines if a date is part of a hovered span.
|
|
247
|
+
*
|
|
248
|
+
* @param date - The date to check.
|
|
249
|
+
* @returns `true` if the date is part of a hovered span, otherwise `false`.
|
|
250
|
+
*/
|
|
251
|
+
isHoveredSpan: (date: TDate) => boolean;
|
|
252
|
+
/**
|
|
253
|
+
* Determines if a date is the start of a selected range.
|
|
254
|
+
*
|
|
255
|
+
* @param date - The date to check.
|
|
256
|
+
* @returns `true` if the date is the start of a selected range, otherwise `false`.
|
|
257
|
+
*/
|
|
258
|
+
isSelectedStart: (date: TDate) => boolean;
|
|
259
|
+
/**
|
|
260
|
+
* Determines if a date is the end of a selected range.
|
|
261
|
+
*
|
|
262
|
+
* @param date - The date to check.
|
|
263
|
+
* @returns `true` if the date is the end of a selected range, otherwise `false`.
|
|
264
|
+
*/
|
|
265
|
+
isSelectedEnd: (date: TDate) => boolean;
|
|
266
|
+
/**
|
|
267
|
+
* Determines if a date is hovered.
|
|
268
|
+
*
|
|
269
|
+
* @param date - The date to check.
|
|
270
|
+
* @returns `true` if the date is hovered, otherwise `false`.
|
|
271
|
+
*/
|
|
272
|
+
isHovered: (date: TDate) => boolean;
|
|
273
|
+
/**
|
|
274
|
+
* Determines if a date is part of a hovered offset.
|
|
275
|
+
*
|
|
276
|
+
* @param date - The date to check.
|
|
277
|
+
* @returns `true` if the date is part of a hovered offset, otherwise `false`.
|
|
278
|
+
*/
|
|
279
|
+
isHoveredOffset: (date: TDate) => boolean;
|
|
280
|
+
/**
|
|
281
|
+
* Determines if a day is selectable.
|
|
282
|
+
*
|
|
283
|
+
* @param date - The date to check.
|
|
284
|
+
* @returns `true` if the day is selectable, otherwise `false`.
|
|
285
|
+
*/
|
|
286
|
+
isDaySelectable: (date: TDate) => boolean;
|
|
136
287
|
};
|
|
137
|
-
}
|
|
288
|
+
}
|
|
289
|
+
export declare function useCalendar<TDate extends DateFrameworkType>(props: UseCalendarProps<TDate>): UseCalendarReturn<TDate>;
|
|
138
290
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DateFrameworkType } from "@salt-ds/date-adapters";
|
|
2
2
|
import { type RefObject } from "react";
|
|
3
3
|
/**
|
|
4
4
|
* Interface representing the status of a day in the Calendar.
|
|
@@ -40,21 +40,19 @@ export interface DayStatus {
|
|
|
40
40
|
/**
|
|
41
41
|
* UseCalendar hook props to return a calendar day's status
|
|
42
42
|
*/
|
|
43
|
-
export interface useCalendarDayProps {
|
|
43
|
+
export interface useCalendarDayProps<TDate> {
|
|
44
44
|
/**
|
|
45
45
|
* The date of the calendar day.
|
|
46
46
|
*/
|
|
47
|
-
date:
|
|
47
|
+
date: TDate;
|
|
48
48
|
/**
|
|
49
49
|
* The month of the calendar day.
|
|
50
50
|
*/
|
|
51
|
-
month:
|
|
51
|
+
month: TDate;
|
|
52
52
|
}
|
|
53
|
-
export declare function useCalendarDay
|
|
53
|
+
export declare function useCalendarDay<TDate extends DateFrameworkType>(props: useCalendarDayProps<TDate>, ref: RefObject<HTMLElement>): {
|
|
54
54
|
status: DayStatus;
|
|
55
55
|
dayProps: Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref">;
|
|
56
56
|
unselectableReason: string | false | undefined;
|
|
57
57
|
highlightedReason: string | false | undefined;
|
|
58
|
-
locale: string;
|
|
59
|
-
timeZone: string;
|
|
60
58
|
};
|