@mui/x-date-pickers 6.5.0 → 6.6.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.d.ts +6 -0
- package/AdapterDateFns/AdapterDateFns.js +18 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +6 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +18 -0
- package/AdapterDayjs/AdapterDayjs.d.ts +14 -1
- package/AdapterDayjs/AdapterDayjs.js +131 -14
- package/AdapterLuxon/AdapterLuxon.d.ts +7 -1
- package/AdapterLuxon/AdapterLuxon.js +58 -9
- package/AdapterMoment/AdapterMoment.d.ts +12 -1
- package/AdapterMoment/AdapterMoment.js +91 -2
- package/AdapterMomentHijri/AdapterMomentHijri.d.ts +4 -0
- package/AdapterMomentHijri/AdapterMomentHijri.js +10 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.d.ts +4 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +10 -0
- package/CHANGELOG.md +78 -2
- package/DateCalendar/DateCalendar.js +2 -2
- package/DateCalendar/DayCalendar.d.ts +1 -1
- package/DateCalendar/PickersCalendarHeader.d.ts +1 -1
- package/DateCalendar/PickersCalendarHeader.js +2 -2
- package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
- package/DateCalendar/PickersSlideTransition.d.ts +1 -1
- package/DateField/DateField.js +6 -0
- package/DateField/DateField.types.d.ts +1 -1
- package/DateTimeField/DateTimeField.js +6 -0
- package/DateTimeField/DateTimeField.types.d.ts +1 -1
- package/DateTimePicker/DateTimePicker.js +19 -2
- package/DateTimePicker/DateTimePicker.types.d.ts +4 -3
- package/DateTimePicker/DateTimePickerTabs.d.ts +3 -3
- package/DateTimePicker/DateTimePickerTabs.js +6 -5
- package/DateTimePicker/DateTimePickerToolbar.d.ts +5 -4
- package/DateTimePicker/DateTimePickerToolbar.js +46 -22
- package/DateTimePicker/shared.d.ts +6 -6
- package/DayCalendarSkeleton/DayCalendarSkeleton.d.ts +1 -1
- package/DesktopDatePicker/DesktopDatePicker.js +2 -2
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +53 -10
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +10 -3
- package/DesktopTimePicker/DesktopTimePicker.js +2 -2
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +8 -7
- package/MonthCalendar/MonthCalendar.js +2 -2
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +4 -3
- package/PickersActionBar/PickersActionBar.d.ts +2 -2
- package/PickersLayout/PickersLayout.d.ts +1 -1
- package/PickersShortcuts/PickersShortcuts.d.ts +2 -2
- package/README.md +5 -5
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +1 -1
- package/TimeClock/Clock.d.ts +1 -1
- package/TimeClock/ClockNumber.d.ts +1 -1
- package/TimeClock/ClockNumbers.d.ts +2 -2
- package/TimeClock/ClockPointer.d.ts +1 -1
- package/TimeField/TimeField.js +6 -0
- package/TimeField/TimeField.types.d.ts +1 -1
- package/TimePicker/TimePickerToolbar.d.ts +2 -2
- package/YearCalendar/YearCalendar.js +2 -2
- package/dateTimeViewRenderers/dateTimeViewRenderers.d.ts +13 -0
- package/dateTimeViewRenderers/dateTimeViewRenderers.js +148 -0
- package/dateTimeViewRenderers/index.d.ts +2 -0
- package/dateTimeViewRenderers/index.js +1 -0
- package/dateTimeViewRenderers/package.json +6 -0
- package/dateViewRenderers/dateViewRenderers.d.ts +3 -2
- package/dateViewRenderers/dateViewRenderers.js +2 -2
- package/icons/index.d.ts +42 -0
- package/{internals/components/icons → icons}/index.js +7 -7
- package/icons/package.json +6 -0
- package/index.d.ts +1 -0
- package/index.js +3 -2
- package/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.d.ts +2 -0
- package/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +5 -0
- package/internals/components/DateTimeViewWrapper/index.d.ts +1 -0
- package/internals/components/DateTimeViewWrapper/index.js +1 -0
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +3 -3
- package/internals/components/PickersModalDialog.d.ts +1 -1
- package/internals/components/PickersPopper.d.ts +1 -1
- package/internals/components/PickersToolbarButton.d.ts +1 -0
- package/internals/components/PickersToolbarButton.js +8 -3
- package/internals/constants/dimensions.d.ts +1 -0
- package/internals/constants/dimensions.js +2 -1
- package/internals/demo/DemoContainer.d.ts +2 -2
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +2 -2
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +2 -2
- package/internals/hooks/useField/useField.d.ts +1 -1
- package/internals/hooks/useField/useField.js +8 -3
- package/internals/hooks/useField/useField.types.d.ts +8 -2
- package/internals/hooks/useField/useFieldState.d.ts +1 -1
- package/internals/hooks/useField/useFieldState.js +22 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +2 -2
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +32 -2
- package/internals/hooks/usePicker/usePickerViews.js +8 -10
- package/internals/hooks/useStaticPicker/useStaticPicker.d.ts +2 -2
- package/internals/hooks/useViews.js +10 -9
- package/internals/index.d.ts +2 -1
- package/internals/index.js +2 -1
- package/internals/models/fields.d.ts +1 -1
- package/internals/utils/date-utils.d.ts +4 -1
- package/internals/utils/date-utils.js +4 -1
- package/internals/utils/fields.js +1 -1
- package/internals/utils/getDefaultReferenceDate.d.ts +15 -0
- package/internals/utils/getDefaultReferenceDate.js +62 -0
- package/internals/utils/time-utils.d.ts +2 -1
- package/internals/utils/time-utils.js +1 -0
- package/internals/utils/valueManagers.js +21 -3
- package/legacy/AdapterDateFns/AdapterDateFns.js +18 -0
- package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +18 -0
- package/legacy/AdapterDayjs/AdapterDayjs.js +135 -14
- package/legacy/AdapterLuxon/AdapterLuxon.js +58 -9
- package/legacy/AdapterMoment/AdapterMoment.js +97 -6
- package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +10 -0
- package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +10 -0
- package/legacy/DateCalendar/DateCalendar.js +2 -2
- package/legacy/DateCalendar/PickersCalendarHeader.js +2 -2
- package/legacy/DateField/DateField.js +6 -0
- package/legacy/DateTimeField/DateTimeField.js +6 -0
- package/legacy/DateTimePicker/DateTimePicker.js +19 -2
- package/legacy/DateTimePicker/DateTimePickerTabs.js +6 -5
- package/legacy/DateTimePicker/DateTimePickerToolbar.js +51 -23
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +2 -2
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +54 -10
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +2 -2
- package/legacy/MonthCalendar/MonthCalendar.js +2 -2
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +4 -3
- package/legacy/TimeField/TimeField.js +6 -0
- package/legacy/YearCalendar/YearCalendar.js +2 -2
- package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +147 -0
- package/legacy/dateTimeViewRenderers/index.js +1 -0
- package/legacy/dateViewRenderers/dateViewRenderers.js +2 -4
- package/legacy/{internals/components/icons → icons}/index.js +7 -7
- package/legacy/index.js +3 -2
- package/legacy/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +5 -0
- package/legacy/internals/components/DateTimeViewWrapper/index.js +1 -0
- package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +3 -3
- package/legacy/internals/components/PickersToolbarButton.js +7 -2
- package/legacy/internals/constants/dimensions.js +2 -1
- package/legacy/internals/hooks/useField/useField.js +8 -3
- package/legacy/internals/hooks/useField/useFieldState.js +22 -2
- package/legacy/internals/hooks/usePicker/usePickerViews.js +4 -4
- package/legacy/internals/hooks/useViews.js +10 -9
- package/legacy/internals/index.js +2 -1
- package/legacy/internals/utils/date-utils.js +7 -0
- package/legacy/internals/utils/fields.js +1 -1
- package/legacy/internals/utils/getDefaultReferenceDate.js +64 -0
- package/legacy/internals/utils/time-utils.js +3 -0
- package/legacy/internals/utils/valueManagers.js +20 -4
- package/legacy/locales/index.js +1 -0
- package/legacy/locales/viVN.js +93 -0
- package/legacy/models/index.js +1 -0
- package/legacy/models/timezone.js +1 -0
- package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.js +16 -1
- package/legacy/tests/describeGregorianAdapter/testCalculations.js +349 -79
- package/legacy/tests/describeGregorianAdapter/testLocalization.js +3 -3
- package/legacy/tests/describeValidation/testDayViewValidation.js +129 -52
- package/legacy/tests/describeValidation/testMinutesViewValidation.js +3 -10
- package/legacy/tests/describeValidation/testMonthViewValidation.js +3 -10
- package/legacy/tests/describeValidation/testYearViewValidation.js +3 -10
- package/legacy/tests/describeValue/describeValue.js +12 -5
- package/legacy/tests/describeValue/testControlledUnControlled.js +19 -4
- package/legacy/tests/describeValue/testPickerActionBar.js +12 -10
- package/legacy/tests/describeValue/testPickerOpenCloseLifeCycle.js +10 -7
- package/legacy/timeViewRenderers/timeViewRenderers.js +1 -1
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/viVN.d.ts +53 -0
- package/locales/viVN.js +57 -0
- package/models/adapters.d.ts +50 -9
- package/models/fields.d.ts +1 -1
- package/models/index.d.ts +1 -0
- package/models/index.js +1 -0
- package/models/timezone.d.ts +1 -0
- package/models/timezone.js +1 -0
- package/modern/AdapterDateFns/AdapterDateFns.js +18 -0
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +18 -0
- package/modern/AdapterDayjs/AdapterDayjs.js +130 -14
- package/modern/AdapterLuxon/AdapterLuxon.js +57 -9
- package/modern/AdapterMoment/AdapterMoment.js +90 -2
- package/modern/AdapterMomentHijri/AdapterMomentHijri.js +10 -0
- package/modern/AdapterMomentJalaali/AdapterMomentJalaali.js +10 -0
- package/modern/DateCalendar/DateCalendar.js +2 -2
- package/modern/DateCalendar/PickersCalendarHeader.js +2 -2
- package/modern/DateField/DateField.js +6 -0
- package/modern/DateTimeField/DateTimeField.js +6 -0
- package/modern/DateTimePicker/DateTimePicker.js +19 -2
- package/modern/DateTimePicker/DateTimePickerTabs.js +6 -5
- package/modern/DateTimePicker/DateTimePickerToolbar.js +46 -22
- package/modern/DesktopDatePicker/DesktopDatePicker.js +2 -2
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +52 -9
- package/modern/DesktopTimePicker/DesktopTimePicker.js +2 -2
- package/modern/MonthCalendar/MonthCalendar.js +2 -2
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +4 -3
- package/modern/TimeField/TimeField.js +6 -0
- package/modern/YearCalendar/YearCalendar.js +2 -2
- package/modern/dateTimeViewRenderers/dateTimeViewRenderers.js +147 -0
- package/modern/dateTimeViewRenderers/index.js +1 -0
- package/modern/dateViewRenderers/dateViewRenderers.js +2 -2
- package/modern/{internals/components/icons → icons}/index.js +7 -7
- package/modern/index.js +3 -2
- package/modern/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +5 -0
- package/modern/internals/components/DateTimeViewWrapper/index.js +1 -0
- package/modern/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +3 -3
- package/modern/internals/components/PickersToolbarButton.js +8 -3
- package/modern/internals/constants/dimensions.js +2 -1
- package/modern/internals/hooks/useField/useField.js +8 -3
- package/modern/internals/hooks/useField/useFieldState.js +22 -2
- package/modern/internals/hooks/usePicker/usePickerViews.js +8 -10
- package/modern/internals/hooks/useViews.js +10 -9
- package/modern/internals/index.js +2 -1
- package/modern/internals/utils/date-utils.js +4 -1
- package/modern/internals/utils/fields.js +1 -1
- package/modern/internals/utils/getDefaultReferenceDate.js +58 -0
- package/modern/internals/utils/time-utils.js +1 -0
- package/modern/internals/utils/valueManagers.js +21 -3
- package/modern/locales/index.js +1 -0
- package/modern/locales/viVN.js +57 -0
- package/modern/models/index.js +1 -0
- package/modern/models/timezone.js +1 -0
- package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.js +13 -1
- package/modern/tests/describeGregorianAdapter/testCalculations.js +347 -79
- package/modern/tests/describeGregorianAdapter/testLocalization.js +3 -3
- package/modern/tests/describeValidation/testDayViewValidation.js +129 -52
- package/modern/tests/describeValidation/testMinutesViewValidation.js +3 -10
- package/modern/tests/describeValidation/testMonthViewValidation.js +3 -10
- package/modern/tests/describeValidation/testYearViewValidation.js +3 -10
- package/modern/tests/describeValue/describeValue.js +13 -4
- package/modern/tests/describeValue/testControlledUnControlled.js +15 -4
- package/modern/tests/describeValue/testPickerActionBar.js +19 -17
- package/modern/tests/describeValue/testPickerOpenCloseLifeCycle.js +10 -7
- package/modern/timeViewRenderers/timeViewRenderers.js +1 -1
- package/node/AdapterDateFns/AdapterDateFns.js +18 -0
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +18 -0
- package/node/AdapterDayjs/AdapterDayjs.js +130 -14
- package/node/AdapterLuxon/AdapterLuxon.js +57 -9
- package/node/AdapterMoment/AdapterMoment.js +90 -2
- package/node/AdapterMomentHijri/AdapterMomentHijri.js +10 -0
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +10 -0
- package/node/DateCalendar/DateCalendar.js +2 -2
- package/node/DateCalendar/PickersCalendarHeader.js +2 -2
- package/node/DateField/DateField.js +6 -0
- package/node/DateTimeField/DateTimeField.js +6 -0
- package/node/DateTimePicker/DateTimePicker.js +19 -2
- package/node/DateTimePicker/DateTimePickerTabs.js +6 -5
- package/node/DateTimePicker/DateTimePickerToolbar.js +46 -22
- package/node/DesktopDatePicker/DesktopDatePicker.js +2 -2
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +52 -9
- package/node/DesktopTimePicker/DesktopTimePicker.js +2 -2
- package/node/MonthCalendar/MonthCalendar.js +2 -2
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +3 -2
- package/node/TimeField/TimeField.js +6 -0
- package/node/YearCalendar/YearCalendar.js +2 -2
- package/node/dateTimeViewRenderers/dateTimeViewRenderers.js +156 -0
- package/node/dateTimeViewRenderers/index.js +12 -0
- package/node/dateViewRenderers/dateViewRenderers.js +3 -3
- package/node/{internals/components/icons → icons}/index.js +15 -15
- package/node/index.js +13 -1
- package/node/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +12 -0
- package/node/internals/components/DateTimeViewWrapper/index.js +12 -0
- package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +3 -3
- package/node/internals/components/PickersToolbarButton.js +8 -3
- package/node/internals/constants/dimensions.js +4 -2
- package/node/internals/hooks/useField/useField.js +8 -3
- package/node/internals/hooks/useField/useFieldState.js +22 -2
- package/node/internals/hooks/usePicker/usePickerViews.js +8 -10
- package/node/internals/hooks/useViews.js +10 -9
- package/node/internals/index.js +13 -0
- package/node/internals/utils/date-utils.js +7 -2
- package/node/internals/utils/fields.js +1 -1
- package/node/internals/utils/getDefaultReferenceDate.js +66 -0
- package/node/internals/utils/time-utils.js +3 -1
- package/node/internals/utils/valueManagers.js +21 -2
- package/node/locales/index.js +11 -0
- package/node/locales/viVN.js +64 -0
- package/node/models/index.js +11 -0
- package/node/models/timezone.js +5 -0
- package/node/tests/describeGregorianAdapter/describeGregorianAdapter.js +13 -1
- package/node/tests/describeGregorianAdapter/testCalculations.js +347 -79
- package/node/tests/describeGregorianAdapter/testLocalization.js +3 -4
- package/node/tests/describeValidation/testDayViewValidation.js +129 -52
- package/node/tests/describeValidation/testMinutesViewValidation.js +3 -10
- package/node/tests/describeValidation/testMonthViewValidation.js +3 -10
- package/node/tests/describeValidation/testYearViewValidation.js +3 -10
- package/node/tests/describeValue/describeValue.js +13 -4
- package/node/tests/describeValue/testControlledUnControlled.js +15 -4
- package/node/tests/describeValue/testPickerActionBar.js +19 -16
- package/node/tests/describeValue/testPickerOpenCloseLifeCycle.js +9 -6
- package/node/timeViewRenderers/timeViewRenderers.js +1 -1
- package/package.json +4 -4
- package/tests/describeGregorianAdapter/describeGregorianAdapter.js +14 -1
- package/tests/describeGregorianAdapter/testCalculations.js +347 -79
- package/tests/describeGregorianAdapter/testLocalization.js +3 -3
- package/tests/describeValidation/testDayViewValidation.js +129 -52
- package/tests/describeValidation/testMinutesViewValidation.js +3 -10
- package/tests/describeValidation/testMonthViewValidation.js +3 -10
- package/tests/describeValidation/testYearViewValidation.js +3 -10
- package/tests/describeValue/describeValue.js +13 -4
- package/tests/describeValue/testControlledUnControlled.js +15 -4
- package/tests/describeValue/testPickerActionBar.js +19 -17
- package/tests/describeValue/testPickerOpenCloseLifeCycle.js +10 -7
- package/timeViewRenderers/timeViewRenderers.d.ts +4 -4
- package/timeViewRenderers/timeViewRenderers.js +1 -1
- package/internals/components/icons/index.d.ts +0 -42
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import Divider from '@mui/material/Divider';
|
|
5
|
+
import { resolveComponentProps } from '@mui/base/utils';
|
|
6
|
+
import { DateCalendar } from '../DateCalendar';
|
|
7
|
+
import { MultiSectionDigitalClock, multiSectionDigitalClockSectionClasses } from '../MultiSectionDigitalClock';
|
|
8
|
+
import { DateTimeViewWrapper } from '../internals/components/DateTimeViewWrapper';
|
|
9
|
+
import { isInternalTimeView } from '../internals/utils/time-utils';
|
|
10
|
+
import { isDatePickerView } from '../internals/utils/date-utils';
|
|
11
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
export var renderDesktopDateTimeView = function renderDesktopDateTimeView(_ref) {
|
|
14
|
+
var _resolveComponentProp, _resolveComponentProp2, _slotProps$actionBar;
|
|
15
|
+
var view = _ref.view,
|
|
16
|
+
onViewChange = _ref.onViewChange,
|
|
17
|
+
views = _ref.views,
|
|
18
|
+
focusedView = _ref.focusedView,
|
|
19
|
+
onFocusedViewChange = _ref.onFocusedViewChange,
|
|
20
|
+
value = _ref.value,
|
|
21
|
+
defaultValue = _ref.defaultValue,
|
|
22
|
+
onChange = _ref.onChange,
|
|
23
|
+
className = _ref.className,
|
|
24
|
+
classes = _ref.classes,
|
|
25
|
+
disableFuture = _ref.disableFuture,
|
|
26
|
+
disablePast = _ref.disablePast,
|
|
27
|
+
minDate = _ref.minDate,
|
|
28
|
+
minTime = _ref.minTime,
|
|
29
|
+
maxDate = _ref.maxDate,
|
|
30
|
+
maxTime = _ref.maxTime,
|
|
31
|
+
shouldDisableDate = _ref.shouldDisableDate,
|
|
32
|
+
shouldDisableMonth = _ref.shouldDisableMonth,
|
|
33
|
+
shouldDisableYear = _ref.shouldDisableYear,
|
|
34
|
+
shouldDisableTime = _ref.shouldDisableTime,
|
|
35
|
+
shouldDisableClock = _ref.shouldDisableClock,
|
|
36
|
+
reduceAnimations = _ref.reduceAnimations,
|
|
37
|
+
minutesStep = _ref.minutesStep,
|
|
38
|
+
ampm = _ref.ampm,
|
|
39
|
+
onMonthChange = _ref.onMonthChange,
|
|
40
|
+
monthsPerRow = _ref.monthsPerRow,
|
|
41
|
+
onYearChange = _ref.onYearChange,
|
|
42
|
+
yearsPerRow = _ref.yearsPerRow,
|
|
43
|
+
defaultCalendarMonth = _ref.defaultCalendarMonth,
|
|
44
|
+
components = _ref.components,
|
|
45
|
+
componentsProps = _ref.componentsProps,
|
|
46
|
+
slots = _ref.slots,
|
|
47
|
+
slotProps = _ref.slotProps,
|
|
48
|
+
loading = _ref.loading,
|
|
49
|
+
renderLoading = _ref.renderLoading,
|
|
50
|
+
disableHighlightToday = _ref.disableHighlightToday,
|
|
51
|
+
readOnly = _ref.readOnly,
|
|
52
|
+
disabled = _ref.disabled,
|
|
53
|
+
showDaysOutsideCurrentMonth = _ref.showDaysOutsideCurrentMonth,
|
|
54
|
+
dayOfWeekFormatter = _ref.dayOfWeekFormatter,
|
|
55
|
+
sx = _ref.sx,
|
|
56
|
+
autoFocus = _ref.autoFocus,
|
|
57
|
+
fixedWeekNumber = _ref.fixedWeekNumber,
|
|
58
|
+
displayWeekNumber = _ref.displayWeekNumber,
|
|
59
|
+
disableIgnoringDatePartForTimeValidation = _ref.disableIgnoringDatePartForTimeValidation,
|
|
60
|
+
timeSteps = _ref.timeSteps,
|
|
61
|
+
skipDisabled = _ref.skipDisabled,
|
|
62
|
+
timeViewsCount = _ref.timeViewsCount;
|
|
63
|
+
var isActionBarVisible = !!((_resolveComponentProp = resolveComponentProps((_slotProps$actionBar = slotProps == null ? void 0 : slotProps.actionBar) != null ? _slotProps$actionBar : componentsProps == null ? void 0 : componentsProps.actionBar, {})) != null && (_resolveComponentProp2 = _resolveComponentProp.actions) != null && _resolveComponentProp2.length);
|
|
64
|
+
return /*#__PURE__*/_jsxs(React.Fragment, {
|
|
65
|
+
children: [/*#__PURE__*/_jsxs(DateTimeViewWrapper, {
|
|
66
|
+
children: [/*#__PURE__*/_jsx(DateCalendar, {
|
|
67
|
+
view: isDatePickerView(view) ? view : 'day',
|
|
68
|
+
onViewChange: onViewChange,
|
|
69
|
+
views: views.filter(isDatePickerView),
|
|
70
|
+
focusedView: focusedView && isDatePickerView(focusedView) ? focusedView : null,
|
|
71
|
+
onFocusedViewChange: onFocusedViewChange,
|
|
72
|
+
value: value,
|
|
73
|
+
defaultValue: defaultValue,
|
|
74
|
+
onChange: onChange,
|
|
75
|
+
className: className,
|
|
76
|
+
classes: classes,
|
|
77
|
+
disableFuture: disableFuture,
|
|
78
|
+
disablePast: disablePast,
|
|
79
|
+
minDate: minDate,
|
|
80
|
+
maxDate: maxDate,
|
|
81
|
+
shouldDisableDate: shouldDisableDate,
|
|
82
|
+
shouldDisableMonth: shouldDisableMonth,
|
|
83
|
+
shouldDisableYear: shouldDisableYear,
|
|
84
|
+
reduceAnimations: reduceAnimations,
|
|
85
|
+
onMonthChange: onMonthChange,
|
|
86
|
+
monthsPerRow: monthsPerRow,
|
|
87
|
+
onYearChange: onYearChange,
|
|
88
|
+
yearsPerRow: yearsPerRow,
|
|
89
|
+
defaultCalendarMonth: defaultCalendarMonth,
|
|
90
|
+
components: components,
|
|
91
|
+
componentsProps: componentsProps,
|
|
92
|
+
slots: slots,
|
|
93
|
+
slotProps: slotProps,
|
|
94
|
+
loading: loading,
|
|
95
|
+
renderLoading: renderLoading,
|
|
96
|
+
disableHighlightToday: disableHighlightToday,
|
|
97
|
+
readOnly: readOnly,
|
|
98
|
+
disabled: disabled,
|
|
99
|
+
showDaysOutsideCurrentMonth: showDaysOutsideCurrentMonth,
|
|
100
|
+
dayOfWeekFormatter: dayOfWeekFormatter,
|
|
101
|
+
sx: sx,
|
|
102
|
+
autoFocus: autoFocus,
|
|
103
|
+
fixedWeekNumber: fixedWeekNumber,
|
|
104
|
+
displayWeekNumber: displayWeekNumber
|
|
105
|
+
}), timeViewsCount > 0 && /*#__PURE__*/_jsxs(React.Fragment, {
|
|
106
|
+
children: [/*#__PURE__*/_jsx(Divider, {
|
|
107
|
+
orientation: "vertical"
|
|
108
|
+
}), /*#__PURE__*/_jsx(MultiSectionDigitalClock, {
|
|
109
|
+
view: isInternalTimeView(view) ? view : 'hours',
|
|
110
|
+
onViewChange: onViewChange,
|
|
111
|
+
focusedView: focusedView && isInternalTimeView(focusedView) ? focusedView : null,
|
|
112
|
+
onFocusedViewChange: onFocusedViewChange,
|
|
113
|
+
views: views.filter(isInternalTimeView),
|
|
114
|
+
value: value,
|
|
115
|
+
defaultValue: defaultValue,
|
|
116
|
+
onChange: onChange,
|
|
117
|
+
className: className,
|
|
118
|
+
classes: classes,
|
|
119
|
+
disableFuture: disableFuture,
|
|
120
|
+
disablePast: disablePast,
|
|
121
|
+
minTime: minTime,
|
|
122
|
+
maxTime: maxTime,
|
|
123
|
+
shouldDisableTime: shouldDisableTime,
|
|
124
|
+
shouldDisableClock: shouldDisableClock,
|
|
125
|
+
minutesStep: minutesStep,
|
|
126
|
+
ampm: ampm,
|
|
127
|
+
components: components,
|
|
128
|
+
componentsProps: componentsProps,
|
|
129
|
+
slots: slots,
|
|
130
|
+
slotProps: slotProps,
|
|
131
|
+
readOnly: readOnly,
|
|
132
|
+
disabled: disabled,
|
|
133
|
+
sx: _extends(_defineProperty({
|
|
134
|
+
borderBottom: 0,
|
|
135
|
+
width: 'auto'
|
|
136
|
+
}, ".".concat(multiSectionDigitalClockSectionClasses.root), {
|
|
137
|
+
maxHeight: '100%'
|
|
138
|
+
}), Array.isArray(sx) ? sx : [sx]),
|
|
139
|
+
autoFocus: autoFocus,
|
|
140
|
+
disableIgnoringDatePartForTimeValidation: disableIgnoringDatePartForTimeValidation,
|
|
141
|
+
timeSteps: timeSteps,
|
|
142
|
+
skipDisabled: skipDisabled
|
|
143
|
+
})]
|
|
144
|
+
})]
|
|
145
|
+
}), isActionBarVisible && /*#__PURE__*/_jsx(Divider, {})]
|
|
146
|
+
});
|
|
147
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { renderDesktopDateTimeView } from './dateTimeViewRenderers';
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DateCalendar } from '../DateCalendar';
|
|
3
|
+
import { isDatePickerView } from '../internals/utils/date-utils';
|
|
3
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
-
var isDatePickerView = function isDatePickerView(view) {
|
|
5
|
-
return view === 'year' || view === 'month' || view === 'day';
|
|
6
|
-
};
|
|
7
5
|
export var renderDateViewCalendar = function renderDateViewCalendar(_ref) {
|
|
8
6
|
var view = _ref.view,
|
|
9
7
|
onViewChange = _ref.onViewChange,
|
|
@@ -47,7 +45,7 @@ export var renderDateViewCalendar = function renderDateViewCalendar(_ref) {
|
|
|
47
45
|
view: view,
|
|
48
46
|
onViewChange: onViewChange,
|
|
49
47
|
views: views.filter(isDatePickerView),
|
|
50
|
-
focusedView: focusedView,
|
|
48
|
+
focusedView: focusedView && isDatePickerView(focusedView) ? focusedView : null,
|
|
51
49
|
onFocusedViewChange: onFocusedViewChange,
|
|
52
50
|
value: value,
|
|
53
51
|
defaultValue: defaultValue,
|
|
@@ -6,35 +6,35 @@ import * as React from 'react';
|
|
|
6
6
|
*/
|
|
7
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
8
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
-
export var
|
|
9
|
+
export var ArrowDropDownIcon = createSvgIcon( /*#__PURE__*/_jsx("path", {
|
|
10
10
|
d: "M7 10l5 5 5-5z"
|
|
11
11
|
}), 'ArrowDropDown');
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* @ignore - internal component.
|
|
15
15
|
*/
|
|
16
|
-
export var
|
|
16
|
+
export var ArrowLeftIcon = createSvgIcon( /*#__PURE__*/_jsx("path", {
|
|
17
17
|
d: "M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"
|
|
18
18
|
}), 'ArrowLeft');
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* @ignore - internal component.
|
|
22
22
|
*/
|
|
23
|
-
export var
|
|
23
|
+
export var ArrowRightIcon = createSvgIcon( /*#__PURE__*/_jsx("path", {
|
|
24
24
|
d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"
|
|
25
25
|
}), 'ArrowRight');
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* @ignore - internal component.
|
|
29
29
|
*/
|
|
30
|
-
export var
|
|
30
|
+
export var CalendarIcon = createSvgIcon( /*#__PURE__*/_jsx("path", {
|
|
31
31
|
d: "M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"
|
|
32
32
|
}), 'Calendar');
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
35
|
* @ignore - internal component.
|
|
36
36
|
*/
|
|
37
|
-
export var
|
|
37
|
+
export var ClockIcon = createSvgIcon( /*#__PURE__*/_jsxs(React.Fragment, {
|
|
38
38
|
children: [/*#__PURE__*/_jsx("path", {
|
|
39
39
|
d: "M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
|
|
40
40
|
}), /*#__PURE__*/_jsx("path", {
|
|
@@ -45,14 +45,14 @@ export var Clock = createSvgIcon( /*#__PURE__*/_jsxs(React.Fragment, {
|
|
|
45
45
|
/**
|
|
46
46
|
* @ignore - internal component.
|
|
47
47
|
*/
|
|
48
|
-
export var
|
|
48
|
+
export var DateRangeIcon = createSvgIcon( /*#__PURE__*/_jsx("path", {
|
|
49
49
|
d: "M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"
|
|
50
50
|
}), 'DateRange');
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
53
|
* @ignore - internal component.
|
|
54
54
|
*/
|
|
55
|
-
export var
|
|
55
|
+
export var TimeIcon = createSvgIcon( /*#__PURE__*/_jsxs(React.Fragment, {
|
|
56
56
|
children: [/*#__PURE__*/_jsx("path", {
|
|
57
57
|
d: "M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
|
|
58
58
|
}), /*#__PURE__*/_jsx("path", {
|
package/legacy/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @mui/x-date-pickers v6.
|
|
2
|
+
* @mui/x-date-pickers v6.6.0
|
|
3
3
|
*
|
|
4
4
|
* @license MIT
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -47,4 +47,5 @@ export * from './PickersLayout';
|
|
|
47
47
|
export * from './PickersActionBar';
|
|
48
48
|
export * from './PickersShortcuts';
|
|
49
49
|
export { DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from './internals/utils/utils';
|
|
50
|
-
export * from './models';
|
|
50
|
+
export * from './models';
|
|
51
|
+
export * from './icons';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DateTimeViewWrapper } from './DateTimeViewWrapper';
|
|
@@ -11,7 +11,7 @@ import { useTheme, styled, useThemeProps } from '@mui/material/styles';
|
|
|
11
11
|
import { unstable_composeClasses as composeClasses } from '@mui/utils';
|
|
12
12
|
import { useSlotProps } from '@mui/base/utils';
|
|
13
13
|
import IconButton from '@mui/material/IconButton';
|
|
14
|
-
import {
|
|
14
|
+
import { ArrowLeftIcon, ArrowRightIcon } from '../../../icons';
|
|
15
15
|
import { getPickersArrowSwitcherUtilityClass } from './pickersArrowSwitcherClasses';
|
|
16
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -130,7 +130,7 @@ export var PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function Pickers
|
|
|
130
130
|
}),
|
|
131
131
|
className: classes.button
|
|
132
132
|
});
|
|
133
|
-
var LeftArrowIcon = (_slots$leftArrowIcon = slots == null ? void 0 : slots.leftArrowIcon) != null ? _slots$leftArrowIcon :
|
|
133
|
+
var LeftArrowIcon = (_slots$leftArrowIcon = slots == null ? void 0 : slots.leftArrowIcon) != null ? _slots$leftArrowIcon : ArrowLeftIcon;
|
|
134
134
|
// The spread is here to avoid this bug mui/material-ui#34056
|
|
135
135
|
var _useSlotProps = useSlotProps({
|
|
136
136
|
elementType: LeftArrowIcon,
|
|
@@ -142,7 +142,7 @@ export var PickersArrowSwitcher = /*#__PURE__*/React.forwardRef(function Pickers
|
|
|
142
142
|
}),
|
|
143
143
|
leftArrowIconOwnerState = _useSlotProps.ownerState,
|
|
144
144
|
leftArrowIconProps = _objectWithoutProperties(_useSlotProps, _excluded2);
|
|
145
|
-
var RightArrowIcon = (_slots$rightArrowIcon = slots == null ? void 0 : slots.rightArrowIcon) != null ? _slots$rightArrowIcon :
|
|
145
|
+
var RightArrowIcon = (_slots$rightArrowIcon = slots == null ? void 0 : slots.rightArrowIcon) != null ? _slots$rightArrowIcon : ArrowRightIcon;
|
|
146
146
|
// The spread is here to avoid this bug mui/material-ui#34056
|
|
147
147
|
var _useSlotProps2 = useSlotProps({
|
|
148
148
|
elementType: RightArrowIcon,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["align", "className", "selected", "typographyClassName", "value", "variant"];
|
|
3
|
+
var _excluded = ["align", "className", "selected", "typographyClassName", "value", "variant", "width"];
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import clsx from 'clsx';
|
|
6
6
|
import Button from '@mui/material/Button';
|
|
@@ -38,13 +38,18 @@ export var PickersToolbarButton = /*#__PURE__*/React.forwardRef(function Pickers
|
|
|
38
38
|
typographyClassName = props.typographyClassName,
|
|
39
39
|
value = props.value,
|
|
40
40
|
variant = props.variant,
|
|
41
|
+
width = props.width,
|
|
41
42
|
other = _objectWithoutProperties(props, _excluded);
|
|
42
43
|
var classes = useUtilityClasses(props);
|
|
43
44
|
return /*#__PURE__*/_jsx(PickersToolbarButtonRoot, _extends({
|
|
44
45
|
variant: "text",
|
|
45
46
|
ref: ref,
|
|
46
47
|
className: clsx(className, classes.root)
|
|
47
|
-
},
|
|
48
|
+
}, width ? {
|
|
49
|
+
sx: {
|
|
50
|
+
width: width
|
|
51
|
+
}
|
|
52
|
+
} : {}, other, {
|
|
48
53
|
children: /*#__PURE__*/_jsx(PickersToolbarText, {
|
|
49
54
|
align: align,
|
|
50
55
|
className: typographyClassName,
|
|
@@ -168,7 +168,7 @@ export var useField = function useField(params) {
|
|
|
168
168
|
return;
|
|
169
169
|
}
|
|
170
170
|
var keyPressed;
|
|
171
|
-
if (selectedSectionIndexes.startIndex === 0 && selectedSectionIndexes.endIndex === state.sections.length - 1) {
|
|
171
|
+
if (selectedSectionIndexes.startIndex === 0 && selectedSectionIndexes.endIndex === state.sections.length - 1 && cleanValueStr.length === 1) {
|
|
172
172
|
keyPressed = cleanValueStr;
|
|
173
173
|
} else {
|
|
174
174
|
var prevValueStr = cleanString(fieldValueManager.getValueStrFromSections(state.sections, isRTL));
|
|
@@ -191,7 +191,7 @@ export var useField = function useField(params) {
|
|
|
191
191
|
|
|
192
192
|
// The active section being selected, the browser has replaced its value with the key pressed by the user.
|
|
193
193
|
var activeSectionEndRelativeToNewValue = cleanValueStr.length - prevValueStr.length + activeSection.end - cleanString(activeSection.endSeparator || '').length;
|
|
194
|
-
keyPressed = cleanValueStr.slice(activeSection.start, activeSectionEndRelativeToNewValue);
|
|
194
|
+
keyPressed = cleanValueStr.slice(activeSection.start + cleanString(activeSection.startSeparator || '').length, activeSectionEndRelativeToNewValue);
|
|
195
195
|
}
|
|
196
196
|
if (isAndroid() && keyPressed.length === 0) {
|
|
197
197
|
setTempAndroidValueStr(valueStr);
|
|
@@ -307,7 +307,12 @@ export var useField = function useField(params) {
|
|
|
307
307
|
if (selectionStart !== inputRef.current.selectionStart || selectionEnd !== inputRef.current.selectionEnd) {
|
|
308
308
|
// Fix scroll jumping on iOS browser: https://github.com/mui/mui-x/issues/8321
|
|
309
309
|
var currentScrollTop = inputRef.current.scrollTop;
|
|
310
|
-
|
|
310
|
+
// On multi input range pickers we want to update selection range only for the active input
|
|
311
|
+
// This helps avoiding the focus jumping on Safari https://github.com/mui/mui-x/issues/9003
|
|
312
|
+
// because WebKit implements the `setSelectionRange` based on the spec: https://bugs.webkit.org/show_bug.cgi?id=224425
|
|
313
|
+
if (inputRef.current && inputRef.current === getActiveElement(document)) {
|
|
314
|
+
inputRef.current.setSelectionRange(selectionStart, selectionEnd);
|
|
315
|
+
}
|
|
311
316
|
// Even reading this variable seems to do the trick, but also setting it just to make use of it
|
|
312
317
|
inputRef.current.scrollTop = currentScrollTop;
|
|
313
318
|
}
|
|
@@ -6,6 +6,7 @@ import useControlled from '@mui/utils/useControlled';
|
|
|
6
6
|
import { useTheme } from '@mui/material/styles';
|
|
7
7
|
import { useUtils, useLocaleText, useLocalizationContext } from '../useUtils';
|
|
8
8
|
import { addPositionPropertiesToSections, splitFormatIntoSections, clampDaySectionIfPossible, mergeDateIntoReferenceDate, getSectionsBoundaries, validateSections, getDateFromDateSections } from './useField.utils';
|
|
9
|
+
import { getSectionTypeGranularity } from '../../utils/getDefaultReferenceDate';
|
|
9
10
|
export var useFieldState = function useFieldState(params) {
|
|
10
11
|
var _ref;
|
|
11
12
|
var utils = useUtils();
|
|
@@ -21,6 +22,7 @@ export var useFieldState = function useFieldState(params) {
|
|
|
21
22
|
_params$internalProps = params.internalProps,
|
|
22
23
|
valueProp = _params$internalProps.value,
|
|
23
24
|
defaultValue = _params$internalProps.defaultValue,
|
|
25
|
+
referenceDateProp = _params$internalProps.referenceDate,
|
|
24
26
|
onChange = _params$internalProps.onChange,
|
|
25
27
|
format = _params$internalProps.format,
|
|
26
28
|
_params$internalProps2 = _params$internalProps.formatDensity,
|
|
@@ -46,12 +48,24 @@ export var useFieldState = function useFieldState(params) {
|
|
|
46
48
|
var _React$useState = React.useState(function () {
|
|
47
49
|
var sections = getSectionsFromValue(valueFromTheOutside);
|
|
48
50
|
validateSections(sections, valueType);
|
|
49
|
-
|
|
51
|
+
var stateWithoutReferenceDate = {
|
|
50
52
|
sections: sections,
|
|
51
53
|
value: valueFromTheOutside,
|
|
52
|
-
referenceValue:
|
|
54
|
+
referenceValue: valueManager.emptyValue,
|
|
53
55
|
tempValueStrAndroid: null
|
|
54
56
|
};
|
|
57
|
+
var granularity = getSectionTypeGranularity(sections);
|
|
58
|
+
var referenceValue = valueManager.getInitialReferenceValue({
|
|
59
|
+
referenceDate: referenceDateProp,
|
|
60
|
+
value: valueFromTheOutside,
|
|
61
|
+
valueType: valueType,
|
|
62
|
+
utils: utils,
|
|
63
|
+
props: internalProps,
|
|
64
|
+
granularity: granularity
|
|
65
|
+
});
|
|
66
|
+
return _extends({}, stateWithoutReferenceDate, {
|
|
67
|
+
referenceValue: referenceValue
|
|
68
|
+
});
|
|
55
69
|
}),
|
|
56
70
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
57
71
|
state = _React$useState2[0],
|
|
@@ -271,7 +285,13 @@ export var useFieldState = function useFieldState(params) {
|
|
|
271
285
|
});
|
|
272
286
|
};
|
|
273
287
|
React.useEffect(function () {
|
|
288
|
+
var shouldUpdate = false;
|
|
274
289
|
if (!valueManager.areValuesEqual(utils, state.value, valueFromTheOutside)) {
|
|
290
|
+
shouldUpdate = true;
|
|
291
|
+
} else {
|
|
292
|
+
shouldUpdate = valueManager.getTimezone(utils, state.value) !== valueManager.getTimezone(utils, valueFromTheOutside);
|
|
293
|
+
}
|
|
294
|
+
if (shouldUpdate) {
|
|
275
295
|
setState(function (prevState) {
|
|
276
296
|
return _extends({}, prevState, {
|
|
277
297
|
value: valueFromTheOutside,
|
|
@@ -80,14 +80,13 @@ export var usePickerViews = function usePickerViews(_ref) {
|
|
|
80
80
|
}, [disableOpenPicker, viewRenderers, views]),
|
|
81
81
|
hasUIView = _React$useMemo.hasUIView,
|
|
82
82
|
viewModeLookup = _React$useMemo.viewModeLookup;
|
|
83
|
-
var
|
|
84
|
-
|
|
83
|
+
var timeViewsCount = React.useMemo(function () {
|
|
84
|
+
return views.reduce(function (acc, viewForReduce) {
|
|
85
85
|
if (viewRenderers[viewForReduce] != null && isTimeView(viewForReduce)) {
|
|
86
86
|
return acc + 1;
|
|
87
87
|
}
|
|
88
88
|
return acc;
|
|
89
89
|
}, 0);
|
|
90
|
-
return numberUITimeViews > 1;
|
|
91
90
|
}, [viewRenderers, views]);
|
|
92
91
|
var currentViewMode = viewModeLookup[view];
|
|
93
92
|
var shouldRestoreFocus = useEventCallback(function () {
|
|
@@ -155,7 +154,8 @@ export var usePickerViews = function usePickerViews(_ref) {
|
|
|
155
154
|
onViewChange: setView,
|
|
156
155
|
focusedView: focusedView,
|
|
157
156
|
onFocusedViewChange: setFocusedView,
|
|
158
|
-
showViewSwitcher:
|
|
157
|
+
showViewSwitcher: timeViewsCount > 1,
|
|
158
|
+
timeViewsCount: timeViewsCount
|
|
159
159
|
}));
|
|
160
160
|
}
|
|
161
161
|
};
|
|
@@ -60,15 +60,6 @@ export function useViews(_ref) {
|
|
|
60
60
|
var viewIndex = views.indexOf(view);
|
|
61
61
|
var previousView = (_views = views[viewIndex - 1]) != null ? _views : null;
|
|
62
62
|
var nextView = (_views2 = views[viewIndex + 1]) != null ? _views2 : null;
|
|
63
|
-
var handleChangeView = useEventCallback(function (newView) {
|
|
64
|
-
if (newView === view) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
setView(newView);
|
|
68
|
-
if (onViewChange) {
|
|
69
|
-
onViewChange(newView);
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
63
|
var handleFocusedViewChange = useEventCallback(function (viewToFocus, hasFocus) {
|
|
73
64
|
if (hasFocus) {
|
|
74
65
|
// Focus event
|
|
@@ -83,6 +74,16 @@ export function useViews(_ref) {
|
|
|
83
74
|
|
|
84
75
|
onFocusedViewChange == null ? void 0 : onFocusedViewChange(viewToFocus, hasFocus);
|
|
85
76
|
});
|
|
77
|
+
var handleChangeView = useEventCallback(function (newView) {
|
|
78
|
+
if (newView === view) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
setView(newView);
|
|
82
|
+
handleFocusedViewChange(newView, true);
|
|
83
|
+
if (onViewChange) {
|
|
84
|
+
onViewChange(newView);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
86
87
|
var goToNextView = useEventCallback(function () {
|
|
87
88
|
if (nextView) {
|
|
88
89
|
handleChangeView(nextView);
|
|
@@ -15,8 +15,9 @@ export { useStaticPicker } from './hooks/useStaticPicker';
|
|
|
15
15
|
export { useLocalizationContext, useDefaultDates, useUtils, useLocaleText, useNow } from './hooks/useUtils';
|
|
16
16
|
export { useValidation } from './hooks/useValidation';
|
|
17
17
|
export { usePreviousMonthDisabled, useNextMonthDisabled } from './hooks/date-helpers-hooks';
|
|
18
|
-
export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual } from './utils/date-utils';
|
|
18
|
+
export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual, getTodayDate } from './utils/date-utils';
|
|
19
19
|
export { splitFieldInternalAndForwardedProps } from './utils/fields';
|
|
20
|
+
export { getDefaultReferenceDate } from './utils/getDefaultReferenceDate';
|
|
20
21
|
export { executeInTheNextEventLoopTick, getActiveElement, onSpaceOrEnter, DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from './utils/utils';
|
|
21
22
|
export { defaultReduceAnimations } from './utils/defaultReduceAnimations';
|
|
22
23
|
export { extractValidationProps } from './utils/validation/extractValidationProps';
|
|
@@ -86,4 +86,11 @@ export var mergeDateAndTime = function mergeDateAndTime(utils, dateParam, timePa
|
|
|
86
86
|
mergedDate = utils.setMinutes(mergedDate, utils.getMinutes(timeParam));
|
|
87
87
|
mergedDate = utils.setSeconds(mergedDate, utils.getSeconds(timeParam));
|
|
88
88
|
return mergedDate;
|
|
89
|
+
};
|
|
90
|
+
export var getTodayDate = function getTodayDate(utils, valueType) {
|
|
91
|
+
return valueType === 'date' ? utils.startOfDay(utils.date()) : utils.date();
|
|
92
|
+
};
|
|
93
|
+
var dateViews = ['year', 'month', 'day'];
|
|
94
|
+
export var isDatePickerView = function isDatePickerView(view) {
|
|
95
|
+
return dateViews.includes(view);
|
|
89
96
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import { DATE_TIME_VALIDATION_PROP_NAMES, DATE_VALIDATION_PROP_NAMES, TIME_VALIDATION_PROP_NAMES } from './validation/extractValidationProps';
|
|
3
|
-
var SHARED_FIELD_INTERNAL_PROP_NAMES = ['value', 'defaultValue', 'format', 'formatDensity', 'onChange', 'readOnly', 'onError', 'shouldRespectLeadingZeros', 'selectedSections', 'onSelectedSectionsChange', 'unstableFieldRef'];
|
|
3
|
+
var SHARED_FIELD_INTERNAL_PROP_NAMES = ['value', 'defaultValue', 'referenceDate', 'format', 'formatDensity', 'onChange', 'readOnly', 'onError', 'shouldRespectLeadingZeros', 'selectedSections', 'onSelectedSectionsChange', 'unstableFieldRef'];
|
|
4
4
|
export var splitFieldInternalAndForwardedProps = function splitFieldInternalAndForwardedProps(props, valueType) {
|
|
5
5
|
var forwardedProps = _extends({}, props);
|
|
6
6
|
var internalProps = {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
+
import { createIsAfterIgnoreDatePart } from './time-utils';
|
|
3
|
+
import { mergeDateAndTime, getTodayDate } from './date-utils';
|
|
4
|
+
var SECTION_TYPE_GRANULARITY = {
|
|
5
|
+
year: 1,
|
|
6
|
+
month: 2,
|
|
7
|
+
day: 3,
|
|
8
|
+
hours: 4,
|
|
9
|
+
minutes: 5,
|
|
10
|
+
seconds: 6,
|
|
11
|
+
milliseconds: 7
|
|
12
|
+
};
|
|
13
|
+
export var getSectionTypeGranularity = function getSectionTypeGranularity(sections) {
|
|
14
|
+
return Math.max.apply(Math, _toConsumableArray(sections.map(function (section) {
|
|
15
|
+
var _SECTION_TYPE_GRANULA;
|
|
16
|
+
return (_SECTION_TYPE_GRANULA = SECTION_TYPE_GRANULARITY[section.type]) != null ? _SECTION_TYPE_GRANULA : 1;
|
|
17
|
+
})));
|
|
18
|
+
};
|
|
19
|
+
var roundDate = function roundDate(utils, granularity, date) {
|
|
20
|
+
if (granularity === SECTION_TYPE_GRANULARITY.year) {
|
|
21
|
+
return utils.startOfYear(date);
|
|
22
|
+
}
|
|
23
|
+
if (granularity === SECTION_TYPE_GRANULARITY.month) {
|
|
24
|
+
return utils.startOfMonth(date);
|
|
25
|
+
}
|
|
26
|
+
if (granularity === SECTION_TYPE_GRANULARITY.day) {
|
|
27
|
+
return utils.startOfDay(date);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// We don't have startOfHour / startOfMinute / startOfSecond
|
|
31
|
+
var roundedDate = date;
|
|
32
|
+
if (granularity < SECTION_TYPE_GRANULARITY.minutes) {
|
|
33
|
+
roundedDate = utils.setMinutes(roundedDate, 0);
|
|
34
|
+
}
|
|
35
|
+
if (granularity < SECTION_TYPE_GRANULARITY.seconds) {
|
|
36
|
+
roundedDate = utils.setSeconds(roundedDate, 0);
|
|
37
|
+
}
|
|
38
|
+
if (granularity < SECTION_TYPE_GRANULARITY.milliseconds) {
|
|
39
|
+
roundedDate = utils.setMilliseconds(roundedDate, 0);
|
|
40
|
+
}
|
|
41
|
+
return roundedDate;
|
|
42
|
+
};
|
|
43
|
+
export var getDefaultReferenceDate = function getDefaultReferenceDate(_ref) {
|
|
44
|
+
var _props$disableIgnorin;
|
|
45
|
+
var props = _ref.props,
|
|
46
|
+
utils = _ref.utils,
|
|
47
|
+
valueType = _ref.valueType,
|
|
48
|
+
granularity = _ref.granularity;
|
|
49
|
+
var referenceDate = roundDate(utils, granularity, getTodayDate(utils, valueType));
|
|
50
|
+
if (props.minDate != null && utils.isAfterDay(props.minDate, referenceDate)) {
|
|
51
|
+
referenceDate = roundDate(utils, granularity, props.minDate);
|
|
52
|
+
}
|
|
53
|
+
if (props.maxDate != null && utils.isBeforeDay(props.maxDate, referenceDate)) {
|
|
54
|
+
referenceDate = roundDate(utils, granularity, props.maxDate);
|
|
55
|
+
}
|
|
56
|
+
var isAfter = createIsAfterIgnoreDatePart((_props$disableIgnorin = props.disableIgnoringDatePartForTimeValidation) != null ? _props$disableIgnorin : false, utils);
|
|
57
|
+
if (props.minTime != null && isAfter(props.minTime, referenceDate)) {
|
|
58
|
+
referenceDate = roundDate(utils, granularity, props.disableIgnoringDatePartForTimeValidation ? props.minTime : mergeDateAndTime(utils, referenceDate, props.minTime));
|
|
59
|
+
}
|
|
60
|
+
if (props.maxTime != null && isAfter(referenceDate, props.maxTime)) {
|
|
61
|
+
referenceDate = roundDate(utils, granularity, props.disableIgnoringDatePartForTimeValidation ? props.maxTime : mergeDateAndTime(utils, referenceDate, props.maxTime));
|
|
62
|
+
}
|
|
63
|
+
return referenceDate;
|
|
64
|
+
};
|
|
@@ -2,6 +2,9 @@ var timeViews = ['hours', 'minutes', 'seconds'];
|
|
|
2
2
|
export var isTimeView = function isTimeView(view) {
|
|
3
3
|
return timeViews.includes(view);
|
|
4
4
|
};
|
|
5
|
+
export var isInternalTimeView = function isInternalTimeView(view) {
|
|
6
|
+
return timeViews.includes(view) || view === 'meridiem';
|
|
7
|
+
};
|
|
5
8
|
export var getMeridiem = function getMeridiem(date, utils) {
|
|
6
9
|
if (!date) {
|
|
7
10
|
return null;
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
|
+
var _excluded = ["value", "referenceDate"];
|
|
3
|
+
import { areDatesEqual, getTodayDate, replaceInvalidDateByNull } from './date-utils';
|
|
4
|
+
import { getDefaultReferenceDate } from './getDefaultReferenceDate';
|
|
2
5
|
import { addPositionPropertiesToSections, createDateStrForInputFromSections } from '../hooks/useField/useField.utils';
|
|
3
6
|
export var singleItemValueManager = {
|
|
4
7
|
emptyValue: null,
|
|
5
|
-
getTodayValue:
|
|
6
|
-
|
|
8
|
+
getTodayValue: getTodayDate,
|
|
9
|
+
getInitialReferenceValue: function getInitialReferenceValue(_ref) {
|
|
10
|
+
var value = _ref.value,
|
|
11
|
+
referenceDate = _ref.referenceDate,
|
|
12
|
+
params = _objectWithoutProperties(_ref, _excluded);
|
|
13
|
+
if (value != null && params.utils.isValid(value)) {
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
if (referenceDate != null) {
|
|
17
|
+
return referenceDate;
|
|
18
|
+
}
|
|
19
|
+
return getDefaultReferenceDate(params);
|
|
7
20
|
},
|
|
8
21
|
cleanValue: replaceInvalidDateByNull,
|
|
9
22
|
areValuesEqual: areDatesEqual,
|
|
@@ -13,7 +26,10 @@ export var singleItemValueManager = {
|
|
|
13
26
|
hasError: function hasError(error) {
|
|
14
27
|
return error != null;
|
|
15
28
|
},
|
|
16
|
-
defaultErrorState: null
|
|
29
|
+
defaultErrorState: null,
|
|
30
|
+
getTimezone: function getTimezone(utils, value) {
|
|
31
|
+
return value == null ? null : utils.getTimezone(value);
|
|
32
|
+
}
|
|
17
33
|
};
|
|
18
34
|
export var singleItemFieldValueManager = {
|
|
19
35
|
updateReferenceValue: function updateReferenceValue(utils, value, prevReferenceValue) {
|