@mui/x-date-pickers 7.11.0 → 7.12.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 +5 -2
- package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +4 -4
- package/AdapterDateFnsBase/AdapterDateFnsBase.js +5 -9
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +0 -1
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +5 -5
- package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts +0 -1
- package/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +8 -8
- package/AdapterDateFnsV3/AdapterDateFnsV3.js +8 -5
- package/AdapterDayjs/AdapterDayjs.js +6 -4
- package/AdapterLuxon/AdapterLuxon.js +1 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +1 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
- package/CHANGELOG.md +194 -4
- package/DateCalendar/DateCalendar.js +3 -1
- package/DateCalendar/DateCalendar.types.d.ts +1 -1
- package/DateCalendar/DayCalendar.js +1 -1
- package/DateField/DateField.js +3 -1
- package/DateField/DateField.types.d.ts +1 -1
- package/DatePicker/DatePicker.js +2 -0
- package/DatePicker/DatePickerToolbar.js +1 -1
- package/DateTimeField/DateTimeField.js +3 -1
- package/DateTimeField/DateTimeField.types.d.ts +1 -1
- package/DateTimePicker/DateTimePicker.js +2 -0
- package/DayCalendarSkeleton/DayCalendarSkeleton.js +1 -1
- package/DesktopDatePicker/DesktopDatePicker.js +3 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -1
- package/DesktopTimePicker/DesktopTimePicker.js +1 -1
- package/DigitalClock/DigitalClock.js +1 -1
- package/DigitalClock/DigitalClock.types.d.ts +1 -1
- package/MobileDatePicker/MobileDatePicker.js +3 -1
- package/MobileDateTimePicker/MobileDateTimePicker.js +3 -1
- package/MobileTimePicker/MobileTimePicker.js +1 -1
- package/MonthCalendar/MonthCalendar.js +2 -0
- package/MonthCalendar/PickersMonth.js +1 -1
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.types.d.ts +1 -1
- package/PickersCalendarHeader/PickersCalendarHeader.js +2 -2
- package/PickersCalendarHeader/PickersCalendarHeader.types.d.ts +1 -1
- package/PickersLayout/PickersLayout.js +1 -1
- package/PickersLayout/PickersLayout.types.d.ts +1 -1
- package/PickersLayout/usePickerLayout.js +2 -2
- package/PickersSectionList/PickersSectionList.js +1 -1
- package/PickersSectionList/PickersSectionList.types.d.ts +1 -1
- package/PickersTextField/PickersInputBase/PickersInputBase.js +1 -1
- package/StaticDatePicker/StaticDatePicker.js +2 -0
- package/StaticDateTimePicker/StaticDateTimePicker.js +2 -0
- package/TimeClock/ClockNumber.js +1 -1
- package/TimeClock/ClockPointer.js +1 -1
- package/TimeField/TimeField.js +1 -1
- package/TimeField/TimeField.types.d.ts +1 -1
- package/TimePicker/TimePickerToolbar.js +1 -1
- package/YearCalendar/PickersYear.js +1 -1
- package/YearCalendar/YearCalendar.js +2 -0
- package/hooks/useClearableField.d.ts +1 -1
- package/hooks/useClearableField.js +1 -1
- package/index.js +1 -1
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -2
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +1 -1
- package/internals/components/PickersPopper.d.ts +2 -2
- package/internals/components/PickersPopper.js +1 -1
- package/internals/components/PickersToolbar.js +1 -1
- package/internals/components/PickersToolbarButton.js +1 -1
- package/internals/components/PickersToolbarText.js +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +1 -1
- package/internals/hooks/useField/useField.js +3 -1
- package/internals/hooks/useField/useField.utils.js +1 -1
- package/internals/hooks/useField/useFieldV6TextField.js +3 -2
- package/internals/hooks/useField/useFieldV7TextField.js +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.js +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +1 -1
- package/internals/hooks/usePicker/usePicker.js +2 -3
- package/internals/index.d.ts +1 -1
- package/internals/index.js +1 -1
- package/internals/models/validation.d.ts +2 -0
- package/internals/utils/warning.d.ts +2 -4
- package/internals/utils/warning.js +17 -24
- package/locales/fiFI.js +2 -2
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/nnNO.d.ts +80 -0
- package/locales/nnNO.js +73 -0
- package/modern/AdapterDateFns/AdapterDateFns.js +5 -2
- package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +5 -9
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +5 -5
- package/modern/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +8 -8
- package/modern/AdapterDateFnsV3/AdapterDateFnsV3.js +8 -5
- package/modern/AdapterDayjs/AdapterDayjs.js +6 -4
- package/modern/AdapterLuxon/AdapterLuxon.js +1 -0
- package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
- package/modern/DateCalendar/DateCalendar.js +3 -1
- package/modern/DateCalendar/DayCalendar.js +1 -1
- package/modern/DateField/DateField.js +3 -1
- package/modern/DatePicker/DatePicker.js +2 -0
- package/modern/DatePicker/DatePickerToolbar.js +1 -1
- package/modern/DateTimeField/DateTimeField.js +3 -1
- package/modern/DateTimePicker/DateTimePicker.js +2 -0
- package/modern/DayCalendarSkeleton/DayCalendarSkeleton.js +1 -1
- package/modern/DesktopDatePicker/DesktopDatePicker.js +3 -1
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +3 -1
- package/modern/DesktopTimePicker/DesktopTimePicker.js +1 -1
- package/modern/DigitalClock/DigitalClock.js +1 -1
- package/modern/MobileDatePicker/MobileDatePicker.js +3 -1
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +3 -1
- package/modern/MobileTimePicker/MobileTimePicker.js +1 -1
- package/modern/MonthCalendar/MonthCalendar.js +2 -0
- package/modern/MonthCalendar/PickersMonth.js +1 -1
- package/modern/PickersCalendarHeader/PickersCalendarHeader.js +2 -2
- package/modern/PickersLayout/PickersLayout.js +1 -1
- package/modern/PickersLayout/usePickerLayout.js +2 -2
- package/modern/PickersSectionList/PickersSectionList.js +1 -1
- package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +1 -1
- package/modern/StaticDatePicker/StaticDatePicker.js +2 -0
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +2 -0
- package/modern/TimeClock/ClockNumber.js +1 -1
- package/modern/TimeClock/ClockPointer.js +1 -1
- package/modern/TimeField/TimeField.js +1 -1
- package/modern/TimePicker/TimePickerToolbar.js +1 -1
- package/modern/YearCalendar/PickersYear.js +1 -1
- package/modern/YearCalendar/YearCalendar.js +2 -0
- package/modern/hooks/useClearableField.js +1 -1
- package/modern/index.js +1 -1
- package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -2
- package/modern/internals/components/PickersPopper.js +1 -1
- package/modern/internals/components/PickersToolbar.js +1 -1
- package/modern/internals/components/PickersToolbarButton.js +1 -1
- package/modern/internals/components/PickersToolbarText.js +1 -1
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +1 -1
- package/modern/internals/hooks/useField/useField.js +3 -1
- package/modern/internals/hooks/useField/useField.utils.js +1 -1
- package/modern/internals/hooks/useField/useFieldV6TextField.js +3 -2
- package/modern/internals/hooks/useField/useFieldV7TextField.js +1 -1
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +1 -1
- package/modern/internals/hooks/usePicker/usePicker.js +2 -3
- package/modern/internals/index.js +1 -1
- package/modern/internals/utils/warning.js +17 -24
- package/modern/locales/fiFI.js +2 -2
- package/modern/locales/index.js +1 -0
- package/modern/locales/nnNO.js +73 -0
- package/node/AdapterDateFns/AdapterDateFns.js +5 -2
- package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +5 -9
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +5 -5
- package/node/AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js +8 -8
- package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +8 -5
- package/node/AdapterDayjs/AdapterDayjs.js +5 -3
- package/node/AdapterLuxon/AdapterLuxon.js +1 -0
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
- package/node/DateCalendar/DateCalendar.js +10 -8
- package/node/DateCalendar/DayCalendar.js +5 -5
- package/node/DateField/DateField.js +6 -4
- package/node/DatePicker/DatePicker.js +2 -0
- package/node/DatePicker/DatePickerToolbar.js +2 -2
- package/node/DateTimeField/DateTimeField.js +6 -4
- package/node/DateTimePicker/DateTimePicker.js +2 -0
- package/node/DayCalendarSkeleton/DayCalendarSkeleton.js +2 -2
- package/node/DesktopDatePicker/DesktopDatePicker.js +6 -4
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +7 -5
- package/node/DesktopTimePicker/DesktopTimePicker.js +4 -4
- package/node/DigitalClock/DigitalClock.js +2 -2
- package/node/MobileDatePicker/MobileDatePicker.js +6 -4
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +6 -4
- package/node/MobileTimePicker/MobileTimePicker.js +4 -4
- package/node/MonthCalendar/MonthCalendar.js +2 -0
- package/node/MonthCalendar/PickersMonth.js +2 -2
- package/node/PickersCalendarHeader/PickersCalendarHeader.js +5 -5
- package/node/PickersLayout/PickersLayout.js +2 -2
- package/node/PickersLayout/usePickerLayout.js +6 -6
- package/node/PickersSectionList/PickersSectionList.js +6 -6
- package/node/PickersTextField/PickersInputBase/PickersInputBase.js +2 -2
- package/node/StaticDatePicker/StaticDatePicker.js +2 -0
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +2 -0
- package/node/TimeClock/ClockNumber.js +2 -2
- package/node/TimeClock/ClockPointer.js +2 -2
- package/node/TimeField/TimeField.js +4 -4
- package/node/TimePicker/TimePickerToolbar.js +6 -6
- package/node/YearCalendar/PickersYear.js +2 -2
- package/node/YearCalendar/YearCalendar.js +2 -0
- package/node/hooks/useClearableField.js +3 -3
- package/node/index.js +1 -1
- package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +7 -7
- package/node/internals/components/PickersPopper.js +13 -13
- package/node/internals/components/PickersToolbar.js +2 -2
- package/node/internals/components/PickersToolbarButton.js +2 -2
- package/node/internals/components/PickersToolbarText.js +2 -2
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +4 -4
- package/node/internals/hooks/useField/useField.js +3 -1
- package/node/internals/hooks/useField/useField.utils.js +1 -1
- package/node/internals/hooks/useField/useFieldV6TextField.js +3 -2
- package/node/internals/hooks/useField/useFieldV7TextField.js +1 -1
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +4 -4
- package/node/internals/hooks/usePicker/usePicker.js +1 -2
- package/node/internals/index.js +6 -12
- package/node/internals/utils/warning.js +19 -27
- package/node/locales/fiFI.js +2 -2
- package/node/locales/index.js +11 -0
- package/node/locales/nnNO.js +79 -0
- package/package.json +4 -5
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import
|
|
4
|
+
import resolveComponentProps from '@mui/utils/resolveComponentProps';
|
|
5
5
|
import { refType } from '@mui/utils';
|
|
6
6
|
import { singleItemValueManager } from '../internals/utils/valueManagers';
|
|
7
7
|
import { DateTimeField } from '../DateTimeField';
|
|
@@ -187,6 +187,7 @@ MobileDateTimePicker.propTypes = {
|
|
|
187
187
|
localeText: PropTypes.object,
|
|
188
188
|
/**
|
|
189
189
|
* Maximal selectable date.
|
|
190
|
+
* @default 2099-12-31
|
|
190
191
|
*/
|
|
191
192
|
maxDate: PropTypes.object,
|
|
192
193
|
/**
|
|
@@ -200,6 +201,7 @@ MobileDateTimePicker.propTypes = {
|
|
|
200
201
|
maxTime: PropTypes.object,
|
|
201
202
|
/**
|
|
202
203
|
* Minimal selectable date.
|
|
204
|
+
* @default 1900-01-01
|
|
203
205
|
*/
|
|
204
206
|
minDate: PropTypes.object,
|
|
205
207
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import
|
|
4
|
+
import resolveComponentProps from '@mui/utils/resolveComponentProps';
|
|
5
5
|
import { refType } from '@mui/utils';
|
|
6
6
|
import { singleItemValueManager } from '../internals/utils/valueManagers';
|
|
7
7
|
import { TimeField } from '../TimeField';
|
|
@@ -272,10 +272,12 @@ process.env.NODE_ENV !== "production" ? MonthCalendar.propTypes = {
|
|
|
272
272
|
hasFocus: PropTypes.bool,
|
|
273
273
|
/**
|
|
274
274
|
* Maximal selectable date.
|
|
275
|
+
* @default 2099-12-31
|
|
275
276
|
*/
|
|
276
277
|
maxDate: PropTypes.object,
|
|
277
278
|
/**
|
|
278
279
|
* Minimal selectable date.
|
|
280
|
+
* @default 1900-01-01
|
|
279
281
|
*/
|
|
280
282
|
minDate: PropTypes.object,
|
|
281
283
|
/**
|
|
@@ -4,7 +4,7 @@ const _excluded = ["autoFocus", "className", "children", "disabled", "selected",
|
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import { styled, alpha, useThemeProps } from '@mui/material/styles';
|
|
7
|
-
import
|
|
7
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
8
8
|
import composeClasses from '@mui/utils/composeClasses';
|
|
9
9
|
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
|
|
10
10
|
import { getPickersMonthUtilityClass, pickersMonthClasses } from './pickersMonthClasses';
|
|
@@ -7,8 +7,8 @@ import PropTypes from 'prop-types';
|
|
|
7
7
|
import clsx from 'clsx';
|
|
8
8
|
import Fade from '@mui/material/Fade';
|
|
9
9
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
10
|
-
import
|
|
11
|
-
import
|
|
10
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
11
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
12
12
|
import IconButton from '@mui/material/IconButton';
|
|
13
13
|
import { usePickersTranslations } from '../hooks/usePickersTranslations';
|
|
14
14
|
import { useUtils } from '../internals/hooks/useUtils';
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import clsx from 'clsx';
|
|
4
4
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
5
|
-
import
|
|
5
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
6
6
|
import { pickersLayoutClasses, getPickersLayoutUtilityClass } from './pickersLayoutClasses';
|
|
7
7
|
import usePickerLayout from './usePickerLayout';
|
|
8
8
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import
|
|
4
|
-
import
|
|
3
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
4
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
5
5
|
import { PickersActionBar } from '../PickersActionBar';
|
|
6
6
|
import { getPickersLayoutUtilityClass } from './pickersLayoutClasses';
|
|
7
7
|
import { PickersShortcuts } from '../PickersShortcuts';
|
|
@@ -3,7 +3,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
3
3
|
const _excluded = ["slots", "slotProps", "elements", "sectionListRef"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
|
-
import
|
|
6
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
7
7
|
import composeClasses from '@mui/utils/composeClasses';
|
|
8
8
|
import useForkRef from '@mui/utils/useForkRef';
|
|
9
9
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
@@ -9,7 +9,7 @@ import useForkRef from '@mui/utils/useForkRef';
|
|
|
9
9
|
import { refType } from '@mui/utils';
|
|
10
10
|
import composeClasses from '@mui/utils/composeClasses';
|
|
11
11
|
import capitalize from '@mui/utils/capitalize';
|
|
12
|
-
import
|
|
12
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
13
13
|
import visuallyHidden from '@mui/utils/visuallyHidden';
|
|
14
14
|
import { useRtl } from '@mui/system/RtlProvider';
|
|
15
15
|
import { pickersInputBaseClasses, getPickersInputBaseUtilityClass } from './pickersInputBaseClasses';
|
|
@@ -119,10 +119,12 @@ StaticDatePicker.propTypes = {
|
|
|
119
119
|
localeText: PropTypes.object,
|
|
120
120
|
/**
|
|
121
121
|
* Maximal selectable date.
|
|
122
|
+
* @default 2099-12-31
|
|
122
123
|
*/
|
|
123
124
|
maxDate: PropTypes.object,
|
|
124
125
|
/**
|
|
125
126
|
* Minimal selectable date.
|
|
127
|
+
* @default 1900-01-01
|
|
126
128
|
*/
|
|
127
129
|
minDate: PropTypes.object,
|
|
128
130
|
/**
|
|
@@ -144,6 +144,7 @@ StaticDateTimePicker.propTypes = {
|
|
|
144
144
|
localeText: PropTypes.object,
|
|
145
145
|
/**
|
|
146
146
|
* Maximal selectable date.
|
|
147
|
+
* @default 2099-12-31
|
|
147
148
|
*/
|
|
148
149
|
maxDate: PropTypes.object,
|
|
149
150
|
/**
|
|
@@ -157,6 +158,7 @@ StaticDateTimePicker.propTypes = {
|
|
|
157
158
|
maxTime: PropTypes.object,
|
|
158
159
|
/**
|
|
159
160
|
* Minimal selectable date.
|
|
161
|
+
* @default 1900-01-01
|
|
160
162
|
*/
|
|
161
163
|
minDate: PropTypes.object,
|
|
162
164
|
/**
|
|
@@ -4,7 +4,7 @@ const _excluded = ["className", "disabled", "index", "inner", "label", "selected
|
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
7
|
-
import
|
|
7
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
8
8
|
import { CLOCK_WIDTH, CLOCK_HOUR_WIDTH } from './shared';
|
|
9
9
|
import { getClockNumberUtilityClass, clockNumberClasses } from './clockNumberClasses';
|
|
10
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -4,7 +4,7 @@ const _excluded = ["className", "hasSelected", "isInner", "type", "viewValue"];
|
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
7
|
-
import
|
|
7
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
8
8
|
import { CLOCK_WIDTH, CLOCK_HOUR_WIDTH } from './shared';
|
|
9
9
|
import { getClockPointerUtilityClass } from './clockPointerClasses';
|
|
10
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -5,7 +5,7 @@ import * as React from 'react';
|
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import MuiTextField from '@mui/material/TextField';
|
|
7
7
|
import { useThemeProps } from '@mui/material/styles';
|
|
8
|
-
import
|
|
8
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
9
9
|
import { refType } from '@mui/utils';
|
|
10
10
|
import { useTimeField } from './useTimeField';
|
|
11
11
|
import { useClearableField } from '../hooks';
|
|
@@ -6,7 +6,7 @@ import clsx from 'clsx';
|
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
7
|
import { useRtl } from '@mui/system/RtlProvider';
|
|
8
8
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
9
|
-
import
|
|
9
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
10
10
|
import { PickersToolbarText } from '../internals/components/PickersToolbarText';
|
|
11
11
|
import { PickersToolbarButton } from '../internals/components/PickersToolbarButton';
|
|
12
12
|
import { PickersToolbar } from '../internals/components/PickersToolbar';
|
|
@@ -4,7 +4,7 @@ const _excluded = ["autoFocus", "className", "children", "disabled", "selected",
|
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import { styled, alpha, useThemeProps } from '@mui/material/styles';
|
|
7
|
-
import
|
|
7
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
8
8
|
import composeClasses from '@mui/utils/composeClasses';
|
|
9
9
|
import useEnhancedEffect from '@mui/utils/useEnhancedEffect';
|
|
10
10
|
import { getPickersYearUtilityClass, pickersYearClasses } from './pickersYearClasses';
|
|
@@ -297,10 +297,12 @@ process.env.NODE_ENV !== "production" ? YearCalendar.propTypes = {
|
|
|
297
297
|
hasFocus: PropTypes.bool,
|
|
298
298
|
/**
|
|
299
299
|
* Maximal selectable date.
|
|
300
|
+
* @default 2099-12-31
|
|
300
301
|
*/
|
|
301
302
|
maxDate: PropTypes.object,
|
|
302
303
|
/**
|
|
303
304
|
* Minimal selectable date.
|
|
305
|
+
* @default 1900-01-01
|
|
304
306
|
*/
|
|
305
307
|
minDate: PropTypes.object,
|
|
306
308
|
/**
|
|
@@ -3,7 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
const _excluded = ["clearable", "onClear", "InputProps", "sx", "slots", "slotProps"],
|
|
4
4
|
_excluded2 = ["ownerState"];
|
|
5
5
|
import * as React from 'react';
|
|
6
|
-
import
|
|
6
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
7
7
|
import MuiIconButton from '@mui/material/IconButton';
|
|
8
8
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
9
9
|
import { ClearIcon } from '../icons';
|
package/modern/index.js
CHANGED
|
@@ -8,8 +8,8 @@ import clsx from 'clsx';
|
|
|
8
8
|
import Typography from '@mui/material/Typography';
|
|
9
9
|
import { useRtl } from '@mui/system/RtlProvider';
|
|
10
10
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
11
|
-
import
|
|
12
|
-
import
|
|
11
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
12
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
13
13
|
import IconButton from '@mui/material/IconButton';
|
|
14
14
|
import { ArrowLeftIcon, ArrowRightIcon } from '../../../icons';
|
|
15
15
|
import { getPickersArrowSwitcherUtilityClass } from './pickersArrowSwitcherClasses';
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
const _excluded = ["PaperComponent", "popperPlacement", "ownerState", "children", "paperSlotProps", "paperClasses", "onPaperClick", "onPaperTouchStart"];
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import
|
|
5
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
6
6
|
import Grow from '@mui/material/Grow';
|
|
7
7
|
import Fade from '@mui/material/Fade';
|
|
8
8
|
import MuiPaper from '@mui/material/Paper';
|
|
@@ -5,7 +5,7 @@ import * as React from 'react';
|
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import Typography from '@mui/material/Typography';
|
|
7
7
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
8
|
-
import
|
|
8
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
9
9
|
import { getPickersToolbarUtilityClass } from './pickersToolbarClasses';
|
|
10
10
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
11
|
const useUtilityClasses = ownerState => {
|
|
@@ -5,7 +5,7 @@ import * as React from 'react';
|
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import Button from '@mui/material/Button';
|
|
7
7
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
8
|
-
import
|
|
8
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
9
9
|
import { PickersToolbarText } from './PickersToolbarText';
|
|
10
10
|
import { getPickersToolbarUtilityClass } from './pickersToolbarClasses';
|
|
11
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -5,7 +5,7 @@ import * as React from 'react';
|
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import Typography from '@mui/material/Typography';
|
|
7
7
|
import { styled, useThemeProps } from '@mui/material/styles';
|
|
8
|
-
import
|
|
8
|
+
import composeClasses from '@mui/utils/composeClasses';
|
|
9
9
|
import { getPickersToolbarTextUtilityClass, pickersToolbarTextClasses } from './pickersToolbarTextClasses';
|
|
10
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
11
|
const useUtilityClasses = ownerState => {
|
|
@@ -4,7 +4,7 @@ const _excluded = ["props", "getOpenDialogAriaText"],
|
|
|
4
4
|
_excluded2 = ["ownerState"],
|
|
5
5
|
_excluded3 = ["ownerState"];
|
|
6
6
|
import * as React from 'react';
|
|
7
|
-
import
|
|
7
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
8
8
|
import MuiInputAdornment from '@mui/material/InputAdornment';
|
|
9
9
|
import IconButton from '@mui/material/IconButton';
|
|
10
10
|
import useForkRef from '@mui/utils/useForkRef';
|
|
@@ -507,7 +507,7 @@ export const mergeDateIntoReferenceDate = (utils, timezone, dateToTransferFrom,
|
|
|
507
507
|
}
|
|
508
508
|
return mergedDate;
|
|
509
509
|
}, referenceDate);
|
|
510
|
-
export const isAndroid = () => navigator.userAgent.toLowerCase().
|
|
510
|
+
export const isAndroid = () => navigator.userAgent.toLowerCase().includes('android');
|
|
511
511
|
|
|
512
512
|
// TODO v8: Remove if we drop the v6 TextField approach.
|
|
513
513
|
export const getSectionOrder = (sections, shouldApplyRTL) => {
|
|
@@ -47,7 +47,8 @@ export const useFieldV6TextField = params => {
|
|
|
47
47
|
placeholder: inPlaceholder
|
|
48
48
|
},
|
|
49
49
|
internalProps: {
|
|
50
|
-
readOnly = false
|
|
50
|
+
readOnly = false,
|
|
51
|
+
disabled = false
|
|
51
52
|
},
|
|
52
53
|
parsedSelectedSections,
|
|
53
54
|
activeSectionIndex,
|
|
@@ -188,7 +189,7 @@ export const useFieldV6TextField = params => {
|
|
|
188
189
|
|
|
189
190
|
// prevent default to avoid the input `onChange` handler being called
|
|
190
191
|
event.preventDefault();
|
|
191
|
-
if (readOnly) {
|
|
192
|
+
if (readOnly || disabled) {
|
|
192
193
|
return;
|
|
193
194
|
}
|
|
194
195
|
const pastedValue = event.clipboardData.getData('text');
|
|
@@ -236,7 +236,7 @@ export const useFieldV7TextField = params => {
|
|
|
236
236
|
const handleInputContentPaste = useEventCallback(event => {
|
|
237
237
|
// prevent default to avoid the input `onInput` handler being called
|
|
238
238
|
event.preventDefault();
|
|
239
|
-
if (readOnly || typeof parsedSelectedSections !== 'number') {
|
|
239
|
+
if (readOnly || disabled || typeof parsedSelectedSections !== 'number') {
|
|
240
240
|
return;
|
|
241
241
|
}
|
|
242
242
|
const activeSection = state.sections[parsedSelectedSections];
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
const _excluded = ["props", "getOpenDialogAriaText"];
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import
|
|
5
|
+
import useSlotProps from '@mui/utils/useSlotProps';
|
|
6
6
|
import useForkRef from '@mui/utils/useForkRef';
|
|
7
7
|
import useId from '@mui/utils/useId';
|
|
8
8
|
import { PickersModalDialog } from '../../components/PickersModalDialog';
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { usePickerValue } from './usePickerValue';
|
|
2
2
|
import { usePickerViews } from './usePickerViews';
|
|
3
3
|
import { usePickerLayoutProps } from './usePickerLayoutProps';
|
|
4
|
-
import {
|
|
5
|
-
const warnRenderInputIsDefined = buildWarning(['The `renderInput` prop has been removed in version 6.0 of the Date and Time Pickers.', 'You can replace it with the `textField` component slot in most cases.', 'For more information, please have a look at the migration guide (https://mui.com/x/migration/migration-pickers-v5/#input-renderer-required-in-v5).']);
|
|
4
|
+
import { warnOnce } from '../../utils/warning';
|
|
6
5
|
export const usePicker = ({
|
|
7
6
|
props,
|
|
8
7
|
valueManager,
|
|
@@ -16,7 +15,7 @@ export const usePicker = ({
|
|
|
16
15
|
}) => {
|
|
17
16
|
if (process.env.NODE_ENV !== 'production') {
|
|
18
17
|
if (props.renderInput != null) {
|
|
19
|
-
|
|
18
|
+
warnOnce(['MUI X: The `renderInput` prop has been removed in version 6.0 of the Date and Time Pickers.', 'You can replace it with the `textField` component slot in most cases.', 'For more information, please have a look at the migration guide (https://mui.com/x/migration/migration-pickers-v5/#input-renderer-required-in-v5).']);
|
|
20
19
|
}
|
|
21
20
|
}
|
|
22
21
|
const pickerValueResponse = usePickerValue({
|
|
@@ -30,7 +30,7 @@ export { validateDate } from './utils/validation/validateDate';
|
|
|
30
30
|
export { validateDateTime } from './utils/validation/validateDateTime';
|
|
31
31
|
export { validateTime } from './utils/validation/validateTime';
|
|
32
32
|
export { applyDefaultViewProps } from './utils/views';
|
|
33
|
-
export {
|
|
33
|
+
export { warnOnce } from './utils/warning';
|
|
34
34
|
export { DayCalendar } from '../DateCalendar/DayCalendar';
|
|
35
35
|
export { useCalendarState } from '../DateCalendar/useCalendarState';
|
|
36
36
|
export { isInternalTimeView, isTimeView } from './utils/time-utils';
|
|
@@ -1,28 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
const warnedOnceCache = new Set();
|
|
2
|
+
|
|
3
|
+
// TODO move to @mui/x-internals
|
|
4
|
+
// TODO eventually move to @base_ui/internals. Base UI, etc. too need this helper.
|
|
5
|
+
export function warnOnce(message, gravity = 'warning') {
|
|
3
6
|
if (process.env.NODE_ENV === 'production') {
|
|
4
|
-
return
|
|
7
|
+
return;
|
|
5
8
|
}
|
|
6
9
|
const cleanMessage = Array.isArray(message) ? message.join('\n') : message;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
if (
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
if (!warnedOnceCache.has(cleanMessage)) {
|
|
11
|
+
warnedOnceCache.add(cleanMessage);
|
|
12
|
+
if (gravity === 'error') {
|
|
13
|
+
console.error(cleanMessage);
|
|
14
|
+
} else {
|
|
15
|
+
console.warn(cleanMessage);
|
|
12
16
|
}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return () => {
|
|
19
|
-
if (!alreadyWarned) {
|
|
20
|
-
alreadyWarned = true;
|
|
21
|
-
if (gravity === 'error') {
|
|
22
|
-
console.error(cleanMessage);
|
|
23
|
-
} else {
|
|
24
|
-
console.warn(cleanMessage);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export function clearWarningsCache() {
|
|
20
|
+
warnedOnceCache.clear();
|
|
21
|
+
}
|
package/modern/locales/fiFI.js
CHANGED
|
@@ -10,8 +10,8 @@ const fiFIPickers = {
|
|
|
10
10
|
previousMonth: 'Edellinen kuukausi',
|
|
11
11
|
nextMonth: 'Seuraava kuukausi',
|
|
12
12
|
// View navigation
|
|
13
|
-
openPreviousView: 'Avaa edellinen
|
|
14
|
-
openNextView: 'Avaa seuraava
|
|
13
|
+
openPreviousView: 'Avaa edellinen näkymä',
|
|
14
|
+
openNextView: 'Avaa seuraava näkymä',
|
|
15
15
|
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? 'vuosinäkymä on auki, vaihda kalenterinäkymään' : 'kalenterinäkymä on auki, vaihda vuosinäkymään',
|
|
16
16
|
// DateRange labels
|
|
17
17
|
start: 'Alku',
|
package/modern/locales/index.js
CHANGED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { getPickersLocalization } from './utils/getPickersLocalization';
|
|
2
|
+
const timeViews = {
|
|
3
|
+
hours: 'timar',
|
|
4
|
+
minutes: 'minuttar',
|
|
5
|
+
seconds: 'sekundar',
|
|
6
|
+
meridiem: 'meridiem'
|
|
7
|
+
};
|
|
8
|
+
const nnNOPickers = {
|
|
9
|
+
// Calendar navigation
|
|
10
|
+
previousMonth: 'Forrige månad',
|
|
11
|
+
nextMonth: 'Neste månad',
|
|
12
|
+
// View navigation
|
|
13
|
+
openPreviousView: 'Opne forrige visning',
|
|
14
|
+
openNextView: 'Opne neste visning',
|
|
15
|
+
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? 'årsvisning er open, byt til kalendervisning' : 'kalendervisning er open, byt til årsvisning',
|
|
16
|
+
// DateRange labels
|
|
17
|
+
start: 'Start',
|
|
18
|
+
end: 'Slutt',
|
|
19
|
+
startDate: 'Startdato',
|
|
20
|
+
startTime: 'Starttid',
|
|
21
|
+
endDate: 'Sluttdato',
|
|
22
|
+
endTime: 'Slutttid',
|
|
23
|
+
// Action bar
|
|
24
|
+
cancelButtonLabel: 'Avbryt',
|
|
25
|
+
clearButtonLabel: 'Fjern',
|
|
26
|
+
okButtonLabel: 'OK',
|
|
27
|
+
todayButtonLabel: 'I dag',
|
|
28
|
+
// Toolbar titles
|
|
29
|
+
datePickerToolbarTitle: 'Vel dato',
|
|
30
|
+
dateTimePickerToolbarTitle: 'Vel dato & klokkeslett',
|
|
31
|
+
timePickerToolbarTitle: 'Vel klokkeslett',
|
|
32
|
+
dateRangePickerToolbarTitle: 'Vel datoperiode',
|
|
33
|
+
// Clock labels
|
|
34
|
+
clockLabelText: (view, time, adapter) => `Vel ${timeViews[view]}. ${time === null ? 'Ingen tid vald' : `Vald tid er ${adapter.format(time, 'fullTime')}`}`,
|
|
35
|
+
hoursClockNumberText: hours => `${hours} timar`,
|
|
36
|
+
minutesClockNumberText: minutes => `${minutes} minuttar`,
|
|
37
|
+
secondsClockNumberText: seconds => `${seconds} sekundar`,
|
|
38
|
+
// Digital clock labels
|
|
39
|
+
selectViewText: view => `Vel ${timeViews[view]}`,
|
|
40
|
+
// Calendar labels
|
|
41
|
+
calendarWeekNumberHeaderLabel: 'Vekenummer',
|
|
42
|
+
calendarWeekNumberHeaderText: '#',
|
|
43
|
+
calendarWeekNumberAriaLabelText: weekNumber => `Veke ${weekNumber}`,
|
|
44
|
+
calendarWeekNumberText: weekNumber => `${weekNumber}`,
|
|
45
|
+
// Open picker labels
|
|
46
|
+
openDatePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vel dato, vald dato er ${utils.format(value, 'fullDate')}` : 'Vel dato',
|
|
47
|
+
openTimePickerDialogue: (value, utils) => value !== null && utils.isValid(value) ? `Vel tid, vald tid er ${utils.format(value, 'fullTime')}` : 'Vel tid',
|
|
48
|
+
fieldClearLabel: 'Fjern verdi',
|
|
49
|
+
// Table labels
|
|
50
|
+
timeTableLabel: 'vel tid',
|
|
51
|
+
dateTableLabel: 'vel dato',
|
|
52
|
+
// Field section placeholders
|
|
53
|
+
fieldYearPlaceholder: params => 'Å'.repeat(params.digitAmount),
|
|
54
|
+
fieldMonthPlaceholder: params => params.contentType === 'letter' ? 'MMMM' : 'MM',
|
|
55
|
+
fieldDayPlaceholder: () => 'DD',
|
|
56
|
+
fieldWeekDayPlaceholder: params => params.contentType === 'letter' ? 'EEEE' : 'EE',
|
|
57
|
+
fieldHoursPlaceholder: () => 'tt',
|
|
58
|
+
fieldMinutesPlaceholder: () => 'mm',
|
|
59
|
+
fieldSecondsPlaceholder: () => 'ss',
|
|
60
|
+
fieldMeridiemPlaceholder: () => 'aa',
|
|
61
|
+
// View names
|
|
62
|
+
year: 'År',
|
|
63
|
+
month: 'Månad',
|
|
64
|
+
day: 'Dag',
|
|
65
|
+
weekDay: 'Vekedag',
|
|
66
|
+
hours: 'Timar',
|
|
67
|
+
minutes: 'Minuttar',
|
|
68
|
+
seconds: 'Sekundar',
|
|
69
|
+
meridiem: 'Meridiem',
|
|
70
|
+
// Common
|
|
71
|
+
empty: 'Tom'
|
|
72
|
+
};
|
|
73
|
+
export const nnNO = getPickersLocalization(nnNOPickers);
|
|
@@ -84,8 +84,11 @@ class AdapterDateFns extends _AdapterDateFnsBase.AdapterDateFnsBase {
|
|
|
84
84
|
locale,
|
|
85
85
|
formats
|
|
86
86
|
} = {}) {
|
|
87
|
-
|
|
88
|
-
|
|
87
|
+
/* istanbul ignore next */
|
|
88
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
89
|
+
if (typeof _addDays.default !== 'function') {
|
|
90
|
+
throw new Error(['MUI: The `date-fns` package v3.x is not compatible with this adapter.', 'Please, install v2.x of the package or use the `AdapterDateFnsV3` instead.'].join('\n'));
|
|
91
|
+
}
|
|
89
92
|
}
|
|
90
93
|
super({
|
|
91
94
|
locale: locale ?? _enUS.default,
|
|
@@ -256,19 +256,15 @@ class AdapterDateFnsBase {
|
|
|
256
256
|
return value;
|
|
257
257
|
};
|
|
258
258
|
this.getCurrentLocaleCode = () => {
|
|
259
|
-
|
|
259
|
+
// `code` is undefined only in `date-fns` types, but all locales have it
|
|
260
|
+
return this.locale.code;
|
|
260
261
|
};
|
|
261
262
|
// Note: date-fns input types are more lenient than this adapter, so we need to expose our more
|
|
262
263
|
// strict signature and delegate to the more lenient signature. Otherwise, we have downstream type errors upon usage.
|
|
263
264
|
this.is12HourCycleInCurrentLocale = () => {
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
}));
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
// By default, date-fns is using en-US locale with am/pm enabled
|
|
271
|
-
return true;
|
|
265
|
+
return /a/.test(this.locale.formatLong.time({
|
|
266
|
+
width: 'short'
|
|
267
|
+
}));
|
|
272
268
|
};
|
|
273
269
|
this.expandFormat = format => {
|
|
274
270
|
const longFormatRegexp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
|
|
@@ -122,8 +122,11 @@ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
|
|
|
122
122
|
locale,
|
|
123
123
|
formats
|
|
124
124
|
} = {}) {
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
/* istanbul ignore next */
|
|
126
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
127
|
+
if (typeof _addDays.default !== 'function') {
|
|
128
|
+
throw new Error(['MUI: The `date-fns-jalali` package v3.x is not compatible with this adapter.', 'Please, install v2.x of the package or use the `AdapterDateFnsJalaliV3` instead.'].join('\n'));
|
|
129
|
+
}
|
|
127
130
|
}
|
|
128
131
|
super({
|
|
129
132
|
locale: locale ?? _faIR.default,
|
|
@@ -141,9 +144,6 @@ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
|
|
|
141
144
|
locale: this.locale
|
|
142
145
|
});
|
|
143
146
|
};
|
|
144
|
-
this.getCurrentLocaleCode = () => {
|
|
145
|
-
return this.locale?.code || 'fa-IR';
|
|
146
|
-
};
|
|
147
147
|
this.isValid = value => {
|
|
148
148
|
if (value == null) {
|
|
149
149
|
return false;
|
|
@@ -124,11 +124,14 @@ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
|
|
|
124
124
|
locale,
|
|
125
125
|
formats
|
|
126
126
|
} = {}) {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
127
|
+
/* istanbul ignore next */
|
|
128
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
129
|
+
if (typeof _addDays.addDays !== 'function') {
|
|
130
|
+
throw new Error([`MUI: The \`date-fns-jalali\` package v2.x is not compatible with this adapter.`, 'Please, install v3.x of the package or use the `AdapterDateFnsJalali` instead.'].join('\n'));
|
|
131
|
+
}
|
|
132
|
+
if (!_format.longFormatters) {
|
|
133
|
+
throw new Error('MUI: The minimum supported `date-fns-jalali` package version compatible with this adapter is `3.2.x`.');
|
|
134
|
+
}
|
|
132
135
|
}
|
|
133
136
|
super({
|
|
134
137
|
locale: locale ?? _faIR.faIR,
|
|
@@ -147,9 +150,6 @@ class AdapterDateFnsJalali extends _AdapterDateFnsBase.AdapterDateFnsBase {
|
|
|
147
150
|
locale: this.locale
|
|
148
151
|
});
|
|
149
152
|
};
|
|
150
|
-
this.getCurrentLocaleCode = () => {
|
|
151
|
-
return this.locale?.code || 'fa-IR';
|
|
152
|
-
};
|
|
153
153
|
this.isValid = value => {
|
|
154
154
|
if (value == null) {
|
|
155
155
|
return false;
|