@mui/x-date-pickers 9.0.0-alpha.3 → 9.0.0-rc.0
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/AdapterDateFnsBase/AdapterDateFnsBase.mjs +1 -1
- package/AdapterDayjs/AdapterDayjs.mjs +1 -1
- package/AdapterLuxon/AdapterLuxon.mjs +1 -1
- package/AdapterMoment/AdapterMoment.mjs +1 -1
- package/AdapterMomentHijri/AdapterMomentHijri.mjs +1 -1
- package/AdapterMomentJalaali/AdapterMomentJalaali.mjs +1 -1
- package/CHANGELOG.md +384 -1
- package/DateCalendar/DateCalendar.js +1 -1
- package/DateCalendar/DateCalendar.mjs +1 -1
- package/DateCalendar/DayCalendar.d.mts +7 -7
- package/DateCalendar/DayCalendar.d.ts +7 -7
- package/DateCalendar/DayCalendar.js +23 -25
- package/DateCalendar/DayCalendar.mjs +23 -25
- package/DateField/DateField.d.mts +1 -1
- package/DateField/DateField.d.ts +1 -1
- package/DateField/DateField.js +26 -8
- package/DateField/DateField.mjs +26 -8
- package/DateField/DateField.types.d.mts +3 -3
- package/DateField/DateField.types.d.ts +3 -3
- package/DateField/useDateField.d.mts +1 -1
- package/DateField/useDateField.d.ts +1 -1
- package/DateField/useDateField.js +1 -1
- package/DateField/useDateField.mjs +1 -1
- package/DatePicker/DatePicker.d.mts +1 -1
- package/DatePicker/DatePicker.d.ts +1 -1
- package/DatePicker/DatePicker.js +1 -5
- package/DatePicker/DatePicker.mjs +1 -5
- package/DatePicker/DatePicker.types.d.mts +3 -3
- package/DatePicker/DatePicker.types.d.ts +3 -3
- package/DateTimeField/DateTimeField.d.mts +1 -1
- package/DateTimeField/DateTimeField.d.ts +1 -1
- package/DateTimeField/DateTimeField.js +26 -8
- package/DateTimeField/DateTimeField.mjs +26 -8
- package/DateTimeField/DateTimeField.types.d.mts +2 -2
- package/DateTimeField/DateTimeField.types.d.ts +2 -2
- package/DateTimeField/useDateTimeField.d.mts +1 -1
- package/DateTimeField/useDateTimeField.d.ts +1 -1
- package/DateTimeField/useDateTimeField.js +1 -1
- package/DateTimeField/useDateTimeField.mjs +1 -1
- package/DateTimePicker/DateTimePicker.d.mts +1 -1
- package/DateTimePicker/DateTimePicker.d.ts +1 -1
- package/DateTimePicker/DateTimePicker.js +1 -5
- package/DateTimePicker/DateTimePicker.mjs +1 -5
- package/DateTimePicker/DateTimePicker.types.d.mts +3 -3
- package/DateTimePicker/DateTimePicker.types.d.ts +3 -3
- package/DesktopDatePicker/DesktopDatePicker.d.mts +1 -1
- package/DesktopDatePicker/DesktopDatePicker.d.ts +1 -1
- package/DesktopDatePicker/DesktopDatePicker.js +1 -5
- package/DesktopDatePicker/DesktopDatePicker.mjs +1 -5
- package/DesktopDatePicker/DesktopDatePicker.types.d.mts +3 -3
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +3 -3
- package/DesktopDateTimePicker/DesktopDateTimePicker.d.mts +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +1 -5
- package/DesktopDateTimePicker/DesktopDateTimePicker.mjs +1 -5
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.mts +3 -3
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +3 -3
- package/DesktopTimePicker/DesktopTimePicker.d.mts +1 -1
- package/DesktopTimePicker/DesktopTimePicker.d.ts +1 -1
- package/DesktopTimePicker/DesktopTimePicker.js +0 -4
- package/DesktopTimePicker/DesktopTimePicker.mjs +0 -4
- package/DesktopTimePicker/DesktopTimePicker.types.d.mts +3 -3
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +3 -3
- package/DigitalClock/DigitalClock.d.mts +1 -1
- package/DigitalClock/DigitalClock.d.ts +1 -1
- package/DigitalClock/DigitalClock.js +5 -3
- package/DigitalClock/DigitalClock.mjs +6 -4
- package/MobileDatePicker/MobileDatePicker.d.mts +1 -1
- package/MobileDatePicker/MobileDatePicker.d.ts +1 -1
- package/MobileDatePicker/MobileDatePicker.js +1 -5
- package/MobileDatePicker/MobileDatePicker.mjs +1 -5
- package/MobileDatePicker/MobileDatePicker.types.d.mts +3 -3
- package/MobileDatePicker/MobileDatePicker.types.d.ts +3 -3
- package/MobileDateTimePicker/MobileDateTimePicker.d.mts +1 -1
- package/MobileDateTimePicker/MobileDateTimePicker.d.ts +1 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +1 -5
- package/MobileDateTimePicker/MobileDateTimePicker.mjs +1 -5
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.mts +3 -3
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +3 -3
- package/MobileTimePicker/MobileTimePicker.d.mts +1 -1
- package/MobileTimePicker/MobileTimePicker.d.ts +1 -1
- package/MobileTimePicker/MobileTimePicker.js +0 -4
- package/MobileTimePicker/MobileTimePicker.mjs +0 -4
- package/MobileTimePicker/MobileTimePicker.types.d.mts +3 -3
- package/MobileTimePicker/MobileTimePicker.types.d.ts +3 -3
- package/MonthCalendar/MonthCalendarButton.js +2 -2
- package/MonthCalendar/MonthCalendarButton.mjs +3 -3
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +46 -9
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.mjs +47 -10
- package/PickerDay/PickerDay.d.mts +14 -0
- package/PickerDay/PickerDay.d.ts +14 -0
- package/{PickerDay2/PickerDay2.js → PickerDay/PickerDay.js} +110 -45
- package/{PickerDay2/PickerDay2.mjs → PickerDay/PickerDay.mjs} +110 -45
- package/PickerDay/PickerDay.types.d.mts +137 -0
- package/PickerDay/PickerDay.types.d.ts +137 -0
- package/PickerDay/index.d.mts +4 -0
- package/PickerDay/index.d.ts +4 -0
- package/PickerDay/index.js +25 -0
- package/PickerDay/index.mjs +2 -0
- package/{PickerDay2/pickerDay2Classes.d.mts → PickerDay/pickerDayClasses.d.mts} +4 -4
- package/{PickerDay2/pickerDay2Classes.d.ts → PickerDay/pickerDayClasses.d.ts} +4 -4
- package/PickerDay/pickerDayClasses.js +14 -0
- package/PickerDay/pickerDayClasses.mjs +6 -0
- package/PickersTextField/PickersFilledInput/PickersFilledInput.js +27 -1
- package/PickersTextField/PickersFilledInput/PickersFilledInput.mjs +27 -1
- package/PickersTextField/PickersInput/PickersInput.js +27 -1
- package/PickersTextField/PickersInput/PickersInput.mjs +27 -1
- package/PickersTextField/PickersInputBase/PickersInputBase.js +26 -0
- package/PickersTextField/PickersInputBase/PickersInputBase.mjs +26 -0
- package/PickersTextField/PickersInputBase/PickersInputBase.types.d.mts +26 -0
- package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +26 -0
- package/PickersTextField/PickersOutlinedInput/Outline.js +1 -1
- package/PickersTextField/PickersOutlinedInput/Outline.mjs +1 -1
- package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +27 -1
- package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.mjs +27 -1
- package/PickersTextField/PickersTextField.js +42 -2
- package/PickersTextField/PickersTextField.mjs +42 -2
- package/PickersTextField/PickersTextField.types.d.mts +22 -6
- package/PickersTextField/PickersTextField.types.d.ts +22 -6
- package/StaticDatePicker/StaticDatePicker.js +1 -1
- package/StaticDatePicker/StaticDatePicker.mjs +1 -1
- package/StaticDateTimePicker/StaticDateTimePicker.js +1 -1
- package/StaticDateTimePicker/StaticDateTimePicker.mjs +1 -1
- package/TimeField/TimeField.d.mts +1 -1
- package/TimeField/TimeField.d.ts +1 -1
- package/TimeField/TimeField.js +26 -8
- package/TimeField/TimeField.mjs +26 -8
- package/TimeField/TimeField.types.d.mts +2 -2
- package/TimeField/TimeField.types.d.ts +2 -2
- package/TimeField/useTimeField.d.mts +1 -1
- package/TimeField/useTimeField.d.ts +1 -1
- package/TimePicker/TimePicker.d.mts +1 -1
- package/TimePicker/TimePicker.d.ts +1 -1
- package/TimePicker/TimePicker.js +0 -4
- package/TimePicker/TimePicker.mjs +0 -4
- package/TimePicker/TimePicker.types.d.mts +3 -3
- package/TimePicker/TimePicker.types.d.ts +3 -3
- package/YearCalendar/YearCalendarButton.js +2 -2
- package/YearCalendar/YearCalendarButton.mjs +3 -3
- package/hooks/useParsedFormat.js +5 -7
- package/hooks/useParsedFormat.mjs +5 -7
- package/hooks/useSplitFieldProps.d.mts +1 -1
- package/hooks/useSplitFieldProps.d.ts +1 -1
- package/hooks/useSplitFieldProps.js +1 -1
- package/hooks/useSplitFieldProps.mjs +1 -1
- package/index.d.mts +1 -2
- package/index.d.ts +1 -2
- package/index.js +2 -14
- package/index.mjs +2 -3
- package/internals/components/PickerFieldUI.d.mts +22 -13
- package/internals/components/PickerFieldUI.d.ts +22 -13
- package/internals/components/PickerFieldUI.js +22 -80
- package/internals/components/PickerFieldUI.mjs +22 -80
- package/internals/components/PickerPopper/PickerPopper.js +20 -2
- package/internals/components/PickerPopper/PickerPopper.mjs +20 -2
- package/internals/components/PickersToolbar.js +3 -1
- package/internals/components/PickersToolbar.mjs +3 -1
- package/internals/demo/DemoContainer.js +6 -8
- package/internals/demo/DemoContainer.mjs +6 -8
- package/internals/hooks/PickerDay.types.d.mts +12 -0
- package/internals/hooks/PickerDay.types.d.ts +12 -0
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.mts +2 -2
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -2
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.mts +6 -6
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +6 -6
- package/internals/hooks/useField/buildSectionsFromFormat.d.mts +0 -1
- package/internals/hooks/useField/buildSectionsFromFormat.d.ts +0 -1
- package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/internals/hooks/useField/buildSectionsFromFormat.mjs +1 -1
- package/internals/hooks/useField/index.d.mts +1 -1
- package/internals/hooks/useField/index.d.ts +1 -1
- package/internals/hooks/useField/index.js +2 -8
- package/internals/hooks/useField/index.mjs +1 -1
- package/internals/hooks/useField/useField.d.mts +2 -2
- package/internals/hooks/useField/useField.d.ts +2 -2
- package/internals/hooks/useField/useField.js +265 -8
- package/internals/hooks/useField/useField.mjs +264 -8
- package/internals/hooks/useField/useField.types.d.mts +12 -51
- package/internals/hooks/useField/useField.types.d.ts +12 -51
- package/internals/hooks/useField/useField.utils.d.mts +2 -3
- package/internals/hooks/useField/useField.utils.d.ts +2 -3
- package/internals/hooks/useField/useField.utils.js +8 -65
- package/internals/hooks/useField/useField.utils.mjs +6 -62
- package/internals/hooks/useField/useFieldHiddenInputProps.d.mts +2 -4
- package/internals/hooks/useField/useFieldHiddenInputProps.d.ts +2 -4
- package/internals/hooks/useField/useFieldHiddenInputProps.js +1 -3
- package/internals/hooks/useField/useFieldHiddenInputProps.mjs +1 -3
- package/internals/hooks/useField/useFieldInternalPropsWithDefaults.js +2 -3
- package/internals/hooks/useField/useFieldInternalPropsWithDefaults.mjs +2 -3
- package/internals/hooks/useField/useFieldRootProps.d.mts +5 -5
- package/internals/hooks/useField/useFieldRootProps.d.ts +5 -5
- package/internals/hooks/useField/useFieldRootProps.js +183 -11
- package/internals/hooks/useField/useFieldRootProps.mjs +183 -11
- package/internals/hooks/useField/useFieldSectionContainerProps.d.mts +3 -5
- package/internals/hooks/useField/useFieldSectionContainerProps.d.ts +3 -5
- package/internals/hooks/useField/useFieldSectionContainerProps.js +2 -4
- package/internals/hooks/useField/useFieldSectionContainerProps.mjs +2 -4
- package/internals/hooks/useField/useFieldSectionContentProps.d.mts +6 -7
- package/internals/hooks/useField/useFieldSectionContentProps.d.ts +6 -7
- package/internals/hooks/useField/useFieldSectionContentProps.js +2 -4
- package/internals/hooks/useField/useFieldSectionContentProps.mjs +2 -4
- package/internals/hooks/useField/useFieldState.d.mts +4 -4
- package/internals/hooks/useField/useFieldState.d.ts +4 -4
- package/internals/hooks/useField/useFieldState.js +3 -6
- package/internals/hooks/useField/useFieldState.mjs +3 -6
- package/internals/hooks/useMobilePicker/useMobilePicker.d.mts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.mts +6 -6
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +6 -6
- package/internals/hooks/useNullableFieldPrivateContext.d.mts +3 -2
- package/internals/hooks/useNullableFieldPrivateContext.d.ts +3 -2
- package/internals/hooks/usePicker/usePicker.js +13 -10
- package/internals/hooks/usePicker/usePicker.mjs +13 -10
- package/internals/hooks/usePicker/usePicker.types.d.mts +2 -1
- package/internals/hooks/usePicker/usePicker.types.d.ts +2 -1
- package/{PickersDay → internals/hooks}/usePickerDayOwnerState.d.mts +2 -3
- package/{PickersDay → internals/hooks}/usePickerDayOwnerState.d.ts +2 -3
- package/{PickersDay → internals/hooks}/usePickerDayOwnerState.js +3 -5
- package/{PickersDay → internals/hooks}/usePickerDayOwnerState.mjs +3 -5
- package/internals/index.d.mts +5 -4
- package/internals/index.d.ts +5 -4
- package/internals/index.js +16 -9
- package/internals/index.mjs +4 -3
- package/internals/models/manager.d.mts +3 -5
- package/internals/models/manager.d.ts +3 -5
- package/internals/utils/isElementInteractive.d.mts +1 -0
- package/internals/utils/isElementInteractive.d.ts +1 -0
- package/internals/utils/isElementInteractive.js +34 -0
- package/internals/utils/isElementInteractive.mjs +28 -0
- package/internals/utils/valueManagers.js +1 -2
- package/internals/utils/valueManagers.mjs +2 -3
- package/managers/index.d.mts +2 -2
- package/managers/index.d.ts +2 -2
- package/managers/useDateManager.d.mts +3 -6
- package/managers/useDateManager.d.ts +3 -6
- package/managers/useDateManager.js +2 -6
- package/managers/useDateManager.mjs +2 -6
- package/managers/useDateTimeManager.d.mts +3 -6
- package/managers/useDateTimeManager.d.ts +3 -6
- package/managers/useDateTimeManager.js +2 -6
- package/managers/useDateTimeManager.mjs +2 -6
- package/managers/useTimeManager.d.mts +4 -6
- package/managers/useTimeManager.d.ts +4 -6
- package/managers/useTimeManager.js +1 -3
- package/managers/useTimeManager.mjs +1 -3
- package/models/fields.d.mts +7 -4
- package/models/fields.d.ts +7 -4
- package/models/manager.d.mts +2 -8
- package/models/manager.d.ts +2 -8
- package/package.json +12 -26
- package/themeAugmentation/components.d.mts +4 -8
- package/themeAugmentation/components.d.ts +4 -8
- package/themeAugmentation/overrides.d.mts +2 -4
- package/themeAugmentation/overrides.d.ts +2 -4
- package/themeAugmentation/props.d.mts +5 -7
- package/themeAugmentation/props.d.ts +5 -7
- package/PickerDay2/PickerDay2.d.mts +0 -7
- package/PickerDay2/PickerDay2.d.ts +0 -7
- package/PickerDay2/PickerDay2.types.d.mts +0 -18
- package/PickerDay2/PickerDay2.types.d.ts +0 -18
- package/PickerDay2/index.d.mts +0 -4
- package/PickerDay2/index.d.ts +0 -4
- package/PickerDay2/index.js +0 -25
- package/PickerDay2/index.mjs +0 -2
- package/PickerDay2/pickerDay2Classes.js +0 -14
- package/PickerDay2/pickerDay2Classes.mjs +0 -6
- package/PickersDay/PickersDay.d.mts +0 -15
- package/PickersDay/PickersDay.d.ts +0 -15
- package/PickersDay/PickersDay.js +0 -384
- package/PickersDay/PickersDay.mjs +0 -377
- package/PickersDay/PickersDay.types.d.mts +0 -114
- package/PickersDay/PickersDay.types.d.ts +0 -114
- package/PickersDay/index.d.mts +0 -4
- package/PickersDay/index.d.ts +0 -4
- package/PickersDay/index.js +0 -25
- package/PickersDay/index.mjs +0 -2
- package/PickersDay/pickersDayClasses.d.mts +0 -19
- package/PickersDay/pickersDayClasses.d.ts +0 -19
- package/PickersDay/pickersDayClasses.js +0 -14
- package/PickersDay/pickersDayClasses.mjs +0 -6
- package/internals/hooks/useField/useFieldRootHandleKeyDown.d.mts +0 -16
- package/internals/hooks/useField/useFieldRootHandleKeyDown.d.ts +0 -16
- package/internals/hooks/useField/useFieldRootHandleKeyDown.js +0 -211
- package/internals/hooks/useField/useFieldRootHandleKeyDown.mjs +0 -205
- package/internals/hooks/useField/useFieldV6TextField.d.mts +0 -26
- package/internals/hooks/useField/useFieldV6TextField.d.ts +0 -26
- package/internals/hooks/useField/useFieldV6TextField.js +0 -421
- package/internals/hooks/useField/useFieldV6TextField.mjs +0 -412
- package/internals/hooks/useField/useFieldV7TextField.d.mts +0 -3
- package/internals/hooks/useField/useFieldV7TextField.d.ts +0 -3
- package/internals/hooks/useField/useFieldV7TextField.js +0 -271
- package/internals/hooks/useField/useFieldV7TextField.mjs +0 -263
- /package/{PickerDay2/PickerDay2.types.js → PickerDay/PickerDay.types.js} +0 -0
- /package/{PickerDay2/PickerDay2.types.mjs → PickerDay/PickerDay.types.mjs} +0 -0
- /package/{PickersDay/PickersDay.types.js → internals/hooks/PickerDay.types.js} +0 -0
- /package/{PickersDay/PickersDay.types.mjs → internals/hooks/PickerDay.types.mjs} +0 -0
package/internals/index.mjs
CHANGED
|
@@ -11,9 +11,9 @@ export { PickersToolbarText } from "./components/PickersToolbarText.mjs";
|
|
|
11
11
|
export { pickersToolbarTextClasses } from "./components/pickersToolbarTextClasses.mjs";
|
|
12
12
|
export { pickersArrowSwitcherClasses } from "./components/PickersArrowSwitcher/pickersArrowSwitcherClasses.mjs";
|
|
13
13
|
export { PickersToolbarButton } from "./components/PickersToolbarButton.mjs";
|
|
14
|
-
export { DAY_MARGIN, DIALOG_WIDTH, VIEW_HEIGHT, MULTI_SECTION_CLOCK_SECTION_WIDTH } from "./constants/dimensions.mjs";
|
|
14
|
+
export { DAY_SIZE, DAY_MARGIN, DIALOG_WIDTH, VIEW_HEIGHT, MULTI_SECTION_CLOCK_SECTION_WIDTH } from "./constants/dimensions.mjs";
|
|
15
15
|
export { useControlledValue } from "./hooks/useControlledValue.mjs";
|
|
16
|
-
export { useField, useFieldInternalPropsWithDefaults,
|
|
16
|
+
export { useField, useFieldInternalPropsWithDefaults, createDateStrForHiddenInputFromSections } from "./hooks/useField/index.mjs";
|
|
17
17
|
export { useFieldOwnerState } from "./hooks/useFieldOwnerState.mjs";
|
|
18
18
|
export { useNullableFieldPrivateContext } from "./hooks/useNullableFieldPrivateContext.mjs";
|
|
19
19
|
export { useNullablePickerContext } from "./hooks/useNullablePickerContext.mjs";
|
|
@@ -33,10 +33,11 @@ export { resolveTimeViewsResponse, resolveDateTimeFormat } from "./utils/date-ti
|
|
|
33
33
|
export { executeInTheNextEventLoopTick, getActiveElement, onSpaceOrEnter, mergeSx, DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from "./utils/utils.mjs";
|
|
34
34
|
export { useReduceAnimations } from "./hooks/useReduceAnimations.mjs";
|
|
35
35
|
export { applyDefaultViewProps } from "./utils/views.mjs";
|
|
36
|
+
export { isElementInteractive } from "./utils/isElementInteractive.mjs";
|
|
36
37
|
export { DayCalendar } from "../DateCalendar/DayCalendar.mjs";
|
|
37
38
|
export { useCalendarState } from "../DateCalendar/useCalendarState.mjs";
|
|
38
39
|
export { DateTimePickerToolbarOverrideContext } from "../DateTimePicker/DateTimePickerToolbar.mjs";
|
|
39
|
-
export { usePickerDayOwnerState } from "
|
|
40
|
+
export { usePickerDayOwnerState } from "./hooks/usePickerDayOwnerState.mjs";
|
|
40
41
|
export { useApplyDefaultValuesToDateValidationProps } from "../managers/useDateManager.mjs";
|
|
41
42
|
export { useApplyDefaultValuesToTimeValidationProps } from "../managers/useTimeManager.mjs";
|
|
42
43
|
export { useApplyDefaultValuesToDateTimeValidationProps } from "../managers/useDateTimeManager.mjs";
|
|
@@ -2,10 +2,9 @@ import type { MuiPickersAdapter, PickerManager, PickersTimezone, PickerValidDate
|
|
|
2
2
|
import type { GetDefaultReferenceDateProps } from "../utils/getDefaultReferenceDate.mjs";
|
|
3
3
|
import { InferNonNullablePickerValue, PickerRangeValue, PickerValidValue } from "./value.mjs";
|
|
4
4
|
import type { UseFieldInternalProps } from "../hooks/useField/index.mjs";
|
|
5
|
-
export type PickerAnyManager = PickerManager<any, any, any, any
|
|
6
|
-
type PickerManagerProperties<TManager extends PickerAnyManager> = TManager extends PickerManager<infer TValue, infer
|
|
5
|
+
export type PickerAnyManager = PickerManager<any, any, any, any>;
|
|
6
|
+
type PickerManagerProperties<TManager extends PickerAnyManager> = TManager extends PickerManager<infer TValue, infer TError, infer TValidationProps, infer TFieldInternalProps> ? {
|
|
7
7
|
value: TValue;
|
|
8
|
-
enableAccessibleFieldDOMStructure: TEnableAccessibleFieldDOMStructure;
|
|
9
8
|
error: TError;
|
|
10
9
|
validationProps: TValidationProps;
|
|
11
10
|
fieldInternalProps: TFieldInternalProps;
|
|
@@ -14,8 +13,7 @@ export type PickerManagerValue<TManager extends PickerAnyManager> = PickerManage
|
|
|
14
13
|
export type PickerManagerError<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['error'];
|
|
15
14
|
export type PickerManagerFieldInternalProps<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['fieldInternalProps'];
|
|
16
15
|
export type PickerManagerValidationProps<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['validationProps'];
|
|
17
|
-
export type PickerManagerFieldInternalPropsWithDefaults<TManager extends PickerAnyManager> = UseFieldInternalProps<PickerManagerValue<TManager>,
|
|
18
|
-
export type PickerManagerEnableAccessibleFieldDOMStructure<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['enableAccessibleFieldDOMStructure'];
|
|
16
|
+
export type PickerManagerFieldInternalPropsWithDefaults<TManager extends PickerAnyManager> = UseFieldInternalProps<PickerManagerValue<TManager>, PickerManagerError<TManager>> & PickerManagerValidationProps<TManager>;
|
|
19
17
|
export interface PickerValueManager<TValue extends PickerValidValue, TError> {
|
|
20
18
|
/**
|
|
21
19
|
* Determines if two values are equal.
|
|
@@ -2,10 +2,9 @@ import type { MuiPickersAdapter, PickerManager, PickersTimezone, PickerValidDate
|
|
|
2
2
|
import type { GetDefaultReferenceDateProps } from "../utils/getDefaultReferenceDate.js";
|
|
3
3
|
import { InferNonNullablePickerValue, PickerRangeValue, PickerValidValue } from "./value.js";
|
|
4
4
|
import type { UseFieldInternalProps } from "../hooks/useField/index.js";
|
|
5
|
-
export type PickerAnyManager = PickerManager<any, any, any, any
|
|
6
|
-
type PickerManagerProperties<TManager extends PickerAnyManager> = TManager extends PickerManager<infer TValue, infer
|
|
5
|
+
export type PickerAnyManager = PickerManager<any, any, any, any>;
|
|
6
|
+
type PickerManagerProperties<TManager extends PickerAnyManager> = TManager extends PickerManager<infer TValue, infer TError, infer TValidationProps, infer TFieldInternalProps> ? {
|
|
7
7
|
value: TValue;
|
|
8
|
-
enableAccessibleFieldDOMStructure: TEnableAccessibleFieldDOMStructure;
|
|
9
8
|
error: TError;
|
|
10
9
|
validationProps: TValidationProps;
|
|
11
10
|
fieldInternalProps: TFieldInternalProps;
|
|
@@ -14,8 +13,7 @@ export type PickerManagerValue<TManager extends PickerAnyManager> = PickerManage
|
|
|
14
13
|
export type PickerManagerError<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['error'];
|
|
15
14
|
export type PickerManagerFieldInternalProps<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['fieldInternalProps'];
|
|
16
15
|
export type PickerManagerValidationProps<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['validationProps'];
|
|
17
|
-
export type PickerManagerFieldInternalPropsWithDefaults<TManager extends PickerAnyManager> = UseFieldInternalProps<PickerManagerValue<TManager>,
|
|
18
|
-
export type PickerManagerEnableAccessibleFieldDOMStructure<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['enableAccessibleFieldDOMStructure'];
|
|
16
|
+
export type PickerManagerFieldInternalPropsWithDefaults<TManager extends PickerAnyManager> = UseFieldInternalProps<PickerManagerValue<TManager>, PickerManagerError<TManager>> & PickerManagerValidationProps<TManager>;
|
|
19
17
|
export interface PickerValueManager<TValue extends PickerValidValue, TError> {
|
|
20
18
|
/**
|
|
21
19
|
* Determines if two values are equal.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isElementInteractive(element: HTMLElement): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isElementInteractive(element: HTMLElement): boolean;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isElementInteractive = isElementInteractive;
|
|
7
|
+
/**
|
|
8
|
+
* Taken from https://github.com/matijs/is-interactive-element/
|
|
9
|
+
*/
|
|
10
|
+
const isInputHidden = input => input.type === 'hidden';
|
|
11
|
+
function isElementInteractive(element) {
|
|
12
|
+
const {
|
|
13
|
+
nodeName
|
|
14
|
+
} = element;
|
|
15
|
+
if (['BUTTON', 'DETAILS', 'EMBED', 'IFRAME', 'KEYGEN', 'LABEL', 'SELECT', 'TEXTAREA'].includes(nodeName)) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
if (nodeName === 'A' && element.hasAttribute('href')) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
if (element instanceof HTMLInputElement && !isInputHidden(element)) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
if (['AUDIO', 'VIDEO'].includes(nodeName) && element.hasAttribute('controls')) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
if (['IMG', 'OBJECT'].includes(nodeName) && element.hasAttribute('usemap')) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
if (element.hasAttribute('tabindex') && element.tabIndex > -1) {
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Taken from https://github.com/matijs/is-interactive-element/
|
|
3
|
+
*/
|
|
4
|
+
const isInputHidden = input => input.type === 'hidden';
|
|
5
|
+
export function isElementInteractive(element) {
|
|
6
|
+
const {
|
|
7
|
+
nodeName
|
|
8
|
+
} = element;
|
|
9
|
+
if (['BUTTON', 'DETAILS', 'EMBED', 'IFRAME', 'KEYGEN', 'LABEL', 'SELECT', 'TEXTAREA'].includes(nodeName)) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
if (nodeName === 'A' && element.hasAttribute('href')) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
if (element instanceof HTMLInputElement && !isInputHidden(element)) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
if (['AUDIO', 'VIDEO'].includes(nodeName) && element.hasAttribute('controls')) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
if (['IMG', 'OBJECT'].includes(nodeName) && element.hasAttribute('usemap')) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
if (element.hasAttribute('tabindex') && element.tabIndex > -1) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
@@ -39,8 +39,7 @@ const singleItemValueManager = exports.singleItemValueManager = {
|
|
|
39
39
|
const singleItemFieldValueManager = exports.singleItemFieldValueManager = {
|
|
40
40
|
updateReferenceValue: (adapter, value, prevReferenceValue) => adapter.isValid(value) ? value : prevReferenceValue,
|
|
41
41
|
getSectionsFromValue: (date, getSectionsFromDate) => getSectionsFromDate(date),
|
|
42
|
-
|
|
43
|
-
getV6InputValueFromSections: _useField.createDateStrForV6InputFromSections,
|
|
42
|
+
getHiddenInputValueFromSections: _useField.createDateStrForHiddenInputFromSections,
|
|
44
43
|
parseValueStr: (valueStr, referenceValue, parseDate) => parseDate(valueStr.trim(), referenceValue),
|
|
45
44
|
getDateFromSection: value => value,
|
|
46
45
|
getDateSectionsFromValue: sections => sections,
|
|
@@ -3,7 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
const _excluded = ["value", "referenceDate"];
|
|
4
4
|
import { areDatesEqual, getTodayDate, replaceInvalidDateByNull } from "./date-utils.mjs";
|
|
5
5
|
import { getDefaultReferenceDate } from "./getDefaultReferenceDate.mjs";
|
|
6
|
-
import {
|
|
6
|
+
import { createDateStrForHiddenInputFromSections } from "../hooks/useField/useField.utils.mjs";
|
|
7
7
|
export const singleItemValueManager = {
|
|
8
8
|
emptyValue: null,
|
|
9
9
|
getTodayValue: getTodayDate,
|
|
@@ -32,8 +32,7 @@ export const singleItemValueManager = {
|
|
|
32
32
|
export const singleItemFieldValueManager = {
|
|
33
33
|
updateReferenceValue: (adapter, value, prevReferenceValue) => adapter.isValid(value) ? value : prevReferenceValue,
|
|
34
34
|
getSectionsFromValue: (date, getSectionsFromDate) => getSectionsFromDate(date),
|
|
35
|
-
|
|
36
|
-
getV6InputValueFromSections: createDateStrForV6InputFromSections,
|
|
35
|
+
getHiddenInputValueFromSections: createDateStrForHiddenInputFromSections,
|
|
37
36
|
parseValueStr: (valueStr, referenceValue, parseDate) => parseDate(valueStr.trim(), referenceValue),
|
|
38
37
|
getDateFromSection: value => value,
|
|
39
38
|
getDateSectionsFromValue: sections => sections,
|
package/managers/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { useDateManager } from "./useDateManager.mjs";
|
|
2
|
-
export type { UseDateManagerReturnValue,
|
|
2
|
+
export type { UseDateManagerReturnValue, DateManagerFieldInternalProps } from "./useDateManager.mjs";
|
|
3
3
|
export { useTimeManager } from "./useTimeManager.mjs";
|
|
4
4
|
export type { UseTimeManagerReturnValue, UseTimeManagerParameters, TimeManagerFieldInternalProps } from "./useTimeManager.mjs";
|
|
5
5
|
export { useDateTimeManager } from "./useDateTimeManager.mjs";
|
|
6
|
-
export type { UseDateTimeManagerReturnValue,
|
|
6
|
+
export type { UseDateTimeManagerReturnValue, DateTimeManagerFieldInternalProps } from "./useDateTimeManager.mjs";
|
package/managers/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { useDateManager } from "./useDateManager.js";
|
|
2
|
-
export type { UseDateManagerReturnValue,
|
|
2
|
+
export type { UseDateManagerReturnValue, DateManagerFieldInternalProps } from "./useDateManager.js";
|
|
3
3
|
export { useTimeManager } from "./useTimeManager.js";
|
|
4
4
|
export type { UseTimeManagerReturnValue, UseTimeManagerParameters, TimeManagerFieldInternalProps } from "./useTimeManager.js";
|
|
5
5
|
export { useDateTimeManager } from "./useDateTimeManager.js";
|
|
6
|
-
export type { UseDateTimeManagerReturnValue,
|
|
6
|
+
export type { UseDateTimeManagerReturnValue, DateTimeManagerFieldInternalProps } from "./useDateTimeManager.js";
|
|
@@ -3,12 +3,9 @@ import { PickerManager, DateValidationError } from "../models/index.mjs";
|
|
|
3
3
|
import { UseFieldInternalProps } from "../internals/hooks/useField/index.mjs";
|
|
4
4
|
import { ExportedValidateDateProps, ValidateDateProps } from "../validation/validateDate.mjs";
|
|
5
5
|
import { PickerValue } from "../internals/models/index.mjs";
|
|
6
|
-
export declare function useDateManager
|
|
6
|
+
export declare function useDateManager(): UseDateManagerReturnValue;
|
|
7
7
|
type SharedDateAndDateRangeValidationProps = 'disablePast' | 'disableFuture' | 'minDate' | 'maxDate';
|
|
8
8
|
export declare function useApplyDefaultValuesToDateValidationProps(props: Pick<ExportedValidateDateProps, SharedDateAndDateRangeValidationProps>): Pick<ValidateDateProps, SharedDateAndDateRangeValidationProps>;
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
export type UseDateManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, DateValidationError, ValidateDateProps, DateManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
13
|
-
export interface DateManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, DateValidationError>, 'format'>, ExportedValidateDateProps {}
|
|
9
|
+
export type UseDateManagerReturnValue = PickerManager<PickerValue, DateValidationError, ValidateDateProps, DateManagerFieldInternalProps>;
|
|
10
|
+
export interface DateManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, DateValidationError>, 'format'>, ExportedValidateDateProps {}
|
|
14
11
|
export {};
|
|
@@ -3,12 +3,9 @@ import { PickerManager, DateValidationError } from "../models/index.js";
|
|
|
3
3
|
import { UseFieldInternalProps } from "../internals/hooks/useField/index.js";
|
|
4
4
|
import { ExportedValidateDateProps, ValidateDateProps } from "../validation/validateDate.js";
|
|
5
5
|
import { PickerValue } from "../internals/models/index.js";
|
|
6
|
-
export declare function useDateManager
|
|
6
|
+
export declare function useDateManager(): UseDateManagerReturnValue;
|
|
7
7
|
type SharedDateAndDateRangeValidationProps = 'disablePast' | 'disableFuture' | 'minDate' | 'maxDate';
|
|
8
8
|
export declare function useApplyDefaultValuesToDateValidationProps(props: Pick<ExportedValidateDateProps, SharedDateAndDateRangeValidationProps>): Pick<ValidateDateProps, SharedDateAndDateRangeValidationProps>;
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
export type UseDateManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, DateValidationError, ValidateDateProps, DateManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
13
|
-
export interface DateManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, DateValidationError>, 'format'>, ExportedValidateDateProps {}
|
|
9
|
+
export type UseDateManagerReturnValue = PickerManager<PickerValue, DateValidationError, ValidateDateProps, DateManagerFieldInternalProps>;
|
|
10
|
+
export interface DateManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, DateValidationError>, 'format'>, ExportedValidateDateProps {}
|
|
14
11
|
export {};
|
|
@@ -15,19 +15,15 @@ var _valueManagers = require("../internals/utils/valueManagers");
|
|
|
15
15
|
var _validation = require("../validation");
|
|
16
16
|
var _useUtils = require("../internals/hooks/useUtils");
|
|
17
17
|
var _hooks = require("../hooks");
|
|
18
|
-
function useDateManager(
|
|
19
|
-
const {
|
|
20
|
-
enableAccessibleFieldDOMStructure = true
|
|
21
|
-
} = parameters;
|
|
18
|
+
function useDateManager() {
|
|
22
19
|
return React.useMemo(() => ({
|
|
23
20
|
valueType: 'date',
|
|
24
21
|
validator: _validation.validateDate,
|
|
25
22
|
internal_valueManager: _valueManagers.singleItemValueManager,
|
|
26
23
|
internal_fieldValueManager: _valueManagers.singleItemFieldValueManager,
|
|
27
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
28
24
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToDateFieldInternalProps,
|
|
29
25
|
internal_useOpenPickerButtonAriaLabel: useOpenPickerButtonAriaLabel
|
|
30
|
-
}), [
|
|
26
|
+
}), []);
|
|
31
27
|
}
|
|
32
28
|
function useOpenPickerButtonAriaLabel(value) {
|
|
33
29
|
const adapter = (0, _hooks.usePickerAdapter)();
|
|
@@ -7,19 +7,15 @@ import { singleItemFieldValueManager, singleItemValueManager } from "../internal
|
|
|
7
7
|
import { validateDate } from "../validation/index.mjs";
|
|
8
8
|
import { useDefaultDates } from "../internals/hooks/useUtils.mjs";
|
|
9
9
|
import { usePickerAdapter, usePickerTranslations } from "../hooks/index.mjs";
|
|
10
|
-
export function useDateManager(
|
|
11
|
-
const {
|
|
12
|
-
enableAccessibleFieldDOMStructure = true
|
|
13
|
-
} = parameters;
|
|
10
|
+
export function useDateManager() {
|
|
14
11
|
return React.useMemo(() => ({
|
|
15
12
|
valueType: 'date',
|
|
16
13
|
validator: validateDate,
|
|
17
14
|
internal_valueManager: singleItemValueManager,
|
|
18
15
|
internal_fieldValueManager: singleItemFieldValueManager,
|
|
19
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
20
16
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToDateFieldInternalProps,
|
|
21
17
|
internal_useOpenPickerButtonAriaLabel: useOpenPickerButtonAriaLabel
|
|
22
|
-
}), [
|
|
18
|
+
}), []);
|
|
23
19
|
}
|
|
24
20
|
function useOpenPickerButtonAriaLabel(value) {
|
|
25
21
|
const adapter = usePickerAdapter();
|
|
@@ -4,12 +4,9 @@ import { UseFieldInternalProps } from "../internals/hooks/useField/index.mjs";
|
|
|
4
4
|
import { AmPmProps } from "../internals/models/props/time.mjs";
|
|
5
5
|
import { ExportedValidateDateTimeProps, ValidateDateTimeProps } from "../validation/validateDateTime.mjs";
|
|
6
6
|
import { PickerValue } from "../internals/models/index.mjs";
|
|
7
|
-
export declare function useDateTimeManager
|
|
7
|
+
export declare function useDateTimeManager(): UseDateTimeManagerReturnValue;
|
|
8
8
|
type SharedDateTimeAndDateTimeRangeValidationProps = 'disablePast' | 'disableFuture' | 'minTime' | 'maxTime' | 'minDate' | 'maxDate';
|
|
9
9
|
export declare function useApplyDefaultValuesToDateTimeValidationProps(props: Pick<ExportedValidateDateTimeProps, SharedDateTimeAndDateTimeRangeValidationProps | 'minDateTime' | 'maxDateTime'>): Pick<ValidateDateTimeProps, SharedDateTimeAndDateTimeRangeValidationProps>;
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
export type UseDateTimeManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, DateTimeValidationError, ValidateDateTimeProps, DateTimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
14
|
-
export interface DateTimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, DateTimeValidationError>, 'format'>, ExportedValidateDateTimeProps, AmPmProps {}
|
|
10
|
+
export type UseDateTimeManagerReturnValue = PickerManager<PickerValue, DateTimeValidationError, ValidateDateTimeProps, DateTimeManagerFieldInternalProps>;
|
|
11
|
+
export interface DateTimeManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, DateTimeValidationError>, 'format'>, ExportedValidateDateTimeProps, AmPmProps {}
|
|
15
12
|
export {};
|
|
@@ -4,12 +4,9 @@ import { UseFieldInternalProps } from "../internals/hooks/useField/index.js";
|
|
|
4
4
|
import { AmPmProps } from "../internals/models/props/time.js";
|
|
5
5
|
import { ExportedValidateDateTimeProps, ValidateDateTimeProps } from "../validation/validateDateTime.js";
|
|
6
6
|
import { PickerValue } from "../internals/models/index.js";
|
|
7
|
-
export declare function useDateTimeManager
|
|
7
|
+
export declare function useDateTimeManager(): UseDateTimeManagerReturnValue;
|
|
8
8
|
type SharedDateTimeAndDateTimeRangeValidationProps = 'disablePast' | 'disableFuture' | 'minTime' | 'maxTime' | 'minDate' | 'maxDate';
|
|
9
9
|
export declare function useApplyDefaultValuesToDateTimeValidationProps(props: Pick<ExportedValidateDateTimeProps, SharedDateTimeAndDateTimeRangeValidationProps | 'minDateTime' | 'maxDateTime'>): Pick<ValidateDateTimeProps, SharedDateTimeAndDateTimeRangeValidationProps>;
|
|
10
|
-
export
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
export type UseDateTimeManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, DateTimeValidationError, ValidateDateTimeProps, DateTimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
14
|
-
export interface DateTimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, DateTimeValidationError>, 'format'>, ExportedValidateDateTimeProps, AmPmProps {}
|
|
10
|
+
export type UseDateTimeManagerReturnValue = PickerManager<PickerValue, DateTimeValidationError, ValidateDateTimeProps, DateTimeManagerFieldInternalProps>;
|
|
11
|
+
export interface DateTimeManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, DateTimeValidationError>, 'format'>, ExportedValidateDateTimeProps, AmPmProps {}
|
|
15
12
|
export {};
|
|
@@ -15,19 +15,15 @@ var _valueManagers = require("../internals/utils/valueManagers");
|
|
|
15
15
|
var _validation = require("../validation");
|
|
16
16
|
var _useUtils = require("../internals/hooks/useUtils");
|
|
17
17
|
var _hooks = require("../hooks");
|
|
18
|
-
function useDateTimeManager(
|
|
19
|
-
const {
|
|
20
|
-
enableAccessibleFieldDOMStructure = true
|
|
21
|
-
} = parameters;
|
|
18
|
+
function useDateTimeManager() {
|
|
22
19
|
return React.useMemo(() => ({
|
|
23
20
|
valueType: 'date-time',
|
|
24
21
|
validator: _validation.validateDateTime,
|
|
25
22
|
internal_valueManager: _valueManagers.singleItemValueManager,
|
|
26
23
|
internal_fieldValueManager: _valueManagers.singleItemFieldValueManager,
|
|
27
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
28
24
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToDateTimeFieldInternalProps,
|
|
29
25
|
internal_useOpenPickerButtonAriaLabel: useOpenPickerButtonAriaLabel
|
|
30
|
-
}), [
|
|
26
|
+
}), []);
|
|
31
27
|
}
|
|
32
28
|
function useOpenPickerButtonAriaLabel(value) {
|
|
33
29
|
const adapter = (0, _hooks.usePickerAdapter)();
|
|
@@ -7,19 +7,15 @@ import { singleItemFieldValueManager, singleItemValueManager } from "../internal
|
|
|
7
7
|
import { validateDateTime } from "../validation/index.mjs";
|
|
8
8
|
import { useDefaultDates } from "../internals/hooks/useUtils.mjs";
|
|
9
9
|
import { usePickerAdapter, usePickerTranslations } from "../hooks/index.mjs";
|
|
10
|
-
export function useDateTimeManager(
|
|
11
|
-
const {
|
|
12
|
-
enableAccessibleFieldDOMStructure = true
|
|
13
|
-
} = parameters;
|
|
10
|
+
export function useDateTimeManager() {
|
|
14
11
|
return React.useMemo(() => ({
|
|
15
12
|
valueType: 'date-time',
|
|
16
13
|
validator: validateDateTime,
|
|
17
14
|
internal_valueManager: singleItemValueManager,
|
|
18
15
|
internal_fieldValueManager: singleItemFieldValueManager,
|
|
19
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
20
16
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToDateTimeFieldInternalProps,
|
|
21
17
|
internal_useOpenPickerButtonAriaLabel: useOpenPickerButtonAriaLabel
|
|
22
|
-
}), [
|
|
18
|
+
}), []);
|
|
23
19
|
}
|
|
24
20
|
function useOpenPickerButtonAriaLabel(value) {
|
|
25
21
|
const adapter = usePickerAdapter();
|
|
@@ -4,12 +4,10 @@ import { UseFieldInternalProps } from "../internals/hooks/useField/index.mjs";
|
|
|
4
4
|
import { AmPmProps } from "../internals/models/props/time.mjs";
|
|
5
5
|
import { ExportedValidateTimeProps, ValidateTimeProps } from "../validation/validateTime.mjs";
|
|
6
6
|
import { PickerValue } from "../internals/models/index.mjs";
|
|
7
|
-
export declare function useTimeManager
|
|
7
|
+
export declare function useTimeManager(parameters?: UseTimeManagerParameters): UseTimeManagerReturnValue;
|
|
8
8
|
type SharedTimeAndTimeRangeValidationProps = 'disablePast' | 'disableFuture';
|
|
9
9
|
export declare function useApplyDefaultValuesToTimeValidationProps(props: Pick<ExportedValidateTimeProps, SharedTimeAndTimeRangeValidationProps>): Pick<ValidateTimeProps, SharedTimeAndTimeRangeValidationProps>;
|
|
10
|
-
export interface UseTimeManagerParameters
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
export type UseTimeManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError, ValidateTimeProps, TimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
14
|
-
export interface TimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError>, 'format'>, ExportedValidateTimeProps, AmPmProps {}
|
|
10
|
+
export interface UseTimeManagerParameters extends AmPmProps {}
|
|
11
|
+
export type UseTimeManagerReturnValue = PickerManager<PickerValue, TimeValidationError, ValidateTimeProps, TimeManagerFieldInternalProps>;
|
|
12
|
+
export interface TimeManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, TimeValidationError>, 'format'>, ExportedValidateTimeProps, AmPmProps {}
|
|
15
13
|
export {};
|
|
@@ -4,12 +4,10 @@ import { UseFieldInternalProps } from "../internals/hooks/useField/index.js";
|
|
|
4
4
|
import { AmPmProps } from "../internals/models/props/time.js";
|
|
5
5
|
import { ExportedValidateTimeProps, ValidateTimeProps } from "../validation/validateTime.js";
|
|
6
6
|
import { PickerValue } from "../internals/models/index.js";
|
|
7
|
-
export declare function useTimeManager
|
|
7
|
+
export declare function useTimeManager(parameters?: UseTimeManagerParameters): UseTimeManagerReturnValue;
|
|
8
8
|
type SharedTimeAndTimeRangeValidationProps = 'disablePast' | 'disableFuture';
|
|
9
9
|
export declare function useApplyDefaultValuesToTimeValidationProps(props: Pick<ExportedValidateTimeProps, SharedTimeAndTimeRangeValidationProps>): Pick<ValidateTimeProps, SharedTimeAndTimeRangeValidationProps>;
|
|
10
|
-
export interface UseTimeManagerParameters
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
export type UseTimeManagerReturnValue<TEnableAccessibleFieldDOMStructure extends boolean> = PickerManager<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError, ValidateTimeProps, TimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure>>;
|
|
14
|
-
export interface TimeManagerFieldInternalProps<TEnableAccessibleFieldDOMStructure extends boolean> extends MakeOptional<UseFieldInternalProps<PickerValue, TEnableAccessibleFieldDOMStructure, TimeValidationError>, 'format'>, ExportedValidateTimeProps, AmPmProps {}
|
|
10
|
+
export interface UseTimeManagerParameters extends AmPmProps {}
|
|
11
|
+
export type UseTimeManagerReturnValue = PickerManager<PickerValue, TimeValidationError, ValidateTimeProps, TimeManagerFieldInternalProps>;
|
|
12
|
+
export interface TimeManagerFieldInternalProps extends MakeOptional<UseFieldInternalProps<PickerValue, TimeValidationError>, 'format'>, ExportedValidateTimeProps, AmPmProps {}
|
|
15
13
|
export {};
|
|
@@ -15,7 +15,6 @@ var _validation = require("../validation");
|
|
|
15
15
|
var _hooks = require("../hooks");
|
|
16
16
|
function useTimeManager(parameters = {}) {
|
|
17
17
|
const {
|
|
18
|
-
enableAccessibleFieldDOMStructure = true,
|
|
19
18
|
ampm
|
|
20
19
|
} = parameters;
|
|
21
20
|
return React.useMemo(() => ({
|
|
@@ -23,10 +22,9 @@ function useTimeManager(parameters = {}) {
|
|
|
23
22
|
validator: _validation.validateTime,
|
|
24
23
|
internal_valueManager: _valueManagers.singleItemValueManager,
|
|
25
24
|
internal_fieldValueManager: _valueManagers.singleItemFieldValueManager,
|
|
26
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
27
25
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToTimeFieldInternalProps,
|
|
28
26
|
internal_useOpenPickerButtonAriaLabel: createUseOpenPickerButtonAriaLabel(ampm)
|
|
29
|
-
}), [ampm
|
|
27
|
+
}), [ampm]);
|
|
30
28
|
}
|
|
31
29
|
function createUseOpenPickerButtonAriaLabel(ampm) {
|
|
32
30
|
return function useOpenPickerButtonAriaLabel(value) {
|
|
@@ -7,7 +7,6 @@ import { validateTime } from "../validation/index.mjs";
|
|
|
7
7
|
import { usePickerAdapter, usePickerTranslations } from "../hooks/index.mjs";
|
|
8
8
|
export function useTimeManager(parameters = {}) {
|
|
9
9
|
const {
|
|
10
|
-
enableAccessibleFieldDOMStructure = true,
|
|
11
10
|
ampm
|
|
12
11
|
} = parameters;
|
|
13
12
|
return React.useMemo(() => ({
|
|
@@ -15,10 +14,9 @@ export function useTimeManager(parameters = {}) {
|
|
|
15
14
|
validator: validateTime,
|
|
16
15
|
internal_valueManager: singleItemValueManager,
|
|
17
16
|
internal_fieldValueManager: singleItemFieldValueManager,
|
|
18
|
-
internal_enableAccessibleFieldDOMStructure: enableAccessibleFieldDOMStructure,
|
|
19
17
|
internal_useApplyDefaultValuesToFieldInternalProps: useApplyDefaultValuesToTimeFieldInternalProps,
|
|
20
18
|
internal_useOpenPickerButtonAriaLabel: createUseOpenPickerButtonAriaLabel(ampm)
|
|
21
|
-
}), [ampm
|
|
19
|
+
}), [ampm]);
|
|
22
20
|
}
|
|
23
21
|
function createUseOpenPickerButtonAriaLabel(ampm) {
|
|
24
22
|
return function useOpenPickerButtonAriaLabel(value) {
|
package/models/fields.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { TextFieldProps } from '@mui/material/TextField';
|
|
3
2
|
import { FormControlOwnProps } from '@mui/material/FormControl';
|
|
4
3
|
import type { ExportedPickersSectionListProps } from "../PickersSectionList/index.mjs";
|
|
5
4
|
import type { UseFieldInternalProps, UseFieldReturnValue } from "../internals/hooks/useField/index.mjs";
|
|
@@ -104,6 +103,10 @@ export interface FieldRef<TValue extends PickerValidValue> {
|
|
|
104
103
|
* @returns {boolean} `true` if the field is focused.
|
|
105
104
|
*/
|
|
106
105
|
isFieldFocused: () => boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Clears the field.
|
|
108
|
+
*/
|
|
109
|
+
clearValue: () => void;
|
|
107
110
|
}
|
|
108
111
|
export type FieldSelectedSections = number | FieldSectionType | null | 'all';
|
|
109
112
|
export interface FieldOwnerState extends PickerOwnerState {
|
|
@@ -129,18 +132,18 @@ export interface FieldOwnerState extends PickerOwnerState {
|
|
|
129
132
|
/**
|
|
130
133
|
* Props the `slotProps.field` of a Picker can receive.
|
|
131
134
|
*/
|
|
132
|
-
export type PickerFieldSlotProps<TValue extends PickerValidValue
|
|
135
|
+
export type PickerFieldSlotProps<TValue extends PickerValidValue> = ExportedPickerFieldUIProps & Pick<UseFieldInternalProps<TValue, unknown>, 'shouldRespectLeadingZeros' | 'readOnly' | 'fieldRef'> & React.HTMLAttributes<HTMLDivElement> & {
|
|
133
136
|
ref?: React.Ref<HTMLDivElement>;
|
|
134
137
|
};
|
|
135
138
|
/**
|
|
136
139
|
* Props the text field receives when used inside a single input Picker.
|
|
137
140
|
* Only contains what the MUI components are passing to the text field, not what users can pass using the `props.slotProps.field` and `props.slotProps.textField`.
|
|
138
141
|
*/
|
|
139
|
-
export type BaseSingleInputPickersTextFieldProps
|
|
142
|
+
export type BaseSingleInputPickersTextFieldProps = Omit<UseFieldReturnValue<BaseSingleInputFieldProps>, 'slots' | 'slotProps' | 'clearable' | 'onClear' | 'openPickerButtonPosition' | 'clearButtonPosition' | 'openPickerAriaLabel'>;
|
|
140
143
|
/**
|
|
141
144
|
* Props the built-in text field component can receive.
|
|
142
145
|
*/
|
|
143
|
-
export type BuiltInFieldTextFieldProps
|
|
146
|
+
export type BuiltInFieldTextFieldProps = Partial<Omit<PickersTextFieldProps, keyof ExportedPickersSectionListProps>>;
|
|
144
147
|
export interface PickerTextFieldOwnerState extends FieldOwnerState {
|
|
145
148
|
/**
|
|
146
149
|
* `true` if the value of the field is currently empty.
|
package/models/fields.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { TextFieldProps } from '@mui/material/TextField';
|
|
3
2
|
import { FormControlOwnProps } from '@mui/material/FormControl';
|
|
4
3
|
import type { ExportedPickersSectionListProps } from "../PickersSectionList/index.js";
|
|
5
4
|
import type { UseFieldInternalProps, UseFieldReturnValue } from "../internals/hooks/useField/index.js";
|
|
@@ -104,6 +103,10 @@ export interface FieldRef<TValue extends PickerValidValue> {
|
|
|
104
103
|
* @returns {boolean} `true` if the field is focused.
|
|
105
104
|
*/
|
|
106
105
|
isFieldFocused: () => boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Clears the field.
|
|
108
|
+
*/
|
|
109
|
+
clearValue: () => void;
|
|
107
110
|
}
|
|
108
111
|
export type FieldSelectedSections = number | FieldSectionType | null | 'all';
|
|
109
112
|
export interface FieldOwnerState extends PickerOwnerState {
|
|
@@ -129,18 +132,18 @@ export interface FieldOwnerState extends PickerOwnerState {
|
|
|
129
132
|
/**
|
|
130
133
|
* Props the `slotProps.field` of a Picker can receive.
|
|
131
134
|
*/
|
|
132
|
-
export type PickerFieldSlotProps<TValue extends PickerValidValue
|
|
135
|
+
export type PickerFieldSlotProps<TValue extends PickerValidValue> = ExportedPickerFieldUIProps & Pick<UseFieldInternalProps<TValue, unknown>, 'shouldRespectLeadingZeros' | 'readOnly' | 'fieldRef'> & React.HTMLAttributes<HTMLDivElement> & {
|
|
133
136
|
ref?: React.Ref<HTMLDivElement>;
|
|
134
137
|
};
|
|
135
138
|
/**
|
|
136
139
|
* Props the text field receives when used inside a single input Picker.
|
|
137
140
|
* Only contains what the MUI components are passing to the text field, not what users can pass using the `props.slotProps.field` and `props.slotProps.textField`.
|
|
138
141
|
*/
|
|
139
|
-
export type BaseSingleInputPickersTextFieldProps
|
|
142
|
+
export type BaseSingleInputPickersTextFieldProps = Omit<UseFieldReturnValue<BaseSingleInputFieldProps>, 'slots' | 'slotProps' | 'clearable' | 'onClear' | 'openPickerButtonPosition' | 'clearButtonPosition' | 'openPickerAriaLabel'>;
|
|
140
143
|
/**
|
|
141
144
|
* Props the built-in text field component can receive.
|
|
142
145
|
*/
|
|
143
|
-
export type BuiltInFieldTextFieldProps
|
|
146
|
+
export type BuiltInFieldTextFieldProps = Partial<Omit<PickersTextFieldProps, keyof ExportedPickersSectionListProps>>;
|
|
144
147
|
export interface PickerTextFieldOwnerState extends FieldOwnerState {
|
|
145
148
|
/**
|
|
146
149
|
* `true` if the value of the field is currently empty.
|
package/models/manager.d.mts
CHANGED
|
@@ -20,7 +20,7 @@ import type { PickerValueType } from "./common.mjs";
|
|
|
20
20
|
* });
|
|
21
21
|
* ```
|
|
22
22
|
*/
|
|
23
|
-
export interface PickerManager<TValue extends PickerValidValue,
|
|
23
|
+
export interface PickerManager<TValue extends PickerValidValue, TError, TValidationProps extends {}, TFieldInternalProps extends {}> {
|
|
24
24
|
/**
|
|
25
25
|
* The type of the value (e.g. 'date', 'date-time', 'time').
|
|
26
26
|
*/
|
|
@@ -53,12 +53,6 @@ export interface PickerManager<TValue extends PickerValidValue, TEnableAccessibl
|
|
|
53
53
|
* This property is not part of the public API and should not be used directly.
|
|
54
54
|
*/
|
|
55
55
|
internal_fieldValueManager: FieldValueManager<TValue>;
|
|
56
|
-
/**
|
|
57
|
-
* `true` if the field is using the accessible DOM structure.
|
|
58
|
-
* `false` if the field is using the non-accessible DOM structure.
|
|
59
|
-
* This property is not part of the public API and should not be used directly.
|
|
60
|
-
*/
|
|
61
|
-
internal_enableAccessibleFieldDOMStructure: TEnableAccessibleFieldDOMStructure;
|
|
62
56
|
/**
|
|
63
57
|
* Applies the default values to the field internal props.
|
|
64
58
|
* This usually includes:
|
|
@@ -68,7 +62,7 @@ export interface PickerManager<TValue extends PickerValidValue, TEnableAccessibl
|
|
|
68
62
|
* @param {TFieldInternalProps<TFieldInternalProps>} internalProps The field internal props to apply the defaults to.
|
|
69
63
|
* @returns {TFieldInternalPropsWithDefaults} The field internal props with the defaults applied.
|
|
70
64
|
*/
|
|
71
|
-
internal_useApplyDefaultValuesToFieldInternalProps: (internalProps: TFieldInternalProps) => UseFieldInternalProps<TValue,
|
|
65
|
+
internal_useApplyDefaultValuesToFieldInternalProps: (internalProps: TFieldInternalProps) => UseFieldInternalProps<TValue, TError> & TValidationProps;
|
|
72
66
|
/**
|
|
73
67
|
* Returns a hook that creates the aria-label to apply on the button that opens the Picker.
|
|
74
68
|
* @param {TValue} value The value of the Picker.
|
package/models/manager.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ import type { PickerValueType } from "./common.js";
|
|
|
20
20
|
* });
|
|
21
21
|
* ```
|
|
22
22
|
*/
|
|
23
|
-
export interface PickerManager<TValue extends PickerValidValue,
|
|
23
|
+
export interface PickerManager<TValue extends PickerValidValue, TError, TValidationProps extends {}, TFieldInternalProps extends {}> {
|
|
24
24
|
/**
|
|
25
25
|
* The type of the value (e.g. 'date', 'date-time', 'time').
|
|
26
26
|
*/
|
|
@@ -53,12 +53,6 @@ export interface PickerManager<TValue extends PickerValidValue, TEnableAccessibl
|
|
|
53
53
|
* This property is not part of the public API and should not be used directly.
|
|
54
54
|
*/
|
|
55
55
|
internal_fieldValueManager: FieldValueManager<TValue>;
|
|
56
|
-
/**
|
|
57
|
-
* `true` if the field is using the accessible DOM structure.
|
|
58
|
-
* `false` if the field is using the non-accessible DOM structure.
|
|
59
|
-
* This property is not part of the public API and should not be used directly.
|
|
60
|
-
*/
|
|
61
|
-
internal_enableAccessibleFieldDOMStructure: TEnableAccessibleFieldDOMStructure;
|
|
62
56
|
/**
|
|
63
57
|
* Applies the default values to the field internal props.
|
|
64
58
|
* This usually includes:
|
|
@@ -68,7 +62,7 @@ export interface PickerManager<TValue extends PickerValidValue, TEnableAccessibl
|
|
|
68
62
|
* @param {TFieldInternalProps<TFieldInternalProps>} internalProps The field internal props to apply the defaults to.
|
|
69
63
|
* @returns {TFieldInternalPropsWithDefaults} The field internal props with the defaults applied.
|
|
70
64
|
*/
|
|
71
|
-
internal_useApplyDefaultValuesToFieldInternalProps: (internalProps: TFieldInternalProps) => UseFieldInternalProps<TValue,
|
|
65
|
+
internal_useApplyDefaultValuesToFieldInternalProps: (internalProps: TFieldInternalProps) => UseFieldInternalProps<TValue, TError> & TValidationProps;
|
|
72
66
|
/**
|
|
73
67
|
* Returns a hook that creates the aria-label to apply on the button that opens the Picker.
|
|
74
68
|
* @param {TValue} value The value of the Picker.
|