@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
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,257 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## 7.0.0-alpha.6
|
|
7
|
+
|
|
8
|
+
_Dec 22, 2023_
|
|
9
|
+
|
|
10
|
+
We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
|
|
11
|
+
|
|
12
|
+
- 🎁 Data Grid now supports `Date` objects in the `filterModel`
|
|
13
|
+
- 🌍 Improve Russian (ru-RU) locale on the Data Grid
|
|
14
|
+
- 🐞 Bugfixes
|
|
15
|
+
|
|
16
|
+
### Data Grid
|
|
17
|
+
|
|
18
|
+
#### Breaking changes
|
|
19
|
+
|
|
20
|
+
- The filter panel no longer uses the native version of the [`Select`](https://mui.com/material-ui/react-select/) component for all components.
|
|
21
|
+
- The `getOptionValue` and `getOptionLabel` props were removed from the following components:
|
|
22
|
+
|
|
23
|
+
- `GridEditSingleSelectCell`
|
|
24
|
+
- `GridFilterInputSingleSelect`
|
|
25
|
+
- `GridFilterInputMultipleSingleSelect`
|
|
26
|
+
|
|
27
|
+
Use the `getOptionValue` and `getOptionLabel` properties on the `singleSelect` column definition instead:
|
|
28
|
+
|
|
29
|
+
```tsx
|
|
30
|
+
const column: GridColDef = {
|
|
31
|
+
type: 'singleSelect',
|
|
32
|
+
field: 'country',
|
|
33
|
+
valueOptions: [
|
|
34
|
+
{ code: 'BR', name: 'Brazil' },
|
|
35
|
+
{ code: 'FR', name: 'France' },
|
|
36
|
+
],
|
|
37
|
+
getOptionValue: (value: any) => value.code,
|
|
38
|
+
getOptionLabel: (value: any) => value.name,
|
|
39
|
+
};
|
|
40
|
+
```
|
|
41
|
+
- The `filterModel` now supports `Date` objects as values for `date` and `dateTime` column types.
|
|
42
|
+
The `filterModel` still accepts strings as values for `date` and `dateTime` column types,
|
|
43
|
+
but all updates to the `filterModel` coming from the UI (e.g. filter panel) will set the value as a `Date` object.
|
|
44
|
+
|
|
45
|
+
#### `@mui/x-data-grid@7.0.0-alpha.6`
|
|
46
|
+
|
|
47
|
+
- [DataGrid] Fix typos in the JSDoc (#11451) @flaviendelangle
|
|
48
|
+
- [DataGrid] Make `checkboxSelection` respect the `disableMultipleRowSelection` prop (#11448) @cherniavskii
|
|
49
|
+
- [DataGrid] Support `Date` objects in filter model (#7069) @cherniavskii
|
|
50
|
+
- [DataGrid] Use non-native `Select`s by default (#11330) @cherniavskii
|
|
51
|
+
- [l10n] Improve Russian (ru-RU) locale (#11441) @wensiet
|
|
52
|
+
|
|
53
|
+
#### `@mui/x-data-grid-pro@7.0.0-alpha.6` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
54
|
+
|
|
55
|
+
Same changes as in `@mui/x-data-grid@7.0.0-alpha.6`.
|
|
56
|
+
|
|
57
|
+
#### `@mui/x-data-grid-premium@7.0.0-alpha.6` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
58
|
+
|
|
59
|
+
Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.6`.
|
|
60
|
+
|
|
61
|
+
### Date Pickers
|
|
62
|
+
|
|
63
|
+
#### `@mui/x-date-pickers@7.0.0-alpha.6`
|
|
64
|
+
|
|
65
|
+
- [fields] Adjust `PickersInput` sizing styles (#11392) @noraleonte
|
|
66
|
+
- [fields] Fix section pasting (#11447) @LukasTy
|
|
67
|
+
- [pickers] Add `PickersTextField` `standard` and `filled` variants (#11250) @noraleonte
|
|
68
|
+
- [pickers] Add missing breaking changes to changelog (#11420) @MBilalShafi
|
|
69
|
+
- [pickers] Cleanup error messages in `PickersSectionList` (#11449) @flaviendelangle
|
|
70
|
+
- [pickers] Create new component `PickersSectionList` (#11352) @flaviendelangle
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-date-pickers-pro@7.0.0-alpha.6` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
73
|
+
|
|
74
|
+
Same changes as in `@mui/x-date-pickers@7.0.0-alpha.6`.
|
|
75
|
+
|
|
76
|
+
### Charts / `@mui/x-charts@7.0.0-alpha.6`
|
|
77
|
+
|
|
78
|
+
- [charts] Allow percentage values for pie chart center and radius (#11464) @alexfauquette
|
|
79
|
+
- [charts] Improve dataset typing (#11372) @alexfauquette
|
|
80
|
+
- [charts] Make error message more explicit (#11457) @alexfauquette
|
|
81
|
+
- [charts] Make the helper `ChartsText` component public (#11370) @alexfauquette
|
|
82
|
+
|
|
83
|
+
### Docs
|
|
84
|
+
|
|
85
|
+
- [docs] Document `false` default values for boolean props (#11477) @cherniavskii
|
|
86
|
+
- [docs] Improve Pickers `name` prop examples (#11422) @LukasTy
|
|
87
|
+
- [docs] Limit `date-fns` package to v2 in codesandbox (#11463) @LukasTy
|
|
88
|
+
|
|
89
|
+
### Core
|
|
90
|
+
|
|
91
|
+
- [core] Cherry pick follow up (#11469) @LukasTy
|
|
92
|
+
- [core] Fix `cherry-pick` action (#11446) @LukasTy
|
|
93
|
+
- [core] Fix security regressions in cherry-pick-next-to-master.yml (#11482) @MBilalShafi
|
|
94
|
+
- [test] Reload the page if its blank and there are no links to the remaining tests (#11466) @cherniavskii
|
|
95
|
+
|
|
96
|
+
## 7.0.0-alpha.5
|
|
97
|
+
|
|
98
|
+
_Dec 14, 2023_
|
|
99
|
+
|
|
100
|
+
We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
|
|
101
|
+
|
|
102
|
+
- 💫 New recipe added for the Data Grid
|
|
103
|
+
- 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
|
|
104
|
+
- 🐞 Bugfixes
|
|
105
|
+
|
|
106
|
+
### Data Grid
|
|
107
|
+
|
|
108
|
+
#### Breaking changes
|
|
109
|
+
|
|
110
|
+
- The `instanceId` prop is now required for state selectors.
|
|
111
|
+
This prop is used to distinguish between multiple Data Grid instances on the same page.
|
|
112
|
+
See [migration docs](https://next.mui.com/x/migration/migration-data-grid-v6/#instanceid-prop-is-required-for-state-selectors) for more details.
|
|
113
|
+
|
|
114
|
+
#### `@mui/x-data-grid@7.0.0-alpha.5`
|
|
115
|
+
|
|
116
|
+
- [DataGrid] Make `instanceId` required for state selectors (#11395) @cherniavskii
|
|
117
|
+
- [DataGrid] Recipe for grouped rows autosizing (#11401) @michelengelen
|
|
118
|
+
- [l10n] Improve Swedish (sv-SE) locale (#11373) @fredrikcarlbom
|
|
119
|
+
- [l10n] Improve Urdu (ur-PK) locale (#11400) @MBilalShafi
|
|
120
|
+
|
|
121
|
+
#### `@mui/x-data-grid-pro@7.0.0-alpha.5` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
122
|
+
|
|
123
|
+
Same changes as in `@mui/x-data-grid@7.0.0-alpha.5`.
|
|
124
|
+
|
|
125
|
+
#### `@mui/x-data-grid-premium@7.0.0-alpha.5` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
126
|
+
|
|
127
|
+
Same changes as in `@mui/x-data-grid-pro@7.0.0-alpha.5`.
|
|
128
|
+
|
|
129
|
+
### Date Pickers
|
|
130
|
+
|
|
131
|
+
#### Breaking changes
|
|
132
|
+
|
|
133
|
+
- The slot interfaces got renamed to match with `@mui/base` naming.
|
|
134
|
+
The `SlotsComponent` suffix has been replaced with `Slots` and `SlotsComponentsProps` with `SlotProps`.
|
|
135
|
+
|
|
136
|
+
```diff
|
|
137
|
+
- DateCalendarSlotsComponent
|
|
138
|
+
+ DateCalendarSlots
|
|
139
|
+
- DateCalendarSlotsComponentsProps
|
|
140
|
+
+ DateCalendarSlotProps
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
- Move `inputRef` inside the props passed to the field hooks
|
|
144
|
+
|
|
145
|
+
The field hooks now only receive the props instead of an object containing both the props and the `inputRef`.
|
|
146
|
+
|
|
147
|
+
```diff
|
|
148
|
+
- const { inputRef, ...otherProps } = props
|
|
149
|
+
- const fieldResponse = useDateField({ props: otherProps, inputRef });
|
|
150
|
+
+ const fieldResponse = useDateField(props);
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
If you are using a multi input range field hook, the same applies to `startInputRef` and `endInputRef` params
|
|
154
|
+
|
|
155
|
+
```diff
|
|
156
|
+
- const { inputRef: startInputRef, ...otherStartTextFieldProps } = startTextFieldProps
|
|
157
|
+
- const { inputRef: endInputRef, ...otherEndTextFieldProps } = endTextFieldProps
|
|
158
|
+
|
|
159
|
+
const fieldResponse = useMultiInputDateRangeField({
|
|
160
|
+
sharedProps,
|
|
161
|
+
- startTextFieldProps: otherStartTextFieldProps,
|
|
162
|
+
- endTextFieldProps: otherEndTextFieldProps,
|
|
163
|
+
- startInputRef
|
|
164
|
+
- endInputRef,
|
|
165
|
+
+ startTextFieldProps,
|
|
166
|
+
+ endTextFieldProps
|
|
167
|
+
});
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
- Rename the ref returned by the field hooks to `inputRef`
|
|
171
|
+
|
|
172
|
+
When used with the v6 TextField approach (where the input is an `<input />` HTML element), the field hooks return a ref that needs to be passed to the `<input />` element.
|
|
173
|
+
This ref was previously named `ref` and has been renamed `inputRef` for extra clarity.
|
|
174
|
+
|
|
175
|
+
```diff
|
|
176
|
+
const fieldResponse = useDateField(props);
|
|
177
|
+
|
|
178
|
+
- return <input ref={fieldResponse.ref} />
|
|
179
|
+
+ return <input ref={fieldResponse.inputRef} />
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
If you are using a multi input range field hook, the same applies to the ref in the `startDate` and `endDate` objects
|
|
183
|
+
|
|
184
|
+
```diff
|
|
185
|
+
const fieldResponse = useDateField(props);
|
|
186
|
+
|
|
187
|
+
return (
|
|
188
|
+
<div>
|
|
189
|
+
- <input ref={fieldResponse.startDate.ref} />
|
|
190
|
+
+ <input ref={fieldResponse.startDate.inputRef} />
|
|
191
|
+
<span>–</span>
|
|
192
|
+
- <input ref={fieldResponse.endDate.ref} />
|
|
193
|
+
+ <input ref={fieldResponse.endDate.inputRef} />
|
|
194
|
+
</div>
|
|
195
|
+
)
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
- Restructure the API of `useClearableField`
|
|
199
|
+
|
|
200
|
+
The `useClearableField` hook API has been simplified to now take a `props` parameter instead of a `fieldProps`, `InputProps`, `clearable`, `onClear`, `slots` and `slotProps` parameters.
|
|
201
|
+
|
|
202
|
+
You should now be able to directly pass the returned value from your field hook (e.g: `useDateField`) to `useClearableField`
|
|
203
|
+
|
|
204
|
+
```diff
|
|
205
|
+
const fieldResponse = useDateField(props);
|
|
206
|
+
|
|
207
|
+
- const { InputProps, onClear, clearable, slots, slotProps, ...otherFieldProps } = fieldResponse
|
|
208
|
+
- const { InputProps: ProcessedInputProps, fieldProps: processedFieldProps } = useClearableField({
|
|
209
|
+
- fieldProps: otherFieldProps,
|
|
210
|
+
- InputProps,
|
|
211
|
+
- clearable,
|
|
212
|
+
- onClear,
|
|
213
|
+
- slots,
|
|
214
|
+
- slotProps,
|
|
215
|
+
- });
|
|
216
|
+
-
|
|
217
|
+
- return <MyCustomTextField {...processedFieldProps} InputProps={ProcessedInputProps} />
|
|
218
|
+
|
|
219
|
+
+ const processedFieldProps = useClearableField(fieldResponse);
|
|
220
|
+
+
|
|
221
|
+
+ return <MyCustomTextField {...processedFieldProps} />
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
#### `@mui/x-date-pickers@7.0.0-alpha.5`
|
|
225
|
+
|
|
226
|
+
- [fields] Support empty sections (#10307) @flaviendelangle
|
|
227
|
+
- [pickers] Fix field types to avoid error on latest `@types/react` version (#11397) @LukasTy
|
|
228
|
+
- [pickers] Remove all relative imports to the internals index file (#11375) @flaviendelangle
|
|
229
|
+
- [pickers] Rename slots interfaces (#11339) @alexfauquette
|
|
230
|
+
- [pickers] Simplify the API of the field hooks (#11371) @flaviendelangle
|
|
231
|
+
- [pickers] Support name prop (#11025) @gitstart
|
|
232
|
+
|
|
233
|
+
#### `@mui/x-date-pickers-pro@7.0.0-alpha.5` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
234
|
+
|
|
235
|
+
Same changes as in `@mui/x-date-pickers@7.0.0-alpha.5`, plus:
|
|
236
|
+
|
|
237
|
+
- [DateRangePicker] Fix `autoFocus` behavior (#11273) @kealjones-wk
|
|
238
|
+
|
|
239
|
+
### Charts / `@mui/x-charts@7.0.0-alpha.5`
|
|
240
|
+
|
|
241
|
+
- [charts] Fix size overflow (#11385) @alexfauquette
|
|
242
|
+
|
|
243
|
+
### `@mui/x-codemod@7.0.0-alpha.5`
|
|
244
|
+
|
|
245
|
+
- [codemod] Add `cellSelection` codemod and update migration guide (#11353) @MBilalShafi
|
|
246
|
+
|
|
247
|
+
### Docs
|
|
248
|
+
|
|
249
|
+
- [docs] Respect GoT books (@janoma) (#11387) @alexfauquette
|
|
250
|
+
|
|
251
|
+
### Core
|
|
252
|
+
|
|
253
|
+
- [core] Automate cherry-pick of PRs from `next` -> `master` (#11382) @MBilalShafi
|
|
254
|
+
- [github] Update `no-response` workflow (#11369) @MBilalShafi
|
|
255
|
+
- [test] Fix flaky screenshots (#11388) @cherniavskii
|
|
256
|
+
|
|
6
257
|
## 7.0.0-alpha.4
|
|
7
258
|
|
|
8
259
|
_Dec 8, 2023_
|
|
@@ -949,6 +1200,97 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
|
|
|
949
1200
|
- [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
|
|
950
1201
|
- [license] Correctly throw errors (#10924) @oliviertassinari
|
|
951
1202
|
|
|
1203
|
+
## 6.18.6
|
|
1204
|
+
|
|
1205
|
+
_Dec 22, 2023_
|
|
1206
|
+
|
|
1207
|
+
We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
|
|
1208
|
+
|
|
1209
|
+
- 🌍 Improve Russian (ru-RU) locale (#11429) @wensiet
|
|
1210
|
+
- 🐞 Bugfixes
|
|
1211
|
+
|
|
1212
|
+
### Data Grid
|
|
1213
|
+
|
|
1214
|
+
#### `@mui/x-data-grid@6.18.6`
|
|
1215
|
+
|
|
1216
|
+
- [DataGrid] Fix typos in the JSDoc (#11475) @flaviendelangle
|
|
1217
|
+
- [l10n] Improve Russian (ru-RU) locale (#11429) @wensiet
|
|
1218
|
+
|
|
1219
|
+
#### `@mui/x-data-grid-pro@6.18.6` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
1220
|
+
|
|
1221
|
+
Same changes as in `@mui/x-data-grid@6.18.6`.
|
|
1222
|
+
|
|
1223
|
+
#### `@mui/x-data-grid-premium@6.18.6` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
1224
|
+
|
|
1225
|
+
Same changes as in `@mui/x-data-grid-pro@6.18.6`.
|
|
1226
|
+
|
|
1227
|
+
### Date Pickers
|
|
1228
|
+
|
|
1229
|
+
#### `@mui/x-date-pickers@6.18.6`
|
|
1230
|
+
|
|
1231
|
+
- [fields] Fix section pasting (#11467) @LukasTy
|
|
1232
|
+
|
|
1233
|
+
#### `@mui/x-date-pickers-pro@6.18.6` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
1234
|
+
|
|
1235
|
+
Same changes as in `@mui/x-date-pickers@6.18.6`.
|
|
1236
|
+
|
|
1237
|
+
### Charts / `@mui/x-charts@6.18.6`
|
|
1238
|
+
|
|
1239
|
+
- [charts] Allow percentage values for pie chart center and radius (#11464) @alexfauquette
|
|
1240
|
+
- [charts] Make error message more explicit (#11457) @alexfauquette
|
|
1241
|
+
- [charts] Make the helper `ChartsText` component public (#11370) @alexfauquette
|
|
1242
|
+
- [charts] Improve dataset typing (#11372) @alexfauquette
|
|
1243
|
+
- [charts] Fix size overflow (#11385) @alexfauquette
|
|
1244
|
+
|
|
1245
|
+
### Docs
|
|
1246
|
+
|
|
1247
|
+
- [docs] Document false default values for boolean props (#11489) @cherniavskii
|
|
1248
|
+
- [docs] Improve Pickers `name` prop examples (#11442) @LukasTy
|
|
1249
|
+
- [docs] Limit `date-fns` package to v2 in codesandbox (#11478) @LukasTy
|
|
1250
|
+
- [test] Reload the page if its blank and there are no links to the remaining tests (#11471) @cherniavskii
|
|
1251
|
+
|
|
1252
|
+
## 6.18.5
|
|
1253
|
+
|
|
1254
|
+
_Dec 14, 2023_
|
|
1255
|
+
|
|
1256
|
+
We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
|
|
1257
|
+
|
|
1258
|
+
- 🌍 Improve Swedish (sv-SE) and Urdu (ur-PK) locales on the Data Grid
|
|
1259
|
+
- 🐞 Bugfixes
|
|
1260
|
+
|
|
1261
|
+
### Data Grid
|
|
1262
|
+
|
|
1263
|
+
#### `@mui/x-data-grid@6.18.5`
|
|
1264
|
+
|
|
1265
|
+
- [l10n] Improve Swedish (sv-SE) locale (#11379) @fredrikcarlbom
|
|
1266
|
+
- [l10n] Improve Urdu (ur-PK) locale for data grid (#11409) @MBilalShafi
|
|
1267
|
+
|
|
1268
|
+
#### `@mui/x-data-grid-pro@6.18.5` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
1269
|
+
|
|
1270
|
+
Same changes as in `@mui/x-data-grid@6.18.5`.
|
|
1271
|
+
|
|
1272
|
+
#### `@mui/x-data-grid-premium@6.18.5` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
1273
|
+
|
|
1274
|
+
Same changes as in `@mui/x-data-grid-pro@6.18.5`.
|
|
1275
|
+
|
|
1276
|
+
### Date Pickers
|
|
1277
|
+
|
|
1278
|
+
#### `@mui/x-date-pickers@6.18.5`
|
|
1279
|
+
|
|
1280
|
+
- [pickers] Fix field types to avoid error on latest `@types/react` version (#11398) @LukasTy
|
|
1281
|
+
- [pickers] Support name prop (#11380) @gitstart
|
|
1282
|
+
|
|
1283
|
+
#### `@mui/x-date-pickers-pro@6.18.5` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
1284
|
+
|
|
1285
|
+
Same changes as in `@mui/x-date-pickers@6.18.5`, plus:
|
|
1286
|
+
|
|
1287
|
+
- [DateRangePicker] Fix `autoFocus` behavior (#11376) @kealjones-wk
|
|
1288
|
+
|
|
1289
|
+
### Docs
|
|
1290
|
+
|
|
1291
|
+
- [docs] Respect GoT books (#11294) @janoma
|
|
1292
|
+
- [test] Fix flaky screenshots (#11391) @cherniavskii
|
|
1293
|
+
|
|
952
1294
|
## 6.18.4
|
|
953
1295
|
|
|
954
1296
|
_Dec 8, 2023_
|
|
@@ -2,8 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import { SxProps } from '@mui/system';
|
|
3
3
|
import { Theme } from '@mui/material/styles';
|
|
4
4
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
5
|
-
import { PickersCalendarHeader, PickersCalendarHeaderProps,
|
|
6
|
-
import {
|
|
5
|
+
import { PickersCalendarHeader, PickersCalendarHeaderProps, PickersCalendarHeaderSlots, PickersCalendarHeaderSlotProps } from '../PickersCalendarHeader';
|
|
6
|
+
import { DayCalendarSlots, DayCalendarSlotProps, ExportedDayCalendarProps } from './DayCalendar';
|
|
7
7
|
import { DateCalendarClasses } from './dateCalendarClasses';
|
|
8
8
|
import { BaseDateValidationProps, YearValidationProps, MonthValidationProps, DayValidationProps } from '../internals/models/validation';
|
|
9
9
|
import { PickerSelectionState } from '../internals/hooks/usePicker/usePickerValue.types';
|
|
@@ -12,7 +12,7 @@ import { DateView, TimezoneProps } from '../models';
|
|
|
12
12
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
13
13
|
import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
|
|
14
14
|
import { ExportedMonthCalendarProps } from '../MonthCalendar/MonthCalendar.types';
|
|
15
|
-
export interface
|
|
15
|
+
export interface DateCalendarSlots<TDate> extends PickersCalendarHeaderSlots, DayCalendarSlots<TDate> {
|
|
16
16
|
/**
|
|
17
17
|
* Custom component for calendar header.
|
|
18
18
|
* Check the [PickersCalendarHeader](https://mui.com/x/api/date-pickers/pickers-calendar-header/) component.
|
|
@@ -20,7 +20,7 @@ export interface DateCalendarSlotsComponent<TDate> extends PickersCalendarHeader
|
|
|
20
20
|
*/
|
|
21
21
|
calendarHeader?: React.ElementType<PickersCalendarHeaderProps<TDate>>;
|
|
22
22
|
}
|
|
23
|
-
export interface
|
|
23
|
+
export interface DateCalendarSlotProps<TDate> extends PickersCalendarHeaderSlotProps<TDate>, DayCalendarSlotProps<TDate> {
|
|
24
24
|
calendarHeader?: SlotComponentProps<typeof PickersCalendarHeader, {}, DateCalendarProps<TDate>>;
|
|
25
25
|
}
|
|
26
26
|
export interface ExportedDateCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>, ExportedMonthCalendarProps, ExportedYearCalendarProps, BaseDateValidationProps<TDate>, DayValidationProps<TDate>, YearValidationProps<TDate>, MonthValidationProps<TDate>, TimezoneProps {
|
|
@@ -91,11 +91,11 @@ export interface DateCalendarProps<TDate> extends ExportedDateCalendarProps<TDat
|
|
|
91
91
|
* Overridable component slots.
|
|
92
92
|
* @default {}
|
|
93
93
|
*/
|
|
94
|
-
slots?:
|
|
94
|
+
slots?: DateCalendarSlots<TDate>;
|
|
95
95
|
/**
|
|
96
96
|
* The props used for each component slot.
|
|
97
97
|
* @default {}
|
|
98
98
|
*/
|
|
99
|
-
slotProps?:
|
|
99
|
+
slotProps?: DateCalendarSlotProps<TDate>;
|
|
100
100
|
}
|
|
101
101
|
export type DateCalendarDefaultizedProps<TDate> = DefaultizedProps<DateCalendarProps<TDate>, 'views' | 'openTo' | 'loading' | 'reduceAnimations' | 'renderLoading' | keyof BaseDateValidationProps<TDate>>;
|
|
@@ -7,7 +7,7 @@ import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, Year
|
|
|
7
7
|
import { DayCalendarClasses } from './dayCalendarClasses';
|
|
8
8
|
import { TimezoneProps } from '../models';
|
|
9
9
|
import { DefaultizedProps } from '../internals/models/helpers';
|
|
10
|
-
export interface
|
|
10
|
+
export interface DayCalendarSlots<TDate> {
|
|
11
11
|
/**
|
|
12
12
|
* Custom component for day.
|
|
13
13
|
* Check the [PickersDay](https://mui.com/x/api/date-pickers/pickers-day/) component.
|
|
@@ -15,7 +15,7 @@ export interface DayCalendarSlotsComponent<TDate> {
|
|
|
15
15
|
*/
|
|
16
16
|
day?: React.ElementType<PickersDayProps<TDate>>;
|
|
17
17
|
}
|
|
18
|
-
export interface
|
|
18
|
+
export interface DayCalendarSlotProps<TDate> {
|
|
19
19
|
day?: SlotComponentProps<typeof PickersDay, {}, DayCalendarProps<TDate> & {
|
|
20
20
|
day: TDate;
|
|
21
21
|
selected: boolean;
|
|
@@ -75,12 +75,12 @@ export interface DayCalendarProps<TDate> extends ExportedDayCalendarProps<TDate>
|
|
|
75
75
|
* Overridable component slots.
|
|
76
76
|
* @default {}
|
|
77
77
|
*/
|
|
78
|
-
slots?:
|
|
78
|
+
slots?: DayCalendarSlots<TDate>;
|
|
79
79
|
/**
|
|
80
80
|
* The props used for each component slot.
|
|
81
81
|
* @default {}
|
|
82
82
|
*/
|
|
83
|
-
slotProps?:
|
|
83
|
+
slotProps?: DayCalendarSlotProps<TDate>;
|
|
84
84
|
}
|
|
85
85
|
/**
|
|
86
86
|
* @ignore - do not document.
|
package/DateCalendar/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { DateCalendar } from './DateCalendar';
|
|
2
|
-
export type { DateCalendarProps,
|
|
2
|
+
export type { DateCalendarProps, DateCalendarSlots, DateCalendarSlotProps, } from './DateCalendar.types';
|
|
3
3
|
export { getDateCalendarUtilityClass, dateCalendarClasses } from './dateCalendarClasses';
|
|
4
4
|
export type { DateCalendarClassKey, DateCalendarClasses } from './dateCalendarClasses';
|
|
5
5
|
export { dayCalendarClasses } from './dayCalendarClasses';
|
package/DateField/DateField.js
CHANGED
|
@@ -1,8 +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 = ["slots", "slotProps", "InputProps", "inputProps"]
|
|
4
|
-
_excluded2 = ["inputRef"],
|
|
5
|
-
_excluded3 = ["ref", "onPaste", "onKeyDown", "inputMode", "readOnly", "clearable", "onClear"];
|
|
3
|
+
const _excluded = ["slots", "slotProps", "InputProps", "inputProps"];
|
|
6
4
|
import * as React from 'react';
|
|
7
5
|
import PropTypes from 'prop-types';
|
|
8
6
|
import MuiTextField from '@mui/material/TextField';
|
|
@@ -11,6 +9,7 @@ import { useSlotProps } from '@mui/base/utils';
|
|
|
11
9
|
import { refType } from '@mui/utils';
|
|
12
10
|
import { useDateField } from './useDateField';
|
|
13
11
|
import { useClearableField } from '../hooks';
|
|
12
|
+
import { convertFieldResponseIntoMuiTextFieldProps } from '../internals/utils/convertFieldResponseIntoMuiTextFieldProps';
|
|
14
13
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
14
|
/**
|
|
16
15
|
* Demos:
|
|
@@ -22,7 +21,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
22
21
|
*
|
|
23
22
|
* - [DateField API](https://mui.com/x/api/date-pickers/date-field/)
|
|
24
23
|
*/
|
|
25
|
-
const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps,
|
|
24
|
+
const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, inRef) {
|
|
26
25
|
var _slots$textField;
|
|
27
26
|
const themeProps = useThemeProps({
|
|
28
27
|
props: inProps,
|
|
@@ -37,58 +36,26 @@ const DateField = /*#__PURE__*/React.forwardRef(function DateField(inProps, ref)
|
|
|
37
36
|
other = _objectWithoutPropertiesLoose(themeProps, _excluded);
|
|
38
37
|
const ownerState = themeProps;
|
|
39
38
|
const TextField = (_slots$textField = slots == null ? void 0 : slots.textField) != null ? _slots$textField : MuiTextField;
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
textFieldProps = _objectWithoutPropertiesLoose(_useSlotProps, _excluded2);
|
|
39
|
+
const textFieldProps = useSlotProps({
|
|
40
|
+
elementType: TextField,
|
|
41
|
+
externalSlotProps: slotProps == null ? void 0 : slotProps.textField,
|
|
42
|
+
externalForwardedProps: other,
|
|
43
|
+
additionalProps: {
|
|
44
|
+
ref: inRef
|
|
45
|
+
},
|
|
46
|
+
ownerState
|
|
47
|
+
});
|
|
50
48
|
|
|
51
49
|
// TODO: Remove when mui/material-ui#35088 will be merged
|
|
52
50
|
textFieldProps.inputProps = _extends({}, inputProps, textFieldProps.inputProps);
|
|
53
51
|
textFieldProps.InputProps = _extends({}, InputProps, textFieldProps.InputProps);
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}),
|
|
58
|
-
{
|
|
59
|
-
ref: inputRef,
|
|
60
|
-
onPaste,
|
|
61
|
-
onKeyDown,
|
|
62
|
-
inputMode,
|
|
63
|
-
readOnly,
|
|
64
|
-
clearable,
|
|
65
|
-
onClear
|
|
66
|
-
} = _useDateField,
|
|
67
|
-
fieldProps = _objectWithoutPropertiesLoose(_useDateField, _excluded3);
|
|
68
|
-
const {
|
|
69
|
-
InputProps: ProcessedInputProps,
|
|
70
|
-
fieldProps: processedFieldProps
|
|
71
|
-
} = useClearableField({
|
|
72
|
-
onClear,
|
|
73
|
-
clearable,
|
|
74
|
-
fieldProps,
|
|
75
|
-
InputProps: fieldProps.InputProps,
|
|
52
|
+
const fieldResponse = useDateField(textFieldProps);
|
|
53
|
+
const convertedFieldResponse = convertFieldResponseIntoMuiTextFieldProps(fieldResponse);
|
|
54
|
+
const processedFieldProps = useClearableField(_extends({}, convertedFieldResponse, {
|
|
76
55
|
slots,
|
|
77
56
|
slotProps
|
|
78
|
-
});
|
|
79
|
-
return /*#__PURE__*/_jsx(TextField, _extends({
|
|
80
|
-
ref: ref
|
|
81
|
-
}, processedFieldProps, {
|
|
82
|
-
InputProps: _extends({}, ProcessedInputProps, {
|
|
83
|
-
readOnly
|
|
84
|
-
}),
|
|
85
|
-
inputProps: _extends({}, fieldProps.inputProps, {
|
|
86
|
-
inputMode,
|
|
87
|
-
onPaste,
|
|
88
|
-
onKeyDown,
|
|
89
|
-
ref: inputRef
|
|
90
|
-
})
|
|
91
57
|
}));
|
|
58
|
+
return /*#__PURE__*/_jsx(TextField, _extends({}, processedFieldProps));
|
|
92
59
|
});
|
|
93
60
|
process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
94
61
|
// ----------------------------- Warning --------------------------------
|
|
@@ -266,7 +233,7 @@ process.env.NODE_ENV !== "production" ? DateField.propTypes = {
|
|
|
266
233
|
* 4. If `null` is provided, no section will be selected
|
|
267
234
|
* If not provided, the selected sections will be handled internally.
|
|
268
235
|
*/
|
|
269
|
-
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
|
|
236
|
+
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
|
|
270
237
|
endIndex: PropTypes.number.isRequired,
|
|
271
238
|
startIndex: PropTypes.number.isRequired
|
|
272
239
|
})]),
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
3
|
import TextField from '@mui/material/TextField';
|
|
4
|
-
import {
|
|
4
|
+
import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../hooks/useClearableField';
|
|
5
5
|
import { DateValidationError, FieldSection } from '../models';
|
|
6
6
|
import { UseFieldInternalProps } from '../internals/hooks/useField';
|
|
7
7
|
import { DefaultizedProps, MakeOptional } from '../internals/models/helpers';
|
|
8
8
|
import { BaseDateValidationProps, DayValidationProps, MonthValidationProps, YearValidationProps } from '../internals/models/validation';
|
|
9
9
|
import { FieldsTextFieldProps } from '../internals/models/fields';
|
|
10
|
-
export interface UseDateFieldParams<TDate, TChildProps extends {}> {
|
|
11
|
-
props: UseDateFieldComponentProps<TDate, TChildProps>;
|
|
12
|
-
inputRef?: React.Ref<HTMLInputElement>;
|
|
13
|
-
}
|
|
14
10
|
export interface UseDateFieldProps<TDate> extends MakeOptional<UseFieldInternalProps<TDate | null, TDate, FieldSection, DateValidationError>, 'format'>, DayValidationProps<TDate>, MonthValidationProps<TDate>, YearValidationProps<TDate>, BaseDateValidationProps<TDate> {
|
|
15
11
|
}
|
|
16
12
|
export type UseDateFieldDefaultizedProps<TDate> = DefaultizedProps<UseDateFieldProps<TDate>, keyof BaseDateValidationProps<any> | 'format'>;
|
|
@@ -20,15 +16,15 @@ export interface DateFieldProps<TDate> extends UseDateFieldComponentProps<TDate,
|
|
|
20
16
|
* Overridable component slots.
|
|
21
17
|
* @default {}
|
|
22
18
|
*/
|
|
23
|
-
slots?:
|
|
19
|
+
slots?: DateFieldSlots;
|
|
24
20
|
/**
|
|
25
21
|
* The props used for each component slot.
|
|
26
22
|
* @default {}
|
|
27
23
|
*/
|
|
28
|
-
slotProps?:
|
|
24
|
+
slotProps?: DateFieldSlotProps<TDate>;
|
|
29
25
|
}
|
|
30
26
|
export type DateFieldOwnerState<TDate> = DateFieldProps<TDate>;
|
|
31
|
-
export interface
|
|
27
|
+
export interface DateFieldSlots extends UseClearableFieldSlots {
|
|
32
28
|
/**
|
|
33
29
|
* Form control with an input to render the value.
|
|
34
30
|
* Receives the same props as `@mui/material/TextField`.
|
|
@@ -36,6 +32,6 @@ export interface DateFieldSlotsComponent extends FieldSlotsComponents {
|
|
|
36
32
|
*/
|
|
37
33
|
textField?: React.ElementType;
|
|
38
34
|
}
|
|
39
|
-
export interface
|
|
35
|
+
export interface DateFieldSlotProps<TDate> extends UseClearableFieldSlotProps {
|
|
40
36
|
textField?: SlotComponentProps<typeof TextField, {}, DateFieldOwnerState<TDate>>;
|
|
41
37
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { UseDateFieldProps,
|
|
2
|
-
export declare const useDateField: <TDate, TChildProps extends {}>(
|
|
1
|
+
import { UseDateFieldProps, UseDateFieldComponentProps } from './DateField.types';
|
|
2
|
+
export declare const useDateField: <TDate, TChildProps extends {}>(inProps: UseDateFieldComponentProps<TDate, TChildProps>) => import("../internals/hooks/useField").UseFieldResponse<Omit<TChildProps & Omit<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>> & Required<Pick<UseDateFieldProps<TDate>, "format" | keyof import("../internals").BaseDateValidationProps<any>>>, keyof UseDateFieldProps<TDate>>>;
|
|
@@ -17,17 +17,13 @@ const useDefaultizedDateField = props => {
|
|
|
17
17
|
maxDate: applyDefaultDate(utils, props.maxDate, defaultDates.maxDate)
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
|
-
export const useDateField =
|
|
21
|
-
props: inProps,
|
|
22
|
-
inputRef
|
|
23
|
-
}) => {
|
|
20
|
+
export const useDateField = inProps => {
|
|
24
21
|
const props = useDefaultizedDateField(inProps);
|
|
25
22
|
const {
|
|
26
23
|
forwardedProps,
|
|
27
24
|
internalProps
|
|
28
25
|
} = splitFieldInternalAndForwardedProps(props, 'date');
|
|
29
26
|
return useField({
|
|
30
|
-
inputRef,
|
|
31
27
|
forwardedProps,
|
|
32
28
|
internalProps,
|
|
33
29
|
valueManager: singleItemValueManager,
|
package/DatePicker/DatePicker.js
CHANGED
|
@@ -160,6 +160,10 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
160
160
|
* @default 3
|
|
161
161
|
*/
|
|
162
162
|
monthsPerRow: PropTypes.oneOf([3, 4]),
|
|
163
|
+
/**
|
|
164
|
+
* Name attribute used by the `input` element in the Field.
|
|
165
|
+
*/
|
|
166
|
+
name: PropTypes.string,
|
|
163
167
|
/**
|
|
164
168
|
* Callback fired when the value is accepted.
|
|
165
169
|
* @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.
|
|
@@ -258,7 +262,7 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
258
262
|
* 4. If `null` is provided, no section will be selected
|
|
259
263
|
* If not provided, the selected sections will be handled internally.
|
|
260
264
|
*/
|
|
261
|
-
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
|
|
265
|
+
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'empty', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'weekDay', 'year']), PropTypes.number, PropTypes.shape({
|
|
262
266
|
endIndex: PropTypes.number.isRequired,
|
|
263
267
|
startIndex: PropTypes.number.isRequired
|
|
264
268
|
})]),
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { DesktopDatePickerProps,
|
|
2
|
-
import { MobileDatePickerProps,
|
|
3
|
-
export interface
|
|
1
|
+
import { DesktopDatePickerProps, DesktopDatePickerSlots, DesktopDatePickerSlotProps } from '../DesktopDatePicker';
|
|
2
|
+
import { MobileDatePickerProps, MobileDatePickerSlots, MobileDatePickerSlotProps } from '../MobileDatePicker';
|
|
3
|
+
export interface DatePickerSlots<TDate> extends DesktopDatePickerSlots<TDate>, MobileDatePickerSlots<TDate> {
|
|
4
4
|
}
|
|
5
|
-
export interface
|
|
5
|
+
export interface DatePickerSlotProps<TDate> extends DesktopDatePickerSlotProps<TDate>, MobileDatePickerSlotProps<TDate> {
|
|
6
6
|
}
|
|
7
7
|
export interface DatePickerProps<TDate> extends DesktopDatePickerProps<TDate>, MobileDatePickerProps<TDate> {
|
|
8
8
|
/**
|
|
@@ -20,10 +20,10 @@ export interface DatePickerProps<TDate> extends DesktopDatePickerProps<TDate>, M
|
|
|
20
20
|
* Overridable component slots.
|
|
21
21
|
* @default {}
|
|
22
22
|
*/
|
|
23
|
-
slots?:
|
|
23
|
+
slots?: DatePickerSlots<TDate>;
|
|
24
24
|
/**
|
|
25
25
|
* The props used for each component slot.
|
|
26
26
|
* @default {}
|
|
27
27
|
*/
|
|
28
|
-
slotProps?:
|
|
28
|
+
slotProps?: DatePickerSlotProps<TDate>;
|
|
29
29
|
}
|