@mui/x-date-pickers-pro 6.0.0-alpha.11 → 6.0.0-alpha.13
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 +260 -0
- package/DateRangeCalendar/DateRangeCalendar.js +30 -3
- package/DateRangeCalendar/DateRangeCalendar.types.d.ts +37 -37
- package/DateRangePicker/DateRangePicker.js +0 -6
- package/DateRangePicker/DateRangePickerView.d.ts +3 -3
- package/DateRangePicker/DateRangePickerView.js +6 -3
- package/DateRangePicker/DateRangePickerViewMobile.js +1 -1
- package/DateRangePickerDay/DateRangePickerDay.js +72 -1
- package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +5 -0
- package/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -6
- package/DesktopNextDateRangePicker/DesktopNextDateRangePicker.js +22 -9
- package/MobileDateRangePicker/MobileDateRangePicker.d.ts +5 -0
- package/MobileDateRangePicker/MobileDateRangePicker.js +0 -6
- package/MobileNextDateRangePicker/MobileNextDateRangePicker.js +22 -9
- package/MultiInputDateRangeField/MultiInputDateRangeField.js +51 -11
- package/MultiInputDateRangeField/MultiInputDateRangeField.types.d.ts +4 -2
- package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +45 -10
- package/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.types.d.ts +3 -3
- package/MultiInputTimeRangeField/MultiInputTimeRangeField.js +45 -10
- package/MultiInputTimeRangeField/MultiInputTimeRangeField.types.d.ts +2 -2
- package/NextDateRangePicker/NextDateRangePicker.js +16 -2
- package/NextDateRangePicker/shared.d.ts +9 -2
- package/SingleInputDateRangeField/SingleInputDateRangeField.js +110 -5
- package/SingleInputDateRangeField/SingleInputDateRangeField.types.d.ts +3 -2
- package/StaticDateRangePicker/StaticDateRangePicker.js +0 -5
- package/StaticNextDateRangePicker/StaticNextDateRangePicker.js +20 -6
- package/dateRangeViewRenderers/dateRangeViewRenderers.d.ts +13 -0
- package/{internal/utils/viewRenderers.js → dateRangeViewRenderers/dateRangeViewRenderers.js} +3 -4
- package/dateRangeViewRenderers/index.d.ts +2 -0
- package/dateRangeViewRenderers/index.js +1 -0
- package/dateRangeViewRenderers/package.json +6 -0
- package/index.d.ts +2 -1
- package/index.js +5 -2
- package/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.d.ts +1 -1
- package/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.js +6 -4
- package/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.types.d.ts +4 -5
- package/internal/hooks/useMobileRangePicker/useMobileRangePicker.d.ts +1 -1
- package/internal/hooks/useMobileRangePicker/useMobileRangePicker.js +4 -4
- package/internal/hooks/useMobileRangePicker/useMobileRangePicker.types.d.ts +4 -5
- package/internal/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +7 -1
- package/internal/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +7 -1
- package/internal/hooks/useMultiInputRangeField/useMultiInputRangeField.types.d.ts +2 -0
- package/internal/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +7 -1
- package/internal/hooks/useRangePickerInputProps.d.ts +7 -7
- package/internal/hooks/useRangePickerInputProps.js +12 -11
- package/internal/hooks/useStaticRangePicker/useStaticRangePicker.d.ts +1 -1
- package/internal/hooks/useStaticRangePicker/useStaticRangePicker.js +3 -3
- package/internal/hooks/useStaticRangePicker/useStaticRangePicker.types.d.ts +2 -2
- package/internal/models/dateRange.d.ts +11 -1
- package/internal/models/dateTimeRange.d.ts +2 -2
- package/internal/models/fields.d.ts +6 -1
- package/internal/models/range.d.ts +0 -4
- package/internal/models/timeRange.d.ts +2 -1
- package/internal/utils/date-fields-utils.d.ts +21 -5
- package/internal/utils/releaseInfo.js +1 -1
- package/internal/utils/valueManagers.d.ts +3 -2
- package/internal/utils/valueManagers.js +21 -22
- package/legacy/DateRangeCalendar/DateRangeCalendar.js +36 -3
- package/legacy/DateRangePicker/DateRangePicker.js +0 -6
- package/legacy/DateRangePicker/DateRangePickerView.js +7 -2
- package/legacy/DateRangePicker/DateRangePickerViewMobile.js +1 -1
- package/legacy/DateRangePickerDay/DateRangePickerDay.js +72 -1
- package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -6
- package/legacy/DesktopNextDateRangePicker/DesktopNextDateRangePicker.js +22 -9
- package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +0 -6
- package/legacy/MobileNextDateRangePicker/MobileNextDateRangePicker.js +22 -9
- package/legacy/MultiInputDateRangeField/MultiInputDateRangeField.js +48 -8
- package/legacy/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +43 -8
- package/legacy/MultiInputTimeRangeField/MultiInputTimeRangeField.js +43 -8
- package/legacy/NextDateRangePicker/NextDateRangePicker.js +16 -2
- package/legacy/SingleInputDateRangeField/SingleInputDateRangeField.js +109 -4
- package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +0 -5
- package/legacy/StaticNextDateRangePicker/StaticNextDateRangePicker.js +20 -6
- package/legacy/{internal/utils/viewRenderers.js → dateRangeViewRenderers/dateRangeViewRenderers.js} +3 -4
- package/legacy/dateRangeViewRenderers/index.js +1 -0
- package/legacy/index.js +5 -2
- package/legacy/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.js +6 -4
- package/legacy/internal/hooks/useMobileRangePicker/useMobileRangePicker.js +4 -4
- package/legacy/internal/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +7 -1
- package/legacy/internal/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +7 -1
- package/legacy/internal/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +7 -1
- package/legacy/internal/hooks/useRangePickerInputProps.js +12 -11
- package/legacy/internal/hooks/useStaticRangePicker/useStaticRangePicker.js +3 -3
- package/legacy/internal/utils/releaseInfo.js +1 -1
- package/legacy/internal/utils/valueManagers.js +20 -23
- package/legacy/tests/describeRangeValidation/testTextFieldRangeValidation.js +1 -1
- package/modern/DateRangeCalendar/DateRangeCalendar.js +29 -3
- package/modern/DateRangePicker/DateRangePicker.js +0 -6
- package/modern/DateRangePicker/DateRangePickerView.js +6 -3
- package/modern/DateRangePicker/DateRangePickerViewMobile.js +1 -1
- package/modern/DateRangePickerDay/DateRangePickerDay.js +72 -1
- package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -6
- package/modern/DesktopNextDateRangePicker/DesktopNextDateRangePicker.js +22 -9
- package/modern/MobileDateRangePicker/MobileDateRangePicker.js +0 -6
- package/modern/MobileNextDateRangePicker/MobileNextDateRangePicker.js +22 -9
- package/modern/MultiInputDateRangeField/MultiInputDateRangeField.js +51 -11
- package/modern/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +45 -10
- package/modern/MultiInputTimeRangeField/MultiInputTimeRangeField.js +45 -10
- package/modern/NextDateRangePicker/NextDateRangePicker.js +16 -2
- package/modern/SingleInputDateRangeField/SingleInputDateRangeField.js +110 -5
- package/modern/StaticDateRangePicker/StaticDateRangePicker.js +0 -5
- package/modern/StaticNextDateRangePicker/StaticNextDateRangePicker.js +20 -6
- package/modern/{internal/utils/viewRenderers.js → dateRangeViewRenderers/dateRangeViewRenderers.js} +3 -4
- package/modern/dateRangeViewRenderers/index.js +1 -0
- package/modern/index.js +5 -2
- package/modern/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.js +6 -4
- package/modern/internal/hooks/useMobileRangePicker/useMobileRangePicker.js +4 -4
- package/modern/internal/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +7 -1
- package/modern/internal/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +7 -1
- package/modern/internal/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +7 -1
- package/modern/internal/hooks/useRangePickerInputProps.js +11 -11
- package/modern/internal/hooks/useStaticRangePicker/useStaticRangePicker.js +3 -3
- package/modern/internal/utils/releaseInfo.js +1 -1
- package/modern/internal/utils/valueManagers.js +21 -22
- package/modern/tests/describeRangeValidation/testTextFieldRangeValidation.js +1 -1
- package/node/DateRangeCalendar/DateRangeCalendar.js +28 -2
- package/node/DateRangePicker/DateRangePicker.js +0 -6
- package/node/DateRangePicker/DateRangePickerView.js +6 -3
- package/node/DateRangePicker/DateRangePickerViewMobile.js +1 -1
- package/node/DateRangePickerDay/DateRangePickerDay.js +72 -1
- package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +0 -6
- package/node/DesktopNextDateRangePicker/DesktopNextDateRangePicker.js +22 -9
- package/node/MobileDateRangePicker/MobileDateRangePicker.js +0 -6
- package/node/MobileNextDateRangePicker/MobileNextDateRangePicker.js +22 -9
- package/node/MultiInputDateRangeField/MultiInputDateRangeField.js +51 -11
- package/node/MultiInputDateTimeRangeField/MultiInputDateTimeRangeField.js +45 -10
- package/node/MultiInputTimeRangeField/MultiInputTimeRangeField.js +45 -10
- package/node/NextDateRangePicker/NextDateRangePicker.js +16 -2
- package/node/SingleInputDateRangeField/SingleInputDateRangeField.js +110 -5
- package/node/StaticDateRangePicker/StaticDateRangePicker.js +0 -5
- package/node/StaticNextDateRangePicker/StaticNextDateRangePicker.js +20 -6
- package/node/{internal/utils/viewRenderers.js → dateRangeViewRenderers/dateRangeViewRenderers.js} +4 -4
- package/node/dateRangeViewRenderers/index.js +12 -0
- package/node/index.js +13 -1
- package/node/internal/hooks/useDesktopRangePicker/useDesktopRangePicker.js +6 -4
- package/node/internal/hooks/useMobileRangePicker/useMobileRangePicker.js +4 -4
- package/node/internal/hooks/useMultiInputRangeField/useMultiInputDateRangeField.js +7 -1
- package/node/internal/hooks/useMultiInputRangeField/useMultiInputDateTimeRangeField.js +7 -1
- package/node/internal/hooks/useMultiInputRangeField/useMultiInputTimeRangeField.js +7 -1
- package/node/internal/hooks/useRangePickerInputProps.js +11 -11
- package/node/internal/hooks/useStaticRangePicker/useStaticRangePicker.js +3 -3
- package/node/internal/utils/releaseInfo.js +1 -1
- package/node/internal/utils/valueManagers.js +20 -21
- package/node/tests/describeRangeValidation/testTextFieldRangeValidation.js +1 -1
- package/package.json +4 -4
- package/tests/describeRangeValidation/testTextFieldRangeValidation.js +1 -1
- package/internal/utils/viewRenderers.d.ts +0 -7
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
-
const _excluded = ["components", "componentsProps", "value", "defaultValue", "format", "onChange", "readOnly", "onError", "minTime", "maxTime", "minutesStep", "shouldDisableTime", "disableFuture", "disablePast", "selectedSections", "onSelectedSectionsChange"],
|
|
4
|
-
_excluded2 = ["onKeyDown", "ref"],
|
|
5
|
-
_excluded3 = ["onKeyDown", "ref"];
|
|
3
|
+
const _excluded = ["components", "componentsProps", "value", "defaultValue", "format", "onChange", "readOnly", "disabled", "onError", "minTime", "maxTime", "minutesStep", "shouldDisableTime", "disableFuture", "disablePast", "selectedSections", "onSelectedSectionsChange"],
|
|
4
|
+
_excluded2 = ["onKeyDown", "ref", "readOnly", "inputMode"],
|
|
5
|
+
_excluded3 = ["onKeyDown", "ref", "readOnly", "inputMode"];
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import Stack from '@mui/material/Stack';
|
|
@@ -14,12 +14,11 @@ import { useMultiInputTimeRangeField } from '../internal/hooks/useMultiInputRang
|
|
|
14
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
15
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
16
|
const MultiInputTimeRangeFieldRoot = styled( /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/_jsx(Stack, _extends({
|
|
17
|
-
ref: ref
|
|
18
|
-
}, props, {
|
|
17
|
+
ref: ref,
|
|
19
18
|
spacing: 2,
|
|
20
19
|
direction: "row",
|
|
21
|
-
alignItems: "
|
|
22
|
-
}))), {
|
|
20
|
+
alignItems: "baseline"
|
|
21
|
+
}, props))), {
|
|
23
22
|
name: 'MuiMultiInputTimeRangeField',
|
|
24
23
|
slot: 'Root',
|
|
25
24
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -48,6 +47,7 @@ const MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
|
|
|
48
47
|
format,
|
|
49
48
|
onChange,
|
|
50
49
|
readOnly,
|
|
50
|
+
disabled,
|
|
51
51
|
onError,
|
|
52
52
|
minTime,
|
|
53
53
|
maxTime,
|
|
@@ -98,6 +98,7 @@ const MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
|
|
|
98
98
|
format,
|
|
99
99
|
onChange,
|
|
100
100
|
readOnly,
|
|
101
|
+
disabled,
|
|
101
102
|
onError,
|
|
102
103
|
minTime,
|
|
103
104
|
maxTime,
|
|
@@ -116,11 +117,15 @@ const MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
|
|
|
116
117
|
{
|
|
117
118
|
startDate: {
|
|
118
119
|
onKeyDown: onStartInputKeyDown,
|
|
119
|
-
ref: startInputRef
|
|
120
|
+
ref: startInputRef,
|
|
121
|
+
readOnly: startReadOnly,
|
|
122
|
+
inputMode: startInputMode
|
|
120
123
|
},
|
|
121
124
|
endDate: {
|
|
122
125
|
onKeyDown: onEndInputKeyDown,
|
|
123
|
-
ref: endInputRef
|
|
126
|
+
ref: endInputRef,
|
|
127
|
+
readOnly: endReadOnly,
|
|
128
|
+
inputMode: endInputMode
|
|
124
129
|
}
|
|
125
130
|
} = _useMultiInputTimeRan,
|
|
126
131
|
startDateProps = _objectWithoutPropertiesLoose(_useMultiInputTimeRan.startDate, _excluded3),
|
|
@@ -129,11 +134,15 @@ const MultiInputTimeRangeField = /*#__PURE__*/React.forwardRef(function MultiInp
|
|
|
129
134
|
children: [/*#__PURE__*/_jsx(Input, _extends({}, startDateProps, {
|
|
130
135
|
inputProps: _extends({}, startDateProps.inputProps, {
|
|
131
136
|
ref: startInputRef,
|
|
137
|
+
readOnly: startReadOnly,
|
|
138
|
+
inputMode: startInputMode,
|
|
132
139
|
onKeyDown: onStartInputKeyDown
|
|
133
140
|
})
|
|
134
141
|
})), /*#__PURE__*/_jsx(Separator, _extends({}, separatorProps)), /*#__PURE__*/_jsx(Input, _extends({}, endDateProps, {
|
|
135
142
|
inputProps: _extends({}, endDateProps.inputProps, {
|
|
136
143
|
ref: endInputRef,
|
|
144
|
+
readOnly: endReadOnly,
|
|
145
|
+
inputMode: endInputMode,
|
|
137
146
|
onKeyDown: onEndInputKeyDown
|
|
138
147
|
})
|
|
139
148
|
}))]
|
|
@@ -149,6 +158,7 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
|
|
|
149
158
|
* @default `utils.is12HourCycleInCurrentLocale()`
|
|
150
159
|
*/
|
|
151
160
|
ampm: PropTypes.bool,
|
|
161
|
+
className: PropTypes.string,
|
|
152
162
|
/**
|
|
153
163
|
* Overrideable components.
|
|
154
164
|
* @default {}
|
|
@@ -163,6 +173,17 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
|
|
|
163
173
|
* The default value. Use when the component is not controlled.
|
|
164
174
|
*/
|
|
165
175
|
defaultValue: PropTypes.arrayOf(PropTypes.any),
|
|
176
|
+
/**
|
|
177
|
+
* Defines the `flex-direction` style property.
|
|
178
|
+
* It is applied for all screen sizes.
|
|
179
|
+
* @default 'column'
|
|
180
|
+
*/
|
|
181
|
+
direction: PropTypes.oneOfType([PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row']), PropTypes.arrayOf(PropTypes.oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), PropTypes.object]),
|
|
182
|
+
/**
|
|
183
|
+
* If `true`, the component is disabled.
|
|
184
|
+
* @default false
|
|
185
|
+
*/
|
|
186
|
+
disabled: PropTypes.bool,
|
|
166
187
|
/**
|
|
167
188
|
* If `true` disable values before the current date for date components, time for time components and both for date time components.
|
|
168
189
|
* @default false
|
|
@@ -178,6 +199,10 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
|
|
|
178
199
|
* @default false
|
|
179
200
|
*/
|
|
180
201
|
disablePast: PropTypes.bool,
|
|
202
|
+
/**
|
|
203
|
+
* Add an element between each child.
|
|
204
|
+
*/
|
|
205
|
+
divider: PropTypes.node,
|
|
181
206
|
/**
|
|
182
207
|
* Format of the date when rendered in the input(s).
|
|
183
208
|
*/
|
|
@@ -231,7 +256,7 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
|
|
|
231
256
|
* 4. If `null` is provided, no section will be selected
|
|
232
257
|
* If not provided, the selected sections will be handled internally.
|
|
233
258
|
*/
|
|
234
|
-
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
259
|
+
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
235
260
|
endIndex: PropTypes.number.isRequired,
|
|
236
261
|
startIndex: PropTypes.number.isRequired
|
|
237
262
|
})]),
|
|
@@ -242,6 +267,16 @@ process.env.NODE_ENV !== "production" ? MultiInputTimeRangeField.propTypes = {
|
|
|
242
267
|
* @returns {boolean} If `true` the time will be disabled.
|
|
243
268
|
*/
|
|
244
269
|
shouldDisableTime: PropTypes.func,
|
|
270
|
+
/**
|
|
271
|
+
* Defines the space between immediate children.
|
|
272
|
+
* @default 0
|
|
273
|
+
*/
|
|
274
|
+
spacing: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number, PropTypes.string])), PropTypes.number, PropTypes.object, PropTypes.string]),
|
|
275
|
+
style: PropTypes.object,
|
|
276
|
+
/**
|
|
277
|
+
* The system prop, which allows defining system overrides as well as additional CSS styles.
|
|
278
|
+
*/
|
|
279
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
245
280
|
/**
|
|
246
281
|
* The selected value.
|
|
247
282
|
* Used when the component is controlled.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
3
|
import Typography from '@mui/material/Typography';
|
|
4
|
-
import Stack from '@mui/material/Stack';
|
|
4
|
+
import Stack, { StackProps } from '@mui/material/Stack';
|
|
5
5
|
import TextField from '@mui/material/TextField';
|
|
6
6
|
import { UseTimeRangeFieldDefaultizedProps, UseTimeRangeFieldProps } from '../internal/models/timeRange';
|
|
7
7
|
import { RangePosition } from '../internal/models/range';
|
|
@@ -15,7 +15,7 @@ export interface UseMultiInputTimeRangeFieldParams<TDate, TChildProps extends {}
|
|
|
15
15
|
export interface UseMultiInputTimeRangeFieldProps<TDate> extends UseTimeRangeFieldProps<TDate> {
|
|
16
16
|
}
|
|
17
17
|
export type UseMultiInputTimeRangeFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseMultiInputTimeRangeFieldProps<TDate>> & UseMultiInputTimeRangeFieldProps<TDate>;
|
|
18
|
-
export interface MultiInputTimeRangeFieldProps<TDate> extends UseMultiInputTimeRangeFieldComponentProps<TDate,
|
|
18
|
+
export interface MultiInputTimeRangeFieldProps<TDate> extends UseMultiInputTimeRangeFieldComponentProps<TDate, Omit<StackProps, 'position'>> {
|
|
19
19
|
/**
|
|
20
20
|
* Overrideable components.
|
|
21
21
|
* @default {}
|
|
@@ -36,6 +36,12 @@ process.env.NODE_ENV !== "production" ? NextDateRangePicker.propTypes = {
|
|
|
36
36
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
37
37
|
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
38
38
|
// ----------------------------------------------------------------------
|
|
39
|
+
/**
|
|
40
|
+
* If `true`, the main element is focused during the first mount.
|
|
41
|
+
* This main element is:
|
|
42
|
+
* - the element chosen by the visible view if any (i.e: the selected day on the `day` view).
|
|
43
|
+
* - the `input` element if there is a field rendered.
|
|
44
|
+
*/
|
|
39
45
|
autoFocus: PropTypes.bool,
|
|
40
46
|
/**
|
|
41
47
|
* The number of calendars to render on **desktop**.
|
|
@@ -222,7 +228,7 @@ process.env.NODE_ENV !== "production" ? NextDateRangePicker.propTypes = {
|
|
|
222
228
|
* 4. If `null` is provided, no section will be selected
|
|
223
229
|
* If not provided, the selected sections will be handled internally.
|
|
224
230
|
*/
|
|
225
|
-
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
231
|
+
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
226
232
|
endIndex: PropTypes.number.isRequired,
|
|
227
233
|
startIndex: PropTypes.number.isRequired
|
|
228
234
|
})]),
|
|
@@ -252,6 +258,14 @@ process.env.NODE_ENV !== "production" ? NextDateRangePicker.propTypes = {
|
|
|
252
258
|
* The selected value.
|
|
253
259
|
* Used when the component is controlled.
|
|
254
260
|
*/
|
|
255
|
-
value: PropTypes.arrayOf(PropTypes.any)
|
|
261
|
+
value: PropTypes.arrayOf(PropTypes.any),
|
|
262
|
+
/**
|
|
263
|
+
* Define custom view renderers for each section.
|
|
264
|
+
* If `null`, the section will only have field editing.
|
|
265
|
+
* If `undefined`, internally defined view will be the used.
|
|
266
|
+
*/
|
|
267
|
+
viewRenderers: PropTypes.shape({
|
|
268
|
+
day: PropTypes.func
|
|
269
|
+
})
|
|
256
270
|
} : void 0;
|
|
257
271
|
export { NextDateRangePicker };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { LocalizedComponent } from '@mui/x-date-pickers';
|
|
3
|
-
import {
|
|
3
|
+
import { DefaultizedProps, BaseDateValidationProps, BaseNextPickerInputProps, PickerViewRendererLookup } from '@mui/x-date-pickers/internals';
|
|
4
4
|
import { DateRangeValidationError } from '../internal/hooks/validation/useDateRangeValidation';
|
|
5
5
|
import { DateRange } from '../internal/models';
|
|
6
6
|
import { DateRangeCalendarSlotsComponent, DateRangeCalendarSlotsComponentsProps, ExportedDateRangeCalendarProps } from '../DateRangeCalendar';
|
|
7
7
|
import { DateRangePickerToolbarProps, ExportedDateRangePickerToolbarProps } from '../DateRangePicker/DateRangePickerToolbar';
|
|
8
|
+
import { DateRangeViewRendererProps } from '../dateRangeViewRenderers';
|
|
8
9
|
export interface BaseNextDateRangePickerSlotsComponent<TDate> extends DateRangeCalendarSlotsComponent<TDate> {
|
|
9
10
|
/**
|
|
10
11
|
* Custom component for the toolbar rendered above the views.
|
|
@@ -15,7 +16,7 @@ export interface BaseNextDateRangePickerSlotsComponent<TDate> extends DateRangeC
|
|
|
15
16
|
export interface BaseNextDateRangePickerSlotsComponentsProps<TDate> extends DateRangeCalendarSlotsComponentsProps<TDate> {
|
|
16
17
|
toolbar?: ExportedDateRangePickerToolbarProps;
|
|
17
18
|
}
|
|
18
|
-
export interface BaseNextDateRangePickerProps<TDate> extends Omit<
|
|
19
|
+
export interface BaseNextDateRangePickerProps<TDate> extends Omit<BaseNextPickerInputProps<DateRange<TDate>, TDate, 'day', DateRangeValidationError>, 'view' | 'views' | 'openTo' | 'onViewChange' | 'orientation'>, ExportedDateRangeCalendarProps<TDate>, BaseDateValidationProps<TDate> {
|
|
19
20
|
/**
|
|
20
21
|
* Overrideable components.
|
|
21
22
|
* @default {}
|
|
@@ -26,6 +27,12 @@ export interface BaseNextDateRangePickerProps<TDate> extends Omit<BaseNextPicker
|
|
|
26
27
|
* @default {}
|
|
27
28
|
*/
|
|
28
29
|
componentsProps?: BaseNextDateRangePickerSlotsComponentsProps<TDate>;
|
|
30
|
+
/**
|
|
31
|
+
* Define custom view renderers for each section.
|
|
32
|
+
* If `null`, the section will only have field editing.
|
|
33
|
+
* If `undefined`, internally defined view will be the used.
|
|
34
|
+
*/
|
|
35
|
+
viewRenderers?: Partial<PickerViewRendererLookup<DateRange<TDate>, 'day', DateRangeViewRendererProps<TDate, 'day'>, {}>>;
|
|
29
36
|
}
|
|
30
37
|
type UseNextDateRangePickerDefaultizedProps<TDate, Props extends BaseNextDateRangePickerProps<TDate>> = LocalizedComponent<TDate, DefaultizedProps<Props, keyof BaseDateValidationProps<TDate>>>;
|
|
31
38
|
export declare function useNextDateRangePickerDefaultizedProps<TDate, Props extends BaseNextDateRangePickerProps<TDate>>(props: Props, name: string): UseNextDateRangePickerDefaultizedProps<TDate, Props>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
const _excluded = ["components", "componentsProps"],
|
|
4
|
-
_excluded2 = ["ref", "onPaste", "inputMode"];
|
|
4
|
+
_excluded2 = ["ref", "onPaste", "inputMode", "readOnly"];
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
7
|
import TextField from '@mui/material/TextField';
|
|
@@ -35,7 +35,8 @@ const SingleInputDateRangeField = /*#__PURE__*/React.forwardRef(function SingleI
|
|
|
35
35
|
{
|
|
36
36
|
ref: inputRef,
|
|
37
37
|
onPaste,
|
|
38
|
-
inputMode
|
|
38
|
+
inputMode,
|
|
39
|
+
readOnly
|
|
39
40
|
} = _useSingleInputDateRa,
|
|
40
41
|
fieldProps = _objectWithoutPropertiesLoose(_useSingleInputDateRa, _excluded2);
|
|
41
42
|
return /*#__PURE__*/_jsx(Input, _extends({
|
|
@@ -44,7 +45,8 @@ const SingleInputDateRangeField = /*#__PURE__*/React.forwardRef(function SingleI
|
|
|
44
45
|
inputProps: _extends({}, fieldProps.inputProps, {
|
|
45
46
|
ref: inputRef,
|
|
46
47
|
onPaste,
|
|
47
|
-
inputMode
|
|
48
|
+
inputMode,
|
|
49
|
+
readOnly
|
|
48
50
|
})
|
|
49
51
|
}));
|
|
50
52
|
});
|
|
@@ -53,6 +55,19 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
53
55
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
54
56
|
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
55
57
|
// ----------------------------------------------------------------------
|
|
58
|
+
/**
|
|
59
|
+
* If `true`, the `input` element is focused during the first mount.
|
|
60
|
+
* @default false
|
|
61
|
+
*/
|
|
62
|
+
autoFocus: PropTypes.bool,
|
|
63
|
+
className: PropTypes.string,
|
|
64
|
+
/**
|
|
65
|
+
* The color of the component.
|
|
66
|
+
* It supports both default and custom theme colors, which can be added as shown in the
|
|
67
|
+
* [palette customization guide](https://mui.com/material-ui/customization/palette/#adding-new-colors).
|
|
68
|
+
* @default 'primary'
|
|
69
|
+
*/
|
|
70
|
+
color: PropTypes.oneOf(['error', 'info', 'primary', 'secondary', 'success', 'warning']),
|
|
56
71
|
/**
|
|
57
72
|
* Overrideable components.
|
|
58
73
|
* @default {}
|
|
@@ -67,6 +82,11 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
67
82
|
* The default value. Use when the component is not controlled.
|
|
68
83
|
*/
|
|
69
84
|
defaultValue: PropTypes.arrayOf(PropTypes.any),
|
|
85
|
+
/**
|
|
86
|
+
* If `true`, the component is disabled.
|
|
87
|
+
* @default false
|
|
88
|
+
*/
|
|
89
|
+
disabled: PropTypes.bool,
|
|
70
90
|
/**
|
|
71
91
|
* If `true` disable values before the current date for date components, time for time components and both for date time components.
|
|
72
92
|
* @default false
|
|
@@ -77,10 +97,70 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
77
97
|
* @default false
|
|
78
98
|
*/
|
|
79
99
|
disablePast: PropTypes.bool,
|
|
100
|
+
/**
|
|
101
|
+
* If `true`, the component is displayed in focused state.
|
|
102
|
+
*/
|
|
103
|
+
focused: PropTypes.bool,
|
|
80
104
|
/**
|
|
81
105
|
* Format of the date when rendered in the input(s).
|
|
82
106
|
*/
|
|
83
107
|
format: PropTypes.string,
|
|
108
|
+
/**
|
|
109
|
+
* Props applied to the [`FormHelperText`](/material-ui/api/form-helper-text/) element.
|
|
110
|
+
*/
|
|
111
|
+
FormHelperTextProps: PropTypes.object,
|
|
112
|
+
/**
|
|
113
|
+
* If `true`, the input will take up the full width of its container.
|
|
114
|
+
* @default false
|
|
115
|
+
*/
|
|
116
|
+
fullWidth: PropTypes.bool,
|
|
117
|
+
/**
|
|
118
|
+
* The helper text content.
|
|
119
|
+
*/
|
|
120
|
+
helperText: PropTypes.node,
|
|
121
|
+
/**
|
|
122
|
+
* If `true`, the label is hidden.
|
|
123
|
+
* This is used to increase density for a `FilledInput`.
|
|
124
|
+
* Be sure to add `aria-label` to the `input` element.
|
|
125
|
+
* @default false
|
|
126
|
+
*/
|
|
127
|
+
hiddenLabel: PropTypes.bool,
|
|
128
|
+
/**
|
|
129
|
+
* The id of the `input` element.
|
|
130
|
+
* Use this prop to make `label` and `helperText` accessible for screen readers.
|
|
131
|
+
*/
|
|
132
|
+
id: PropTypes.string,
|
|
133
|
+
/**
|
|
134
|
+
* Props applied to the [`InputLabel`](/material-ui/api/input-label/) element.
|
|
135
|
+
* Pointer events like `onClick` are enabled if and only if `shrink` is `true`.
|
|
136
|
+
*/
|
|
137
|
+
InputLabelProps: PropTypes.object,
|
|
138
|
+
/**
|
|
139
|
+
* [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
|
|
140
|
+
*/
|
|
141
|
+
inputProps: PropTypes.object,
|
|
142
|
+
/**
|
|
143
|
+
* Props applied to the Input element.
|
|
144
|
+
* It will be a [`FilledInput`](/material-ui/api/filled-input/),
|
|
145
|
+
* [`OutlinedInput`](/material-ui/api/outlined-input/) or [`Input`](/material-ui/api/input/)
|
|
146
|
+
* component depending on the `variant` prop value.
|
|
147
|
+
*/
|
|
148
|
+
InputProps: PropTypes.object,
|
|
149
|
+
/**
|
|
150
|
+
* Pass a ref to the `input` element.
|
|
151
|
+
*/
|
|
152
|
+
inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
|
|
153
|
+
current: PropTypes.any.isRequired
|
|
154
|
+
})]),
|
|
155
|
+
/**
|
|
156
|
+
* The label content.
|
|
157
|
+
*/
|
|
158
|
+
label: PropTypes.node,
|
|
159
|
+
/**
|
|
160
|
+
* If `dense` or `normal`, will adjust vertical spacing of this and contained components.
|
|
161
|
+
* @default 'none'
|
|
162
|
+
*/
|
|
163
|
+
margin: PropTypes.oneOf(['dense', 'none', 'normal']),
|
|
84
164
|
/**
|
|
85
165
|
* Maximal selectable date.
|
|
86
166
|
*/
|
|
@@ -89,6 +169,11 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
89
169
|
* Minimal selectable date.
|
|
90
170
|
*/
|
|
91
171
|
minDate: PropTypes.any,
|
|
172
|
+
/**
|
|
173
|
+
* Name attribute of the `input` element.
|
|
174
|
+
*/
|
|
175
|
+
name: PropTypes.string,
|
|
176
|
+
onBlur: PropTypes.func,
|
|
92
177
|
/**
|
|
93
178
|
* Callback fired when the value changes.
|
|
94
179
|
* @template TValue, TError
|
|
@@ -103,6 +188,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
103
188
|
* @param {TValue} value The value associated to the error.
|
|
104
189
|
*/
|
|
105
190
|
onError: PropTypes.func,
|
|
191
|
+
onFocus: PropTypes.func,
|
|
106
192
|
/**
|
|
107
193
|
* Callback fired when the selected sections change.
|
|
108
194
|
* @param {FieldSelectedSections} newValue The new selected sections.
|
|
@@ -114,6 +200,11 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
114
200
|
* @default false
|
|
115
201
|
*/
|
|
116
202
|
readOnly: PropTypes.bool,
|
|
203
|
+
/**
|
|
204
|
+
* If `true`, the label is displayed as required and the `input` element is required.
|
|
205
|
+
* @default false
|
|
206
|
+
*/
|
|
207
|
+
required: PropTypes.bool,
|
|
117
208
|
/**
|
|
118
209
|
* The currently selected sections.
|
|
119
210
|
* This prop accept four formats:
|
|
@@ -123,7 +214,7 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
123
214
|
* 4. If `null` is provided, no section will be selected
|
|
124
215
|
* If not provided, the selected sections will be handled internally.
|
|
125
216
|
*/
|
|
126
|
-
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
217
|
+
selectedSections: PropTypes.oneOfType([PropTypes.oneOf(['all', 'day', 'hours', 'meridiem', 'minutes', 'month', 'seconds', 'year']), PropTypes.number, PropTypes.shape({
|
|
127
218
|
endIndex: PropTypes.number.isRequired,
|
|
128
219
|
startIndex: PropTypes.number.isRequired
|
|
129
220
|
})]),
|
|
@@ -135,10 +226,24 @@ process.env.NODE_ENV !== "production" ? SingleInputDateRangeField.propTypes = {
|
|
|
135
226
|
* @returns {boolean} Returns `true` if the date should be disabled.
|
|
136
227
|
*/
|
|
137
228
|
shouldDisableDate: PropTypes.func,
|
|
229
|
+
/**
|
|
230
|
+
* The size of the component.
|
|
231
|
+
*/
|
|
232
|
+
size: PropTypes.oneOf(['medium', 'small']),
|
|
233
|
+
style: PropTypes.object,
|
|
234
|
+
/**
|
|
235
|
+
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
236
|
+
*/
|
|
237
|
+
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
138
238
|
/**
|
|
139
239
|
* The selected value.
|
|
140
240
|
* Used when the component is controlled.
|
|
141
241
|
*/
|
|
142
|
-
value: PropTypes.arrayOf(PropTypes.any)
|
|
242
|
+
value: PropTypes.arrayOf(PropTypes.any),
|
|
243
|
+
/**
|
|
244
|
+
* The variant to use.
|
|
245
|
+
* @default 'outlined'
|
|
246
|
+
*/
|
|
247
|
+
variant: PropTypes.oneOf(['filled', 'outlined', 'standard'])
|
|
143
248
|
} : void 0;
|
|
144
249
|
export { SingleInputDateRangeField };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
3
|
-
import TextField
|
|
3
|
+
import TextField from '@mui/material/TextField';
|
|
4
|
+
import { FieldsTextFieldProps } from '@mui/x-date-pickers/internals';
|
|
4
5
|
import { UseDateRangeFieldDefaultizedProps, UseDateRangeFieldProps } from '../internal/models';
|
|
5
6
|
export interface UseSingleInputDateRangeFieldParams<TDate, TChildProps extends {}> {
|
|
6
7
|
props: UseSingleInputDateRangeFieldComponentProps<TDate, TChildProps>;
|
|
@@ -10,7 +11,7 @@ export interface UseSingleInputDateRangeFieldProps<TDate> extends UseDateRangeFi
|
|
|
10
11
|
}
|
|
11
12
|
export type UseSingleInputDateRangeFieldDefaultizedProps<TDate, AdditionalProps extends {}> = UseDateRangeFieldDefaultizedProps<TDate> & AdditionalProps;
|
|
12
13
|
export type UseSingleInputDateRangeFieldComponentProps<TDate, TChildProps extends {}> = Omit<TChildProps, keyof UseSingleInputDateRangeFieldProps<TDate>> & UseSingleInputDateRangeFieldProps<TDate>;
|
|
13
|
-
export interface SingleInputDateRangeFieldProps<TDate> extends UseSingleInputDateRangeFieldComponentProps<TDate,
|
|
14
|
+
export interface SingleInputDateRangeFieldProps<TDate> extends UseSingleInputDateRangeFieldComponentProps<TDate, FieldsTextFieldProps> {
|
|
14
15
|
/**
|
|
15
16
|
* Overrideable components.
|
|
16
17
|
* @default {}
|
|
@@ -245,11 +245,6 @@ process.env.NODE_ENV !== "production" ? StaticDateRangePicker.propTypes = {
|
|
|
245
245
|
* @returns {void|Promise} -
|
|
246
246
|
*/
|
|
247
247
|
onMonthChange: PropTypes.func,
|
|
248
|
-
/**
|
|
249
|
-
* Callback fired on view change.
|
|
250
|
-
* @param {DateView} view The new view.
|
|
251
|
-
*/
|
|
252
|
-
onViewChange: PropTypes.func,
|
|
253
248
|
/**
|
|
254
249
|
* Props to pass to keyboard adornment button.
|
|
255
250
|
*/
|
|
@@ -3,19 +3,20 @@ import * as React from 'react';
|
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { useStaticRangePicker } from '../internal/hooks/useStaticRangePicker';
|
|
5
5
|
import { useNextDateRangePickerDefaultizedProps } from '../NextDateRangePicker/shared';
|
|
6
|
+
import { renderDateRangeViewCalendar } from '../dateRangeViewRenderers';
|
|
6
7
|
import { rangeValueManager } from '../internal/utils/valueManagers';
|
|
7
|
-
import { renderDateRangeView } from '../internal/utils/viewRenderers';
|
|
8
8
|
import { validateDateRange } from '../internal/hooks/validation/useDateRangeValidation';
|
|
9
|
-
const VIEW_LOOKUP = {
|
|
10
|
-
day: renderDateRangeView
|
|
11
|
-
};
|
|
12
9
|
const StaticNextDateRangePicker = /*#__PURE__*/React.forwardRef(function StaticNextDateRangePicker(inProps, ref) {
|
|
13
10
|
var _defaultizedProps$dis, _defaultizedProps$cal, _defaultizedProps$sho;
|
|
14
11
|
const defaultizedProps = useNextDateRangePickerDefaultizedProps(inProps, 'MuiStaticNextDateRangePicker');
|
|
15
12
|
const displayStaticWrapperAs = (_defaultizedProps$dis = defaultizedProps.displayStaticWrapperAs) != null ? _defaultizedProps$dis : 'mobile';
|
|
13
|
+
const viewRenderers = _extends({
|
|
14
|
+
day: renderDateRangeViewCalendar
|
|
15
|
+
}, defaultizedProps.viewRenderers);
|
|
16
16
|
|
|
17
17
|
// Props with the default values specific to the static variant
|
|
18
18
|
const props = _extends({}, defaultizedProps, {
|
|
19
|
+
viewRenderers,
|
|
19
20
|
displayStaticWrapperAs,
|
|
20
21
|
views: ['day'],
|
|
21
22
|
openTo: 'day',
|
|
@@ -27,7 +28,6 @@ const StaticNextDateRangePicker = /*#__PURE__*/React.forwardRef(function StaticN
|
|
|
27
28
|
} = useStaticRangePicker({
|
|
28
29
|
props,
|
|
29
30
|
valueManager: rangeValueManager,
|
|
30
|
-
viewLookup: VIEW_LOOKUP,
|
|
31
31
|
validator: validateDateRange,
|
|
32
32
|
ref
|
|
33
33
|
});
|
|
@@ -38,6 +38,12 @@ StaticNextDateRangePicker.propTypes = {
|
|
|
38
38
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
39
39
|
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
40
40
|
// ----------------------------------------------------------------------
|
|
41
|
+
/**
|
|
42
|
+
* If `true`, the main element is focused during the first mount.
|
|
43
|
+
* This main element is:
|
|
44
|
+
* - the element chosen by the visible view if any (i.e: the selected day on the `day` view).
|
|
45
|
+
* - the `input` element if there is a field rendered.
|
|
46
|
+
*/
|
|
41
47
|
autoFocus: PropTypes.bool,
|
|
42
48
|
/**
|
|
43
49
|
* The number of calendars to render.
|
|
@@ -205,6 +211,14 @@ StaticNextDateRangePicker.propTypes = {
|
|
|
205
211
|
* The selected value.
|
|
206
212
|
* Used when the component is controlled.
|
|
207
213
|
*/
|
|
208
|
-
value: PropTypes.arrayOf(PropTypes.any)
|
|
214
|
+
value: PropTypes.arrayOf(PropTypes.any),
|
|
215
|
+
/**
|
|
216
|
+
* Define custom view renderers for each section.
|
|
217
|
+
* If `null`, the section will only have field editing.
|
|
218
|
+
* If `undefined`, internally defined view will be the used.
|
|
219
|
+
*/
|
|
220
|
+
viewRenderers: PropTypes.shape({
|
|
221
|
+
day: PropTypes.func
|
|
222
|
+
})
|
|
209
223
|
};
|
|
210
224
|
export { StaticNextDateRangePicker };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { DateOrTimeView } from '@mui/x-date-pickers/internals';
|
|
3
|
+
import { DateRangeCalendarProps } from '../DateRangeCalendar';
|
|
4
|
+
export interface DateRangeViewRendererProps<TDate, TView extends DateOrTimeView> extends DateRangeCalendarProps<TDate> {
|
|
5
|
+
view: TView;
|
|
6
|
+
onViewChange?: (view: TView) => void;
|
|
7
|
+
views: readonly TView[];
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* We don't pass all the props down to `DateRangeCalendar`,
|
|
11
|
+
* because otherwise some unwanted props would be passed to the HTML element.
|
|
12
|
+
*/
|
|
13
|
+
export declare const renderDateRangeViewCalendar: <TDate extends unknown>({ value, defaultValue, onChange, className, classes, disableFuture, disablePast, minDate, maxDate, shouldDisableDate, reduceAnimations, onMonthChange, defaultCalendarMonth, rangePosition, onRangePositionChange, calendars, components, componentsProps, loading, renderLoading, disableHighlightToday, readOnly, disabled, showDaysOutsideCurrentMonth, dayOfWeekFormatter, disableAutoMonthSwitching, sx, autoFocus, fixedWeekNumber, disableDragEditing, displayWeekNumber, }: DateRangeViewRendererProps<TDate, any>) => JSX.Element;
|
package/{internal/utils/viewRenderers.js → dateRangeViewRenderers/dateRangeViewRenderers.js}
RENAMED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { DateRangeCalendar } from '
|
|
3
|
-
|
|
2
|
+
import { DateRangeCalendar } from '../DateRangeCalendar';
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
4
|
/**
|
|
5
5
|
* We don't pass all the props down to `DateRangeCalendar`,
|
|
6
6
|
* because otherwise some unwanted props would be passed to the HTML element.
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
export const renderDateRangeView = ({
|
|
8
|
+
export const renderDateRangeViewCalendar = ({
|
|
10
9
|
value,
|
|
11
10
|
defaultValue,
|
|
12
11
|
onChange,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { renderDateRangeViewCalendar } from './dateRangeViewRenderers';
|
package/index.d.ts
CHANGED
|
@@ -9,10 +9,11 @@ export * from './MultiInputDateRangeField';
|
|
|
9
9
|
export * from './MultiInputTimeRangeField';
|
|
10
10
|
export * from './MultiInputDateTimeRangeField';
|
|
11
11
|
export * from './SingleInputDateRangeField';
|
|
12
|
-
export type {
|
|
12
|
+
export type { RangeFieldSection } from './internal/models/fields';
|
|
13
13
|
export * from './DateRangeCalendar';
|
|
14
14
|
export * from './NextDateRangePicker';
|
|
15
15
|
export * from './DesktopNextDateRangePicker';
|
|
16
16
|
export * from './MobileNextDateRangePicker';
|
|
17
17
|
export * from './StaticNextDateRangePicker';
|
|
18
|
+
export * from './dateRangeViewRenderers';
|
|
18
19
|
export type { DateRangeValidationError } from './internal/hooks/validation/useDateRangeValidation';
|
package/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MUI v6.0.0-alpha.
|
|
1
|
+
/** @license MUI v6.0.0-alpha.13
|
|
2
2
|
*
|
|
3
3
|
* This source code is licensed under the MIT license found in the
|
|
4
4
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -23,4 +23,7 @@ export * from './DateRangeCalendar';
|
|
|
23
23
|
export * from './NextDateRangePicker';
|
|
24
24
|
export * from './DesktopNextDateRangePicker';
|
|
25
25
|
export * from './MobileNextDateRangePicker';
|
|
26
|
-
export * from './StaticNextDateRangePicker';
|
|
26
|
+
export * from './StaticNextDateRangePicker';
|
|
27
|
+
|
|
28
|
+
// View renderers
|
|
29
|
+
export * from './dateRangeViewRenderers';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DateOrTimeView } from '@mui/x-date-pickers/internals';
|
|
3
3
|
import { UseDesktopRangePickerParams, UseDesktopRangePickerProps } from './useDesktopRangePicker.types';
|
|
4
|
-
export declare const useDesktopRangePicker: <TDate, TView extends DateOrTimeView, TExternalProps extends UseDesktopRangePickerProps<TDate, TView, any>>({ props, valueManager,
|
|
4
|
+
export declare const useDesktopRangePicker: <TDate, TView extends DateOrTimeView, TExternalProps extends UseDesktopRangePickerProps<TDate, TView, any, TExternalProps>>({ props, valueManager, validator, }: UseDesktopRangePickerParams<TDate, TView, TExternalProps>) => {
|
|
5
5
|
renderPicker: () => JSX.Element;
|
|
6
6
|
};
|