@mui/x-date-pickers 7.0.0-beta.2 → 7.0.0-beta.5
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/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -0
- package/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +1 -0
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
- package/AdapterDayjs/AdapterDayjs.d.ts +1 -0
- package/AdapterDayjs/AdapterDayjs.js +6 -0
- package/AdapterLuxon/AdapterLuxon.d.ts +1 -0
- package/AdapterLuxon/AdapterLuxon.js +6 -0
- package/AdapterMoment/AdapterMoment.d.ts +1 -0
- package/AdapterMoment/AdapterMoment.js +4 -0
- package/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
- package/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
- package/CHANGELOG.md +429 -30
- package/DateCalendar/DateCalendar.js +3 -1
- package/DateCalendar/DateCalendar.types.d.ts +3 -0
- package/DateCalendar/DayCalendar.d.ts +3 -1
- package/DateCalendar/DayCalendar.js +1 -1
- package/DateCalendar/PickersFadeTransitionGroup.d.ts +3 -0
- package/DateCalendar/PickersSlideTransition.d.ts +3 -0
- package/DateField/DateField.d.ts +1 -1
- package/DateField/DateField.js +11 -9
- package/DateField/DateField.types.d.ts +12 -15
- package/DateField/index.d.ts +1 -1
- package/DateField/useDateField.d.ts +2 -2
- package/DateField/useDateField.js +1 -15
- package/DatePicker/DatePicker.d.ts +1 -1
- package/DatePicker/DatePicker.js +9 -9
- package/DatePicker/DatePicker.types.d.ts +3 -3
- package/DatePicker/DatePickerToolbar.d.ts +5 -4
- package/DatePicker/DatePickerToolbar.js +14 -3
- package/DateTimeField/DateTimeField.d.ts +1 -1
- package/DateTimeField/DateTimeField.js +11 -9
- package/DateTimeField/DateTimeField.types.d.ts +12 -15
- package/DateTimeField/index.d.ts +1 -1
- package/DateTimeField/useDateTimeField.d.ts +2 -2
- package/DateTimeField/useDateTimeField.js +1 -20
- package/DateTimePicker/DateTimePicker.d.ts +1 -1
- package/DateTimePicker/DateTimePicker.js +9 -9
- package/DateTimePicker/DateTimePicker.types.d.ts +3 -3
- package/DateTimePicker/DateTimePickerTabs.d.ts +2 -2
- package/DateTimePicker/DateTimePickerTabs.js +7 -1
- package/DateTimePicker/DateTimePickerToolbar.d.ts +4 -4
- package/DateTimePicker/DateTimePickerToolbar.js +6 -0
- package/DesktopDatePicker/DesktopDatePicker.d.ts +1 -1
- package/DesktopDatePicker/DesktopDatePicker.js +9 -9
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +3 -3
- package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +1 -1
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +3 -3
- package/DesktopTimePicker/DesktopTimePicker.d.ts +1 -1
- package/DesktopTimePicker/DesktopTimePicker.js +9 -8
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +3 -3
- package/LocalizationProvider/LocalizationProvider.js +1 -0
- package/MobileDatePicker/MobileDatePicker.d.ts +1 -1
- package/MobileDatePicker/MobileDatePicker.js +9 -9
- package/MobileDatePicker/MobileDatePicker.types.d.ts +3 -3
- package/MobileDateTimePicker/MobileDateTimePicker.d.ts +2 -2
- package/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
- package/MobileTimePicker/MobileTimePicker.d.ts +2 -2
- package/MobileTimePicker/MobileTimePicker.js +9 -8
- package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
- package/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
- package/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +6 -4
- package/PickersLayout/PickersLayout.js +6 -0
- package/PickersLayout/PickersLayout.types.d.ts +6 -0
- package/PickersSectionList/PickersSectionList.d.ts +4 -4
- package/PickersSectionList/PickersSectionList.js +1 -2
- package/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
- package/PickersTextField/PickersInput/PickersInput.js +3 -3
- package/PickersTextField/PickersInputBase/PickersInputBase.d.ts +1 -1
- package/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
- package/PickersTextField/PickersInputBase/PickersInputBase.types.d.ts +1 -0
- package/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
- package/PickersTextField/PickersTextField.d.ts +1 -1
- package/PickersTextField/PickersTextField.js +9 -5
- package/StaticDatePicker/StaticDatePicker.js +0 -1
- package/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
- package/TimeField/TimeField.d.ts +1 -1
- package/TimeField/TimeField.js +11 -9
- package/TimeField/TimeField.types.d.ts +12 -15
- package/TimeField/index.d.ts +1 -1
- package/TimeField/useTimeField.d.ts +2 -2
- package/TimeField/useTimeField.js +1 -13
- package/TimePicker/TimePicker.d.ts +1 -1
- package/TimePicker/TimePicker.js +9 -8
- package/TimePicker/TimePicker.types.d.ts +3 -3
- package/TimePicker/TimePickerToolbar.d.ts +5 -4
- package/TimePicker/TimePickerToolbar.js +14 -3
- package/hooks/index.d.ts +1 -1
- package/hooks/useClearableField.d.ts +10 -2
- package/index.js +1 -1
- package/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.d.ts +3 -0
- package/internals/components/PickersPopper.d.ts +3 -0
- package/internals/components/PickersPopper.js +1 -2
- package/internals/components/PickersToolbar.js +13 -9
- package/internals/demo/DemoContainer.js +6 -5
- package/internals/hooks/defaultizedFieldProps.d.ts +19 -0
- package/internals/hooks/defaultizedFieldProps.js +43 -0
- package/internals/hooks/useDesktopPicker/useDesktopPicker.d.ts +1 -1
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +14 -13
- package/internals/hooks/useField/buildSectionsFromFormat.d.ts +16 -0
- package/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
- package/internals/hooks/useField/index.d.ts +2 -2
- package/internals/hooks/useField/index.js +1 -1
- package/internals/hooks/useField/useField.d.ts +4 -4
- package/internals/hooks/useField/useField.js +82 -309
- package/internals/hooks/useField/useField.types.d.ts +92 -56
- package/internals/hooks/useField/useField.utils.d.ts +10 -10
- package/internals/hooks/useField/useField.utils.js +78 -228
- package/internals/hooks/useField/useFieldCharacterEditing.d.ts +7 -6
- package/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
- package/internals/hooks/useField/useFieldState.d.ts +13 -11
- package/internals/hooks/useField/useFieldState.js +45 -61
- package/internals/hooks/useField/useFieldV6TextField.d.ts +25 -0
- package/internals/hooks/useField/useFieldV6TextField.js +326 -0
- package/internals/hooks/useField/useFieldV7TextField.d.ts +2 -0
- package/internals/hooks/useField/useFieldV7TextField.js +402 -0
- package/internals/hooks/useMobilePicker/useMobilePicker.d.ts +1 -1
- package/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +12 -12
- package/internals/hooks/usePicker/usePicker.d.ts +1 -1
- package/internals/hooks/usePicker/usePicker.js +3 -3
- package/internals/hooks/usePicker/usePicker.types.d.ts +2 -2
- package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
- package/internals/hooks/usePicker/usePickerValue.js +2 -18
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +5 -6
- package/internals/hooks/usePicker/usePickerViews.d.ts +4 -4
- package/internals/hooks/usePicker/usePickerViews.js +5 -6
- package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +1 -0
- package/internals/index.d.ts +5 -4
- package/internals/index.js +2 -1
- package/internals/models/fields.d.ts +2 -4
- package/internals/models/helpers.d.ts +1 -0
- package/internals/models/props/basePickerProps.d.ts +2 -7
- package/internals/models/props/tabs.d.ts +6 -0
- package/internals/models/props/toolbar.d.ts +6 -0
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.d.ts +1 -1
- package/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
- package/internals/utils/fields.js +1 -1
- package/internals/utils/valueManagers.js +5 -4
- package/locales/beBY.d.ts +9 -0
- package/locales/beBY.js +13 -0
- package/locales/caES.d.ts +9 -0
- package/locales/caES.js +13 -0
- package/locales/csCZ.d.ts +9 -0
- package/locales/csCZ.js +13 -0
- package/locales/daDK.d.ts +9 -0
- package/locales/daDK.js +13 -0
- package/locales/deDE.d.ts +9 -0
- package/locales/deDE.js +13 -0
- package/locales/elGR.d.ts +9 -0
- package/locales/elGR.js +13 -0
- package/locales/enUS.d.ts +9 -0
- package/locales/enUS.js +12 -1
- package/locales/esES.d.ts +9 -0
- package/locales/esES.js +13 -0
- package/locales/eu.d.ts +9 -0
- package/locales/eu.js +13 -0
- package/locales/faIR.d.ts +9 -0
- package/locales/faIR.js +13 -0
- package/locales/fiFI.d.ts +9 -0
- package/locales/fiFI.js +13 -0
- package/locales/frFR.d.ts +9 -0
- package/locales/frFR.js +13 -0
- package/locales/heIL.d.ts +9 -0
- package/locales/heIL.js +13 -0
- package/locales/huHU.d.ts +9 -0
- package/locales/huHU.js +13 -0
- package/locales/isIS.d.ts +9 -0
- package/locales/isIS.js +13 -0
- package/locales/itIT.d.ts +9 -0
- package/locales/itIT.js +13 -0
- package/locales/jaJP.d.ts +9 -0
- package/locales/jaJP.js +13 -0
- package/locales/koKR.d.ts +9 -0
- package/locales/koKR.js +14 -2
- package/locales/kzKZ.d.ts +9 -0
- package/locales/kzKZ.js +13 -0
- package/locales/mk.d.ts +9 -0
- package/locales/mk.js +13 -0
- package/locales/nbNO.d.ts +9 -0
- package/locales/nbNO.js +13 -0
- package/locales/nlNL.d.ts +9 -0
- package/locales/nlNL.js +13 -0
- package/locales/plPL.d.ts +9 -0
- package/locales/plPL.js +13 -0
- package/locales/ptBR.d.ts +9 -0
- package/locales/ptBR.js +13 -0
- package/locales/roRO.d.ts +9 -0
- package/locales/roRO.js +13 -0
- package/locales/ruRU.d.ts +9 -0
- package/locales/ruRU.js +13 -0
- package/locales/skSK.d.ts +9 -0
- package/locales/skSK.js +13 -0
- package/locales/svSE.d.ts +9 -0
- package/locales/svSE.js +13 -0
- package/locales/trTR.d.ts +9 -0
- package/locales/trTR.js +13 -0
- package/locales/ukUA.d.ts +9 -0
- package/locales/ukUA.js +13 -0
- package/locales/urPK.d.ts +9 -0
- package/locales/urPK.js +13 -0
- package/locales/utils/getPickersLocalization.d.ts +9 -0
- package/locales/utils/pickersLocaleTextApi.d.ts +9 -0
- package/locales/viVN.d.ts +9 -0
- package/locales/viVN.js +13 -0
- package/locales/zhCN.d.ts +9 -0
- package/locales/zhCN.js +18 -9
- package/locales/zhHK.d.ts +9 -0
- package/locales/zhHK.js +13 -0
- package/models/adapters.d.ts +13 -0
- package/models/fields.d.ts +47 -32
- package/modern/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
- package/modern/AdapterDayjs/AdapterDayjs.js +6 -0
- package/modern/AdapterLuxon/AdapterLuxon.js +6 -0
- package/modern/AdapterMoment/AdapterMoment.js +4 -0
- package/modern/AdapterMomentHijri/AdapterMomentHijri.js +3 -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 +11 -9
- package/modern/DateField/useDateField.js +1 -14
- package/modern/DatePicker/DatePicker.js +9 -9
- package/modern/DatePicker/DatePickerToolbar.js +14 -3
- package/modern/DateTimeField/DateTimeField.js +11 -9
- package/modern/DateTimeField/useDateTimeField.js +1 -19
- package/modern/DateTimePicker/DateTimePicker.js +9 -9
- package/modern/DateTimePicker/DateTimePickerTabs.js +7 -1
- package/modern/DateTimePicker/DateTimePickerToolbar.js +6 -0
- package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -9
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/modern/DesktopTimePicker/DesktopTimePicker.js +9 -8
- package/modern/LocalizationProvider/LocalizationProvider.js +1 -0
- package/modern/MobileDatePicker/MobileDatePicker.js +9 -9
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/modern/MobileTimePicker/MobileTimePicker.js +9 -8
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
- package/modern/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +5 -3
- package/modern/PickersLayout/PickersLayout.js +6 -0
- package/modern/PickersSectionList/PickersSectionList.js +1 -2
- package/modern/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
- package/modern/PickersTextField/PickersInput/PickersInput.js +3 -3
- package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
- package/modern/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
- package/modern/PickersTextField/PickersTextField.js +9 -5
- package/modern/StaticDatePicker/StaticDatePicker.js +0 -1
- package/modern/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
- package/modern/TimeField/TimeField.js +11 -9
- package/modern/TimeField/useTimeField.js +1 -12
- package/modern/TimePicker/TimePicker.js +9 -8
- package/modern/TimePicker/TimePickerToolbar.js +14 -3
- package/modern/index.js +1 -1
- package/modern/internals/components/PickersPopper.js +1 -2
- package/modern/internals/components/PickersToolbar.js +13 -9
- package/modern/internals/demo/DemoContainer.js +6 -5
- package/modern/internals/hooks/defaultizedFieldProps.js +40 -0
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
- package/modern/internals/hooks/useField/buildSectionsFromFormat.js +251 -0
- package/modern/internals/hooks/useField/index.js +1 -1
- package/modern/internals/hooks/useField/useField.js +82 -303
- package/modern/internals/hooks/useField/useField.utils.js +78 -228
- package/modern/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
- package/modern/internals/hooks/useField/useFieldState.js +45 -61
- package/modern/internals/hooks/useField/useFieldV6TextField.js +320 -0
- package/modern/internals/hooks/useField/useFieldV7TextField.js +400 -0
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
- package/modern/internals/hooks/usePicker/usePicker.js +3 -3
- package/modern/internals/hooks/usePicker/usePickerValue.js +2 -18
- package/modern/internals/hooks/usePicker/usePickerViews.js +4 -6
- package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
- package/modern/internals/index.js +2 -1
- package/modern/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
- package/modern/internals/utils/fields.js +1 -1
- package/modern/internals/utils/valueManagers.js +5 -4
- package/modern/locales/beBY.js +13 -0
- package/modern/locales/caES.js +13 -0
- package/modern/locales/csCZ.js +13 -0
- package/modern/locales/daDK.js +13 -0
- package/modern/locales/deDE.js +13 -0
- package/modern/locales/elGR.js +13 -0
- package/modern/locales/enUS.js +12 -1
- package/modern/locales/esES.js +13 -0
- package/modern/locales/eu.js +13 -0
- package/modern/locales/faIR.js +13 -0
- package/modern/locales/fiFI.js +13 -0
- package/modern/locales/frFR.js +13 -0
- package/modern/locales/heIL.js +13 -0
- package/modern/locales/huHU.js +13 -0
- package/modern/locales/isIS.js +13 -0
- package/modern/locales/itIT.js +13 -0
- package/modern/locales/jaJP.js +13 -0
- package/modern/locales/koKR.js +14 -2
- package/modern/locales/kzKZ.js +13 -0
- package/modern/locales/mk.js +13 -0
- package/modern/locales/nbNO.js +13 -0
- package/modern/locales/nlNL.js +13 -0
- package/modern/locales/plPL.js +13 -0
- package/modern/locales/ptBR.js +13 -0
- package/modern/locales/roRO.js +13 -0
- package/modern/locales/ruRU.js +13 -0
- package/modern/locales/skSK.js +13 -0
- package/modern/locales/svSE.js +13 -0
- package/modern/locales/trTR.js +13 -0
- package/modern/locales/ukUA.js +13 -0
- package/modern/locales/urPK.js +13 -0
- package/modern/locales/viVN.js +13 -0
- package/modern/locales/zhCN.js +18 -9
- package/modern/locales/zhHK.js +13 -0
- package/node/AdapterDateFnsBase/AdapterDateFnsBase.js +4 -0
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +4 -0
- package/node/AdapterDayjs/AdapterDayjs.js +6 -0
- package/node/AdapterLuxon/AdapterLuxon.js +6 -0
- package/node/AdapterMoment/AdapterMoment.js +4 -0
- package/node/AdapterMomentHijri/AdapterMomentHijri.js +3 -0
- package/node/AdapterMomentJalaali/AdapterMomentJalaali.js +3 -0
- package/node/DateCalendar/DateCalendar.js +3 -1
- package/node/DateCalendar/DayCalendar.js +1 -1
- package/node/DateField/DateField.js +11 -9
- package/node/DateField/useDateField.js +2 -16
- package/node/DatePicker/DatePicker.js +9 -9
- package/node/DatePicker/DatePickerToolbar.js +14 -3
- package/node/DateTimeField/DateTimeField.js +11 -9
- package/node/DateTimeField/useDateTimeField.js +2 -21
- package/node/DateTimePicker/DateTimePicker.js +9 -9
- package/node/DateTimePicker/DateTimePickerTabs.js +7 -1
- package/node/DateTimePicker/DateTimePickerToolbar.js +6 -0
- package/node/DesktopDatePicker/DesktopDatePicker.js +9 -9
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +9 -9
- package/node/DesktopTimePicker/DesktopTimePicker.js +9 -8
- package/node/LocalizationProvider/LocalizationProvider.js +1 -0
- package/node/MobileDatePicker/MobileDatePicker.js +9 -9
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +9 -9
- package/node/MobileTimePicker/MobileTimePicker.js +9 -8
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +4 -4
- package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +5 -3
- package/node/PickersLayout/PickersLayout.js +6 -0
- package/node/PickersSectionList/PickersSectionList.js +4 -5
- package/node/PickersTextField/PickersFilledInput/PickersFilledInput.js +3 -3
- package/node/PickersTextField/PickersInput/PickersInput.js +3 -3
- package/node/PickersTextField/PickersInputBase/PickersInputBase.js +11 -5
- package/node/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +3 -3
- package/node/PickersTextField/PickersTextField.js +9 -5
- package/node/StaticDatePicker/StaticDatePicker.js +0 -1
- package/node/StaticDateTimePicker/StaticDateTimePicker.js +0 -1
- package/node/TimeField/TimeField.js +11 -9
- package/node/TimeField/useTimeField.js +2 -14
- package/node/TimePicker/TimePicker.js +9 -8
- package/node/TimePicker/TimePickerToolbar.js +14 -3
- package/node/index.js +1 -1
- package/node/internals/components/PickersPopper.js +1 -2
- package/node/internals/components/PickersToolbar.js +13 -9
- package/node/internals/demo/DemoContainer.js +6 -5
- package/node/internals/hooks/defaultizedFieldProps.js +50 -0
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +13 -5
- package/node/internals/hooks/useField/buildSectionsFromFormat.js +259 -0
- package/node/internals/hooks/useField/index.js +4 -10
- package/node/internals/hooks/useField/useField.js +81 -302
- package/node/internals/hooks/useField/useField.utils.js +86 -236
- package/node/internals/hooks/useField/useFieldCharacterEditing.js +7 -7
- package/node/internals/hooks/useField/useFieldState.js +44 -60
- package/node/internals/hooks/useField/useFieldV6TextField.js +331 -0
- package/node/internals/hooks/useField/useFieldV7TextField.js +410 -0
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +13 -5
- package/node/internals/hooks/usePicker/usePicker.js +3 -3
- package/node/internals/hooks/usePicker/usePickerValue.js +2 -18
- package/node/internals/hooks/usePicker/usePickerViews.js +4 -6
- package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -0
- package/node/internals/index.js +27 -8
- package/node/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +21 -3
- package/node/internals/utils/fields.js +1 -1
- package/node/internals/utils/valueManagers.js +4 -3
- package/node/locales/beBY.js +13 -0
- package/node/locales/caES.js +13 -0
- package/node/locales/csCZ.js +13 -0
- package/node/locales/daDK.js +13 -0
- package/node/locales/deDE.js +13 -0
- package/node/locales/elGR.js +13 -0
- package/node/locales/enUS.js +12 -1
- package/node/locales/esES.js +13 -0
- package/node/locales/eu.js +13 -0
- package/node/locales/faIR.js +13 -0
- package/node/locales/fiFI.js +13 -0
- package/node/locales/frFR.js +13 -0
- package/node/locales/heIL.js +13 -0
- package/node/locales/huHU.js +13 -0
- package/node/locales/isIS.js +13 -0
- package/node/locales/itIT.js +13 -0
- package/node/locales/jaJP.js +13 -0
- package/node/locales/koKR.js +14 -2
- package/node/locales/kzKZ.js +13 -0
- package/node/locales/mk.js +13 -0
- package/node/locales/nbNO.js +13 -0
- package/node/locales/nlNL.js +13 -0
- package/node/locales/plPL.js +13 -0
- package/node/locales/ptBR.js +13 -0
- package/node/locales/roRO.js +13 -0
- package/node/locales/ruRU.js +13 -0
- package/node/locales/skSK.js +13 -0
- package/node/locales/svSE.js +13 -0
- package/node/locales/trTR.js +13 -0
- package/node/locales/ukUA.js +13 -0
- package/node/locales/urPK.js +13 -0
- package/node/locales/viVN.js +13 -0
- package/node/locales/zhCN.js +18 -9
- package/node/locales/zhHK.js +13 -0
- package/package.json +4 -4
- package/themeAugmentation/props.d.ts +12 -13
- package/timeViewRenderers/timeViewRenderers.d.ts +1 -1
- package/legacy/AdapterDateFns/AdapterDateFns.js +0 -298
- package/legacy/AdapterDateFns/index.js +0 -1
- package/legacy/AdapterDateFnsBase/AdapterDateFnsBase.js +0 -293
- package/legacy/AdapterDateFnsBase/index.js +0 -1
- package/legacy/AdapterDateFnsJalali/AdapterDateFnsJalali.js +0 -547
- package/legacy/AdapterDateFnsJalali/index.js +0 -1
- package/legacy/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -306
- package/legacy/AdapterDateFnsV3/index.js +0 -1
- package/legacy/AdapterDayjs/AdapterDayjs.js +0 -568
- package/legacy/AdapterDayjs/index.js +0 -1
- package/legacy/AdapterLuxon/AdapterLuxon.js +0 -508
- package/legacy/AdapterLuxon/index.js +0 -1
- package/legacy/AdapterMoment/AdapterMoment.js +0 -481
- package/legacy/AdapterMoment/index.js +0 -1
- package/legacy/AdapterMomentHijri/AdapterMomentHijri.js +0 -238
- package/legacy/AdapterMomentHijri/index.js +0 -1
- package/legacy/AdapterMomentJalaali/AdapterMomentJalaali.js +0 -235
- package/legacy/AdapterMomentJalaali/index.js +0 -1
- package/legacy/DateCalendar/DateCalendar.js +0 -573
- package/legacy/DateCalendar/DateCalendar.types.js +0 -1
- package/legacy/DateCalendar/DayCalendar.js +0 -515
- package/legacy/DateCalendar/PickersFadeTransitionGroup.js +0 -58
- package/legacy/DateCalendar/PickersSlideTransition.js +0 -118
- package/legacy/DateCalendar/dateCalendarClasses.js +0 -5
- package/legacy/DateCalendar/dayCalendarClasses.js +0 -5
- package/legacy/DateCalendar/index.js +0 -5
- package/legacy/DateCalendar/pickersFadeTransitionGroupClasses.js +0 -5
- package/legacy/DateCalendar/pickersSlideTransitionClasses.js +0 -5
- package/legacy/DateCalendar/useCalendarState.js +0 -124
- package/legacy/DateCalendar/useIsDateDisabled.js +0 -30
- package/legacy/DateField/DateField.js +0 -319
- package/legacy/DateField/DateField.types.js +0 -1
- package/legacy/DateField/index.js +0 -2
- package/legacy/DateField/useDateField.js +0 -33
- package/legacy/DatePicker/DatePicker.js +0 -353
- package/legacy/DatePicker/DatePicker.types.js +0 -1
- package/legacy/DatePicker/DatePickerToolbar.js +0 -132
- package/legacy/DatePicker/datePickerToolbarClasses.js +0 -5
- package/legacy/DatePicker/index.js +0 -3
- package/legacy/DatePicker/shared.js +0 -41
- package/legacy/DateTimeField/DateTimeField.js +0 -360
- package/legacy/DateTimeField/DateTimeField.types.js +0 -1
- package/legacy/DateTimeField/index.js +0 -2
- package/legacy/DateTimeField/useDateTimeField.js +0 -38
- package/legacy/DateTimePicker/DateTimePicker.js +0 -424
- package/legacy/DateTimePicker/DateTimePicker.types.js +0 -1
- package/legacy/DateTimePicker/DateTimePickerTabs.js +0 -142
- package/legacy/DateTimePicker/DateTimePickerToolbar.js +0 -385
- package/legacy/DateTimePicker/dateTimePickerTabsClasses.js +0 -5
- package/legacy/DateTimePicker/dateTimePickerToolbarClasses.js +0 -5
- package/legacy/DateTimePicker/index.js +0 -5
- package/legacy/DateTimePicker/shared.js +0 -56
- package/legacy/DayCalendarSkeleton/DayCalendarSkeleton.js +0 -119
- package/legacy/DayCalendarSkeleton/dayCalendarSkeletonClasses.js +0 -5
- package/legacy/DayCalendarSkeleton/index.js +0 -2
- package/legacy/DesktopDatePicker/DesktopDatePicker.js +0 -372
- package/legacy/DesktopDatePicker/DesktopDatePicker.types.js +0 -1
- package/legacy/DesktopDatePicker/index.js +0 -1
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -480
- package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.types.js +0 -1
- package/legacy/DesktopDateTimePicker/index.js +0 -1
- package/legacy/DesktopTimePicker/DesktopTimePicker.js +0 -355
- package/legacy/DesktopTimePicker/DesktopTimePicker.types.js +0 -1
- package/legacy/DesktopTimePicker/index.js +0 -1
- package/legacy/DigitalClock/DigitalClock.js +0 -443
- package/legacy/DigitalClock/DigitalClock.types.js +0 -1
- package/legacy/DigitalClock/digitalClockClasses.js +0 -6
- package/legacy/DigitalClock/index.js +0 -2
- package/legacy/LocalizationProvider/LocalizationProvider.js +0 -140
- package/legacy/LocalizationProvider/index.js +0 -1
- package/legacy/MobileDatePicker/MobileDatePicker.js +0 -369
- package/legacy/MobileDatePicker/MobileDatePicker.types.js +0 -1
- package/legacy/MobileDatePicker/index.js +0 -1
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +0 -428
- package/legacy/MobileDateTimePicker/MobileDateTimePicker.types.js +0 -1
- package/legacy/MobileDateTimePicker/index.js +0 -1
- package/legacy/MobileTimePicker/MobileTimePicker.js +0 -311
- package/legacy/MobileTimePicker/MobileTimePicker.types.js +0 -1
- package/legacy/MobileTimePicker/index.js +0 -1
- package/legacy/MonthCalendar/MonthCalendar.js +0 -338
- package/legacy/MonthCalendar/MonthCalendar.types.js +0 -1
- package/legacy/MonthCalendar/PickersMonth.js +0 -135
- package/legacy/MonthCalendar/index.js +0 -3
- package/legacy/MonthCalendar/monthCalendarClasses.js +0 -5
- package/legacy/MonthCalendar/pickersMonthClasses.js +0 -5
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.js +0 -521
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.types.js +0 -1
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClock.utils.js +0 -76
- package/legacy/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +0 -173
- package/legacy/MultiSectionDigitalClock/index.js +0 -3
- package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +0 -6
- package/legacy/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +0 -6
- package/legacy/PickersActionBar/PickersActionBar.js +0 -86
- package/legacy/PickersActionBar/index.js +0 -1
- package/legacy/PickersCalendarHeader/PickersCalendarHeader.js +0 -284
- package/legacy/PickersCalendarHeader/PickersCalendarHeader.types.js +0 -1
- package/legacy/PickersCalendarHeader/index.js +0 -2
- package/legacy/PickersCalendarHeader/pickersCalendarHeaderClasses.js +0 -5
- package/legacy/PickersDay/PickersDay.js +0 -367
- package/legacy/PickersDay/index.js +0 -2
- package/legacy/PickersDay/pickersDayClasses.js +0 -5
- package/legacy/PickersLayout/PickersLayout.js +0 -159
- package/legacy/PickersLayout/PickersLayout.types.js +0 -1
- package/legacy/PickersLayout/index.js +0 -3
- package/legacy/PickersLayout/pickersLayoutClasses.js +0 -6
- package/legacy/PickersLayout/usePickerLayout.js +0 -134
- package/legacy/PickersSectionList/PickersSectionList.js +0 -235
- package/legacy/PickersSectionList/PickersSectionList.types.js +0 -1
- package/legacy/PickersSectionList/index.js +0 -2
- package/legacy/PickersSectionList/pickersSectionListClasses.js +0 -6
- package/legacy/PickersShortcuts/PickersShortcuts.js +0 -110
- package/legacy/PickersShortcuts/index.js +0 -1
- package/legacy/PickersTextField/PickersFilledInput/PickersFilledInput.js +0 -234
- package/legacy/PickersTextField/PickersFilledInput/index.js +0 -2
- package/legacy/PickersTextField/PickersFilledInput/pickersFilledInputClasses.js +0 -8
- package/legacy/PickersTextField/PickersInput/PickersInput.js +0 -190
- package/legacy/PickersTextField/PickersInput/index.js +0 -2
- package/legacy/PickersTextField/PickersInput/pickersInputClasses.js +0 -8
- package/legacy/PickersTextField/PickersInputBase/PickersInputBase.js +0 -340
- package/legacy/PickersTextField/PickersInputBase/PickersInputBase.types.js +0 -1
- package/legacy/PickersTextField/PickersInputBase/index.js +0 -2
- package/legacy/PickersTextField/PickersInputBase/pickersInputBaseClasses.js +0 -6
- package/legacy/PickersTextField/PickersOutlinedInput/Outline.js +0 -121
- package/legacy/PickersTextField/PickersOutlinedInput/PickersOutlinedInput.js +0 -183
- package/legacy/PickersTextField/PickersOutlinedInput/index.js +0 -2
- package/legacy/PickersTextField/PickersOutlinedInput/pickersOutlinedInputClasses.js +0 -8
- package/legacy/PickersTextField/PickersTextField.js +0 -258
- package/legacy/PickersTextField/PickersTextField.types.js +0 -1
- package/legacy/PickersTextField/index.js +0 -6
- package/legacy/PickersTextField/pickersTextFieldClasses.js +0 -6
- package/legacy/StaticDatePicker/StaticDatePicker.js +0 -297
- package/legacy/StaticDatePicker/StaticDatePicker.types.js +0 -1
- package/legacy/StaticDatePicker/index.js +0 -1
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +0 -356
- package/legacy/StaticDateTimePicker/StaticDateTimePicker.types.js +0 -1
- package/legacy/StaticDateTimePicker/index.js +0 -1
- package/legacy/StaticTimePicker/StaticTimePicker.js +0 -238
- package/legacy/StaticTimePicker/StaticTimePicker.types.js +0 -1
- package/legacy/StaticTimePicker/index.js +0 -1
- package/legacy/TimeClock/Clock.js +0 -358
- package/legacy/TimeClock/ClockNumber.js +0 -87
- package/legacy/TimeClock/ClockNumbers.js +0 -73
- package/legacy/TimeClock/ClockPointer.js +0 -106
- package/legacy/TimeClock/TimeClock.js +0 -481
- package/legacy/TimeClock/TimeClock.types.js +0 -1
- package/legacy/TimeClock/clockClasses.js +0 -5
- package/legacy/TimeClock/clockNumberClasses.js +0 -5
- package/legacy/TimeClock/clockPointerClasses.js +0 -5
- package/legacy/TimeClock/index.js +0 -5
- package/legacy/TimeClock/shared.js +0 -53
- package/legacy/TimeClock/timeClockClasses.js +0 -5
- package/legacy/TimeField/TimeField.js +0 -320
- package/legacy/TimeField/TimeField.types.js +0 -1
- package/legacy/TimeField/index.js +0 -2
- package/legacy/TimeField/useTimeField.js +0 -31
- package/legacy/TimePicker/TimePicker.js +0 -314
- package/legacy/TimePicker/TimePicker.types.js +0 -1
- package/legacy/TimePicker/TimePickerToolbar.js +0 -260
- package/legacy/TimePicker/index.js +0 -3
- package/legacy/TimePicker/shared.js +0 -45
- package/legacy/TimePicker/timePickerToolbarClasses.js +0 -5
- package/legacy/YearCalendar/PickersYear.js +0 -137
- package/legacy/YearCalendar/YearCalendar.js +0 -362
- package/legacy/YearCalendar/YearCalendar.types.js +0 -1
- package/legacy/YearCalendar/index.js +0 -3
- package/legacy/YearCalendar/pickersYearClasses.js +0 -5
- package/legacy/YearCalendar/yearCalendarClasses.js +0 -5
- package/legacy/dateTimeViewRenderers/dateTimeViewRenderers.js +0 -162
- package/legacy/dateTimeViewRenderers/index.js +0 -1
- package/legacy/dateViewRenderers/dateViewRenderers.js +0 -82
- package/legacy/dateViewRenderers/index.js +0 -1
- package/legacy/hooks/index.js +0 -1
- package/legacy/hooks/useClearableField.js +0 -76
- package/legacy/icons/index.js +0 -68
- package/legacy/index.js +0 -59
- package/legacy/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +0 -5
- package/legacy/internals/components/DateTimeViewWrapper/index.js +0 -1
- package/legacy/internals/components/PickerViewRoot/PickerViewRoot.js +0 -10
- package/legacy/internals/components/PickerViewRoot/index.js +0 -1
- package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +0 -170
- package/legacy/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.types.js +0 -1
- package/legacy/internals/components/PickersArrowSwitcher/index.js +0 -2
- package/legacy/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js +0 -5
- package/legacy/internals/components/PickersModalDialog.js +0 -42
- package/legacy/internals/components/PickersPopper.js +0 -325
- package/legacy/internals/components/PickersToolbar.js +0 -92
- package/legacy/internals/components/PickersToolbarButton.js +0 -61
- package/legacy/internals/components/PickersToolbarText.js +0 -52
- package/legacy/internals/components/pickersPopperClasses.js +0 -5
- package/legacy/internals/components/pickersToolbarButtonClasses.js +0 -5
- package/legacy/internals/components/pickersToolbarClasses.js +0 -5
- package/legacy/internals/components/pickersToolbarTextClasses.js +0 -5
- package/legacy/internals/constants/dimensions.js +0 -7
- package/legacy/internals/demo/DemoContainer.js +0 -163
- package/legacy/internals/demo/index.js +0 -1
- package/legacy/internals/hooks/date-helpers-hooks.js +0 -37
- package/legacy/internals/hooks/useClockReferenceDate.js +0 -28
- package/legacy/internals/hooks/useDefaultReduceAnimations.js +0 -14
- package/legacy/internals/hooks/useDesktopPicker/index.js +0 -1
- package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +0 -174
- package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.types.js +0 -1
- package/legacy/internals/hooks/useField/index.js +0 -2
- package/legacy/internals/hooks/useField/useField.js +0 -470
- package/legacy/internals/hooks/useField/useField.types.js +0 -1
- package/legacy/internals/hooks/useField/useField.utils.js +0 -828
- package/legacy/internals/hooks/useField/useFieldCharacterEditing.js +0 -277
- package/legacy/internals/hooks/useField/useFieldState.js +0 -321
- package/legacy/internals/hooks/useIsLandscape.js +0 -39
- package/legacy/internals/hooks/useMobilePicker/index.js +0 -1
- package/legacy/internals/hooks/useMobilePicker/useMobilePicker.js +0 -126
- package/legacy/internals/hooks/useMobilePicker/useMobilePicker.types.js +0 -1
- package/legacy/internals/hooks/useOpenState.js +0 -38
- package/legacy/internals/hooks/usePicker/index.js +0 -1
- package/legacy/internals/hooks/usePicker/usePicker.js +0 -54
- package/legacy/internals/hooks/usePicker/usePicker.types.js +0 -1
- package/legacy/internals/hooks/usePicker/usePickerLayoutProps.js +0 -28
- package/legacy/internals/hooks/usePicker/usePickerValue.js +0 -365
- package/legacy/internals/hooks/usePicker/usePickerValue.types.js +0 -1
- package/legacy/internals/hooks/usePicker/usePickerViews.js +0 -172
- package/legacy/internals/hooks/useStaticPicker/index.js +0 -1
- package/legacy/internals/hooks/useStaticPicker/useStaticPicker.js +0 -66
- package/legacy/internals/hooks/useStaticPicker/useStaticPicker.types.js +0 -1
- package/legacy/internals/hooks/useUtils.js +0 -38
- package/legacy/internals/hooks/useValidation.js +0 -20
- package/legacy/internals/hooks/useValueWithTimezone.js +0 -81
- package/legacy/internals/hooks/useViews.js +0 -124
- package/legacy/internals/index.js +0 -35
- package/legacy/internals/models/common.js +0 -1
- package/legacy/internals/models/fields.js +0 -1
- package/legacy/internals/models/helpers.js +0 -1
- package/legacy/internals/models/index.js +0 -2
- package/legacy/internals/models/props/basePickerProps.js +0 -1
- package/legacy/internals/models/props/clock.js +0 -1
- package/legacy/internals/models/props/tabs.js +0 -1
- package/legacy/internals/models/props/toolbar.js +0 -1
- package/legacy/internals/models/validation.js +0 -1
- package/legacy/internals/utils/convertFieldResponseIntoMuiTextFieldProps.js +0 -24
- package/legacy/internals/utils/date-time-utils.js +0 -71
- package/legacy/internals/utils/date-utils.js +0 -129
- package/legacy/internals/utils/fields.js +0 -28
- package/legacy/internals/utils/getDefaultReferenceDate.js +0 -65
- package/legacy/internals/utils/time-utils.js +0 -63
- package/legacy/internals/utils/utils.js +0 -40
- package/legacy/internals/utils/validation/extractValidationProps.js +0 -16
- package/legacy/internals/utils/validation/validateDate.js +0 -38
- package/legacy/internals/utils/validation/validateDateTime.js +0 -20
- package/legacy/internals/utils/validation/validateTime.js +0 -42
- package/legacy/internals/utils/valueManagers.js +0 -67
- package/legacy/internals/utils/views.js +0 -29
- package/legacy/internals/utils/warning.js +0 -39
- package/legacy/locales/beBY.js +0 -99
- package/legacy/locales/caES.js +0 -100
- package/legacy/locales/csCZ.js +0 -100
- package/legacy/locales/daDK.js +0 -102
- package/legacy/locales/deDE.js +0 -101
- package/legacy/locales/elGR.js +0 -100
- package/legacy/locales/enUS.js +0 -96
- package/legacy/locales/esES.js +0 -99
- package/legacy/locales/eu.js +0 -99
- package/legacy/locales/faIR.js +0 -100
- package/legacy/locales/fiFI.js +0 -100
- package/legacy/locales/frFR.js +0 -98
- package/legacy/locales/heIL.js +0 -100
- package/legacy/locales/huHU.js +0 -99
- package/legacy/locales/index.js +0 -35
- package/legacy/locales/isIS.js +0 -100
- package/legacy/locales/itIT.js +0 -98
- package/legacy/locales/jaJP.js +0 -102
- package/legacy/locales/koKR.js +0 -98
- package/legacy/locales/kzKZ.js +0 -99
- package/legacy/locales/mk.js +0 -96
- package/legacy/locales/nbNO.js +0 -100
- package/legacy/locales/nlNL.js +0 -100
- package/legacy/locales/plPL.js +0 -85
- package/legacy/locales/ptBR.js +0 -100
- package/legacy/locales/roRO.js +0 -99
- package/legacy/locales/ruRU.js +0 -98
- package/legacy/locales/skSK.js +0 -100
- package/legacy/locales/svSE.js +0 -85
- package/legacy/locales/trTR.js +0 -100
- package/legacy/locales/ukUA.js +0 -100
- package/legacy/locales/urPK.js +0 -85
- package/legacy/locales/utils/getPickersLocalization.js +0 -12
- package/legacy/locales/utils/pickersLocaleTextApi.js +0 -1
- package/legacy/locales/viVN.js +0 -100
- package/legacy/locales/zhCN.js +0 -100
- package/legacy/locales/zhHK.js +0 -100
- package/legacy/models/adapters.js +0 -1
- package/legacy/models/common.js +0 -1
- package/legacy/models/fields.js +0 -1
- package/legacy/models/index.js +0 -7
- package/legacy/models/pickers.js +0 -1
- package/legacy/models/timezone.js +0 -1
- package/legacy/models/validation.js +0 -1
- package/legacy/models/views.js +0 -1
- package/legacy/themeAugmentation/index.js +0 -3
- package/legacy/timeViewRenderers/index.js +0 -1
- package/legacy/timeViewRenderers/timeViewRenderers.js +0 -186
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import Stack, { stackClasses } from '@mui/material/Stack';
|
|
4
4
|
import Typography from '@mui/material/Typography';
|
|
5
5
|
import { textFieldClasses } from '@mui/material/TextField';
|
|
6
|
+
import { pickersTextFieldClasses } from '@mui/x-date-pickers/PickersTextField';
|
|
6
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
8
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
9
|
const getChildTypeFromChildName = childName => {
|
|
@@ -123,13 +124,13 @@ export function DemoContainer(props) {
|
|
|
123
124
|
} else if (childrenTypes.has('single-input-range-field')) {
|
|
124
125
|
if (!childrenSupportedSections.has('date-time')) {
|
|
125
126
|
extraSx = {
|
|
126
|
-
[`& > .${textFieldClasses.root}`]: {
|
|
127
|
+
[`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
|
|
127
128
|
minWidth: 300
|
|
128
129
|
}
|
|
129
130
|
};
|
|
130
131
|
} else {
|
|
131
132
|
extraSx = {
|
|
132
|
-
[`& > .${textFieldClasses.root}`]: {
|
|
133
|
+
[`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
|
|
133
134
|
minWidth: {
|
|
134
135
|
xs: 300,
|
|
135
136
|
// If demo also contains MultiInputDateTimeRangeField, increase width to avoid cutting off the value.
|
|
@@ -140,21 +141,21 @@ export function DemoContainer(props) {
|
|
|
140
141
|
}
|
|
141
142
|
} else if (childrenSupportedSections.has('date-time')) {
|
|
142
143
|
extraSx = {
|
|
143
|
-
[`& > .${textFieldClasses.root}`]: {
|
|
144
|
+
[`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
|
|
144
145
|
minWidth: 270
|
|
145
146
|
}
|
|
146
147
|
};
|
|
147
148
|
if (childrenTypes.has('multi-input-range-field')) {
|
|
148
149
|
// increase width for the multi input date time range fields
|
|
149
150
|
demoItemSx = {
|
|
150
|
-
[`& > .${stackClasses.root} > .${textFieldClasses.root}`]: {
|
|
151
|
+
[`& > .${stackClasses.root} > .${textFieldClasses.root}, & > .${stackClasses.root} > .${pickersTextFieldClasses.root}`]: {
|
|
151
152
|
minWidth: 210
|
|
152
153
|
}
|
|
153
154
|
};
|
|
154
155
|
}
|
|
155
156
|
} else {
|
|
156
157
|
extraSx = {
|
|
157
|
-
[`& > .${textFieldClasses.root}`]: {
|
|
158
|
+
[`& > .${textFieldClasses.root}, & > .${pickersTextFieldClasses.root}`]: {
|
|
158
159
|
minWidth: 200
|
|
159
160
|
}
|
|
160
161
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseDateValidationProps, BaseTimeValidationProps, DateTimeValidationProps, TimeValidationProps } from '../models/validation';
|
|
2
|
+
import { DefaultizedProps } from '../models/helpers';
|
|
3
|
+
import { PickerValidDate } from '../../models';
|
|
4
|
+
export interface UseDefaultizedDateFieldBaseProps<TDate extends PickerValidDate> extends BaseDateValidationProps<TDate> {
|
|
5
|
+
format?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const useDefaultizedDateField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedDateFieldBaseProps<TDate>, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedDateFieldBaseProps<any>> & Required<Pick<TKnownProps, keyof UseDefaultizedDateFieldBaseProps<any>>>;
|
|
8
|
+
export interface UseDefaultizedTimeFieldBaseProps extends BaseTimeValidationProps {
|
|
9
|
+
format?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const useDefaultizedTimeField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedTimeFieldBaseProps & {
|
|
12
|
+
ampm?: boolean | undefined;
|
|
13
|
+
}, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedTimeFieldBaseProps> & Required<Pick<TKnownProps, keyof UseDefaultizedTimeFieldBaseProps>>;
|
|
14
|
+
export interface UseDefaultizedDateTimeFieldBaseProps<TDate extends PickerValidDate> extends BaseDateValidationProps<TDate>, BaseTimeValidationProps {
|
|
15
|
+
format?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare const useDefaultizedDateTimeField: <TDate extends PickerValidDate, TKnownProps extends UseDefaultizedDateTimeFieldBaseProps<TDate> & DateTimeValidationProps<TDate> & TimeValidationProps<TDate> & {
|
|
18
|
+
ampm?: boolean | undefined;
|
|
19
|
+
}, TAllProps extends {}>(props: TKnownProps & TAllProps) => TAllProps & Omit<TKnownProps, keyof UseDefaultizedDateTimeFieldBaseProps<any>> & Required<Pick<TKnownProps, keyof UseDefaultizedDateTimeFieldBaseProps<any>>>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { applyDefaultDate } from '../utils/date-utils';
|
|
3
|
+
import { useUtils, useDefaultDates } from './useUtils';
|
|
4
|
+
export const useDefaultizedDateField = props => {
|
|
5
|
+
var _props$disablePast, _props$disableFuture, _props$format;
|
|
6
|
+
const utils = useUtils();
|
|
7
|
+
const defaultDates = useDefaultDates();
|
|
8
|
+
return _extends({}, props, {
|
|
9
|
+
disablePast: (_props$disablePast = props.disablePast) != null ? _props$disablePast : false,
|
|
10
|
+
disableFuture: (_props$disableFuture = props.disableFuture) != null ? _props$disableFuture : false,
|
|
11
|
+
format: (_props$format = props.format) != null ? _props$format : utils.formats.keyboardDate,
|
|
12
|
+
minDate: applyDefaultDate(utils, props.minDate, defaultDates.minDate),
|
|
13
|
+
maxDate: applyDefaultDate(utils, props.maxDate, defaultDates.maxDate)
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
export const useDefaultizedTimeField = props => {
|
|
17
|
+
var _props$ampm, _props$disablePast2, _props$disableFuture2, _props$format2;
|
|
18
|
+
const utils = useUtils();
|
|
19
|
+
const ampm = (_props$ampm = props.ampm) != null ? _props$ampm : utils.is12HourCycleInCurrentLocale();
|
|
20
|
+
const defaultFormat = ampm ? utils.formats.fullTime12h : utils.formats.fullTime24h;
|
|
21
|
+
return _extends({}, props, {
|
|
22
|
+
disablePast: (_props$disablePast2 = props.disablePast) != null ? _props$disablePast2 : false,
|
|
23
|
+
disableFuture: (_props$disableFuture2 = props.disableFuture) != null ? _props$disableFuture2 : false,
|
|
24
|
+
format: (_props$format2 = props.format) != null ? _props$format2 : defaultFormat
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
export const useDefaultizedDateTimeField = props => {
|
|
28
|
+
var _props$ampm2, _props$disablePast3, _props$disableFuture3, _props$format3, _props$minDateTime, _props$maxDateTime, _props$minDateTime2, _props$maxDateTime2;
|
|
29
|
+
const utils = useUtils();
|
|
30
|
+
const defaultDates = useDefaultDates();
|
|
31
|
+
const ampm = (_props$ampm2 = props.ampm) != null ? _props$ampm2 : utils.is12HourCycleInCurrentLocale();
|
|
32
|
+
const defaultFormat = ampm ? utils.formats.keyboardDateTime12h : utils.formats.keyboardDateTime24h;
|
|
33
|
+
return _extends({}, props, {
|
|
34
|
+
disablePast: (_props$disablePast3 = props.disablePast) != null ? _props$disablePast3 : false,
|
|
35
|
+
disableFuture: (_props$disableFuture3 = props.disableFuture) != null ? _props$disableFuture3 : false,
|
|
36
|
+
format: (_props$format3 = props.format) != null ? _props$format3 : defaultFormat,
|
|
37
|
+
disableIgnoringDatePartForTimeValidation: Boolean(props.minDateTime || props.maxDateTime),
|
|
38
|
+
minDate: applyDefaultDate(utils, (_props$minDateTime = props.minDateTime) != null ? _props$minDateTime : props.minDate, defaultDates.minDate),
|
|
39
|
+
maxDate: applyDefaultDate(utils, (_props$maxDateTime = props.maxDateTime) != null ? _props$maxDateTime : props.maxDate, defaultDates.maxDate),
|
|
40
|
+
minTime: (_props$minDateTime2 = props.minDateTime) != null ? _props$minDateTime2 : props.minTime,
|
|
41
|
+
maxTime: (_props$maxDateTime2 = props.maxDateTime) != null ? _props$maxDateTime2 : props.maxTime
|
|
42
|
+
});
|
|
43
|
+
};
|
|
@@ -8,6 +8,6 @@ import { DateOrTimeViewWithMeridiem } from '../../models';
|
|
|
8
8
|
* - DesktopDateTimePicker
|
|
9
9
|
* - DesktopTimePicker
|
|
10
10
|
*/
|
|
11
|
-
export declare const useDesktopPicker: <TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseDesktopPickerProps<TDate, TView, any, TExternalProps>>({ props, getOpenDialogAriaText, ...pickerParams }: UseDesktopPickerParams<TDate, TView, TExternalProps>) => {
|
|
11
|
+
export declare const useDesktopPicker: <TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TDate, TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>>({ props, getOpenDialogAriaText, ...pickerParams }: UseDesktopPickerParams<TDate, TView, TEnableAccessibleFieldDOMStructure, TExternalProps>) => {
|
|
12
12
|
renderPicker: () => React.JSX.Element;
|
|
13
13
|
};
|
|
@@ -36,6 +36,9 @@ export const useDesktopPicker = _ref => {
|
|
|
36
36
|
sx,
|
|
37
37
|
format,
|
|
38
38
|
formatDensity,
|
|
39
|
+
enableAccessibleFieldDOMStructure,
|
|
40
|
+
selectedSections,
|
|
41
|
+
onSelectedSectionsChange,
|
|
39
42
|
timezone,
|
|
40
43
|
name,
|
|
41
44
|
label,
|
|
@@ -47,8 +50,8 @@ export const useDesktopPicker = _ref => {
|
|
|
47
50
|
reduceAnimations
|
|
48
51
|
} = props;
|
|
49
52
|
const utils = useUtils();
|
|
50
|
-
const internalInputRef = React.useRef(null);
|
|
51
53
|
const containerRef = React.useRef(null);
|
|
54
|
+
const fieldRef = React.useRef(null);
|
|
52
55
|
const labelId = useId();
|
|
53
56
|
const isToolbarHidden = (_innerSlotProps$toolb = innerSlotProps == null || (_innerSlotProps$toolb2 = innerSlotProps.toolbar) == null ? void 0 : _innerSlotProps$toolb2.hidden) != null ? _innerSlotProps$toolb : false;
|
|
54
57
|
const {
|
|
@@ -61,7 +64,7 @@ export const useDesktopPicker = _ref => {
|
|
|
61
64
|
fieldProps: pickerFieldProps
|
|
62
65
|
} = usePicker(_extends({}, pickerParams, {
|
|
63
66
|
props,
|
|
64
|
-
|
|
67
|
+
fieldRef,
|
|
65
68
|
autoFocusView: true,
|
|
66
69
|
additionalViewProps: {},
|
|
67
70
|
wrapperVariant: 'desktop'
|
|
@@ -103,12 +106,17 @@ export const useDesktopPicker = _ref => {
|
|
|
103
106
|
sx,
|
|
104
107
|
format,
|
|
105
108
|
formatDensity,
|
|
109
|
+
enableAccessibleFieldDOMStructure,
|
|
110
|
+
selectedSections,
|
|
111
|
+
onSelectedSectionsChange,
|
|
106
112
|
timezone,
|
|
107
113
|
label,
|
|
108
114
|
name,
|
|
109
115
|
autoFocus: autoFocus && !props.open,
|
|
110
116
|
focused: open ? true : undefined
|
|
111
|
-
}
|
|
117
|
+
}, inputRef ? {
|
|
118
|
+
inputRef
|
|
119
|
+
} : {}),
|
|
112
120
|
ownerState: props
|
|
113
121
|
});
|
|
114
122
|
|
|
@@ -129,7 +137,6 @@ export const useDesktopPicker = _ref => {
|
|
|
129
137
|
clearButton: slots.clearButton
|
|
130
138
|
}, fieldProps.slots);
|
|
131
139
|
const Layout = (_slots$layout = slots.layout) != null ? _slots$layout : PickersLayout;
|
|
132
|
-
const handleInputRef = useForkRef(internalInputRef, fieldProps.inputRef, inputRef);
|
|
133
140
|
let labelledById = labelId;
|
|
134
141
|
if (isToolbarHidden) {
|
|
135
142
|
if (label) {
|
|
@@ -146,12 +153,13 @@ export const useDesktopPicker = _ref => {
|
|
|
146
153
|
'aria-labelledby': labelledById
|
|
147
154
|
}, innerSlotProps == null ? void 0 : innerSlotProps.popper)
|
|
148
155
|
});
|
|
156
|
+
const handleFieldRef = useForkRef(fieldRef, fieldProps.unstableFieldRef);
|
|
149
157
|
const renderPicker = () => /*#__PURE__*/_jsxs(LocalizationProvider, {
|
|
150
158
|
localeText: localeText,
|
|
151
159
|
children: [/*#__PURE__*/_jsx(Field, _extends({}, fieldProps, {
|
|
152
160
|
slots: slotsForField,
|
|
153
161
|
slotProps: slotProps,
|
|
154
|
-
|
|
162
|
+
unstableFieldRef: handleFieldRef
|
|
155
163
|
})), /*#__PURE__*/_jsx(PickersPopper, _extends({
|
|
156
164
|
role: "dialog",
|
|
157
165
|
placement: "bottom-start",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import IconButton, { IconButtonProps } from '@mui/material/IconButton';
|
|
3
3
|
import { InputAdornmentProps } from '@mui/material/InputAdornment';
|
|
4
|
-
import TextField
|
|
4
|
+
import TextField from '@mui/material/TextField';
|
|
5
5
|
import { SlotComponentProps } from '@mui/base/utils';
|
|
6
6
|
import { BaseNonStaticPickerProps, BasePickerProps, BaseNonRangeNonStaticPickerProps } from '../../models/props/basePickerProps';
|
|
7
7
|
import { PickersPopperSlots, PickersPopperSlotProps } from '../../components/PickersPopper';
|
|
@@ -12,17 +12,17 @@ import { UsePickerValueNonStaticProps } from '../usePicker/usePickerValue.types'
|
|
|
12
12
|
import { UsePickerViewsNonStaticProps, UsePickerViewsProps } from '../usePicker/usePickerViews';
|
|
13
13
|
import { DateOrTimeViewWithMeridiem } from '../../models';
|
|
14
14
|
import { UseClearableFieldSlots, UseClearableFieldSlotProps } from '../../../hooks/useClearableField';
|
|
15
|
+
import { SlotComponentPropsFromProps } from '../../models/helpers';
|
|
15
16
|
export interface UseDesktopPickerSlots<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends Pick<PickersPopperSlots, 'desktopPaper' | 'desktopTransition' | 'desktopTrapFocus' | 'popper'>, ExportedPickersLayoutSlots<TDate | null, TDate, TView>, UseClearableFieldSlots {
|
|
16
17
|
/**
|
|
17
18
|
* Component used to enter the date with the keyboard.
|
|
18
19
|
*/
|
|
19
|
-
field: React.ElementType
|
|
20
|
+
field: React.ElementType;
|
|
20
21
|
/**
|
|
21
22
|
* Form control with an input to render the value inside the default field.
|
|
22
|
-
*
|
|
23
|
-
* @default TextField from '@mui/material'
|
|
23
|
+
* @default TextField from '@mui/material' or PickersTextField if `enableAccessibleFieldDOMStructure` is `true`.
|
|
24
24
|
*/
|
|
25
|
-
textField?: React.ElementType
|
|
25
|
+
textField?: React.ElementType;
|
|
26
26
|
/**
|
|
27
27
|
* Component displayed on the start or end input adornment used to open the picker on desktop.
|
|
28
28
|
* @default InputAdornment
|
|
@@ -38,22 +38,23 @@ export interface UseDesktopPickerSlots<TDate extends PickerValidDate, TView exte
|
|
|
38
38
|
*/
|
|
39
39
|
openPickerIcon: React.ElementType;
|
|
40
40
|
}
|
|
41
|
-
export interface UseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends ExportedUseDesktopPickerSlotProps<TDate, TView>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
|
|
41
|
+
export interface UseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends ExportedUseDesktopPickerSlotProps<TDate, TView, TEnableAccessibleFieldDOMStructure>, Pick<PickersLayoutSlotProps<TDate | null, TDate, TView>, 'toolbar'> {
|
|
42
42
|
}
|
|
43
|
-
export interface ExportedUseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView>, UseClearableFieldSlotProps {
|
|
44
|
-
field?:
|
|
43
|
+
export interface ExportedUseDesktopPickerSlotProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean> extends PickersPopperSlotProps, ExportedPickersLayoutSlotProps<TDate | null, TDate, TView>, UseClearableFieldSlotProps {
|
|
44
|
+
field?: SlotComponentPropsFromProps<BaseSingleInputFieldProps<TDate | null, TDate, FieldSection, TEnableAccessibleFieldDOMStructure, unknown>, {}, UsePickerProps<TDate | null, TDate, any, any, any, any>>;
|
|
45
45
|
textField?: SlotComponentProps<typeof TextField, {}, Record<string, any>>;
|
|
46
46
|
inputAdornment?: Partial<InputAdornmentProps>;
|
|
47
|
-
openPickerButton?: SlotComponentProps<typeof IconButton, {}, UseDesktopPickerProps<TDate, any, any, any>>;
|
|
47
|
+
openPickerButton?: SlotComponentProps<typeof IconButton, {}, UseDesktopPickerProps<TDate, any, TEnableAccessibleFieldDOMStructure, any, any>>;
|
|
48
48
|
openPickerIcon?: Record<string, any>;
|
|
49
49
|
}
|
|
50
|
-
export interface DesktopOnlyPickerProps
|
|
50
|
+
export interface DesktopOnlyPickerProps extends BaseNonStaticPickerProps, BaseNonRangeNonStaticPickerProps, UsePickerValueNonStaticProps, UsePickerViewsNonStaticProps {
|
|
51
51
|
/**
|
|
52
52
|
* If `true`, the `input` element is focused during the first mount.
|
|
53
|
+
* @default false
|
|
53
54
|
*/
|
|
54
55
|
autoFocus?: boolean;
|
|
55
56
|
}
|
|
56
|
-
export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<any, any, TView, any, any>> extends BasePickerProps<TDate | null, TDate, TView, TError, TExternalProps, {}>, DesktopOnlyPickerProps
|
|
57
|
+
export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TError, TExternalProps extends UsePickerViewsProps<any, any, TView, any, any>> extends BasePickerProps<TDate | null, TDate, TView, TError, TExternalProps, {}>, DesktopOnlyPickerProps {
|
|
57
58
|
/**
|
|
58
59
|
* Overridable component slots.
|
|
59
60
|
* @default {}
|
|
@@ -63,9 +64,9 @@ export interface UseDesktopPickerProps<TDate extends PickerValidDate, TView exte
|
|
|
63
64
|
* The props used for each component slot.
|
|
64
65
|
* @default {}
|
|
65
66
|
*/
|
|
66
|
-
slotProps?: UseDesktopPickerSlotProps<TDate, TView>;
|
|
67
|
+
slotProps?: UseDesktopPickerSlotProps<TDate, TView, TEnableAccessibleFieldDOMStructure>;
|
|
67
68
|
}
|
|
68
|
-
export interface UseDesktopPickerParams<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseDesktopPickerProps<TDate, TView, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
|
|
69
|
+
export interface UseDesktopPickerParams<TDate extends PickerValidDate, TView extends DateOrTimeViewWithMeridiem, TEnableAccessibleFieldDOMStructure extends boolean, TExternalProps extends UseDesktopPickerProps<TDate, TView, TEnableAccessibleFieldDOMStructure, any, TExternalProps>> extends Pick<UsePickerParams<TDate | null, TDate, TView, FieldSection, TExternalProps, {}>, 'valueManager' | 'valueType' | 'validator'> {
|
|
69
70
|
props: TExternalProps;
|
|
70
71
|
getOpenDialogAriaText: (date: TDate | null, utils: MuiPickersAdapter<TDate>) => string;
|
|
71
72
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FieldSection, MuiPickersAdapter, PickersTimezone, PickerValidDate } from '../../../models';
|
|
2
|
+
import { PickersLocaleText } from '../../../locales';
|
|
3
|
+
interface BuildSectionsFromFormatParams<TDate extends PickerValidDate> {
|
|
4
|
+
utils: MuiPickersAdapter<TDate>;
|
|
5
|
+
format: string;
|
|
6
|
+
formatDensity: 'dense' | 'spacious';
|
|
7
|
+
isRTL: boolean;
|
|
8
|
+
timezone: PickersTimezone;
|
|
9
|
+
shouldRespectLeadingZeros: boolean;
|
|
10
|
+
localeText: PickersLocaleText<TDate>;
|
|
11
|
+
localizedDigits: string[];
|
|
12
|
+
date: TDate | null;
|
|
13
|
+
enableAccessibleFieldDOMStructure: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare const buildSectionsFromFormat: <TDate extends PickerValidDate>(params: BuildSectionsFromFormatParams<TDate>) => FieldSection[];
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { applyLocalizedDigits, cleanLeadingZeros, doesSectionFormatHaveLeadingZeros, getDateSectionConfigFromFormatToken, removeLocalizedDigits } from './useField.utils';
|
|
3
|
+
const expandFormat = ({
|
|
4
|
+
utils,
|
|
5
|
+
format
|
|
6
|
+
}) => {
|
|
7
|
+
// Expand the provided format
|
|
8
|
+
let formatExpansionOverflow = 10;
|
|
9
|
+
let prevFormat = format;
|
|
10
|
+
let nextFormat = utils.expandFormat(format);
|
|
11
|
+
while (nextFormat !== prevFormat) {
|
|
12
|
+
prevFormat = nextFormat;
|
|
13
|
+
nextFormat = utils.expandFormat(prevFormat);
|
|
14
|
+
formatExpansionOverflow -= 1;
|
|
15
|
+
if (formatExpansionOverflow < 0) {
|
|
16
|
+
throw new Error('MUI X: The format expansion seems to be in an infinite loop. Please open an issue with the format passed to the picker component.');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return nextFormat;
|
|
20
|
+
};
|
|
21
|
+
const getEscapedPartsFromFormat = ({
|
|
22
|
+
utils,
|
|
23
|
+
expandedFormat
|
|
24
|
+
}) => {
|
|
25
|
+
const escapedParts = [];
|
|
26
|
+
const {
|
|
27
|
+
start: startChar,
|
|
28
|
+
end: endChar
|
|
29
|
+
} = utils.escapedCharacters;
|
|
30
|
+
const regExp = new RegExp(`(\\${startChar}[^\\${endChar}]*\\${endChar})+`, 'g');
|
|
31
|
+
let match = null;
|
|
32
|
+
// eslint-disable-next-line no-cond-assign
|
|
33
|
+
while (match = regExp.exec(expandedFormat)) {
|
|
34
|
+
escapedParts.push({
|
|
35
|
+
start: match.index,
|
|
36
|
+
end: regExp.lastIndex - 1
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
return escapedParts;
|
|
40
|
+
};
|
|
41
|
+
const getSectionPlaceholder = (utils, timezone, localeText, sectionConfig, sectionFormat) => {
|
|
42
|
+
switch (sectionConfig.type) {
|
|
43
|
+
case 'year':
|
|
44
|
+
{
|
|
45
|
+
return localeText.fieldYearPlaceholder({
|
|
46
|
+
digitAmount: utils.formatByString(utils.date(undefined, timezone), sectionFormat).length,
|
|
47
|
+
format: sectionFormat
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
case 'month':
|
|
51
|
+
{
|
|
52
|
+
return localeText.fieldMonthPlaceholder({
|
|
53
|
+
contentType: sectionConfig.contentType,
|
|
54
|
+
format: sectionFormat
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
case 'day':
|
|
58
|
+
{
|
|
59
|
+
return localeText.fieldDayPlaceholder({
|
|
60
|
+
format: sectionFormat
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
case 'weekDay':
|
|
64
|
+
{
|
|
65
|
+
return localeText.fieldWeekDayPlaceholder({
|
|
66
|
+
contentType: sectionConfig.contentType,
|
|
67
|
+
format: sectionFormat
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
case 'hours':
|
|
71
|
+
{
|
|
72
|
+
return localeText.fieldHoursPlaceholder({
|
|
73
|
+
format: sectionFormat
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
case 'minutes':
|
|
77
|
+
{
|
|
78
|
+
return localeText.fieldMinutesPlaceholder({
|
|
79
|
+
format: sectionFormat
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
case 'seconds':
|
|
83
|
+
{
|
|
84
|
+
return localeText.fieldSecondsPlaceholder({
|
|
85
|
+
format: sectionFormat
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
case 'meridiem':
|
|
89
|
+
{
|
|
90
|
+
return localeText.fieldMeridiemPlaceholder({
|
|
91
|
+
format: sectionFormat
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
default:
|
|
95
|
+
{
|
|
96
|
+
return sectionFormat;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
const createSection = ({
|
|
101
|
+
utils,
|
|
102
|
+
timezone,
|
|
103
|
+
date,
|
|
104
|
+
shouldRespectLeadingZeros,
|
|
105
|
+
localeText,
|
|
106
|
+
localizedDigits,
|
|
107
|
+
now,
|
|
108
|
+
token,
|
|
109
|
+
startSeparator
|
|
110
|
+
}) => {
|
|
111
|
+
if (token === '') {
|
|
112
|
+
throw new Error('MUI X: Should not call `commitToken` with an empty token');
|
|
113
|
+
}
|
|
114
|
+
const sectionConfig = getDateSectionConfigFromFormatToken(utils, token);
|
|
115
|
+
const hasLeadingZerosInFormat = doesSectionFormatHaveLeadingZeros(utils, timezone, sectionConfig.contentType, sectionConfig.type, token);
|
|
116
|
+
const hasLeadingZerosInInput = shouldRespectLeadingZeros ? hasLeadingZerosInFormat : sectionConfig.contentType === 'digit';
|
|
117
|
+
const isValidDate = date != null && utils.isValid(date);
|
|
118
|
+
let sectionValue = isValidDate ? utils.formatByString(date, token) : '';
|
|
119
|
+
let maxLength = null;
|
|
120
|
+
if (hasLeadingZerosInInput) {
|
|
121
|
+
if (hasLeadingZerosInFormat) {
|
|
122
|
+
maxLength = sectionValue === '' ? utils.formatByString(now, token).length : sectionValue.length;
|
|
123
|
+
} else {
|
|
124
|
+
if (sectionConfig.maxLength == null) {
|
|
125
|
+
throw new Error(`MUI X: The token ${token} should have a 'maxDigitNumber' property on it's adapter`);
|
|
126
|
+
}
|
|
127
|
+
maxLength = sectionConfig.maxLength;
|
|
128
|
+
if (isValidDate) {
|
|
129
|
+
sectionValue = applyLocalizedDigits(cleanLeadingZeros(removeLocalizedDigits(sectionValue, localizedDigits), maxLength), localizedDigits);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return _extends({}, sectionConfig, {
|
|
134
|
+
format: token,
|
|
135
|
+
maxLength,
|
|
136
|
+
value: sectionValue,
|
|
137
|
+
placeholder: getSectionPlaceholder(utils, timezone, localeText, sectionConfig, token),
|
|
138
|
+
hasLeadingZerosInFormat,
|
|
139
|
+
hasLeadingZerosInInput,
|
|
140
|
+
startSeparator,
|
|
141
|
+
endSeparator: '',
|
|
142
|
+
modified: false
|
|
143
|
+
});
|
|
144
|
+
};
|
|
145
|
+
const buildSections = params => {
|
|
146
|
+
const {
|
|
147
|
+
utils,
|
|
148
|
+
expandedFormat,
|
|
149
|
+
escapedParts
|
|
150
|
+
} = params;
|
|
151
|
+
const now = utils.date(undefined);
|
|
152
|
+
const sections = [];
|
|
153
|
+
let startSeparator = '';
|
|
154
|
+
|
|
155
|
+
// This RegExp test if the beginning of a string corresponds to a supported token
|
|
156
|
+
const isTokenStartRegExp = new RegExp(`^(${Object.keys(utils.formatTokenMap).sort((a, b) => b.length - a.length) // Sort to put longest word first
|
|
157
|
+
.join('|')})`, 'g') // used to get access to lastIndex state
|
|
158
|
+
;
|
|
159
|
+
let currentTokenValue = '';
|
|
160
|
+
for (let i = 0; i < expandedFormat.length; i += 1) {
|
|
161
|
+
const escapedPartOfCurrentChar = escapedParts.find(escapeIndex => escapeIndex.start <= i && escapeIndex.end >= i);
|
|
162
|
+
const char = expandedFormat[i];
|
|
163
|
+
const isEscapedChar = escapedPartOfCurrentChar != null;
|
|
164
|
+
const potentialToken = `${currentTokenValue}${expandedFormat.slice(i)}`;
|
|
165
|
+
const regExpMatch = isTokenStartRegExp.test(potentialToken);
|
|
166
|
+
if (!isEscapedChar && char.match(/([A-Za-z]+)/) && regExpMatch) {
|
|
167
|
+
currentTokenValue = potentialToken.slice(0, isTokenStartRegExp.lastIndex);
|
|
168
|
+
i += isTokenStartRegExp.lastIndex - 1;
|
|
169
|
+
} else {
|
|
170
|
+
// If we are on the opening or closing character of an escaped part of the format,
|
|
171
|
+
// Then we ignore this character.
|
|
172
|
+
const isEscapeBoundary = isEscapedChar && (escapedPartOfCurrentChar == null ? void 0 : escapedPartOfCurrentChar.start) === i || (escapedPartOfCurrentChar == null ? void 0 : escapedPartOfCurrentChar.end) === i;
|
|
173
|
+
if (!isEscapeBoundary) {
|
|
174
|
+
if (currentTokenValue !== '') {
|
|
175
|
+
sections.push(createSection(_extends({}, params, {
|
|
176
|
+
now,
|
|
177
|
+
token: currentTokenValue,
|
|
178
|
+
startSeparator
|
|
179
|
+
})));
|
|
180
|
+
currentTokenValue = '';
|
|
181
|
+
}
|
|
182
|
+
if (sections.length === 0) {
|
|
183
|
+
startSeparator += char;
|
|
184
|
+
} else {
|
|
185
|
+
startSeparator = '';
|
|
186
|
+
sections[sections.length - 1].endSeparator += char;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
if (currentTokenValue !== '') {
|
|
192
|
+
sections.push(createSection(_extends({}, params, {
|
|
193
|
+
now,
|
|
194
|
+
token: currentTokenValue,
|
|
195
|
+
startSeparator
|
|
196
|
+
})));
|
|
197
|
+
}
|
|
198
|
+
if (sections.length === 0 && startSeparator.length > 0) {
|
|
199
|
+
sections.push({
|
|
200
|
+
type: 'empty',
|
|
201
|
+
contentType: 'letter',
|
|
202
|
+
maxLength: null,
|
|
203
|
+
format: '',
|
|
204
|
+
value: '',
|
|
205
|
+
placeholder: '',
|
|
206
|
+
hasLeadingZerosInFormat: false,
|
|
207
|
+
hasLeadingZerosInInput: false,
|
|
208
|
+
startSeparator,
|
|
209
|
+
endSeparator: '',
|
|
210
|
+
modified: false
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
return sections;
|
|
214
|
+
};
|
|
215
|
+
const postProcessSections = ({
|
|
216
|
+
isRTL,
|
|
217
|
+
formatDensity,
|
|
218
|
+
sections
|
|
219
|
+
}) => {
|
|
220
|
+
return sections.map(section => {
|
|
221
|
+
const cleanSeparator = separator => {
|
|
222
|
+
let cleanedSeparator = separator;
|
|
223
|
+
if (isRTL && cleanedSeparator !== null && cleanedSeparator.includes(' ')) {
|
|
224
|
+
cleanedSeparator = `\u2069${cleanedSeparator}\u2066`;
|
|
225
|
+
}
|
|
226
|
+
if (formatDensity === 'spacious' && ['/', '.', '-'].includes(cleanedSeparator)) {
|
|
227
|
+
cleanedSeparator = ` ${cleanedSeparator} `;
|
|
228
|
+
}
|
|
229
|
+
return cleanedSeparator;
|
|
230
|
+
};
|
|
231
|
+
section.startSeparator = cleanSeparator(section.startSeparator);
|
|
232
|
+
section.endSeparator = cleanSeparator(section.endSeparator);
|
|
233
|
+
return section;
|
|
234
|
+
});
|
|
235
|
+
};
|
|
236
|
+
export const buildSectionsFromFormat = params => {
|
|
237
|
+
let expandedFormat = expandFormat(params);
|
|
238
|
+
if (params.isRTL && params.enableAccessibleFieldDOMStructure) {
|
|
239
|
+
expandedFormat = expandedFormat.split(' ').reverse().join(' ');
|
|
240
|
+
}
|
|
241
|
+
const escapedParts = getEscapedPartsFromFormat(_extends({}, params, {
|
|
242
|
+
expandedFormat
|
|
243
|
+
}));
|
|
244
|
+
const sections = buildSections(_extends({}, params, {
|
|
245
|
+
expandedFormat,
|
|
246
|
+
escapedParts
|
|
247
|
+
}));
|
|
248
|
+
return postProcessSections(_extends({}, params, {
|
|
249
|
+
sections
|
|
250
|
+
}));
|
|
251
|
+
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { useField } from './useField';
|
|
2
|
-
export type { FieldValueManager, UseFieldInternalProps,
|
|
3
|
-
export {
|
|
2
|
+
export type { FieldValueManager, UseFieldInternalProps, UseFieldParams, UseFieldResponse, FieldChangeHandler, FieldChangeHandlerContext, } from './useField.types';
|
|
3
|
+
export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections, } from './useField.utils';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { useField } from './useField';
|
|
2
|
-
export {
|
|
2
|
+
export { createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from './useField.utils';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { UseFieldParams, UseFieldResponse,
|
|
2
|
-
import {
|
|
3
|
-
export declare const useField: <TValue, TDate extends PickerValidDate, TSection extends FieldSection, TForwardedProps extends
|
|
1
|
+
import { UseFieldParams, UseFieldResponse, UseFieldCommonForwardedProps, UseFieldInternalProps } from './useField.types';
|
|
2
|
+
import { PickerValidDate, FieldSection } from '../../../models';
|
|
3
|
+
export declare const useField: <TValue, TDate extends PickerValidDate, TSection extends FieldSection, TEnableAccessibleFieldDOMStructure extends boolean, TForwardedProps extends UseFieldCommonForwardedProps & (TEnableAccessibleFieldDOMStructure extends false ? import("./useField.types").UseFieldV6ForwardedProps : import("./useField.types").UseFieldV7ForwardedProps), TInternalProps extends UseFieldInternalProps<any, any, any, TEnableAccessibleFieldDOMStructure, any> & {
|
|
4
4
|
minutesStep?: number | undefined;
|
|
5
|
-
}>(params: UseFieldParams<TValue, TDate, TSection, TForwardedProps, TInternalProps>) => UseFieldResponse<TForwardedProps>;
|
|
5
|
+
}>(params: UseFieldParams<TValue, TDate, TSection, TEnableAccessibleFieldDOMStructure, TForwardedProps, TInternalProps>) => UseFieldResponse<TEnableAccessibleFieldDOMStructure, TForwardedProps>;
|