@mui/x-date-pickers 7.0.0-alpha.4 → 7.0.0-alpha.6
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 +342 -0
- package/DateCalendar/DateCalendar.types.d.ts +6 -6
- package/DateCalendar/DayCalendar.d.ts +4 -4
- package/DateCalendar/index.d.ts +1 -1
- package/DateField/DateField.js +17 -50
- package/DateField/DateField.types.d.ts +5 -9
- package/DateField/useDateField.d.ts +2 -2
- package/DateField/useDateField.js +1 -5
- package/DatePicker/DatePicker.js +5 -1
- package/DatePicker/DatePicker.types.d.ts +6 -6
- package/DatePicker/index.d.ts +1 -1
- package/DatePicker/shared.d.ts +6 -6
- package/DateTimeField/DateTimeField.js +17 -50
- package/DateTimeField/DateTimeField.types.d.ts +5 -9
- package/DateTimeField/useDateTimeField.d.ts +2 -2
- package/DateTimeField/useDateTimeField.js +1 -5
- package/DateTimePicker/DateTimePicker.js +5 -1
- package/DateTimePicker/DateTimePicker.types.d.ts +6 -6
- package/DateTimePicker/index.d.ts +1 -1
- package/DateTimePicker/shared.d.ts +6 -6
- package/DesktopDatePicker/DesktopDatePicker.js +7 -2
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +6 -6
- package/DesktopDatePicker/index.d.ts +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +8 -8
- package/DesktopDateTimePicker/index.d.ts +1 -1
- package/DesktopTimePicker/DesktopTimePicker.js +5 -1
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +8 -8
- package/DesktopTimePicker/index.d.ts +1 -1
- package/DigitalClock/DigitalClock.types.d.ts +4 -4
- package/DigitalClock/index.d.ts +1 -1
- package/MobileDatePicker/MobileDatePicker.js +7 -2
- package/MobileDatePicker/MobileDatePicker.types.d.ts +6 -6
- package/MobileDatePicker/index.d.ts +1 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +6 -6
- package/MobileDateTimePicker/index.d.ts +1 -1
- package/MobileTimePicker/MobileTimePicker.js +5 -1
- package/MobileTimePicker/MobileTimePicker.types.d.ts +6 -6
- package/MobileTimePicker/index.d.ts +1 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +4 -4
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.d.ts +3 -3
- package/MultiSectionDigitalClock/index.d.ts +1 -1
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +8 -8
- package/PickersCalendarHeader/index.d.ts +1 -1
- package/PickersLayout/PickersLayout.types.d.ts +6 -6
- package/PickersLayout/index.d.ts +1 -1
- package/PickersSectionList/PickersSectionList.d.ts +11 -0
- package/PickersSectionList/PickersSectionList.js +223 -0
- package/PickersSectionList/PickersSectionList.types.d.ts +56 -0
- package/PickersSectionList/index.d.ts +4 -0
- package/PickersSectionList/index.js +2 -0
- package/PickersSectionList/package.json +6 -0
- package/PickersSectionList/pickersSectionListClasses.d.ts +11 -0
- package/PickersSectionList/pickersSectionListClasses.js +6 -0
- package/StaticDatePicker/StaticDatePicker.js +1 -1
- package/StaticDatePicker/StaticDatePicker.types.d.ts +7 -7
- package/StaticDatePicker/index.d.ts +1 -1
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +7 -7
- package/StaticDateTimePicker/index.d.ts +1 -1
- package/StaticTimePicker/StaticTimePicker.types.d.ts +7 -7
- package/StaticTimePicker/index.d.ts +1 -1
- package/TimeClock/TimeClock.types.d.ts +5 -5
- package/TimeClock/index.d.ts +1 -1
- package/TimeField/TimeField.js +17 -50
- package/TimeField/TimeField.types.d.ts +5 -9
- package/TimeField/useTimeField.d.ts +2 -2
- package/TimeField/useTimeField.js +1 -5
- package/TimePicker/TimePicker.js +5 -1
- package/TimePicker/TimePicker.types.d.ts +6 -6
- package/TimePicker/index.d.ts +1 -1
- package/TimePicker/shared.d.ts +5 -5
- package/hooks/index.d.ts +1 -0
- package/hooks/useClearableField.d.ts +32 -20
- package/hooks/useClearableField.js +32 -33
- package/index.d.ts +1 -0
- package/index.js +4 -1
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +9 -9
- package/internals/components/PickersArrowSwitcher/index.d.ts +3 -1
- package/internals/components/PickersArrowSwitcher/index.js +2 -1
- package/internals/components/{PickersTextField → PickersInput}/Outline.d.ts +1 -0
- package/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
- package/internals/components/PickersInput/PickersFilledInput.d.ts +3 -0
- package/internals/components/PickersInput/PickersFilledInput.js +166 -0
- package/internals/components/PickersInput/PickersInput.d.ts +15 -0
- package/internals/components/{PickersTextField → PickersInput}/PickersInput.js +78 -106
- package/internals/components/PickersInput/PickersInput.types.d.ts +60 -0
- package/internals/components/PickersInput/PickersOutlinedInput.d.ts +3 -0
- package/internals/components/PickersInput/PickersOutlinedInput.js +117 -0
- package/internals/components/PickersInput/PickersStandardInput.d.ts +3 -0
- package/internals/components/PickersInput/PickersStandardInput.js +123 -0
- package/internals/components/PickersInput/index.d.ts +4 -0
- package/internals/components/PickersInput/index.js +3 -0
- package/internals/components/PickersInput/pickersInputClasses.d.ts +84 -0
- package/internals/components/PickersInput/pickersInputClasses.js +18 -0
- package/internals/components/PickersModalDialog.d.ts +4 -4
- package/internals/components/PickersPopper.d.ts +4 -4
- package/internals/components/PickersTextField/PickersTextField.d.ts +1 -2
- package/internals/components/PickersTextField/PickersTextField.js +15 -6
- package/internals/components/PickersTextField/PickersTextField.types.d.ts +46 -3
- package/internals/components/PickersTextField/pickersTextFieldClasses.d.ts +0 -31
- package/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
- package/internals/hooks/useDesktopPicker/index.d.ts +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +8 -8
- package/internals/hooks/useField/index.d.ts +1 -1
- package/internals/hooks/useField/useField.js +11 -4
- package/internals/hooks/useField/useField.types.d.ts +4 -24
- package/internals/hooks/useField/useField.utils.js +24 -4
- package/internals/hooks/useField/useFieldState.js +7 -3
- package/internals/hooks/useMobilePicker/index.d.ts +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
- package/internals/hooks/useStaticPicker/index.d.ts +1 -1
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +5 -5
- package/internals/index.d.ts +7 -6
- package/internals/index.js +1 -0
- package/internals/models/props/basePickerProps.d.ts +4 -0
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +3 -0
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
- package/legacy/DateField/DateField.js +19 -47
- package/legacy/DateField/useDateField.js +1 -4
- package/legacy/DatePicker/DatePicker.js +5 -1
- package/legacy/DateTimeField/DateTimeField.js +19 -47
- package/legacy/DateTimeField/useDateTimeField.js +1 -4
- package/legacy/DateTimePicker/DateTimePicker.js +5 -1
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +7 -2
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +5 -1
- package/legacy/MobileDatePicker/MobileDatePicker.js +7 -2
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
- package/legacy/MobileTimePicker/MobileTimePicker.js +5 -1
- package/legacy/PickersSectionList/PickersSectionList.js +230 -0
- package/legacy/PickersSectionList/index.js +2 -0
- package/legacy/PickersSectionList/pickersSectionListClasses.js +6 -0
- package/legacy/StaticDatePicker/StaticDatePicker.js +1 -1
- package/legacy/TimeField/TimeField.js +19 -47
- package/legacy/TimeField/useTimeField.js +1 -4
- package/legacy/TimePicker/TimePicker.js +5 -1
- package/legacy/hooks/useClearableField.js +30 -32
- package/legacy/index.js +4 -1
- package/legacy/internals/components/PickersArrowSwitcher/index.js +2 -1
- package/legacy/internals/components/{PickersTextField → PickersInput}/Outline.js +40 -22
- package/legacy/internals/components/PickersInput/PickersFilledInput.js +161 -0
- package/legacy/internals/components/{PickersTextField → PickersInput}/PickersInput.js +75 -90
- package/legacy/internals/components/PickersInput/PickersInput.types.js +1 -0
- package/legacy/internals/components/PickersInput/PickersOutlinedInput.js +110 -0
- package/legacy/internals/components/PickersInput/PickersStandardInput.js +117 -0
- package/legacy/internals/components/PickersInput/index.js +3 -0
- package/legacy/internals/components/PickersInput/pickersInputClasses.js +18 -0
- package/legacy/internals/components/PickersTextField/PickersTextField.js +16 -7
- package/legacy/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
- package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
- package/legacy/internals/hooks/useField/useField.js +12 -5
- package/legacy/internals/hooks/useField/useField.utils.js +26 -4
- package/legacy/internals/hooks/useField/useFieldState.js +7 -3
- package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
- package/legacy/internals/index.js +1 -0
- package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +24 -0
- package/legacy/locales/ruRU.js +1 -2
- package/locales/ruRU.js +1 -2
- package/models/fields.d.ts +2 -1
- package/modern/DateField/DateField.js +17 -50
- package/modern/DateField/useDateField.js +1 -5
- package/modern/DatePicker/DatePicker.js +5 -1
- package/modern/DateTimeField/DateTimeField.js +17 -50
- package/modern/DateTimeField/useDateTimeField.js +1 -5
- package/modern/DateTimePicker/DateTimePicker.js +5 -1
- package/modern/DesktopDatePicker/DesktopDatePicker.js +7 -2
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
- package/modern/DesktopTimePicker/DesktopTimePicker.js +5 -1
- package/modern/MobileDatePicker/MobileDatePicker.js +7 -2
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
- package/modern/MobileTimePicker/MobileTimePicker.js +5 -1
- package/modern/PickersSectionList/PickersSectionList.js +221 -0
- package/modern/PickersSectionList/PickersSectionList.types.js +1 -0
- package/modern/PickersSectionList/index.js +2 -0
- package/modern/PickersSectionList/pickersSectionListClasses.js +6 -0
- package/modern/StaticDatePicker/StaticDatePicker.js +1 -1
- package/modern/TimeField/TimeField.js +17 -50
- package/modern/TimeField/useTimeField.js +1 -5
- package/modern/TimePicker/TimePicker.js +5 -1
- package/modern/hooks/useClearableField.js +32 -33
- package/modern/index.js +4 -1
- package/modern/internals/components/PickersArrowSwitcher/index.js +2 -1
- package/modern/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
- package/modern/internals/components/PickersInput/PickersFilledInput.js +165 -0
- package/modern/internals/components/{PickersTextField → PickersInput}/PickersInput.js +78 -106
- package/modern/internals/components/PickersInput/PickersInput.types.js +1 -0
- package/modern/internals/components/PickersInput/PickersOutlinedInput.js +117 -0
- package/modern/internals/components/PickersInput/PickersStandardInput.js +123 -0
- package/modern/internals/components/PickersInput/index.js +3 -0
- package/modern/internals/components/PickersInput/pickersInputClasses.js +18 -0
- package/modern/internals/components/PickersTextField/PickersTextField.js +15 -6
- package/modern/internals/components/PickersTextField/pickersTextFieldClasses.js +3 -6
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
- package/modern/internals/hooks/useField/useField.js +11 -4
- package/modern/internals/hooks/useField/useField.utils.js +24 -4
- package/modern/internals/hooks/useField/useFieldState.js +7 -3
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
- package/modern/internals/index.js +1 -0
- package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +26 -0
- package/modern/locales/ruRU.js +1 -2
- package/node/DateField/DateField.js +18 -51
- package/node/DateField/useDateField.js +1 -5
- package/node/DatePicker/DatePicker.js +5 -1
- package/node/DateTimeField/DateTimeField.js +18 -51
- package/node/DateTimeField/useDateTimeField.js +1 -5
- package/node/DateTimePicker/DateTimePicker.js +5 -1
- package/node/DesktopDatePicker/DesktopDatePicker.js +10 -5
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +5 -1
- package/node/DesktopTimePicker/DesktopTimePicker.js +5 -1
- package/node/MobileDatePicker/MobileDatePicker.js +10 -5
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +5 -1
- package/node/MobileTimePicker/MobileTimePicker.js +5 -1
- package/node/PickersSectionList/PickersSectionList.js +228 -0
- package/node/PickersSectionList/index.js +49 -0
- package/node/PickersSectionList/pickersSectionListClasses.js +14 -0
- package/node/StaticDatePicker/StaticDatePicker.js +2 -2
- package/node/TimeField/TimeField.js +18 -51
- package/node/TimeField/useTimeField.js +1 -5
- package/node/TimePicker/TimePicker.js +5 -1
- package/node/hooks/useClearableField.js +33 -34
- package/node/index.js +13 -1
- package/node/internals/components/PickersArrowSwitcher/index.js +14 -1
- package/node/internals/components/{PickersTextField → PickersInput}/Outline.js +35 -19
- package/node/internals/components/PickersInput/PickersFilledInput.js +174 -0
- package/node/internals/components/{PickersTextField → PickersInput}/PickersInput.js +80 -108
- package/node/internals/components/PickersInput/PickersInput.types.js +5 -0
- package/node/internals/components/PickersInput/PickersOutlinedInput.js +125 -0
- package/node/internals/components/PickersInput/PickersStandardInput.js +132 -0
- package/node/internals/components/PickersInput/index.js +32 -0
- package/node/internals/components/PickersInput/pickersInputClasses.js +29 -0
- package/node/internals/components/PickersTextField/PickersTextField.js +15 -6
- package/node/internals/components/PickersTextField/pickersTextFieldClasses.js +6 -9
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +2 -0
- package/node/internals/hooks/useField/useField.js +11 -4
- package/node/internals/hooks/useField/useField.utils.js +24 -4
- package/node/internals/hooks/useField/useFieldState.js +7 -3
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +3 -1
- package/node/internals/index.js +7 -0
- package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +34 -0
- package/node/locales/ruRU.js +1 -2
- package/package.json +5 -5
- package/themeAugmentation/overrides.d.ts +5 -7
- package/themeAugmentation/props.d.ts +6 -8
- package/internals/components/PickersTextField/PickersInput.d.ts +0 -3
- package/internals/components/PickersTextField/PickersInput.types.d.ts +0 -45
- /package/{internals/components/PickersTextField/PickersInput.types.js → PickersSectionList/PickersSectionList.types.js} +0 -0
- /package/{legacy/internals/components/PickersTextField → internals/components/PickersInput}/PickersInput.types.js +0 -0
- /package/{modern/internals/components/PickersTextField/PickersInput.types.js → legacy/PickersSectionList/PickersSectionList.types.js} +0 -0
- /package/node/{internals/components/PickersTextField/PickersInput.types.js → PickersSectionList/PickersSectionList.types.js} +0 -0
|
@@ -13,34 +13,3 @@ export interface PickersTextFieldClasses {
|
|
|
13
13
|
export type PickersTextFieldClassKey = keyof PickersTextFieldClasses;
|
|
14
14
|
export declare function getPickersTextFieldUtilityClass(slot: string): string;
|
|
15
15
|
export declare const pickersTextFieldClasses: Record<keyof PickersTextFieldClasses, string>;
|
|
16
|
-
export interface PickersInputClasses {
|
|
17
|
-
/** Styles applied to the root element. */
|
|
18
|
-
root: string;
|
|
19
|
-
/** Styles applied to the root element if focused. */
|
|
20
|
-
focused: string;
|
|
21
|
-
/** State class applied to the root element if `disabled=true`. */
|
|
22
|
-
disabled: string;
|
|
23
|
-
/** State class applied to the root element if `readOnly=true`. */
|
|
24
|
-
readOnly: string;
|
|
25
|
-
/** State class applied to the root element if `error=true`. */
|
|
26
|
-
error: string;
|
|
27
|
-
/** Styles applied to the NotchedOutline element. */
|
|
28
|
-
notchedOutline: string;
|
|
29
|
-
/** Styles applied to the real hidden input element. */
|
|
30
|
-
input: string;
|
|
31
|
-
/** Styles applied to the container of the sections. */
|
|
32
|
-
sectionsContainer: string;
|
|
33
|
-
/** Styles applied to the content of a section. */
|
|
34
|
-
sectionContent: string;
|
|
35
|
-
/** Styles applied to the separator before a section */
|
|
36
|
-
sectionBefore: string;
|
|
37
|
-
/** Styles applied to the separator after a section */
|
|
38
|
-
sectionAfter: string;
|
|
39
|
-
/** Styles applied to the root if there is a startAdornment present */
|
|
40
|
-
adornedStart: string;
|
|
41
|
-
/** Styles applied to the root if there is an endAdornment present */
|
|
42
|
-
adornedEnd: string;
|
|
43
|
-
}
|
|
44
|
-
export type PickersInputClassKey = keyof PickersInputClasses;
|
|
45
|
-
export declare function getPickersInputUtilityClass(slot: string): string;
|
|
46
|
-
export declare const pickersInputClasses: Record<keyof PickersInputClasses, string>;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import generateUtilityClass from '@mui/utils/generateUtilityClass';
|
|
2
|
+
import generateUtilityClasses from '@mui/utils/generateUtilityClasses';
|
|
2
3
|
export function getPickersTextFieldUtilityClass(slot) {
|
|
3
4
|
return generateUtilityClass('MuiPickersTextField', slot);
|
|
4
5
|
}
|
|
5
|
-
export const pickersTextFieldClasses = generateUtilityClasses('MuiPickersTextField', ['root', 'focused', 'disabled', 'error', 'required']);
|
|
6
|
-
export function getPickersInputUtilityClass(slot) {
|
|
7
|
-
return generateUtilityClass('MuiPickersInput', slot);
|
|
8
|
-
}
|
|
9
|
-
export const pickersInputClasses = generateUtilityClasses('MuiPickersInput', ['root', 'focused', 'disabled', 'error', 'notchedOutline', 'adornedStart', 'adornedEnd', 'input', 'sectionsContainer', 'sectionContent', 'sectionBefore', 'sectionAfter']);
|
|
6
|
+
export const pickersTextFieldClasses = generateUtilityClasses('MuiPickersTextField', ['root', 'focused', 'disabled', 'error', 'required']);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { useDesktopPicker } from './useDesktopPicker';
|
|
2
|
-
export type {
|
|
2
|
+
export type { UseDesktopPickerSlots, UseDesktopPickerSlotProps, ExportedUseDesktopPickerSlotProps, DesktopOnlyPickerProps, } from './useDesktopPicker.types';
|
|
@@ -37,6 +37,7 @@ export const useDesktopPicker = _ref => {
|
|
|
37
37
|
format,
|
|
38
38
|
formatDensity,
|
|
39
39
|
timezone,
|
|
40
|
+
name,
|
|
40
41
|
label,
|
|
41
42
|
inputRef,
|
|
42
43
|
readOnly,
|
|
@@ -104,6 +105,7 @@ export const useDesktopPicker = _ref => {
|
|
|
104
105
|
formatDensity,
|
|
105
106
|
timezone,
|
|
106
107
|
label,
|
|
108
|
+
name,
|
|
107
109
|
autoFocus: autoFocus && !props.open,
|
|
108
110
|
focused: open ? true : undefined
|
|
109
111
|
}),
|
|
@@ -4,15 +4,15 @@ import { InputAdornmentProps } from '@mui/material/InputAdornment';
|
|
|
4
4
|
import TextField, { TextFieldProps } from '@mui/material/TextField';
|
|
5
5
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
6
6
|
import { BaseNonStaticPickerProps, BasePickerProps, BaseNonRangeNonStaticPickerProps } from '../../models/props/basePickerProps';
|
|
7
|
-
import {
|
|
7
|
+
import { PickersPopperSlots, PickersPopperSlotProps } from '../../components/PickersPopper';
|
|
8
8
|
import { UsePickerParams, UsePickerProps } from '../usePicker';
|
|
9
9
|
import { BaseSingleInputFieldProps, FieldSection, MuiPickersAdapter } from '../../../models';
|
|
10
|
-
import {
|
|
10
|
+
import { ExportedPickersLayoutSlots, ExportedPickersLayoutSlotProps, PickersLayoutSlotProps } from '../../../PickersLayout/PickersLayout.types';
|
|
11
11
|
import { UsePickerValueNonStaticProps } from '../usePicker/usePickerValue.types';
|
|
12
12
|
import { UsePickerViewsNonStaticProps, UsePickerViewsProps } from '../usePicker/usePickerViews';
|
|
13
13
|
import { DateOrTimeViewWithMeridiem } from '../../models';
|
|
14
|
-
import {
|
|
15
|
-
export interface
|
|
14
|
+
import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../../../hooks/useClearableField';
|
|
15
|
+
export interface UseDesktopPickerSlots<TDate, TView extends DateOrTimeViewWithMeridiem> extends Pick<PickersPopperSlots, 'desktopPaper' | 'desktopTransition' | 'desktopTrapFocus' | 'popper'>, ExportedPickersLayoutSlots<TDate | null, TDate, TView>, UseClearableFieldSlots {
|
|
16
16
|
/**
|
|
17
17
|
* Component used to enter the date with the keyboard.
|
|
18
18
|
*/
|
|
@@ -38,9 +38,9 @@ export interface UseDesktopPickerSlotsComponent<TDate, TView extends DateOrTimeV
|
|
|
38
38
|
*/
|
|
39
39
|
openPickerIcon: React.ElementType;
|
|
40
40
|
}
|
|
41
|
-
export interface
|
|
41
|
+
export interface UseDesktopPickerSlotProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedUseDesktopPickerSlotProps<TDate, TView>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
|
|
42
42
|
}
|
|
43
|
-
export interface
|
|
43
|
+
export interface ExportedUseDesktopPickerSlotProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView>, UseClearableFieldSlotProps {
|
|
44
44
|
field?: SlotComponentProps<React.ElementType<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, unknown>>, {}, UsePickerProps<TDate | null, TDate, any, FieldSection, any, any, any>>;
|
|
45
45
|
textField?: SlotComponentProps<typeof TextField, {}, Record<string, any>>;
|
|
46
46
|
inputAdornment?: Partial<InputAdornmentProps>;
|
|
@@ -58,12 +58,12 @@ export interface UseDesktopPickerProps<TDate, TView extends DateOrTimeViewWithMe
|
|
|
58
58
|
* Overridable component slots.
|
|
59
59
|
* @default {}
|
|
60
60
|
*/
|
|
61
|
-
slots:
|
|
61
|
+
slots: UseDesktopPickerSlots<TDate, TView>;
|
|
62
62
|
/**
|
|
63
63
|
* The props used for each component slot.
|
|
64
64
|
* @default {}
|
|
65
65
|
*/
|
|
66
|
-
slotProps?:
|
|
66
|
+
slotProps?: UseDesktopPickerSlotProps<TDate, TView>;
|
|
67
67
|
}
|
|
68
68
|
export interface UseDesktopPickerParams<TDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseDesktopPickerProps<TDate, TView, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
|
|
69
69
|
props: TExternalProps;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { useField } from './useField';
|
|
2
|
-
export type { FieldValueManager, UseFieldInternalProps, UseFieldForwardedProps, UseFieldParams, UseFieldResponse, FieldChangeHandler, FieldChangeHandlerContext, FieldRef,
|
|
2
|
+
export type { FieldValueManager, UseFieldInternalProps, UseFieldForwardedProps, UseFieldParams, UseFieldResponse, FieldChangeHandler, FieldChangeHandlerContext, FieldRef, } from './useField.types';
|
|
3
3
|
export { splitFormatIntoSections, addPositionPropertiesToSections, createDateStrForInputFromSections, } from './useField.utils';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["onClick", "onKeyDown", "onFocus", "onBlur", "onMouseUp", "onPaste", "error", "clearable", "onClear", "disabled"];
|
|
3
|
+
const _excluded = ["inputRef", "onClick", "onKeyDown", "onFocus", "onBlur", "onMouseUp", "onPaste", "error", "clearable", "onClear", "disabled"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
|
|
6
6
|
import useEventCallback from '@mui/utils/useEventCallback';
|
|
@@ -28,7 +28,6 @@ export const useField = params => {
|
|
|
28
28
|
timezone
|
|
29
29
|
} = useFieldState(params);
|
|
30
30
|
const {
|
|
31
|
-
inputRef: inputRefProp,
|
|
32
31
|
internalProps,
|
|
33
32
|
internalProps: {
|
|
34
33
|
readOnly = false,
|
|
@@ -36,6 +35,7 @@ export const useField = params => {
|
|
|
36
35
|
minutesStep
|
|
37
36
|
},
|
|
38
37
|
forwardedProps: {
|
|
38
|
+
inputRef: inputRefProp,
|
|
39
39
|
onClick,
|
|
40
40
|
onKeyDown,
|
|
41
41
|
onFocus,
|
|
@@ -143,7 +143,14 @@ export const useField = params => {
|
|
|
143
143
|
const digitsAndLetterOnly = /^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(pastedValue);
|
|
144
144
|
const isValidPastedValue = activeSection.contentType === 'letter' && lettersOnly || activeSection.contentType === 'digit' && digitsOnly || activeSection.contentType === 'digit-with-letter' && digitsAndLetterOnly;
|
|
145
145
|
if (isValidPastedValue) {
|
|
146
|
-
|
|
146
|
+
resetCharacterQuery();
|
|
147
|
+
updateSectionValue({
|
|
148
|
+
activeSection,
|
|
149
|
+
newSectionValue: pastedValue,
|
|
150
|
+
shouldGoToNextSection: true
|
|
151
|
+
});
|
|
152
|
+
// prevent default to avoid the input change handler being called
|
|
153
|
+
event.preventDefault();
|
|
147
154
|
return;
|
|
148
155
|
}
|
|
149
156
|
if (lettersOnly || digitsOnly) {
|
|
@@ -433,7 +440,7 @@ export const useField = params => {
|
|
|
433
440
|
onMouseUp: handleInputMouseUp,
|
|
434
441
|
onClear: handleClearValue,
|
|
435
442
|
error: inputError,
|
|
436
|
-
|
|
443
|
+
inputRef: handleRef,
|
|
437
444
|
clearable: Boolean(clearable && !areAllSectionsEmpty && !readOnly && !disabled)
|
|
438
445
|
});
|
|
439
446
|
};
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
|
-
import IconButton from '@mui/material/IconButton';
|
|
4
|
-
import { ClearIcon } from '../../../icons';
|
|
5
2
|
import { FieldSectionType, FieldSection, FieldSelectedSections, MuiPickersAdapter, TimezoneProps, FieldSectionContentType, FieldValueType, PickersTimezone } from '../../../models';
|
|
6
3
|
import type { PickerValueManager } from '../usePicker';
|
|
7
4
|
import { InferError, Validator } from '../useValidation';
|
|
8
5
|
export interface UseFieldParams<TValue, TDate, TSection extends FieldSection, TForwardedProps extends UseFieldForwardedProps, TInternalProps extends UseFieldInternalProps<any, any, any, any>> {
|
|
9
|
-
inputRef?: React.Ref<HTMLInputElement>;
|
|
10
6
|
forwardedProps: TForwardedProps;
|
|
11
7
|
internalProps: TInternalProps;
|
|
12
8
|
valueManager: PickerValueManager<TValue, TDate, InferError<TInternalProps>>;
|
|
@@ -130,6 +126,7 @@ export interface FieldRef<TSection extends FieldSection> {
|
|
|
130
126
|
setSelectedSections: (selectedSections: FieldSelectedSections) => void;
|
|
131
127
|
}
|
|
132
128
|
export interface UseFieldForwardedProps {
|
|
129
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
133
130
|
onKeyDown?: React.KeyboardEventHandler;
|
|
134
131
|
onMouseUp?: React.MouseEventHandler;
|
|
135
132
|
onPaste?: React.ClipboardEventHandler<HTMLInputElement>;
|
|
@@ -141,8 +138,8 @@ export interface UseFieldForwardedProps {
|
|
|
141
138
|
clearable?: boolean;
|
|
142
139
|
disabled?: boolean;
|
|
143
140
|
}
|
|
144
|
-
export type UseFieldResponse<TForwardedProps extends UseFieldForwardedProps> = Omit<TForwardedProps, keyof UseFieldForwardedProps> & Required<UseFieldForwardedProps> & Pick<React.
|
|
145
|
-
|
|
141
|
+
export type UseFieldResponse<TForwardedProps extends UseFieldForwardedProps> = Omit<TForwardedProps, keyof UseFieldForwardedProps> & Required<UseFieldForwardedProps> & Pick<React.InputHTMLAttributes<HTMLInputElement>, 'autoCorrect' | 'inputMode' | 'placeholder'> & {
|
|
142
|
+
inputRef: React.Ref<HTMLInputElement>;
|
|
146
143
|
value: string;
|
|
147
144
|
onChange: React.ChangeEventHandler<HTMLInputElement>;
|
|
148
145
|
error: boolean;
|
|
@@ -200,9 +197,8 @@ export type FieldSelectedSectionsIndexes = {
|
|
|
200
197
|
endIndex: number;
|
|
201
198
|
/**
|
|
202
199
|
* If `true`, the selectors at the very beginning and very end of the input will be selected.
|
|
203
|
-
* @default false
|
|
204
200
|
*/
|
|
205
|
-
shouldSelectBoundarySelectors
|
|
201
|
+
shouldSelectBoundarySelectors: boolean;
|
|
206
202
|
};
|
|
207
203
|
export interface FieldValueManager<TValue, TDate, TSection extends FieldSection> {
|
|
208
204
|
/**
|
|
@@ -318,20 +314,4 @@ export type SectionOrdering = {
|
|
|
318
314
|
*/
|
|
319
315
|
endIndex: number;
|
|
320
316
|
};
|
|
321
|
-
export interface FieldSlotsComponents {
|
|
322
|
-
/**
|
|
323
|
-
* Icon to display inside the clear button.
|
|
324
|
-
* @default ClearIcon
|
|
325
|
-
*/
|
|
326
|
-
clearIcon?: React.ElementType;
|
|
327
|
-
/**
|
|
328
|
-
* Button to clear the value.
|
|
329
|
-
* @default IconButton
|
|
330
|
-
*/
|
|
331
|
-
clearButton?: React.ElementType;
|
|
332
|
-
}
|
|
333
|
-
export interface FieldSlotsComponentsProps {
|
|
334
|
-
clearIcon?: SlotComponentProps<typeof ClearIcon, {}, {}>;
|
|
335
|
-
clearButton?: SlotComponentProps<typeof IconButton, {}, {}>;
|
|
336
|
-
}
|
|
337
317
|
export {};
|
|
@@ -192,7 +192,7 @@ export const addPositionPropertiesToSections = (sections, isRTL) => {
|
|
|
192
192
|
|
|
193
193
|
// The ...InInput values consider the unicode characters but do include them in their indexes
|
|
194
194
|
const cleanedValue = cleanString(renderedValue);
|
|
195
|
-
const startInInput = positionInInput + renderedValue.indexOf(cleanedValue[0]) + section.startSeparator.length;
|
|
195
|
+
const startInInput = positionInInput + (cleanedValue === '' ? 0 : renderedValue.indexOf(cleanedValue[0])) + section.startSeparator.length;
|
|
196
196
|
const endInInput = startInInput + cleanedValue.length;
|
|
197
197
|
newSections.push(_extends({}, section, {
|
|
198
198
|
start: position,
|
|
@@ -425,6 +425,21 @@ export const splitFormatIntoSections = (utils, timezone, localeText, format, dat
|
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
427
|
commitToken(currentTokenValue);
|
|
428
|
+
if (sections.length === 0 && startSeparator.length > 0) {
|
|
429
|
+
sections.push({
|
|
430
|
+
type: 'empty',
|
|
431
|
+
contentType: 'letter',
|
|
432
|
+
maxLength: null,
|
|
433
|
+
format: '',
|
|
434
|
+
value: '',
|
|
435
|
+
placeholder: '',
|
|
436
|
+
hasLeadingZerosInFormat: false,
|
|
437
|
+
hasLeadingZerosInInput: false,
|
|
438
|
+
startSeparator,
|
|
439
|
+
endSeparator: '',
|
|
440
|
+
modified: false
|
|
441
|
+
});
|
|
442
|
+
}
|
|
428
443
|
return sections.map(section => {
|
|
429
444
|
const cleanSeparator = separator => {
|
|
430
445
|
let cleanedSeparator = separator;
|
|
@@ -566,6 +581,10 @@ export const getSectionsBoundaries = (utils, timezone) => {
|
|
|
566
581
|
meridiem: () => ({
|
|
567
582
|
minimum: 0,
|
|
568
583
|
maximum: 0
|
|
584
|
+
}),
|
|
585
|
+
empty: () => ({
|
|
586
|
+
minimum: 0,
|
|
587
|
+
maximum: 0
|
|
569
588
|
})
|
|
570
589
|
};
|
|
571
590
|
};
|
|
@@ -573,7 +592,7 @@ let warnedOnceInvalidSection = false;
|
|
|
573
592
|
export const validateSections = (sections, valueType) => {
|
|
574
593
|
if (process.env.NODE_ENV !== 'production') {
|
|
575
594
|
if (!warnedOnceInvalidSection) {
|
|
576
|
-
const supportedSections = [];
|
|
595
|
+
const supportedSections = ['empty'];
|
|
577
596
|
if (['date', 'date-time'].includes(valueType)) {
|
|
578
597
|
supportedSections.push('weekDay', 'day', 'month', 'year');
|
|
579
598
|
}
|
|
@@ -582,7 +601,7 @@ export const validateSections = (sections, valueType) => {
|
|
|
582
601
|
}
|
|
583
602
|
const invalidSection = sections.find(section => !supportedSections.includes(section.type));
|
|
584
603
|
if (invalidSection) {
|
|
585
|
-
console.warn(`MUI: The field component you are using is not compatible with the "${invalidSection.type} date section.`, `The supported date sections are ["${supportedSections.join('", "')}"]\`.`);
|
|
604
|
+
console.warn(`MUI: The field component you are using is not compatible with the "${invalidSection.type}" date section.`, `The supported date sections are ["${supportedSections.join('", "')}"]\`.`);
|
|
586
605
|
warnedOnceInvalidSection = true;
|
|
587
606
|
}
|
|
588
607
|
}
|
|
@@ -649,7 +668,8 @@ const reliableSectionModificationOrder = {
|
|
|
649
668
|
hours: 5,
|
|
650
669
|
minutes: 6,
|
|
651
670
|
seconds: 7,
|
|
652
|
-
meridiem: 8
|
|
671
|
+
meridiem: 8,
|
|
672
|
+
empty: 9
|
|
653
673
|
};
|
|
654
674
|
export const mergeDateIntoReferenceDate = (utils, timezone, dateToTransferFrom, sections, referenceDate, shouldLimitToEditedSections) =>
|
|
655
675
|
// cloning sections before sort to avoid mutating it
|
|
@@ -94,17 +94,21 @@ export const useFieldState = params => {
|
|
|
94
94
|
if (typeof selectedSections === 'number') {
|
|
95
95
|
return {
|
|
96
96
|
startIndex: selectedSections,
|
|
97
|
-
endIndex: selectedSections
|
|
97
|
+
endIndex: selectedSections,
|
|
98
|
+
shouldSelectBoundarySelectors: state.sections[selectedSections].type === 'empty'
|
|
98
99
|
};
|
|
99
100
|
}
|
|
100
101
|
if (typeof selectedSections === 'string') {
|
|
101
102
|
const selectedSectionIndex = state.sections.findIndex(section => section.type === selectedSections);
|
|
102
103
|
return {
|
|
103
104
|
startIndex: selectedSectionIndex,
|
|
104
|
-
endIndex: selectedSectionIndex
|
|
105
|
+
endIndex: selectedSectionIndex,
|
|
106
|
+
shouldSelectBoundarySelectors: state.sections[selectedSectionIndex].type === 'empty'
|
|
105
107
|
};
|
|
106
108
|
}
|
|
107
|
-
return selectedSections
|
|
109
|
+
return _extends({}, selectedSections, {
|
|
110
|
+
shouldSelectBoundarySelectors: selectedSections.startIndex === selectedSections.endIndex && state.sections[selectedSections.startIndex].type === 'empty'
|
|
111
|
+
});
|
|
108
112
|
}, [selectedSections, state.sections]);
|
|
109
113
|
const publishValue = ({
|
|
110
114
|
value,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { useMobilePicker } from './useMobilePicker';
|
|
2
|
-
export type {
|
|
2
|
+
export type { UseMobilePickerSlots, UseMobilePickerSlotProps, ExportedUseMobilePickerSlotProps, MobileOnlyPickerProps, } from './useMobilePicker.types';
|
|
@@ -34,6 +34,7 @@ export const useMobilePicker = _ref => {
|
|
|
34
34
|
format,
|
|
35
35
|
formatDensity,
|
|
36
36
|
timezone,
|
|
37
|
+
name,
|
|
37
38
|
label,
|
|
38
39
|
inputRef,
|
|
39
40
|
readOnly,
|
|
@@ -74,7 +75,8 @@ export const useMobilePicker = _ref => {
|
|
|
74
75
|
format,
|
|
75
76
|
formatDensity,
|
|
76
77
|
timezone,
|
|
77
|
-
label
|
|
78
|
+
label,
|
|
79
|
+
name
|
|
78
80
|
}),
|
|
79
81
|
ownerState: props
|
|
80
82
|
});
|
|
@@ -2,14 +2,14 @@ import * as React from 'react';
|
|
|
2
2
|
import TextField, { TextFieldProps } from '@mui/material/TextField';
|
|
3
3
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
4
4
|
import { BaseNonStaticPickerProps, BasePickerProps, BaseNonRangeNonStaticPickerProps } from '../../models/props/basePickerProps';
|
|
5
|
-
import {
|
|
5
|
+
import { PickersModalDialogSlots, PickersModalDialogSlotProps } from '../../components/PickersModalDialog';
|
|
6
6
|
import { UsePickerParams, UsePickerProps } from '../usePicker';
|
|
7
7
|
import { BaseSingleInputFieldProps, FieldSection, MuiPickersAdapter } from '../../../models';
|
|
8
|
-
import {
|
|
8
|
+
import { ExportedPickersLayoutSlots, ExportedPickersLayoutSlotProps, PickersLayoutSlotProps } from '../../../PickersLayout/PickersLayout.types';
|
|
9
9
|
import { UsePickerValueNonStaticProps } from '../usePicker/usePickerValue.types';
|
|
10
10
|
import { UsePickerViewsNonStaticProps, UsePickerViewsProps } from '../usePicker/usePickerViews';
|
|
11
11
|
import { DateOrTimeViewWithMeridiem } from '../../models';
|
|
12
|
-
export interface
|
|
12
|
+
export interface UseMobilePickerSlots<TDate, TView extends DateOrTimeViewWithMeridiem> extends PickersModalDialogSlots, ExportedPickersLayoutSlots<TDate | null, TDate, TView> {
|
|
13
13
|
/**
|
|
14
14
|
* Component used to enter the date with the keyboard.
|
|
15
15
|
*/
|
|
@@ -21,11 +21,11 @@ export interface UseMobilePickerSlotsComponent<TDate, TView extends DateOrTimeVi
|
|
|
21
21
|
*/
|
|
22
22
|
textField?: React.ElementType<TextFieldProps>;
|
|
23
23
|
}
|
|
24
|
-
export interface
|
|
24
|
+
export interface ExportedUseMobilePickerSlotProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends PickersModalDialogSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView> {
|
|
25
25
|
field?: SlotComponentProps<React.ElementType<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, unknown>>, {}, UsePickerProps<TDate | null, TDate, any, FieldSection, any, any, any>>;
|
|
26
26
|
textField?: SlotComponentProps<typeof TextField, {}, Record<string, any>>;
|
|
27
27
|
}
|
|
28
|
-
export interface
|
|
28
|
+
export interface UseMobilePickerSlotProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedUseMobilePickerSlotProps<TDate, TView>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
|
|
29
29
|
}
|
|
30
30
|
export interface MobileOnlyPickerProps<TDate> extends BaseNonStaticPickerProps, BaseNonRangeNonStaticPickerProps, UsePickerValueNonStaticProps<TDate | null, FieldSection>, UsePickerViewsNonStaticProps {
|
|
31
31
|
}
|
|
@@ -34,12 +34,12 @@ export interface UseMobilePickerProps<TDate, TView extends DateOrTimeViewWithMer
|
|
|
34
34
|
* Overridable component slots.
|
|
35
35
|
* @default {}
|
|
36
36
|
*/
|
|
37
|
-
slots:
|
|
37
|
+
slots: UseMobilePickerSlots<TDate, TView>;
|
|
38
38
|
/**
|
|
39
39
|
* The props used for each component slot.
|
|
40
40
|
* @default {}
|
|
41
41
|
*/
|
|
42
|
-
slotProps?:
|
|
42
|
+
slotProps?: UseMobilePickerSlotProps<TDate, TView>;
|
|
43
43
|
}
|
|
44
44
|
export interface UseMobilePickerParams<TDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseMobilePickerProps<TDate, TView, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
|
|
45
45
|
props: TExternalProps;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { useStaticPicker } from './useStaticPicker';
|
|
2
|
-
export type {
|
|
2
|
+
export type { UseStaticPickerSlots, UseStaticPickerSlotProps, StaticOnlyPickerProps, } from './useStaticPicker.types';
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { ExportedPickersLayoutSlots, ExportedPickersLayoutSlotProps } from '../../../PickersLayout/PickersLayout.types';
|
|
3
3
|
import { BasePickerProps } from '../../models/props/basePickerProps';
|
|
4
4
|
import { UsePickerParams } from '../usePicker';
|
|
5
5
|
import { UsePickerViewsProps } from '../usePicker/usePickerViews';
|
|
6
6
|
import { FieldSection } from '../../../models';
|
|
7
7
|
import { DateOrTimeViewWithMeridiem } from '../../models';
|
|
8
|
-
export interface
|
|
8
|
+
export interface UseStaticPickerSlots<TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlots<TDate | null, TDate, TView> {
|
|
9
9
|
}
|
|
10
|
-
export interface
|
|
10
|
+
export interface UseStaticPickerSlotProps<TDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedPickersLayoutSlotProps<TDate | null, TDate, TView> {
|
|
11
11
|
}
|
|
12
12
|
export interface StaticOnlyPickerProps {
|
|
13
13
|
/**
|
|
@@ -31,12 +31,12 @@ export interface UseStaticPickerProps<TDate, TView extends DateOrTimeViewWithMer
|
|
|
31
31
|
* Overridable component slots.
|
|
32
32
|
* @default {}
|
|
33
33
|
*/
|
|
34
|
-
slots?:
|
|
34
|
+
slots?: UseStaticPickerSlots<TDate | null, TView>;
|
|
35
35
|
/**
|
|
36
36
|
* The props used for each component slot.
|
|
37
37
|
* @default {}
|
|
38
38
|
*/
|
|
39
|
-
slotProps?:
|
|
39
|
+
slotProps?: UseStaticPickerSlotProps<TDate, TView>;
|
|
40
40
|
}
|
|
41
41
|
export interface UseStaticPickerParams<TDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseStaticPickerProps<TDate, TView, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
|
|
42
42
|
props: TExternalProps;
|
package/internals/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { PickersArrowSwitcher } from './components/PickersArrowSwitcher/PickersArrowSwitcher';
|
|
2
|
-
export type { ExportedPickersArrowSwitcherProps,
|
|
2
|
+
export type { ExportedPickersArrowSwitcherProps, PickersArrowSwitcherSlots, PickersArrowSwitcherSlotProps, } from './components/PickersArrowSwitcher';
|
|
3
3
|
export { PickersModalDialog } from './components/PickersModalDialog';
|
|
4
|
-
export type {
|
|
4
|
+
export type { PickersModalDialogSlots, PickersModalDialogSlotProps, } from './components/PickersModalDialog';
|
|
5
5
|
export { PickersPopper } from './components/PickersPopper';
|
|
6
|
-
export type {
|
|
6
|
+
export type { PickersPopperSlots, PickersPopperSlotProps } from './components/PickersPopper';
|
|
7
7
|
export { PickersToolbar } from './components/PickersToolbar';
|
|
8
8
|
export type { PickersToolbarProps } from './components/PickersToolbar';
|
|
9
9
|
export { pickersToolbarClasses } from './components/pickersToolbarClasses';
|
|
@@ -24,14 +24,14 @@ export { DAY_MARGIN, DIALOG_WIDTH } from './constants/dimensions';
|
|
|
24
24
|
export { useControlledValueWithTimezone } from './hooks/useValueWithTimezone';
|
|
25
25
|
export type { DesktopOnlyPickerProps } from './hooks/useDesktopPicker';
|
|
26
26
|
export { useField, createDateStrForInputFromSections, addPositionPropertiesToSections, } from './hooks/useField';
|
|
27
|
-
export type { UseFieldInternalProps, UseFieldParams, UseFieldResponse, UseFieldForwardedProps, FieldValueManager, FieldChangeHandler, FieldChangeHandlerContext,
|
|
27
|
+
export type { UseFieldInternalProps, UseFieldParams, UseFieldResponse, UseFieldForwardedProps, FieldValueManager, FieldChangeHandler, FieldChangeHandlerContext, } from './hooks/useField';
|
|
28
28
|
export type { MobileOnlyPickerProps } from './hooks/useMobilePicker';
|
|
29
29
|
export { usePicker } from './hooks/usePicker';
|
|
30
30
|
export type { UsePickerResponse, UsePickerParams, UsePickerProps } from './hooks/usePicker';
|
|
31
31
|
export type { UsePickerValueNonStaticProps, PickerValueManager, PickerSelectionState, } from './hooks/usePicker/usePickerValue.types';
|
|
32
32
|
export type { UsePickerViewsNonStaticProps, PickerViewRendererLookup, UsePickerViewsProps, } from './hooks/usePicker/usePickerViews';
|
|
33
33
|
export { useStaticPicker } from './hooks/useStaticPicker';
|
|
34
|
-
export type { StaticOnlyPickerProps,
|
|
34
|
+
export type { StaticOnlyPickerProps, UseStaticPickerSlots, UseStaticPickerSlotProps, } from './hooks/useStaticPicker';
|
|
35
35
|
export { useLocalizationContext, useDefaultDates, useUtils, useLocaleText, useNow, } from './hooks/useUtils';
|
|
36
36
|
export type { ExportedUseViewsOptions } from './hooks/useViews';
|
|
37
37
|
export { useValidation } from './hooks/useValidation';
|
|
@@ -43,6 +43,7 @@ export type { BaseToolbarProps, ExportedBaseToolbarProps } from './models/props/
|
|
|
43
43
|
export type { DefaultizedProps, MakeOptional } from './models/helpers';
|
|
44
44
|
export type { WrapperVariant } from './models/common';
|
|
45
45
|
export type { BaseDateValidationProps, BaseTimeValidationProps, TimeValidationProps, MonthValidationProps, YearValidationProps, DayValidationProps, DateTimeValidationProps, } from './models/validation';
|
|
46
|
+
export { convertFieldResponseIntoMuiTextFieldProps } from './utils/convertFieldResponseIntoMuiTextFieldProps';
|
|
46
47
|
export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual, getTodayDate, } from './utils/date-utils';
|
|
47
48
|
export { splitFieldInternalAndForwardedProps } from './utils/fields';
|
|
48
49
|
export { getDefaultReferenceDate } from './utils/getDefaultReferenceDate';
|
|
@@ -54,6 +55,6 @@ export { validateDateTime } from './utils/validation/validateDateTime';
|
|
|
54
55
|
export { validateTime } from './utils/validation/validateTime';
|
|
55
56
|
export { buildDeprecatedPropsWarning, buildWarning } from './utils/warning';
|
|
56
57
|
export { DayCalendar } from '../DateCalendar/DayCalendar';
|
|
57
|
-
export type { DayCalendarProps,
|
|
58
|
+
export type { DayCalendarProps, DayCalendarSlots, DayCalendarSlotProps, ExportedDayCalendarProps, } from '../DateCalendar/DayCalendar';
|
|
58
59
|
export type { ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
|
|
59
60
|
export { useCalendarState } from '../DateCalendar/useCalendarState';
|
package/internals/index.js
CHANGED
|
@@ -16,6 +16,7 @@ export { useStaticPicker } from './hooks/useStaticPicker';
|
|
|
16
16
|
export { useLocalizationContext, useDefaultDates, useUtils, useLocaleText, useNow } from './hooks/useUtils';
|
|
17
17
|
export { useValidation } from './hooks/useValidation';
|
|
18
18
|
export { usePreviousMonthDisabled, useNextMonthDisabled } from './hooks/date-helpers-hooks';
|
|
19
|
+
export { convertFieldResponseIntoMuiTextFieldProps } from './utils/convertFieldResponseIntoMuiTextFieldProps';
|
|
19
20
|
export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual, getTodayDate } from './utils/date-utils';
|
|
20
21
|
export { splitFieldInternalAndForwardedProps } from './utils/fields';
|
|
21
22
|
export { getDefaultReferenceDate } from './utils/getDefaultReferenceDate';
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { TextFieldProps } from '@mui/material/TextField';
|
|
2
|
+
import { UseFieldResponse } from '../hooks/useField';
|
|
3
|
+
export declare const convertFieldResponseIntoMuiTextFieldProps: <TFieldResponse extends UseFieldResponse<any>>(fieldResponse: TFieldResponse) => TextFieldProps;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
+
const _excluded = ["onPaste", "onKeyDown", "inputMode", "readOnly", "InputProps", "inputProps", "inputRef"];
|
|
4
|
+
export const convertFieldResponseIntoMuiTextFieldProps = fieldResponse => {
|
|
5
|
+
const {
|
|
6
|
+
onPaste,
|
|
7
|
+
onKeyDown,
|
|
8
|
+
inputMode,
|
|
9
|
+
readOnly,
|
|
10
|
+
InputProps,
|
|
11
|
+
inputProps,
|
|
12
|
+
inputRef
|
|
13
|
+
} = fieldResponse,
|
|
14
|
+
other = _objectWithoutPropertiesLoose(fieldResponse, _excluded);
|
|
15
|
+
return _extends({}, other, {
|
|
16
|
+
InputProps: _extends({}, InputProps != null ? InputProps : {}, {
|
|
17
|
+
readOnly
|
|
18
|
+
}),
|
|
19
|
+
inputProps: _extends({}, inputProps != null ? inputProps : {}, {
|
|
20
|
+
inputMode,
|
|
21
|
+
onPaste,
|
|
22
|
+
onKeyDown,
|
|
23
|
+
ref: inputRef
|
|
24
|
+
})
|
|
25
|
+
});
|
|
26
|
+
};
|