@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,12 +13,11 @@ var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
|
|
|
13
13
|
var _styles = require("@mui/material/styles");
|
|
14
14
|
var _utils = require("@mui/base/utils");
|
|
15
15
|
var _utils2 = require("@mui/utils");
|
|
16
|
-
var
|
|
16
|
+
var _useDateTimeField = require("./useDateTimeField");
|
|
17
17
|
var _hooks = require("../hooks");
|
|
18
|
+
var _convertFieldResponseIntoMuiTextFieldProps = require("../internals/utils/convertFieldResponseIntoMuiTextFieldProps");
|
|
18
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
-
const _excluded = ["slots", "slotProps", "InputProps", "inputProps"]
|
|
20
|
-
_excluded2 = ["inputRef"],
|
|
21
|
-
_excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
|
|
20
|
+
const _excluded = ["slots", "slotProps", "InputProps", "inputProps"];
|
|
22
21
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
23
22
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
24
23
|
/**
|
|
@@ -31,7 +30,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
31
30
|
*
|
|
32
31
|
* - [DateTimeField API](https://mui.com/x/api/date-pickers/date-time-field/)
|
|
33
32
|
*/
|
|
34
|
-
const DateTimeField = exports.DateTimeField = /*#__PURE__*/React.forwardRef(function DateTimeField(inProps,
|
|
33
|
+
const DateTimeField = exports.DateTimeField = /*#__PURE__*/React.forwardRef(function DateTimeField(inProps, inRef) {
|
|
35
34
|
const themeProps = (0, _styles.useThemeProps)({
|
|
36
35
|
props: inProps,
|
|
37
36
|
name: 'MuiDateTimeField'
|
|
@@ -45,58 +44,26 @@ const DateTimeField = exports.DateTimeField = /*#__PURE__*/React.forwardRef(func
|
|
|
45
44
|
other = (0, _objectWithoutPropertiesLoose2.default)(themeProps, _excluded);
|
|
46
45
|
const ownerState = themeProps;
|
|
47
46
|
const TextField = slots?.textField ?? _TextField.default;
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
textFieldProps = (0, _objectWithoutPropertiesLoose2.default)(_useSlotProps, _excluded2);
|
|
47
|
+
const textFieldProps = (0, _utils.useSlotProps)({
|
|
48
|
+
elementType: TextField,
|
|
49
|
+
externalSlotProps: slotProps?.textField,
|
|
50
|
+
externalForwardedProps: other,
|
|
51
|
+
ownerState,
|
|
52
|
+
additionalProps: {
|
|
53
|
+
ref: inRef
|
|
54
|
+
}
|
|
55
|
+
});
|
|
58
56
|
|
|
59
57
|
// TODO: Remove when mui/material-ui#35088 will be merged
|
|
60
58
|
textFieldProps.inputProps = (0, _extends2.default)({}, inputProps, textFieldProps.inputProps);
|
|
61
59
|
textFieldProps.InputProps = (0, _extends2.default)({}, InputProps, textFieldProps.InputProps);
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}),
|
|
66
|
-
{
|
|
67
|
-
ref: inputRef,
|
|
68
|
-
onPaste,
|
|
69
|
-
onKeyDown,
|
|
70
|
-
inputMode,
|
|
71
|
-
readOnly,
|
|
72
|
-
clearable,
|
|
73
|
-
onClear
|
|
74
|
-
} = _useDateTimeField,
|
|
75
|
-
fieldProps = (0, _objectWithoutPropertiesLoose2.default)(_useDateTimeField, _excluded3);
|
|
76
|
-
const {
|
|
77
|
-
InputProps: ProcessedInputProps,
|
|
78
|
-
fieldProps: processedFieldProps
|
|
79
|
-
} = (0, _hooks.useClearableField)({
|
|
80
|
-
onClear,
|
|
81
|
-
clearable,
|
|
82
|
-
fieldProps,
|
|
83
|
-
InputProps: fieldProps.InputProps,
|
|
60
|
+
const fieldResponse = (0, _useDateTimeField.useDateTimeField)(textFieldProps);
|
|
61
|
+
const convertedFieldResponse = (0, _convertFieldResponseIntoMuiTextFieldProps.convertFieldResponseIntoMuiTextFieldProps)(fieldResponse);
|
|
62
|
+
const processedFieldProps = (0, _hooks.useClearableField)((0, _extends2.default)({}, convertedFieldResponse, {
|
|
84
63
|
slots,
|
|
85
64
|
slotProps
|
|
86
|
-
});
|
|
87
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({
|
|
88
|
-
ref: ref
|
|
89
|
-
}, processedFieldProps, {
|
|
90
|
-
InputProps: (0, _extends2.default)({}, ProcessedInputProps, {
|
|
91
|
-
readOnly
|
|
92
|
-
}),
|
|
93
|
-
inputProps: (0, _extends2.default)({}, fieldProps.inputProps, {
|
|
94
|
-
inputMode,
|
|
95
|
-
onPaste,
|
|
96
|
-
onKeyDown,
|
|
97
|
-
ref: inputRef
|
|
98
|
-
})
|
|
99
65
|
}));
|
|
66
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(TextField, (0, _extends2.default)({}, processedFieldProps));
|
|
100
67
|
});
|
|
101
68
|
process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
102
69
|
// ----------------------------- Warning --------------------------------
|
|
@@ -307,7 +274,7 @@ process.env.NODE_ENV !== "production" ? DateTimeField.propTypes = {
|
|
|
307
274
|
* 4. If `null` is provided, no section will be selected
|
|
308
275
|
* If not provided, the selected sections will be handled internally.
|
|
309
276
|
*/
|
|
310
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
277
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
311
278
|
endIndex: _propTypes.default.number.isRequired,
|
|
312
279
|
startIndex: _propTypes.default.number.isRequired
|
|
313
280
|
})]),
|
|
@@ -28,17 +28,13 @@ const useDefaultizedDateTimeField = props => {
|
|
|
28
28
|
maxTime: props.maxDateTime ?? props.maxTime
|
|
29
29
|
});
|
|
30
30
|
};
|
|
31
|
-
const useDateTimeField =
|
|
32
|
-
props: inProps,
|
|
33
|
-
inputRef
|
|
34
|
-
}) => {
|
|
31
|
+
const useDateTimeField = inProps => {
|
|
35
32
|
const props = useDefaultizedDateTimeField(inProps);
|
|
36
33
|
const {
|
|
37
34
|
forwardedProps,
|
|
38
35
|
internalProps
|
|
39
36
|
} = (0, _fields.splitFieldInternalAndForwardedProps)(props, 'date-time');
|
|
40
37
|
return (0, _useField.useField)({
|
|
41
|
-
inputRef,
|
|
42
38
|
forwardedProps,
|
|
43
39
|
internalProps,
|
|
44
40
|
valueManager: _valueManagers.singleItemValueManager,
|
|
@@ -207,6 +207,10 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
207
207
|
* @default 3
|
|
208
208
|
*/
|
|
209
209
|
monthsPerRow: _propTypes.default.oneOf([3, 4]),
|
|
210
|
+
/**
|
|
211
|
+
* Name attribute used by the `input` element in the Field.
|
|
212
|
+
*/
|
|
213
|
+
name: _propTypes.default.string,
|
|
210
214
|
/**
|
|
211
215
|
* Callback fired when the value is accepted.
|
|
212
216
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -305,7 +309,7 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
305
309
|
* 4. If `null` is provided, no section will be selected
|
|
306
310
|
* If not provided, the selected sections will be handled internally.
|
|
307
311
|
*/
|
|
308
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
312
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
309
313
|
endIndex: _propTypes.default.number.isRequired,
|
|
310
314
|
startIndex: _propTypes.default.number.isRequired
|
|
311
315
|
})]),
|
|
@@ -12,7 +12,8 @@ var _utils = require("@mui/base/utils");
|
|
|
12
12
|
var _utils2 = require("@mui/utils");
|
|
13
13
|
var _valueManagers = require("../internals/utils/valueManagers");
|
|
14
14
|
var _shared = require("../DatePicker/shared");
|
|
15
|
-
var
|
|
15
|
+
var _useUtils = require("../internals/hooks/useUtils");
|
|
16
|
+
var _validateDate = require("../internals/utils/validation/validateDate");
|
|
16
17
|
var _useDesktopPicker = require("../internals/hooks/useDesktopPicker");
|
|
17
18
|
var _icons = require("../icons");
|
|
18
19
|
var _DateField = require("../DateField");
|
|
@@ -32,8 +33,8 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
32
33
|
* - [DesktopDatePicker API](https://mui.com/x/api/date-pickers/desktop-date-picker/)
|
|
33
34
|
*/
|
|
34
35
|
const DesktopDatePicker = exports.DesktopDatePicker = /*#__PURE__*/React.forwardRef(function DesktopDatePicker(inProps, ref) {
|
|
35
|
-
const localeText = (0,
|
|
36
|
-
const utils = (0,
|
|
36
|
+
const localeText = (0, _useUtils.useLocaleText)();
|
|
37
|
+
const utils = (0, _useUtils.useUtils)();
|
|
37
38
|
|
|
38
39
|
// Props with the default values common to all date pickers
|
|
39
40
|
const defaultizedProps = (0, _shared.useDatePickerDefaultizedProps)(inProps, 'MuiDesktopDatePicker');
|
|
@@ -68,7 +69,7 @@ const DesktopDatePicker = exports.DesktopDatePicker = /*#__PURE__*/React.forward
|
|
|
68
69
|
valueManager: _valueManagers.singleItemValueManager,
|
|
69
70
|
valueType: 'date',
|
|
70
71
|
getOpenDialogAriaText: props.localeText?.openDatePickerDialogue ?? localeText.openDatePickerDialogue,
|
|
71
|
-
validator:
|
|
72
|
+
validator: _validateDate.validateDate
|
|
72
73
|
});
|
|
73
74
|
return renderPicker();
|
|
74
75
|
});
|
|
@@ -183,6 +184,10 @@ DesktopDatePicker.propTypes = {
|
|
|
183
184
|
* @default 3
|
|
184
185
|
*/
|
|
185
186
|
monthsPerRow: _propTypes.default.oneOf([3, 4]),
|
|
187
|
+
/**
|
|
188
|
+
* Name attribute used by the `input` element in the Field.
|
|
189
|
+
*/
|
|
190
|
+
name: _propTypes.default.string,
|
|
186
191
|
/**
|
|
187
192
|
* Callback fired when the value is accepted.
|
|
188
193
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -281,7 +286,7 @@ DesktopDatePicker.propTypes = {
|
|
|
281
286
|
* 4. If `null` is provided, no section will be selected
|
|
282
287
|
* If not provided, the selected sections will be handled internally.
|
|
283
288
|
*/
|
|
284
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
289
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
285
290
|
endIndex: _propTypes.default.number.isRequired,
|
|
286
291
|
startIndex: _propTypes.default.number.isRequired
|
|
287
292
|
})]),
|
|
@@ -260,6 +260,10 @@ DesktopDateTimePicker.propTypes = {
|
|
|
260
260
|
* @default 3
|
|
261
261
|
*/
|
|
262
262
|
monthsPerRow: _propTypes.default.oneOf([3, 4]),
|
|
263
|
+
/**
|
|
264
|
+
* Name attribute used by the `input` element in the Field.
|
|
265
|
+
*/
|
|
266
|
+
name: _propTypes.default.string,
|
|
263
267
|
/**
|
|
264
268
|
* Callback fired when the value is accepted.
|
|
265
269
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -358,7 +362,7 @@ DesktopDateTimePicker.propTypes = {
|
|
|
358
362
|
* 4. If `null` is provided, no section will be selected
|
|
359
363
|
* If not provided, the selected sections will be handled internally.
|
|
360
364
|
*/
|
|
361
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
365
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
362
366
|
endIndex: _propTypes.default.number.isRequired,
|
|
363
367
|
startIndex: _propTypes.default.number.isRequired
|
|
364
368
|
})]),
|
|
@@ -194,6 +194,10 @@ DesktopTimePicker.propTypes = {
|
|
|
194
194
|
* @default 1
|
|
195
195
|
*/
|
|
196
196
|
minutesStep: _propTypes.default.number,
|
|
197
|
+
/**
|
|
198
|
+
* Name attribute used by the `input` element in the Field.
|
|
199
|
+
*/
|
|
200
|
+
name: _propTypes.default.string,
|
|
197
201
|
/**
|
|
198
202
|
* Callback fired when the value is accepted.
|
|
199
203
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -274,7 +278,7 @@ DesktopTimePicker.propTypes = {
|
|
|
274
278
|
* 4. If `null` is provided, no section will be selected
|
|
275
279
|
* If not provided, the selected sections will be handled internally.
|
|
276
280
|
*/
|
|
277
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
281
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
278
282
|
endIndex: _propTypes.default.number.isRequired,
|
|
279
283
|
startIndex: _propTypes.default.number.isRequired
|
|
280
284
|
})]),
|
|
@@ -12,7 +12,8 @@ var _utils = require("@mui/base/utils");
|
|
|
12
12
|
var _utils2 = require("@mui/utils");
|
|
13
13
|
var _useMobilePicker = require("../internals/hooks/useMobilePicker");
|
|
14
14
|
var _shared = require("../DatePicker/shared");
|
|
15
|
-
var
|
|
15
|
+
var _useUtils = require("../internals/hooks/useUtils");
|
|
16
|
+
var _validateDate = require("../internals/utils/validation/validateDate");
|
|
16
17
|
var _DateField = require("../DateField");
|
|
17
18
|
var _extractValidationProps = require("../internals/utils/validation/extractValidationProps");
|
|
18
19
|
var _valueManagers = require("../internals/utils/valueManagers");
|
|
@@ -31,8 +32,8 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
31
32
|
* - [MobileDatePicker API](https://mui.com/x/api/date-pickers/mobile-date-picker/)
|
|
32
33
|
*/
|
|
33
34
|
const MobileDatePicker = exports.MobileDatePicker = /*#__PURE__*/React.forwardRef(function MobileDatePicker(inProps, ref) {
|
|
34
|
-
const localeText = (0,
|
|
35
|
-
const utils = (0,
|
|
35
|
+
const localeText = (0, _useUtils.useLocaleText)();
|
|
36
|
+
const utils = (0, _useUtils.useUtils)();
|
|
36
37
|
|
|
37
38
|
// Props with the default values common to all date pickers
|
|
38
39
|
const defaultizedProps = (0, _shared.useDatePickerDefaultizedProps)(inProps, 'MuiMobileDatePicker');
|
|
@@ -65,7 +66,7 @@ const MobileDatePicker = exports.MobileDatePicker = /*#__PURE__*/React.forwardRe
|
|
|
65
66
|
valueManager: _valueManagers.singleItemValueManager,
|
|
66
67
|
valueType: 'date',
|
|
67
68
|
getOpenDialogAriaText: props.localeText?.openDatePickerDialogue ?? localeText.openDatePickerDialogue,
|
|
68
|
-
validator:
|
|
69
|
+
validator: _validateDate.validateDate
|
|
69
70
|
});
|
|
70
71
|
return renderPicker();
|
|
71
72
|
});
|
|
@@ -180,6 +181,10 @@ MobileDatePicker.propTypes = {
|
|
|
180
181
|
* @default 3
|
|
181
182
|
*/
|
|
182
183
|
monthsPerRow: _propTypes.default.oneOf([3, 4]),
|
|
184
|
+
/**
|
|
185
|
+
* Name attribute used by the `input` element in the Field.
|
|
186
|
+
*/
|
|
187
|
+
name: _propTypes.default.string,
|
|
183
188
|
/**
|
|
184
189
|
* Callback fired when the value is accepted.
|
|
185
190
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -278,7 +283,7 @@ MobileDatePicker.propTypes = {
|
|
|
278
283
|
* 4. If `null` is provided, no section will be selected
|
|
279
284
|
* If not provided, the selected sections will be handled internally.
|
|
280
285
|
*/
|
|
281
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
286
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
282
287
|
endIndex: _propTypes.default.number.isRequired,
|
|
283
288
|
startIndex: _propTypes.default.number.isRequired
|
|
284
289
|
})]),
|
|
@@ -229,6 +229,10 @@ MobileDateTimePicker.propTypes = {
|
|
|
229
229
|
* @default 3
|
|
230
230
|
*/
|
|
231
231
|
monthsPerRow: _propTypes.default.oneOf([3, 4]),
|
|
232
|
+
/**
|
|
233
|
+
* Name attribute used by the `input` element in the Field.
|
|
234
|
+
*/
|
|
235
|
+
name: _propTypes.default.string,
|
|
232
236
|
/**
|
|
233
237
|
* Callback fired when the value is accepted.
|
|
234
238
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -327,7 +331,7 @@ MobileDateTimePicker.propTypes = {
|
|
|
327
331
|
* 4. If `null` is provided, no section will be selected
|
|
328
332
|
* If not provided, the selected sections will be handled internally.
|
|
329
333
|
*/
|
|
330
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
334
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
331
335
|
endIndex: _propTypes.default.number.isRequired,
|
|
332
336
|
startIndex: _propTypes.default.number.isRequired
|
|
333
337
|
})]),
|
|
@@ -173,6 +173,10 @@ MobileTimePicker.propTypes = {
|
|
|
173
173
|
* @default 1
|
|
174
174
|
*/
|
|
175
175
|
minutesStep: _propTypes.default.number,
|
|
176
|
+
/**
|
|
177
|
+
* Name attribute used by the `input` element in the Field.
|
|
178
|
+
*/
|
|
179
|
+
name: _propTypes.default.string,
|
|
176
180
|
/**
|
|
177
181
|
* Callback fired when the value is accepted.
|
|
178
182
|
* @template TValue The value type. Will be either the same type as `value` or `null`. Can be in `[start, end]` format in case of range value.
|
|
@@ -253,7 +257,7 @@ MobileTimePicker.propTypes = {
|
|
|
253
257
|
* 4. If `null` is provided, no section will be selected
|
|
254
258
|
* If not provided, the selected sections will be handled internally.
|
|
255
259
|
*/
|
|
256
|
-
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
260
|
+
selectedSections: _propTypes.default.oneOfType([_propTypes.default.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), _propTypes.default.number, _propTypes.default.shape({
|
|
257
261
|
endIndex: _propTypes.default.number.isRequired,
|
|
258
262
|
startIndex: _propTypes.default.number.isRequired
|
|
259
263
|
})]),
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PickersSectionListSectionSeparator = exports.PickersSectionListSectionContent = exports.PickersSectionListSection = exports.PickersSectionListRoot = exports.PickersSectionList = void 0;
|
|
8
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var React = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _styled = _interopRequireDefault(require("@mui/system/styled"));
|
|
12
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
+
var _utils = require("@mui/base/utils");
|
|
14
|
+
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
15
|
+
var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
|
|
16
|
+
var _pickersSectionListClasses = require("./pickersSectionListClasses");
|
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
+
const _excluded = ["slots", "slotProps", "elements", "sectionListRef"];
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
const PickersSectionListRoot = exports.PickersSectionListRoot = (0, _styled.default)('div', {
|
|
22
|
+
name: 'MuiPickersSectionList',
|
|
23
|
+
slot: 'Root',
|
|
24
|
+
overridesResolver: (props, styles) => styles.root
|
|
25
|
+
})({
|
|
26
|
+
direction: 'ltr /*! @noflip */',
|
|
27
|
+
outline: 'none'
|
|
28
|
+
});
|
|
29
|
+
const PickersSectionListSection = exports.PickersSectionListSection = (0, _styled.default)('span', {
|
|
30
|
+
name: 'MuiPickersSectionList',
|
|
31
|
+
slot: 'Section',
|
|
32
|
+
overridesResolver: (props, styles) => styles.section
|
|
33
|
+
})({});
|
|
34
|
+
const PickersSectionListSectionSeparator = exports.PickersSectionListSectionSeparator = (0, _styled.default)('span', {
|
|
35
|
+
name: 'MuiPickersSectionList',
|
|
36
|
+
slot: 'SectionSeparator',
|
|
37
|
+
overridesResolver: (props, styles) => styles.sectionSeparator
|
|
38
|
+
})({
|
|
39
|
+
whiteSpace: 'pre'
|
|
40
|
+
});
|
|
41
|
+
const PickersSectionListSectionContent = exports.PickersSectionListSectionContent = (0, _styled.default)('span', {
|
|
42
|
+
name: 'MuiPickersSectionList',
|
|
43
|
+
slot: 'SectionContent',
|
|
44
|
+
overridesResolver: (props, styles) => styles.sectionContent
|
|
45
|
+
})({
|
|
46
|
+
outline: 'none'
|
|
47
|
+
});
|
|
48
|
+
const useUtilityClasses = ownerState => {
|
|
49
|
+
const {
|
|
50
|
+
classes
|
|
51
|
+
} = ownerState;
|
|
52
|
+
const slots = {
|
|
53
|
+
root: ['root'],
|
|
54
|
+
section: ['section'],
|
|
55
|
+
sectionContent: ['sectionContent']
|
|
56
|
+
};
|
|
57
|
+
return (0, _composeClasses.default)(slots, _pickersSectionListClasses.getPickersSectionListUtilityClass, classes);
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Demos:
|
|
61
|
+
*
|
|
62
|
+
* - [Custom field](https://mui.com/x/react-date-pickers/custom-field/)
|
|
63
|
+
*
|
|
64
|
+
* API:
|
|
65
|
+
*
|
|
66
|
+
* - [PickersSectionList API](https://mui.com/x/api/date-pickers/pickers-section-list/)
|
|
67
|
+
*/
|
|
68
|
+
function PickersSection(props) {
|
|
69
|
+
const {
|
|
70
|
+
slots,
|
|
71
|
+
slotProps,
|
|
72
|
+
element,
|
|
73
|
+
classes
|
|
74
|
+
} = props;
|
|
75
|
+
const Section = slots?.section ?? PickersSectionListSection;
|
|
76
|
+
const sectionProps = (0, _utils.useSlotProps)({
|
|
77
|
+
elementType: Section,
|
|
78
|
+
externalSlotProps: slotProps?.section,
|
|
79
|
+
externalForwardedProps: element.container,
|
|
80
|
+
className: classes.section,
|
|
81
|
+
ownerState: {}
|
|
82
|
+
});
|
|
83
|
+
const SectionContent = slots?.sectionContent ?? PickersSectionListSectionContent;
|
|
84
|
+
const sectionContentProps = (0, _utils.useSlotProps)({
|
|
85
|
+
elementType: SectionContent,
|
|
86
|
+
externalSlotProps: slotProps?.sectionContent,
|
|
87
|
+
externalForwardedProps: element.content,
|
|
88
|
+
additionalProps: {
|
|
89
|
+
suppressContentEditableWarning: true
|
|
90
|
+
},
|
|
91
|
+
className: classes.sectionContent,
|
|
92
|
+
ownerState: {}
|
|
93
|
+
});
|
|
94
|
+
const SectionSeparator = slots?.sectionSeparator ?? PickersSectionListSectionSeparator;
|
|
95
|
+
const sectionSeparatorBeforeProps = (0, _utils.useSlotProps)({
|
|
96
|
+
elementType: SectionSeparator,
|
|
97
|
+
externalSlotProps: slotProps?.sectionSeparator,
|
|
98
|
+
externalForwardedProps: element.before,
|
|
99
|
+
ownerState: {
|
|
100
|
+
position: 'before'
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
const sectionSeparatorAfterProps = (0, _utils.useSlotProps)({
|
|
104
|
+
elementType: SectionSeparator,
|
|
105
|
+
externalSlotProps: slotProps?.sectionSeparator,
|
|
106
|
+
externalForwardedProps: element.after,
|
|
107
|
+
ownerState: {
|
|
108
|
+
position: 'after'
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Section, (0, _extends2.default)({}, sectionProps, {
|
|
112
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SectionSeparator, (0, _extends2.default)({}, sectionSeparatorBeforeProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(SectionContent, (0, _extends2.default)({}, sectionContentProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(SectionSeparator, (0, _extends2.default)({}, sectionSeparatorAfterProps))]
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
const PickersSectionList = exports.PickersSectionList = /*#__PURE__*/React.forwardRef(function PickersSectionList(props, ref) {
|
|
116
|
+
const {
|
|
117
|
+
slots,
|
|
118
|
+
slotProps,
|
|
119
|
+
elements,
|
|
120
|
+
sectionListRef
|
|
121
|
+
} = props,
|
|
122
|
+
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
123
|
+
const classes = useUtilityClasses(props);
|
|
124
|
+
const rootRef = React.useRef(null);
|
|
125
|
+
const handleRootRef = (0, _useForkRef.default)(ref, rootRef);
|
|
126
|
+
const getRoot = methodName => {
|
|
127
|
+
if (!rootRef.current) {
|
|
128
|
+
throw new Error(`MUI: Cannot call sectionListRef.${methodName} before the mount of the component`);
|
|
129
|
+
}
|
|
130
|
+
return rootRef.current;
|
|
131
|
+
};
|
|
132
|
+
React.useImperativeHandle(sectionListRef, () => ({
|
|
133
|
+
getRoot() {
|
|
134
|
+
return getRoot('getRoot');
|
|
135
|
+
},
|
|
136
|
+
getSectionContainer(index) {
|
|
137
|
+
const root = getRoot('getSectionContainer');
|
|
138
|
+
return root.querySelector(`.${_pickersSectionListClasses.pickersSectionListClasses.section}[data-sectionindex="${index}"]`);
|
|
139
|
+
},
|
|
140
|
+
getSectionContent(index) {
|
|
141
|
+
const root = getRoot('getSectionContent');
|
|
142
|
+
return root.querySelector(`.${_pickersSectionListClasses.pickersSectionListClasses.section}[data-sectionindex="${index}"] .${_pickersSectionListClasses.pickersSectionListClasses.sectionContent}`);
|
|
143
|
+
},
|
|
144
|
+
getSectionIndexFromDOMElement(element) {
|
|
145
|
+
const root = getRoot('getSectionIndexFromDOMElement');
|
|
146
|
+
if (element == null || !root.contains(element)) {
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
let sectionContainer = null;
|
|
150
|
+
if (element.classList.contains(_pickersSectionListClasses.pickersSectionListClasses.section)) {
|
|
151
|
+
sectionContainer = element;
|
|
152
|
+
} else if (element.classList.contains(_pickersSectionListClasses.pickersSectionListClasses.sectionContent)) {
|
|
153
|
+
sectionContainer = element.parentElement;
|
|
154
|
+
}
|
|
155
|
+
if (sectionContainer == null) {
|
|
156
|
+
return null;
|
|
157
|
+
}
|
|
158
|
+
return Number(sectionContainer.dataset.sectionindex);
|
|
159
|
+
}
|
|
160
|
+
}));
|
|
161
|
+
const Root = slots?.root ?? PickersSectionListRoot;
|
|
162
|
+
const rootProps = (0, _utils.useSlotProps)({
|
|
163
|
+
elementType: Root,
|
|
164
|
+
externalSlotProps: slotProps?.root,
|
|
165
|
+
externalForwardedProps: other,
|
|
166
|
+
additionalProps: {
|
|
167
|
+
ref: handleRootRef,
|
|
168
|
+
suppressContentEditableWarning: true
|
|
169
|
+
},
|
|
170
|
+
className: classes.root,
|
|
171
|
+
ownerState: {}
|
|
172
|
+
});
|
|
173
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Root, (0, _extends2.default)({}, rootProps, {
|
|
174
|
+
children: rootProps.contentEditable ? elements.map(({
|
|
175
|
+
content,
|
|
176
|
+
before,
|
|
177
|
+
after
|
|
178
|
+
}) => `${before.children}${content.children}${after.children}`).join('') : /*#__PURE__*/(0, _jsxRuntime.jsx)(React.Fragment, {
|
|
179
|
+
children: elements.map((element, elementIndex) => /*#__PURE__*/(0, _jsxRuntime.jsx)(PickersSection, {
|
|
180
|
+
slots: slots,
|
|
181
|
+
slotProps: slotProps,
|
|
182
|
+
element: element,
|
|
183
|
+
classes: classes
|
|
184
|
+
}, elementIndex))
|
|
185
|
+
})
|
|
186
|
+
}));
|
|
187
|
+
});
|
|
188
|
+
process.env.NODE_ENV !== "production" ? PickersSectionList.propTypes = {
|
|
189
|
+
// ----------------------------- Warning --------------------------------
|
|
190
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
191
|
+
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
192
|
+
// ----------------------------------------------------------------------
|
|
193
|
+
/**
|
|
194
|
+
* Override or extend the styles applied to the component.
|
|
195
|
+
*/
|
|
196
|
+
classes: _propTypes.default.object,
|
|
197
|
+
/**
|
|
198
|
+
* If true, the whole element is editable.
|
|
199
|
+
* Useful when all the sections are selected.
|
|
200
|
+
*/
|
|
201
|
+
contentEditable: _propTypes.default.bool.isRequired,
|
|
202
|
+
/**
|
|
203
|
+
* The elements to render.
|
|
204
|
+
* Each element contains the prop to edit a section of the value.
|
|
205
|
+
*/
|
|
206
|
+
elements: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
207
|
+
after: _propTypes.default.object.isRequired,
|
|
208
|
+
before: _propTypes.default.object.isRequired,
|
|
209
|
+
container: _propTypes.default.object.isRequired,
|
|
210
|
+
content: _propTypes.default.object.isRequired
|
|
211
|
+
})).isRequired,
|
|
212
|
+
sectionListRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.shape({
|
|
213
|
+
current: _propTypes.default.shape({
|
|
214
|
+
getRoot: _propTypes.default.func.isRequired,
|
|
215
|
+
getSectionContainer: _propTypes.default.func.isRequired,
|
|
216
|
+
getSectionContent: _propTypes.default.func.isRequired,
|
|
217
|
+
getSectionIndexFromDOMElement: _propTypes.default.func.isRequired
|
|
218
|
+
})
|
|
219
|
+
})]),
|
|
220
|
+
/**
|
|
221
|
+
* The props used for each component slot.
|
|
222
|
+
*/
|
|
223
|
+
slotProps: _propTypes.default.object,
|
|
224
|
+
/**
|
|
225
|
+
* Overridable component slots.
|
|
226
|
+
*/
|
|
227
|
+
slots: _propTypes.default.object
|
|
228
|
+
} : void 0;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Unstable_PickersSectionList", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _PickersSectionList.PickersSectionList;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "Unstable_PickersSectionListRoot", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _PickersSectionList.PickersSectionListRoot;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "Unstable_PickersSectionListSection", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _PickersSectionList.PickersSectionListSection;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "Unstable_PickersSectionListSectionContent", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _PickersSectionList.PickersSectionListSectionContent;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "Unstable_PickersSectionListSectionSeparator", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _PickersSectionList.PickersSectionListSectionSeparator;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "getPickersSectionListUtilityClass", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _pickersSectionListClasses.getPickersSectionListUtilityClass;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "pickersSectionListClasses", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _pickersSectionListClasses.pickersSectionListClasses;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
var _PickersSectionList = require("./PickersSectionList");
|
|
49
|
+
var _pickersSectionListClasses = require("./pickersSectionListClasses");
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getPickersSectionListUtilityClass = getPickersSectionListUtilityClass;
|
|
8
|
+
exports.pickersSectionListClasses = void 0;
|
|
9
|
+
var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateUtilityClass"));
|
|
10
|
+
var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generateUtilityClasses"));
|
|
11
|
+
function getPickersSectionListUtilityClass(slot) {
|
|
12
|
+
return (0, _generateUtilityClass.default)('MuiPickersSectionList', slot);
|
|
13
|
+
}
|
|
14
|
+
const pickersSectionListClasses = exports.pickersSectionListClasses = (0, _generateUtilityClasses.default)('MuiPickersSectionList', ['root', 'section', 'sectionContent']);
|
|
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _shared = require("../DatePicker/shared");
|
|
12
12
|
var _dateViewRenderers = require("../dateViewRenderers");
|
|
13
13
|
var _useStaticPicker = require("../internals/hooks/useStaticPicker");
|
|
14
|
-
var
|
|
14
|
+
var _validateDate = require("../internals/utils/validation/validateDate");
|
|
15
15
|
var _valueManagers = require("../internals/utils/valueManagers");
|
|
16
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -51,7 +51,7 @@ const StaticDatePicker = exports.StaticDatePicker = /*#__PURE__*/React.forwardRe
|
|
|
51
51
|
props,
|
|
52
52
|
valueManager: _valueManagers.singleItemValueManager,
|
|
53
53
|
valueType: 'date',
|
|
54
|
-
validator:
|
|
54
|
+
validator: _validateDate.validateDate,
|
|
55
55
|
ref
|
|
56
56
|
});
|
|
57
57
|
return renderPicker();
|