@mui/x-date-pickers 7.17.0 → 7.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AdapterDateFns/AdapterDateFns.js +1 -1
- package/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
- package/CHANGELOG.md +98 -5
- package/DateCalendar/DateCalendar.js +9 -1
- package/DatePicker/DatePicker.js +6 -0
- package/DatePicker/DatePicker.types.d.ts +5 -5
- package/DateTimePicker/DateTimePicker.js +6 -0
- package/DateTimePicker/DateTimePicker.types.d.ts +7 -6
- package/DesktopDatePicker/DesktopDatePicker.js +6 -0
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -6
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -0
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +11 -10
- package/MobileDatePicker/MobileDatePicker.js +6 -0
- package/MobileDatePicker/MobileDatePicker.types.d.ts +5 -0
- package/MobileDateTimePicker/MobileDateTimePicker.js +6 -0
- package/MonthCalendar/MonthCalendar.types.d.ts +1 -1
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +1 -1
- package/StaticDatePicker/StaticDatePicker.js +7 -1
- package/StaticDatePicker/StaticDatePicker.types.d.ts +5 -0
- package/StaticDateTimePicker/StaticDateTimePicker.js +7 -1
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +5 -0
- package/YearCalendar/YearCalendar.js +19 -6
- package/YearCalendar/YearCalendar.types.d.ts +7 -1
- package/dateViewRenderers/dateViewRenderers.d.ts +1 -1
- package/dateViewRenderers/dateViewRenderers.js +2 -0
- package/index.js +1 -1
- package/modern/AdapterDateFns/AdapterDateFns.js +1 -1
- package/modern/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
- package/modern/DateCalendar/DateCalendar.js +9 -1
- package/modern/DatePicker/DatePicker.js +6 -0
- package/modern/DateTimePicker/DateTimePicker.js +6 -0
- package/modern/DesktopDatePicker/DesktopDatePicker.js +6 -0
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -0
- package/modern/MobileDatePicker/MobileDatePicker.js +6 -0
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +6 -0
- package/modern/StaticDatePicker/StaticDatePicker.js +7 -1
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +7 -1
- package/modern/YearCalendar/YearCalendar.js +19 -6
- package/modern/dateViewRenderers/dateViewRenderers.js +2 -0
- package/modern/index.js +1 -1
- package/node/AdapterDateFns/AdapterDateFns.js +1 -1
- package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +1 -1
- package/node/DateCalendar/DateCalendar.js +9 -1
- package/node/DatePicker/DatePicker.js +6 -0
- package/node/DateTimePicker/DateTimePicker.js +6 -0
- package/node/DesktopDatePicker/DesktopDatePicker.js +6 -0
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -0
- package/node/MobileDatePicker/MobileDatePicker.js +6 -0
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +6 -0
- package/node/StaticDatePicker/StaticDatePicker.js +7 -1
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +7 -1
- package/node/YearCalendar/YearCalendar.js +19 -6
- package/node/dateViewRenderers/dateViewRenderers.js +2 -0
- package/node/index.js +1 -1
- package/package.json +4 -4
|
@@ -78,7 +78,7 @@ export class AdapterDateFns extends AdapterDateFnsBase {
|
|
|
78
78
|
/* istanbul ignore next */
|
|
79
79
|
if (process.env.NODE_ENV !== 'production') {
|
|
80
80
|
if (typeof addDays !== 'function') {
|
|
81
|
-
throw new Error(['MUI:
|
|
81
|
+
throw new Error(['MUI: This adapter is only compatible with `date-fns` v2.x package versions.', 'Please, install v2.x of the package or use the `AdapterDateFnsV3` instead.'].join('\n'));
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
super({
|
|
@@ -82,7 +82,7 @@ export class AdapterDateFns extends AdapterDateFnsBase {
|
|
|
82
82
|
/* istanbul ignore next */
|
|
83
83
|
if (process.env.NODE_ENV !== 'production') {
|
|
84
84
|
if (typeof addDays !== 'function') {
|
|
85
|
-
throw new Error([`MUI: The \`date-fns\` package v2.x is not compatible with this adapter.`, 'Please, install v3.x of the package or use the `AdapterDateFns` instead.'].join('\n'));
|
|
85
|
+
throw new Error([`MUI: The \`date-fns\` package v2.x is not compatible with this adapter.`, 'Please, install v3.x or v4.x of the package or use the `AdapterDateFns` instead.'].join('\n'));
|
|
86
86
|
}
|
|
87
87
|
if (!longFormatters) {
|
|
88
88
|
throw new Error('MUI: The minimum supported `date-fns` package version compatible with this adapter is `3.2.x`.');
|
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,99 @@
|
|
|
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.18.0
|
|
7
|
+
|
|
8
|
+
_Sep 20, 2024_
|
|
9
|
+
|
|
10
|
+
We'd like to offer a big thanks to the 14 contributors who made this release possible. Here are some highlights ✨:
|
|
11
|
+
|
|
12
|
+
- 💫 Support [Row spanning](https://mui.com/x/react-data-grid/row-spanning/) on the Data Grid that automatically merges the consecutive cells in a column based on the cell value
|
|
13
|
+
|
|
14
|
+
<img width="600" src="https://github.com/user-attachments/assets/d32ec936-d238-4c92-9e1a-af6788d74cdf" alt="data grid row spanning" />
|
|
15
|
+
|
|
16
|
+
- ⏰ Support `date-fns` v4 (#14673) @LukasTy
|
|
17
|
+
- 🎉 Add option for Pickers to change the order of displayed years (#11780) @thomasmoon
|
|
18
|
+
- 🐞 Bugfixes
|
|
19
|
+
- 📚 Documentation improvements
|
|
20
|
+
|
|
21
|
+
<!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
|
|
22
|
+
|
|
23
|
+
### Data Grid
|
|
24
|
+
|
|
25
|
+
#### `@mui/x-data-grid@7.18.0`
|
|
26
|
+
|
|
27
|
+
- [DataGrid] Add default reset value in row edit mode (#14050) @michelengelen
|
|
28
|
+
- [DataGrid] Add `columnGroupHeaderHeight` prop for sizing column group headers (#14637) @KenanYusuf
|
|
29
|
+
- [DataGrid] Fix `document` reference when the grid is rendered in a popup window (#14649) @arminmeh
|
|
30
|
+
- [DataGrid] Remove `minFirstColumn` from `GetHeadersParams` interface (#14450) @k-rajat19
|
|
31
|
+
- [DataGrid] Row spanning (#14124) @MBilalShafi
|
|
32
|
+
|
|
33
|
+
#### `@mui/x-data-grid-pro@7.18.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
34
|
+
|
|
35
|
+
Same changes as in `@mui/x-data-grid@7.18.0`, plus:
|
|
36
|
+
|
|
37
|
+
- [DataGridPro] Fix `onRowsScrollEnd` being triggered instantly when bottom pinned row is present (#14602) @arminmeh
|
|
38
|
+
- [DataGridPro] Fix header filters rendering issue for `isEmpty` and `isNotEmpty` filter operators (#14493) @k-rajat19
|
|
39
|
+
- [DataGridPro] Fix pinned columns in RTL mode (#14586) @KenanYusuf
|
|
40
|
+
|
|
41
|
+
#### `@mui/x-data-grid-premium@7.18.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
42
|
+
|
|
43
|
+
Same changes as in `@mui/x-data-grid-pro@7.18.0`.
|
|
44
|
+
|
|
45
|
+
### Date and Time Pickers
|
|
46
|
+
|
|
47
|
+
#### `@mui/x-date-pickers@7.18.0`
|
|
48
|
+
|
|
49
|
+
- [pickers] Add option to change the order of displayed years (#11780) @thomasmoon
|
|
50
|
+
- [pickers] Support `date-fns` v4 (#14673) @LukasTy
|
|
51
|
+
|
|
52
|
+
#### `@mui/x-date-pickers-pro@7.18.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
53
|
+
|
|
54
|
+
Same changes as in `@mui/x-date-pickers@7.18.0`.
|
|
55
|
+
|
|
56
|
+
### Charts
|
|
57
|
+
|
|
58
|
+
#### `@mui/x-charts@7.18.0`
|
|
59
|
+
|
|
60
|
+
- [charts] Add a `PolarProvider` to manage polar axes (#14642) @alexfauquette
|
|
61
|
+
- [charts] Fix `LineChart` animation being stuck with initial drawing area value (#14553) @JCQuintas
|
|
62
|
+
- [charts] Fix legend slot typing (#14657) @alexfauquette
|
|
63
|
+
- [charts] Pass the axis index to extremum getter (#14641) @alexfauquette
|
|
64
|
+
- [charts] Provide hooks to create custom tooltip (#14377) @alexfauquette
|
|
65
|
+
|
|
66
|
+
#### `@mui/x-charts-pro@7.0.0-beta.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
67
|
+
|
|
68
|
+
Same changes as in `@mui/x-charts@7.18.0`.
|
|
69
|
+
|
|
70
|
+
### Tree View
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-tree-view@7.18.0`
|
|
73
|
+
|
|
74
|
+
- [TreeView] Add `"use client"` directive to every public component and hook (#14579) @flaviendelangle
|
|
75
|
+
|
|
76
|
+
### Docs
|
|
77
|
+
|
|
78
|
+
- [docs] Add `groupingValueGetter` callout in column definition docs (#14599) @michelengelen
|
|
79
|
+
- [docs] Clean v6 => v7 migration guide (#14652) @flaviendelangle
|
|
80
|
+
- [docs] Copy `vale-action.yml` from main repo @oliviertassinari
|
|
81
|
+
- [docs] Edit the Pickers Getting started doc (#14555) @samuelsycamore
|
|
82
|
+
- [docs] Fix TypeScript capitalization @oliviertassinari
|
|
83
|
+
- [docs] Fix Vale error @oliviertassinari
|
|
84
|
+
- [docs] Make the migration guide diff a bit easier to read @oliviertassinari
|
|
85
|
+
- [docs] Report Vale at warning level (#14660) @oliviertassinari
|
|
86
|
+
- [docs] Warn about the `valueGetter` and `valueFormatter` signature change (#14613) @cherniavskii
|
|
87
|
+
- [docs] Polish code formatting (#14603) @oliviertassinari
|
|
88
|
+
- [test] Spy on `observe` method to avoid flaky wait for a callback (#14640) @arminmeh
|
|
89
|
+
|
|
90
|
+
### Core
|
|
91
|
+
|
|
92
|
+
- [core] Fix 301 link to Next.js and git diff @oliviertassinari
|
|
93
|
+
- [core] Fix failing CI on `master` (#14644) @cherniavskii
|
|
94
|
+
- [core] Fix `package.json` repository rule @oliviertassinari
|
|
95
|
+
- [core] MUI X repository moved to a new location @oliviertassinari
|
|
96
|
+
- [docs-infra] Strengthen CSP (#14581) @oliviertassinari
|
|
97
|
+
- [license] Finish renaming of LicensingModel (#14615) @oliviertassinari
|
|
98
|
+
|
|
6
99
|
## 7.17.0
|
|
7
100
|
|
|
8
101
|
_Sep 13, 2024_
|
|
@@ -75,7 +168,7 @@ Same changes as in `@mui/x-charts@7.17.0`.
|
|
|
75
168
|
### Docs
|
|
76
169
|
|
|
77
170
|
- [docs] Add missing callout on "Imperative API" tree view sections (#14503) @flaviendelangle
|
|
78
|
-
- [docs] Fix broken redirection to MUI
|
|
171
|
+
- [docs] Fix broken redirection to MUI X v5 @oliviertassinari
|
|
79
172
|
- [docs] Fix multiple `console.error` messages on `charts` docs (#14554) @JCQuintas
|
|
80
173
|
- [docs] Fixed typo in Row Grouping recipes (#14549) @Miodini
|
|
81
174
|
- [docs] Match title with blog posts @oliviertassinari
|
|
@@ -195,7 +288,7 @@ We'd like to offer a big thanks to the 8 contributors who made this release poss
|
|
|
195
288
|
|
|
196
289
|
- 💫 Support Material UI v6 (`@mui/material@6`) peer dependency (#14142) @cherniavskii
|
|
197
290
|
|
|
198
|
-
You can now use MUI
|
|
291
|
+
You can now use MUI X components with either v5 or v6 of `@mui/material` package 🎉
|
|
199
292
|
|
|
200
293
|
- 🐞 Bugfixes
|
|
201
294
|
|
|
@@ -240,7 +333,7 @@ Same changes as in `@mui/x-charts@7.15.0`, plus:
|
|
|
240
333
|
|
|
241
334
|
- [docs] Fix sentence case `h2` @oliviertassinari
|
|
242
335
|
- [docs] Clarify contribution guide references @oliviertassinari
|
|
243
|
-
- [docs] Fix Stack
|
|
336
|
+
- [docs] Fix Stack Overflow issue canned response @oliviertassinari
|
|
244
337
|
- [docs] Fix outdated link to support page @oliviertassinari
|
|
245
338
|
- [docs] Fix use of Material UI @oliviertassinari
|
|
246
339
|
- [docs] Update deprecated props in docs (#14295) @JCQuintas
|
|
@@ -498,7 +591,7 @@ The [Pro plan](https://mui.com/x/introduction/licensing/#pro-plan) is receiving
|
|
|
498
591
|
|
|
499
592
|
As always, every feature released as part of the MIT plan will remain free and MIT licensed forever.
|
|
500
593
|
|
|
501
|
-
This expansion of the Pro plan comes with some adjustments to our pricing strategy. Learn more about those in the [Upcoming changes to MUI
|
|
594
|
+
This expansion of the Pro plan comes with some adjustments to our pricing strategy. Learn more about those in the [Upcoming changes to MUI X pricing in 2024](https://mui.com/blog/mui-x-sep-2024-price-update/) blog post.
|
|
502
595
|
|
|
503
596
|
### Highlights
|
|
504
597
|
|
|
@@ -563,7 +656,7 @@ Same changes as in `@mui/x-date-pickers@7.12.0`.
|
|
|
563
656
|
#### `@mui/x-charts@7.12.0`
|
|
564
657
|
|
|
565
658
|
- [charts] Fix incorrect `axisId` prop being allowed in xAxis/yAxis config. Use `id` instead. (#13986) @JCQuintas
|
|
566
|
-
- [charts] Use vendor to have
|
|
659
|
+
- [charts] Use vendor to have CommonJS bundle working out of the box (#13608) @alexfauquette
|
|
567
660
|
- [charts] Divide the `SeriesProvider` to use in filtering (#14026) @JCQuintas
|
|
568
661
|
|
|
569
662
|
### Tree View
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
4
4
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
5
|
-
const _excluded = ["autoFocus", "onViewChange", "value", "defaultValue", "referenceDate", "disableFuture", "disablePast", "onChange", "onYearChange", "onMonthChange", "reduceAnimations", "shouldDisableDate", "shouldDisableMonth", "shouldDisableYear", "view", "views", "openTo", "className", "disabled", "readOnly", "minDate", "maxDate", "disableHighlightToday", "focusedView", "onFocusedViewChange", "showDaysOutsideCurrentMonth", "fixedWeekNumber", "dayOfWeekFormatter", "slots", "slotProps", "loading", "renderLoading", "displayWeekNumber", "yearsPerRow", "monthsPerRow", "timezone"];
|
|
5
|
+
const _excluded = ["autoFocus", "onViewChange", "value", "defaultValue", "referenceDate", "disableFuture", "disablePast", "onChange", "onYearChange", "onMonthChange", "reduceAnimations", "shouldDisableDate", "shouldDisableMonth", "shouldDisableYear", "view", "views", "openTo", "className", "disabled", "readOnly", "minDate", "maxDate", "disableHighlightToday", "focusedView", "onFocusedViewChange", "showDaysOutsideCurrentMonth", "fixedWeekNumber", "dayOfWeekFormatter", "slots", "slotProps", "loading", "renderLoading", "displayWeekNumber", "yearsOrder", "yearsPerRow", "monthsPerRow", "timezone"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import clsx from 'clsx';
|
|
@@ -120,6 +120,7 @@ export const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(
|
|
|
120
120
|
loading,
|
|
121
121
|
renderLoading,
|
|
122
122
|
displayWeekNumber,
|
|
123
|
+
yearsOrder,
|
|
123
124
|
yearsPerRow,
|
|
124
125
|
monthsPerRow,
|
|
125
126
|
timezone: timezoneProp
|
|
@@ -311,6 +312,7 @@ export const DateCalendar = /*#__PURE__*/React.forwardRef(function DateCalendar(
|
|
|
311
312
|
shouldDisableYear: shouldDisableYear,
|
|
312
313
|
hasFocus: hasFocus,
|
|
313
314
|
onFocusedViewChange: isViewFocused => setFocusedView('year', isViewFocused),
|
|
315
|
+
yearsOrder: yearsOrder,
|
|
314
316
|
yearsPerRow: yearsPerRow,
|
|
315
317
|
referenceDate: referenceDate
|
|
316
318
|
})), view === 'month' && /*#__PURE__*/_jsx(MonthCalendar, _extends({}, baseDateValidationProps, commonViewProps, {
|
|
@@ -560,6 +562,12 @@ process.env.NODE_ENV !== "production" ? DateCalendar.propTypes = {
|
|
|
560
562
|
* Available views.
|
|
561
563
|
*/
|
|
562
564
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),
|
|
565
|
+
/**
|
|
566
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
567
|
+
* If `desc`, years are displayed in descending order.
|
|
568
|
+
* @default 'asc'
|
|
569
|
+
*/
|
|
570
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
563
571
|
/**
|
|
564
572
|
* Years rendered per row.
|
|
565
573
|
* @default 3
|
package/DatePicker/DatePicker.js
CHANGED
|
@@ -351,6 +351,12 @@ process.env.NODE_ENV !== "production" ? DatePicker.propTypes = {
|
|
|
351
351
|
* Available views.
|
|
352
352
|
*/
|
|
353
353
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),
|
|
354
|
+
/**
|
|
355
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
356
|
+
* If `desc`, years are displayed in descending order.
|
|
357
|
+
* @default 'asc'
|
|
358
|
+
*/
|
|
359
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
354
360
|
/**
|
|
355
361
|
* Years rendered per row.
|
|
356
362
|
* @default 4 on desktop, 3 on mobile
|
|
@@ -12,11 +12,6 @@ export interface DatePickerProps<TDate extends PickerValidDate, TEnableAccessibl
|
|
|
12
12
|
* @example '@media (min-width: 720px)' or theme.breakpoints.up("sm")
|
|
13
13
|
*/
|
|
14
14
|
desktopModeMediaQuery?: string;
|
|
15
|
-
/**
|
|
16
|
-
* Years rendered per row.
|
|
17
|
-
* @default 4 on desktop, 3 on mobile
|
|
18
|
-
*/
|
|
19
|
-
yearsPerRow?: 3 | 4;
|
|
20
15
|
/**
|
|
21
16
|
* Overridable component slots.
|
|
22
17
|
* @default {}
|
|
@@ -27,4 +22,9 @@ export interface DatePickerProps<TDate extends PickerValidDate, TEnableAccessibl
|
|
|
27
22
|
* @default {}
|
|
28
23
|
*/
|
|
29
24
|
slotProps?: DatePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
|
|
25
|
+
/**
|
|
26
|
+
* Years rendered per row.
|
|
27
|
+
* @default 4 on desktop, 3 on mobile
|
|
28
|
+
*/
|
|
29
|
+
yearsPerRow?: 3 | 4;
|
|
30
30
|
}
|
|
@@ -422,6 +422,12 @@ process.env.NODE_ENV !== "production" ? DateTimePicker.propTypes = {
|
|
|
422
422
|
* Available views.
|
|
423
423
|
*/
|
|
424
424
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired),
|
|
425
|
+
/**
|
|
426
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
427
|
+
* If `desc`, years are displayed in descending order.
|
|
428
|
+
* @default 'asc'
|
|
429
|
+
*/
|
|
430
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
425
431
|
/**
|
|
426
432
|
* Years rendered per row.
|
|
427
433
|
* @default 4 on desktop, 3 on mobile
|
|
@@ -2,22 +2,18 @@ import { DesktopDateTimePickerProps, DesktopDateTimePickerSlots, DesktopDateTime
|
|
|
2
2
|
import { DateOrTimeViewWithMeridiem } from '../internals/models';
|
|
3
3
|
import { MobileDateTimePickerProps, MobileDateTimePickerSlots, MobileDateTimePickerSlotProps } from '../MobileDateTimePicker';
|
|
4
4
|
import { PickerValidDate } from '../models';
|
|
5
|
+
import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
|
|
5
6
|
export interface DateTimePickerSlots<TDate extends PickerValidDate> extends DesktopDateTimePickerSlots<TDate>, MobileDateTimePickerSlots<TDate, DateOrTimeViewWithMeridiem> {
|
|
6
7
|
}
|
|
7
8
|
export interface DateTimePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends DesktopDateTimePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>, MobileDateTimePickerSlotProps<TDate, DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure> {
|
|
8
9
|
}
|
|
9
|
-
export interface DateTimePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends DesktopDateTimePickerProps<TDate, TEnableAccessibleFieldDOMStructure>, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure>, 'views'> {
|
|
10
|
+
export interface DateTimePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends DesktopDateTimePickerProps<TDate, TEnableAccessibleFieldDOMStructure>, ExportedYearCalendarProps, Omit<MobileDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure>, 'views'> {
|
|
10
11
|
/**
|
|
11
12
|
* CSS media query when `Mobile` mode will be changed to `Desktop`.
|
|
12
13
|
* @default '@media (pointer: fine)'
|
|
13
14
|
* @example '@media (min-width: 720px)' or theme.breakpoints.up("sm")
|
|
14
15
|
*/
|
|
15
16
|
desktopModeMediaQuery?: string;
|
|
16
|
-
/**
|
|
17
|
-
* Years rendered per row.
|
|
18
|
-
* @default 4 on desktop, 3 on mobile
|
|
19
|
-
*/
|
|
20
|
-
yearsPerRow?: 3 | 4;
|
|
21
17
|
/**
|
|
22
18
|
* Overridable component slots.
|
|
23
19
|
* @default {}
|
|
@@ -28,4 +24,9 @@ export interface DateTimePickerProps<TDate extends PickerValidDate, TEnableAcces
|
|
|
28
24
|
* @default {}
|
|
29
25
|
*/
|
|
30
26
|
slotProps?: DateTimePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
|
|
27
|
+
/**
|
|
28
|
+
* Years rendered per row.
|
|
29
|
+
* @default 4 on desktop, 3 on mobile
|
|
30
|
+
*/
|
|
31
|
+
yearsPerRow?: 3 | 4;
|
|
31
32
|
}
|
|
@@ -372,6 +372,12 @@ DesktopDatePicker.propTypes = {
|
|
|
372
372
|
* Available views.
|
|
373
373
|
*/
|
|
374
374
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),
|
|
375
|
+
/**
|
|
376
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
377
|
+
* If `desc`, years are displayed in descending order.
|
|
378
|
+
* @default 'asc'
|
|
379
|
+
*/
|
|
380
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
375
381
|
/**
|
|
376
382
|
* Years rendered per row.
|
|
377
383
|
* @default 4
|
|
@@ -2,16 +2,12 @@ import { UseDesktopPickerSlots, ExportedUseDesktopPickerSlotProps, DesktopOnlyPi
|
|
|
2
2
|
import { BaseDatePickerProps, BaseDatePickerSlots, BaseDatePickerSlotProps } from '../DatePicker/shared';
|
|
3
3
|
import { MakeOptional } from '../internals/models/helpers';
|
|
4
4
|
import { DateView, PickerValidDate } from '../models';
|
|
5
|
+
import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
|
|
5
6
|
export interface DesktopDatePickerSlots<TDate extends PickerValidDate> extends BaseDatePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateView>, 'field' | 'openPickerIcon'> {
|
|
6
7
|
}
|
|
7
8
|
export interface DesktopDatePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDatePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateView, TEnableAccessibleFieldDOMStructure> {
|
|
8
9
|
}
|
|
9
|
-
export interface DesktopDatePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDatePickerProps<TDate>, DesktopOnlyPickerProps {
|
|
10
|
-
/**
|
|
11
|
-
* Years rendered per row.
|
|
12
|
-
* @default 4
|
|
13
|
-
*/
|
|
14
|
-
yearsPerRow?: 3 | 4;
|
|
10
|
+
export interface DesktopDatePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDatePickerProps<TDate>, DesktopOnlyPickerProps, ExportedYearCalendarProps {
|
|
15
11
|
/**
|
|
16
12
|
* Overridable component slots.
|
|
17
13
|
* @default {}
|
|
@@ -22,4 +18,9 @@ export interface DesktopDatePickerProps<TDate extends PickerValidDate, TEnableAc
|
|
|
22
18
|
* @default {}
|
|
23
19
|
*/
|
|
24
20
|
slotProps?: DesktopDatePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
|
|
21
|
+
/**
|
|
22
|
+
* Years rendered per row.
|
|
23
|
+
* @default 4
|
|
24
|
+
*/
|
|
25
|
+
yearsPerRow?: 3 | 4;
|
|
25
26
|
}
|
|
@@ -530,6 +530,12 @@ DesktopDateTimePicker.propTypes = {
|
|
|
530
530
|
* Available views.
|
|
531
531
|
*/
|
|
532
532
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired),
|
|
533
|
+
/**
|
|
534
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
535
|
+
* If `desc`, years are displayed in descending order.
|
|
536
|
+
* @default 'asc'
|
|
537
|
+
*/
|
|
538
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
533
539
|
/**
|
|
534
540
|
* Years rendered per row.
|
|
535
541
|
* @default 4
|
|
@@ -6,20 +6,12 @@ import { DesktopOnlyTimePickerProps } from '../internals/models/props/clock';
|
|
|
6
6
|
import { DateOrTimeViewWithMeridiem } from '../internals/models';
|
|
7
7
|
import { MultiSectionDigitalClockSlots, MultiSectionDigitalClockSlotProps } from '../MultiSectionDigitalClock';
|
|
8
8
|
import { DigitalClockSlots, DigitalClockSlotProps } from '../DigitalClock';
|
|
9
|
+
import { ExportedYearCalendarProps } from '../YearCalendar/YearCalendar.types';
|
|
9
10
|
export interface DesktopDateTimePickerSlots<TDate extends PickerValidDate> extends BaseDateTimePickerSlots<TDate>, MakeOptional<UseDesktopPickerSlots<TDate, DateOrTimeViewWithMeridiem>, 'field' | 'openPickerIcon'>, DigitalClockSlots, MultiSectionDigitalClockSlots {
|
|
10
11
|
}
|
|
11
12
|
export interface DesktopDateTimePickerSlotProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean> extends BaseDateTimePickerSlotProps<TDate>, ExportedUseDesktopPickerSlotProps<TDate, DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure>, DigitalClockSlotProps, MultiSectionDigitalClockSlotProps {
|
|
12
13
|
}
|
|
13
|
-
export interface DesktopDateTimePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, DesktopOnlyPickerProps, DesktopOnlyTimePickerProps<TDate
|
|
14
|
-
/**
|
|
15
|
-
* Available views.
|
|
16
|
-
*/
|
|
17
|
-
views?: readonly DateOrTimeView[];
|
|
18
|
-
/**
|
|
19
|
-
* Years rendered per row.
|
|
20
|
-
* @default 4
|
|
21
|
-
*/
|
|
22
|
-
yearsPerRow?: 3 | 4;
|
|
14
|
+
export interface DesktopDateTimePickerProps<TDate extends PickerValidDate, TEnableAccessibleFieldDOMStructure extends boolean = false> extends BaseDateTimePickerProps<TDate, DateOrTimeViewWithMeridiem>, DesktopOnlyPickerProps, DesktopOnlyTimePickerProps<TDate>, ExportedYearCalendarProps {
|
|
23
15
|
/**
|
|
24
16
|
* Overridable component slots.
|
|
25
17
|
* @default {}
|
|
@@ -30,4 +22,13 @@ export interface DesktopDateTimePickerProps<TDate extends PickerValidDate, TEnab
|
|
|
30
22
|
* @default {}
|
|
31
23
|
*/
|
|
32
24
|
slotProps?: DesktopDateTimePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
|
|
25
|
+
/**
|
|
26
|
+
* Available views.
|
|
27
|
+
*/
|
|
28
|
+
views?: readonly DateOrTimeView[];
|
|
29
|
+
/**
|
|
30
|
+
* Years rendered per row.
|
|
31
|
+
* @default 4
|
|
32
|
+
*/
|
|
33
|
+
yearsPerRow?: 3 | 4;
|
|
33
34
|
}
|
|
@@ -369,6 +369,12 @@ MobileDatePicker.propTypes = {
|
|
|
369
369
|
* Available views.
|
|
370
370
|
*/
|
|
371
371
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),
|
|
372
|
+
/**
|
|
373
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
374
|
+
* If `desc`, years are displayed in descending order.
|
|
375
|
+
* @default 'asc'
|
|
376
|
+
*/
|
|
377
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
372
378
|
/**
|
|
373
379
|
* Years rendered per row.
|
|
374
380
|
* @default 3
|
|
@@ -17,4 +17,9 @@ export interface MobileDatePickerProps<TDate extends PickerValidDate, TEnableAcc
|
|
|
17
17
|
* @default {}
|
|
18
18
|
*/
|
|
19
19
|
slotProps?: MobileDatePickerSlotProps<TDate, TEnableAccessibleFieldDOMStructure>;
|
|
20
|
+
/**
|
|
21
|
+
* Years rendered per row.
|
|
22
|
+
* @default 3
|
|
23
|
+
*/
|
|
24
|
+
yearsPerRow?: 3 | 4;
|
|
20
25
|
}
|
|
@@ -428,6 +428,12 @@ MobileDateTimePicker.propTypes = {
|
|
|
428
428
|
* Available views.
|
|
429
429
|
*/
|
|
430
430
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired),
|
|
431
|
+
/**
|
|
432
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
433
|
+
* If `desc`, years are displayed in descending order.
|
|
434
|
+
* @default 'asc'
|
|
435
|
+
*/
|
|
436
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
431
437
|
/**
|
|
432
438
|
* Years rendered per row.
|
|
433
439
|
* @default 3
|
|
@@ -8,7 +8,7 @@ import type { PickersMonthProps } from './PickersMonth';
|
|
|
8
8
|
import { SlotComponentPropsFromProps } from '../internals/models/helpers';
|
|
9
9
|
export interface MonthCalendarSlots {
|
|
10
10
|
/**
|
|
11
|
-
* Button displayed to render a single month in the
|
|
11
|
+
* Button displayed to render a single month in the `month` view.
|
|
12
12
|
* @default MonthCalendarButton
|
|
13
13
|
*/
|
|
14
14
|
monthButton?: React.ElementType;
|
|
@@ -15,7 +15,7 @@ export interface PickersCalendarHeaderSlots extends PickersArrowSwitcherSlots {
|
|
|
15
15
|
*/
|
|
16
16
|
switchViewButton?: React.ElementType;
|
|
17
17
|
/**
|
|
18
|
-
* Icon displayed in the SwitchViewButton. Rotated by 180° when the open view is
|
|
18
|
+
* Icon displayed in the SwitchViewButton. Rotated by 180° when the open view is `year`.
|
|
19
19
|
* @default ArrowDropDown
|
|
20
20
|
*/
|
|
21
21
|
switchViewIcon?: React.ElementType;
|
|
@@ -293,9 +293,15 @@ StaticDatePicker.propTypes = {
|
|
|
293
293
|
* Available views.
|
|
294
294
|
*/
|
|
295
295
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'month', 'year']).isRequired),
|
|
296
|
+
/**
|
|
297
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
298
|
+
* If `desc`, years are displayed in descending order.
|
|
299
|
+
* @default 'asc'
|
|
300
|
+
*/
|
|
301
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
296
302
|
/**
|
|
297
303
|
* Years rendered per row.
|
|
298
|
-
* @default 3
|
|
304
|
+
* @default `4` when `displayStaticWrapperAs === 'desktop'`, `3` otherwise.
|
|
299
305
|
*/
|
|
300
306
|
yearsPerRow: PropTypes.oneOf([3, 4])
|
|
301
307
|
};
|
|
@@ -17,4 +17,9 @@ export interface StaticDatePickerProps<TDate extends PickerValidDate> extends Ba
|
|
|
17
17
|
* @default {}
|
|
18
18
|
*/
|
|
19
19
|
slotProps?: StaticDatePickerSlotProps<TDate>;
|
|
20
|
+
/**
|
|
21
|
+
* Years rendered per row.
|
|
22
|
+
* @default `4` when `displayStaticWrapperAs === 'desktop'`, `3` otherwise.
|
|
23
|
+
*/
|
|
24
|
+
yearsPerRow?: 3 | 4;
|
|
20
25
|
}
|
|
@@ -352,9 +352,15 @@ StaticDateTimePicker.propTypes = {
|
|
|
352
352
|
* Available views.
|
|
353
353
|
*/
|
|
354
354
|
views: PropTypes.arrayOf(PropTypes.oneOf(['day', 'hours', 'minutes', 'month', 'seconds', 'year']).isRequired),
|
|
355
|
+
/**
|
|
356
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
357
|
+
* If `desc`, years are displayed in descending order.
|
|
358
|
+
* @default 'asc'
|
|
359
|
+
*/
|
|
360
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
355
361
|
/**
|
|
356
362
|
* Years rendered per row.
|
|
357
|
-
* @default 3
|
|
363
|
+
* @default `4` when `displayStaticWrapperAs === 'desktop'`, `3` otherwise.
|
|
358
364
|
*/
|
|
359
365
|
yearsPerRow: PropTypes.oneOf([3, 4])
|
|
360
366
|
};
|
|
@@ -17,4 +17,9 @@ export interface StaticDateTimePickerProps<TDate extends PickerValidDate> extend
|
|
|
17
17
|
* @default {}
|
|
18
18
|
*/
|
|
19
19
|
slotProps?: StaticDateTimePickerSlotProps<TDate>;
|
|
20
|
+
/**
|
|
21
|
+
* Years rendered per row.
|
|
22
|
+
* @default `4` when `displayStaticWrapperAs === 'desktop'`, `3` otherwise.
|
|
23
|
+
*/
|
|
24
|
+
yearsPerRow?: 3 | 4;
|
|
20
25
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
4
4
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
5
|
-
const _excluded = ["autoFocus", "className", "value", "defaultValue", "referenceDate", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onChange", "readOnly", "shouldDisableYear", "disableHighlightToday", "onYearFocus", "hasFocus", "onFocusedViewChange", "yearsPerRow", "timezone", "gridLabelId", "slots", "slotProps"];
|
|
5
|
+
const _excluded = ["autoFocus", "className", "value", "defaultValue", "referenceDate", "disabled", "disableFuture", "disablePast", "maxDate", "minDate", "onChange", "readOnly", "shouldDisableYear", "disableHighlightToday", "onYearFocus", "hasFocus", "onFocusedViewChange", "yearsOrder", "yearsPerRow", "timezone", "gridLabelId", "slots", "slotProps"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import clsx from 'clsx';
|
|
@@ -88,6 +88,7 @@ export const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(
|
|
|
88
88
|
onYearFocus,
|
|
89
89
|
hasFocus,
|
|
90
90
|
onFocusedViewChange,
|
|
91
|
+
yearsOrder = 'asc',
|
|
91
92
|
yearsPerRow,
|
|
92
93
|
timezone: timezoneProp,
|
|
93
94
|
gridLabelId,
|
|
@@ -177,22 +178,24 @@ export const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(
|
|
|
177
178
|
React.useEffect(() => {
|
|
178
179
|
setFocusedYear(prevFocusedYear => selectedYear !== null && prevFocusedYear !== selectedYear ? selectedYear : prevFocusedYear);
|
|
179
180
|
}, [selectedYear]);
|
|
181
|
+
const verticalDirection = yearsOrder !== 'desc' ? yearsPerRow * 1 : yearsPerRow * -1;
|
|
182
|
+
const horizontalDirection = isRtl || yearsOrder === 'desc' ? -1 : 1;
|
|
180
183
|
const handleKeyDown = useEventCallback((event, year) => {
|
|
181
184
|
switch (event.key) {
|
|
182
185
|
case 'ArrowUp':
|
|
183
|
-
focusYear(year -
|
|
186
|
+
focusYear(year - verticalDirection);
|
|
184
187
|
event.preventDefault();
|
|
185
188
|
break;
|
|
186
189
|
case 'ArrowDown':
|
|
187
|
-
focusYear(year +
|
|
190
|
+
focusYear(year + verticalDirection);
|
|
188
191
|
event.preventDefault();
|
|
189
192
|
break;
|
|
190
193
|
case 'ArrowLeft':
|
|
191
|
-
focusYear(year
|
|
194
|
+
focusYear(year - horizontalDirection);
|
|
192
195
|
event.preventDefault();
|
|
193
196
|
break;
|
|
194
197
|
case 'ArrowRight':
|
|
195
|
-
focusYear(year +
|
|
198
|
+
focusYear(year + horizontalDirection);
|
|
196
199
|
event.preventDefault();
|
|
197
200
|
break;
|
|
198
201
|
default:
|
|
@@ -230,6 +233,10 @@ export const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(
|
|
|
230
233
|
}
|
|
231
234
|
scrollerRef.current.scrollTop = elementBottom - clientHeight / 2 - offsetHeight / 2;
|
|
232
235
|
}, [autoFocus]);
|
|
236
|
+
const yearRange = utils.getYearRange([minDate, maxDate]);
|
|
237
|
+
if (yearsOrder === 'desc') {
|
|
238
|
+
yearRange.reverse();
|
|
239
|
+
}
|
|
233
240
|
return /*#__PURE__*/_jsx(YearCalendarRoot, _extends({
|
|
234
241
|
ref: handleRef,
|
|
235
242
|
className: clsx(classes.root, className),
|
|
@@ -237,7 +244,7 @@ export const YearCalendar = /*#__PURE__*/React.forwardRef(function YearCalendar(
|
|
|
237
244
|
role: "radiogroup",
|
|
238
245
|
"aria-labelledby": gridLabelId
|
|
239
246
|
}, other, {
|
|
240
|
-
children:
|
|
247
|
+
children: yearRange.map(year => {
|
|
241
248
|
const yearNumber = utils.getYear(year);
|
|
242
249
|
const isSelected = yearNumber === selectedYear;
|
|
243
250
|
const isDisabled = disabled || isYearDisabled(year);
|
|
@@ -358,6 +365,12 @@ process.env.NODE_ENV !== "production" ? YearCalendar.propTypes = {
|
|
|
358
365
|
* Used when the component is controlled.
|
|
359
366
|
*/
|
|
360
367
|
value: PropTypes.object,
|
|
368
|
+
/**
|
|
369
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
370
|
+
* If `desc`, years are displayed in descending order.
|
|
371
|
+
* @default 'asc'
|
|
372
|
+
*/
|
|
373
|
+
yearsOrder: PropTypes.oneOf(['asc', 'desc']),
|
|
361
374
|
/**
|
|
362
375
|
* Years rendered per row.
|
|
363
376
|
* @default 3
|
|
@@ -8,7 +8,7 @@ import type { PickersYearProps } from './PickersYear';
|
|
|
8
8
|
import { SlotComponentPropsFromProps } from '../internals/models/helpers';
|
|
9
9
|
export interface YearCalendarSlots {
|
|
10
10
|
/**
|
|
11
|
-
* Button displayed to render a single year in the
|
|
11
|
+
* Button displayed to render a single year in the `year` view.
|
|
12
12
|
* @default YearCalendarButton
|
|
13
13
|
*/
|
|
14
14
|
yearButton?: React.ElementType;
|
|
@@ -19,6 +19,12 @@ export interface YearCalendarSlotProps {
|
|
|
19
19
|
}, {}, PickersYearProps>;
|
|
20
20
|
}
|
|
21
21
|
export interface ExportedYearCalendarProps {
|
|
22
|
+
/**
|
|
23
|
+
* Years are displayed in ascending (chronological) order by default.
|
|
24
|
+
* If `desc`, years are displayed in descending order.
|
|
25
|
+
* @default 'asc'
|
|
26
|
+
*/
|
|
27
|
+
yearsOrder?: 'asc' | 'desc';
|
|
22
28
|
/**
|
|
23
29
|
* Years rendered per row.
|
|
24
30
|
* @default 3
|
|
@@ -8,4 +8,4 @@ export interface DateViewRendererProps<TDate extends PickerValidDate, TView exte
|
|
|
8
8
|
views: readonly TView[];
|
|
9
9
|
focusedView: TView | null;
|
|
10
10
|
}
|
|
11
|
-
export declare const renderDateViewCalendar: <TDate extends PickerValidDate>({ view, onViewChange, views, focusedView, onFocusedViewChange, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minDate, maxDate, shouldDisableDate, shouldDisableMonth, shouldDisableYear, reduceAnimations, onMonthChange, monthsPerRow, onYearChange, yearsPerRow, slots, slotProps, loading, renderLoading, disableHighlightToday, readOnly, disabled, showDaysOutsideCurrentMonth, dayOfWeekFormatter, sx, autoFocus, fixedWeekNumber, displayWeekNumber, timezone, }: DateViewRendererProps<TDate, DateView>) => React.JSX.Element;
|
|
11
|
+
export declare const renderDateViewCalendar: <TDate extends PickerValidDate>({ view, onViewChange, views, focusedView, onFocusedViewChange, value, defaultValue, referenceDate, onChange, className, classes, disableFuture, disablePast, minDate, maxDate, shouldDisableDate, shouldDisableMonth, shouldDisableYear, reduceAnimations, onMonthChange, monthsPerRow, onYearChange, yearsOrder, yearsPerRow, slots, slotProps, loading, renderLoading, disableHighlightToday, readOnly, disabled, showDaysOutsideCurrentMonth, dayOfWeekFormatter, sx, autoFocus, fixedWeekNumber, displayWeekNumber, timezone, }: DateViewRendererProps<TDate, DateView>) => React.JSX.Element;
|
|
@@ -25,6 +25,7 @@ export const renderDateViewCalendar = ({
|
|
|
25
25
|
onMonthChange,
|
|
26
26
|
monthsPerRow,
|
|
27
27
|
onYearChange,
|
|
28
|
+
yearsOrder,
|
|
28
29
|
yearsPerRow,
|
|
29
30
|
slots,
|
|
30
31
|
slotProps,
|
|
@@ -63,6 +64,7 @@ export const renderDateViewCalendar = ({
|
|
|
63
64
|
onMonthChange: onMonthChange,
|
|
64
65
|
monthsPerRow: monthsPerRow,
|
|
65
66
|
onYearChange: onYearChange,
|
|
67
|
+
yearsOrder: yearsOrder,
|
|
66
68
|
yearsPerRow: yearsPerRow,
|
|
67
69
|
slots: slots,
|
|
68
70
|
slotProps: slotProps,
|
package/index.js
CHANGED
|
@@ -78,7 +78,7 @@ export class AdapterDateFns extends AdapterDateFnsBase {
|
|
|
78
78
|
/* istanbul ignore next */
|
|
79
79
|
if (process.env.NODE_ENV !== 'production') {
|
|
80
80
|
if (typeof addDays !== 'function') {
|
|
81
|
-
throw new Error(['MUI:
|
|
81
|
+
throw new Error(['MUI: This adapter is only compatible with `date-fns` v2.x package versions.', 'Please, install v2.x of the package or use the `AdapterDateFnsV3` instead.'].join('\n'));
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
super({
|