@mui/x-date-pickers 8.0.0-alpha.5 → 8.0.0-alpha.7
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 +2 -4
- package/AdapterDateFns/AdapterDateFns.js +49 -47
- package/AdapterDateFnsBase/AdapterDateFnsBase.d.ts +1 -1
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.d.ts +2 -4
- package/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
- package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.d.ts → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.d.ts} +2 -2
- package/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
- package/AdapterDateFnsJalaliV2/index.d.ts +1 -0
- package/AdapterDateFnsJalaliV2/index.js +1 -0
- package/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/package.json +1 -1
- package/{AdapterDateFnsV3/AdapterDateFnsV3.d.ts → AdapterDateFnsV2/AdapterDateFnsV2.d.ts} +2 -2
- package/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
- package/AdapterDateFnsV2/index.d.ts +1 -0
- package/AdapterDateFnsV2/index.js +1 -0
- package/{AdapterDateFnsV3 → AdapterDateFnsV2}/package.json +1 -1
- package/AdapterDayjs/AdapterDayjs.d.ts +1 -1
- package/AdapterLuxon/AdapterLuxon.d.ts +1 -1
- package/AdapterMoment/AdapterMoment.d.ts +1 -1
- package/CHANGELOG.md +206 -1
- package/DateCalendar/DateCalendar.js +1 -1
- package/DateCalendar/PickersFadeTransitionGroup.d.ts +1 -1
- package/DateCalendar/PickersSlideTransition.d.ts +1 -1
- package/DateField/useDateField.d.ts +1 -1
- package/DateField/useDateField.js +13 -11
- package/DatePicker/DatePicker.js +1 -1
- package/DatePicker/DatePicker.types.d.ts +5 -0
- package/DatePicker/DatePickerToolbar.d.ts +1 -3
- package/DatePicker/DatePickerToolbar.js +10 -25
- package/DatePicker/shared.d.ts +1 -1
- package/DateTimeField/useDateTimeField.d.ts +1 -1
- package/DateTimeField/useDateTimeField.js +13 -11
- package/DateTimePicker/DateTimePicker.js +2 -2
- package/DateTimePicker/DateTimePicker.types.d.ts +2 -2
- package/DateTimePicker/DateTimePickerTabs.d.ts +2 -5
- package/DateTimePicker/DateTimePickerTabs.js +7 -14
- package/DateTimePicker/DateTimePickerToolbar.d.ts +12 -4
- package/DateTimePicker/DateTimePickerToolbar.js +42 -48
- package/DateTimePicker/shared.d.ts +3 -3
- package/DesktopDatePicker/DesktopDatePicker.js +9 -3
- package/DesktopDatePicker/DesktopDatePicker.types.d.ts +7 -3
- package/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
- package/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +2 -2
- package/DesktopDateTimePicker/DesktopDateTimePickerLayout.d.ts +1 -2
- package/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
- package/DesktopTimePicker/DesktopTimePicker.js +3 -7
- package/DesktopTimePicker/DesktopTimePicker.types.d.ts +2 -2
- package/MobileDatePicker/MobileDatePicker.js +2 -2
- package/MobileDatePicker/MobileDatePicker.types.d.ts +2 -3
- package/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
- package/MobileDateTimePicker/MobileDateTimePicker.types.d.ts +4 -4
- package/MobileTimePicker/MobileTimePicker.js +2 -2
- package/MobileTimePicker/MobileTimePicker.types.d.ts +4 -4
- package/PickersActionBar/PickersActionBar.d.ts +6 -7
- package/PickersActionBar/PickersActionBar.js +18 -16
- package/PickersLayout/PickersLayout.d.ts +2 -2
- package/PickersLayout/PickersLayout.js +1 -15
- package/PickersLayout/PickersLayout.types.d.ts +12 -15
- package/PickersLayout/usePickerLayout.d.ts +2 -2
- package/PickersLayout/usePickerLayout.js +13 -47
- package/PickersShortcuts/PickersShortcuts.d.ts +2 -5
- package/PickersShortcuts/PickersShortcuts.js +13 -10
- package/PickersShortcuts/index.d.ts +1 -1
- package/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
- package/PickersTextField/PickersTextField.js +1 -1
- package/StaticDatePicker/StaticDatePicker.types.d.ts +2 -3
- package/StaticDateTimePicker/StaticDateTimePicker.types.d.ts +2 -2
- package/StaticTimePicker/StaticTimePicker.types.d.ts +2 -2
- package/TimeField/useTimeField.d.ts +1 -1
- package/TimeField/useTimeField.js +13 -11
- package/TimePicker/TimePicker.js +2 -2
- package/TimePicker/TimePicker.types.d.ts +2 -2
- package/TimePicker/TimePickerToolbar.d.ts +1 -2
- package/TimePicker/TimePickerToolbar.js +23 -35
- package/TimePicker/shared.d.ts +1 -1
- package/hooks/index.d.ts +2 -0
- package/hooks/index.js +3 -1
- package/hooks/useIsValidValue.d.ts +7 -0
- package/hooks/useIsValidValue.js +11 -0
- package/hooks/usePickerActionsContext.d.ts +7 -0
- package/hooks/usePickerActionsContext.js +15 -0
- package/hooks/usePickerContext.d.ts +3 -1
- package/hooks/usePickerContext.js +1 -2
- package/index.d.ts +1 -0
- package/index.js +3 -2
- package/internals/components/PickerProvider.d.ts +14 -8
- package/internals/components/PickerProvider.js +17 -6
- package/internals/components/PickersModalDialog.d.ts +1 -3
- package/internals/components/PickersModalDialog.js +9 -3
- package/internals/components/PickersPopper.d.ts +1 -3
- package/internals/components/PickersPopper.js +11 -6
- package/internals/components/PickersToolbar.d.ts +2 -3
- package/internals/components/PickersToolbar.js +1 -1
- package/internals/hooks/date-helpers-hooks.js +4 -3
- package/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
- package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +7 -7
- package/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/internals/hooks/useField/index.d.ts +1 -1
- package/internals/hooks/useField/index.js +1 -1
- package/internals/hooks/useField/useField.d.ts +10 -1
- package/internals/hooks/useField/useField.js +17 -1
- package/internals/hooks/useField/useField.utils.js +2 -2
- package/internals/hooks/useField/useFieldState.js +2 -2
- package/internals/hooks/useField/useFieldV6TextField.js +2 -2
- package/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
- package/internals/hooks/useMobilePicker/useMobilePicker.types.d.ts +7 -7
- package/internals/hooks/useOpenState.js +3 -2
- package/internals/hooks/usePicker/usePicker.d.ts +1 -1
- package/internals/hooks/usePicker/usePicker.js +0 -8
- package/internals/hooks/usePicker/usePicker.types.d.ts +6 -7
- package/internals/hooks/usePicker/usePickerProvider.d.ts +5 -5
- package/internals/hooks/usePicker/usePickerProvider.js +8 -5
- package/internals/hooks/usePicker/usePickerValue.d.ts +1 -1
- package/internals/hooks/usePicker/usePickerValue.js +82 -217
- package/internals/hooks/usePicker/usePickerValue.types.d.ts +82 -67
- package/internals/hooks/usePicker/usePickerViews.d.ts +35 -20
- package/internals/hooks/usePicker/usePickerViews.js +22 -14
- package/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
- package/internals/hooks/useStaticPicker/useStaticPicker.types.d.ts +6 -6
- package/internals/hooks/useUtils.js +1 -1
- package/internals/index.d.ts +9 -7
- package/internals/index.js +5 -3
- package/internals/models/index.d.ts +1 -0
- package/internals/models/index.js +2 -1
- package/internals/models/manager.d.ts +12 -0
- package/internals/models/manager.js +1 -0
- package/internals/models/props/basePickerProps.d.ts +2 -2
- package/internals/models/props/tabs.d.ts +0 -13
- package/internals/models/props/toolbar.d.ts +1 -20
- package/internals/utils/date-utils.js +1 -1
- package/internals/utils/valueManagers.js +4 -4
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/nbNO.js +15 -19
- package/locales/utils/getPickersLocalization.js +1 -1
- package/locales/zhTW.d.ts +80 -0
- package/locales/zhTW.js +73 -0
- package/managers/index.d.ts +6 -0
- package/managers/index.js +3 -0
- package/managers/package.json +6 -0
- package/managers/useDateManager.d.ts +27 -0
- package/managers/useDateManager.js +47 -0
- package/managers/useDateTimeManager.d.ts +28 -0
- package/managers/useDateTimeManager.js +52 -0
- package/managers/useTimeManager.d.ts +28 -0
- package/managers/useTimeManager.js +43 -0
- package/models/adapters.d.ts +1 -1
- package/models/index.d.ts +1 -0
- package/models/index.js +1 -0
- package/models/manager.d.ts +78 -0
- package/models/manager.js +1 -0
- package/models/pickers.d.ts +7 -0
- package/modern/AdapterDateFns/AdapterDateFns.js +49 -47
- package/modern/AdapterDateFnsJalali/AdapterDateFnsJalali.js +48 -46
- package/modern/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +45 -52
- package/modern/AdapterDateFnsJalaliV2/index.js +1 -0
- package/modern/{AdapterDateFnsV3/AdapterDateFnsV3.js → AdapterDateFnsV2/AdapterDateFnsV2.js} +46 -54
- package/modern/AdapterDateFnsV2/index.js +1 -0
- package/modern/DateCalendar/DateCalendar.js +1 -1
- package/modern/DateField/useDateField.js +13 -11
- package/modern/DatePicker/DatePicker.js +1 -1
- package/modern/DatePicker/DatePickerToolbar.js +10 -25
- package/modern/DateTimeField/useDateTimeField.js +13 -11
- package/modern/DateTimePicker/DateTimePicker.js +2 -2
- package/modern/DateTimePicker/DateTimePickerTabs.js +7 -14
- package/modern/DateTimePicker/DateTimePickerToolbar.js +42 -48
- package/modern/DesktopDatePicker/DesktopDatePicker.js +9 -3
- package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
- package/modern/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
- package/modern/DesktopTimePicker/DesktopTimePicker.js +3 -7
- package/modern/MobileDatePicker/MobileDatePicker.js +2 -2
- package/modern/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
- package/modern/MobileTimePicker/MobileTimePicker.js +2 -2
- package/modern/PickersActionBar/PickersActionBar.js +18 -16
- package/modern/PickersLayout/PickersLayout.js +1 -15
- package/modern/PickersLayout/usePickerLayout.js +13 -47
- package/modern/PickersShortcuts/PickersShortcuts.js +13 -10
- package/modern/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
- package/modern/PickersTextField/PickersTextField.js +1 -1
- package/modern/TimeField/useTimeField.js +13 -11
- package/modern/TimePicker/TimePicker.js +2 -2
- package/modern/TimePicker/TimePickerToolbar.js +23 -35
- package/modern/hooks/index.js +3 -1
- package/modern/hooks/useIsValidValue.js +11 -0
- package/modern/hooks/usePickerActionsContext.js +15 -0
- package/modern/hooks/usePickerContext.js +1 -2
- package/modern/index.js +3 -2
- package/modern/internals/components/PickerProvider.js +17 -6
- package/modern/internals/components/PickersModalDialog.js +9 -3
- package/modern/internals/components/PickersPopper.js +11 -6
- package/modern/internals/components/PickersToolbar.js +1 -1
- package/modern/internals/hooks/date-helpers-hooks.js +4 -3
- package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
- package/modern/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/modern/internals/hooks/useField/index.js +1 -1
- package/modern/internals/hooks/useField/useField.js +17 -1
- package/modern/internals/hooks/useField/useField.utils.js +2 -2
- package/modern/internals/hooks/useField/useFieldState.js +2 -2
- package/modern/internals/hooks/useField/useFieldV6TextField.js +2 -2
- package/modern/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
- package/modern/internals/hooks/useOpenState.js +3 -2
- package/modern/internals/hooks/usePicker/usePicker.js +0 -8
- package/modern/internals/hooks/usePicker/usePickerProvider.js +8 -5
- package/modern/internals/hooks/usePicker/usePickerValue.js +82 -217
- package/modern/internals/hooks/usePicker/usePickerViews.js +22 -14
- package/modern/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
- package/modern/internals/hooks/useUtils.js +1 -1
- package/modern/internals/index.js +5 -3
- package/modern/internals/models/index.js +2 -1
- package/modern/internals/models/manager.js +1 -0
- package/modern/internals/utils/date-utils.js +1 -1
- package/modern/internals/utils/valueManagers.js +4 -4
- package/modern/locales/index.js +1 -0
- package/modern/locales/nbNO.js +15 -19
- package/modern/locales/utils/getPickersLocalization.js +1 -1
- package/modern/locales/zhTW.js +73 -0
- package/modern/managers/index.js +3 -0
- package/modern/managers/useDateManager.js +47 -0
- package/modern/managers/useDateTimeManager.js +52 -0
- package/modern/managers/useTimeManager.js +43 -0
- package/modern/models/index.js +1 -0
- package/modern/models/manager.js +1 -0
- package/node/AdapterDateFns/AdapterDateFns.js +97 -97
- package/node/AdapterDateFnsJalali/AdapterDateFnsJalali.js +97 -96
- package/node/{AdapterDateFnsJalaliV3/AdapterDateFnsJalaliV3.js → AdapterDateFnsJalaliV2/AdapterDateFnsJalaliV2.js} +94 -101
- package/node/{AdapterDateFnsJalaliV3 → AdapterDateFnsJalaliV2}/index.js +1 -1
- package/node/AdapterDateFnsV2/AdapterDateFnsV2.js +291 -0
- package/node/{AdapterDateFnsV3 → AdapterDateFnsV2}/index.js +1 -1
- package/node/DateCalendar/DateCalendar.js +1 -1
- package/node/DateField/useDateField.js +12 -10
- package/node/DatePicker/DatePicker.js +1 -1
- package/node/DatePicker/DatePickerToolbar.js +10 -25
- package/node/DateTimeField/useDateTimeField.js +12 -10
- package/node/DateTimePicker/DateTimePicker.js +2 -2
- package/node/DateTimePicker/DateTimePickerTabs.js +7 -14
- package/node/DateTimePicker/DateTimePickerToolbar.js +43 -49
- package/node/DesktopDatePicker/DesktopDatePicker.js +9 -3
- package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +13 -10
- package/node/DesktopDateTimePicker/DesktopDateTimePickerLayout.js +1 -15
- package/node/DesktopTimePicker/DesktopTimePicker.js +3 -7
- package/node/MobileDatePicker/MobileDatePicker.js +2 -2
- package/node/MobileDateTimePicker/MobileDateTimePicker.js +2 -2
- package/node/MobileTimePicker/MobileTimePicker.js +2 -2
- package/node/PickersActionBar/PickersActionBar.js +20 -18
- package/node/PickersLayout/PickersLayout.js +1 -15
- package/node/PickersLayout/usePickerLayout.js +17 -51
- package/node/PickersShortcuts/PickersShortcuts.js +13 -10
- package/node/PickersTextField/PickersInputBase/PickersInputBase.js +7 -0
- package/node/PickersTextField/PickersTextField.js +1 -1
- package/node/TimeField/useTimeField.js +12 -10
- package/node/TimePicker/TimePicker.js +2 -2
- package/node/TimePicker/TimePickerToolbar.js +23 -35
- package/node/hooks/index.js +15 -1
- package/node/hooks/useIsValidValue.js +18 -0
- package/node/hooks/usePickerActionsContext.js +22 -0
- package/node/hooks/usePickerContext.js +1 -1
- package/node/index.js +13 -1
- package/node/internals/components/PickerProvider.js +18 -7
- package/node/internals/components/PickersModalDialog.js +9 -3
- package/node/internals/components/PickersPopper.js +11 -6
- package/node/internals/components/PickersToolbar.js +1 -1
- package/node/internals/hooks/date-helpers-hooks.js +4 -3
- package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +10 -12
- package/node/internals/hooks/useField/buildSectionsFromFormat.js +1 -1
- package/node/internals/hooks/useField/index.js +6 -0
- package/node/internals/hooks/useField/useField.js +18 -1
- package/node/internals/hooks/useField/useField.utils.js +2 -2
- package/node/internals/hooks/useField/useFieldState.js +2 -2
- package/node/internals/hooks/useField/useFieldV6TextField.js +2 -2
- package/node/internals/hooks/useMobilePicker/useMobilePicker.js +9 -10
- package/node/internals/hooks/useOpenState.js +4 -2
- package/node/internals/hooks/usePicker/usePicker.js +0 -9
- package/node/internals/hooks/usePicker/usePickerProvider.js +8 -5
- package/node/internals/hooks/usePicker/usePickerValue.js +82 -217
- package/node/internals/hooks/usePicker/usePickerViews.js +22 -15
- package/node/internals/hooks/useStaticPicker/useStaticPicker.js +1 -4
- package/node/internals/hooks/useUtils.js +1 -1
- package/node/internals/index.js +28 -20
- package/node/internals/models/index.js +11 -0
- package/node/internals/models/manager.js +5 -0
- package/node/internals/utils/date-utils.js +1 -1
- package/node/internals/utils/valueManagers.js +4 -4
- package/node/locales/index.js +11 -0
- package/node/locales/nbNO.js +15 -19
- package/node/locales/utils/getPickersLocalization.js +1 -1
- package/node/locales/zhTW.js +79 -0
- package/node/managers/index.js +26 -0
- package/node/managers/useDateManager.js +55 -0
- package/node/managers/useDateTimeManager.js +60 -0
- package/node/managers/useTimeManager.js +51 -0
- package/node/models/index.js +11 -0
- package/node/models/manager.js +5 -0
- package/package.json +3 -3
- package/themeAugmentation/props.d.ts +2 -3
- package/validation/extractValidationProps.d.ts +1 -1
- package/AdapterDateFnsJalaliV3/index.d.ts +0 -1
- package/AdapterDateFnsJalaliV3/index.js +0 -1
- package/AdapterDateFnsV3/index.d.ts +0 -1
- package/AdapterDateFnsV3/index.js +0 -1
- package/internals/hooks/defaultizedFieldProps.d.ts +0 -18
- package/internals/hooks/defaultizedFieldProps.js +0 -40
- package/modern/AdapterDateFnsJalaliV3/index.js +0 -1
- package/modern/AdapterDateFnsV3/index.js +0 -1
- package/modern/internals/hooks/defaultizedFieldProps.js +0 -40
- package/node/AdapterDateFnsV3/AdapterDateFnsV3.js +0 -299
- package/node/internals/hooks/defaultizedFieldProps.js +0 -50
|
@@ -14,7 +14,7 @@ import { isTimeView } from "../../utils/time-utils.js";
|
|
|
14
14
|
/**
|
|
15
15
|
* Props used to handle the value of the pickers.
|
|
16
16
|
*/
|
|
17
|
-
|
|
17
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
18
|
/**
|
|
19
19
|
* Manage the views of all the pickers:
|
|
20
20
|
* - Handles the view switch
|
|
@@ -24,15 +24,15 @@ import { isTimeView } from "../../utils/time-utils.js";
|
|
|
24
24
|
export const usePickerViews = ({
|
|
25
25
|
props,
|
|
26
26
|
propsFromPickerValue,
|
|
27
|
-
additionalViewProps,
|
|
28
27
|
autoFocusView,
|
|
29
|
-
rendererInterceptor,
|
|
28
|
+
rendererInterceptor: RendererInterceptor,
|
|
30
29
|
fieldRef
|
|
31
30
|
}) => {
|
|
32
31
|
const {
|
|
33
32
|
onChange,
|
|
33
|
+
value,
|
|
34
34
|
open,
|
|
35
|
-
|
|
35
|
+
setOpen
|
|
36
36
|
} = propsFromPickerValue;
|
|
37
37
|
const {
|
|
38
38
|
view: inView,
|
|
@@ -92,7 +92,7 @@ export const usePickerViews = ({
|
|
|
92
92
|
useEnhancedEffect(() => {
|
|
93
93
|
// Handle case of `DateTimePicker` without time renderers
|
|
94
94
|
if (currentViewMode === 'field' && open) {
|
|
95
|
-
|
|
95
|
+
setOpen(false);
|
|
96
96
|
setTimeout(() => {
|
|
97
97
|
fieldRef?.current?.setSelectedSections(view);
|
|
98
98
|
// focusing the input before the range selection is done
|
|
@@ -123,18 +123,21 @@ export const usePickerViews = ({
|
|
|
123
123
|
setFocusedView(newView, true);
|
|
124
124
|
}, [open]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
125
125
|
|
|
126
|
-
const
|
|
126
|
+
const actionsContextValue = React.useMemo(() => ({
|
|
127
|
+
setView
|
|
128
|
+
}), [setView]);
|
|
129
|
+
const contextValue = React.useMemo(() => _extends({}, actionsContextValue, {
|
|
127
130
|
views,
|
|
128
|
-
view: popperView
|
|
129
|
-
|
|
130
|
-
};
|
|
131
|
+
view: popperView
|
|
132
|
+
}), [actionsContextValue, views, popperView]);
|
|
131
133
|
const providerParams = {
|
|
132
134
|
hasUIView,
|
|
133
|
-
views
|
|
135
|
+
views,
|
|
136
|
+
contextValue,
|
|
137
|
+
actionsContextValue
|
|
134
138
|
};
|
|
135
139
|
return {
|
|
136
140
|
shouldRestoreFocus,
|
|
137
|
-
layoutProps,
|
|
138
141
|
provider: providerParams,
|
|
139
142
|
renderCurrentView: () => {
|
|
140
143
|
if (popperView == null) {
|
|
@@ -144,9 +147,10 @@ export const usePickerViews = ({
|
|
|
144
147
|
if (renderer == null) {
|
|
145
148
|
return null;
|
|
146
149
|
}
|
|
147
|
-
const rendererProps = _extends({}, propsToForwardToView,
|
|
150
|
+
const rendererProps = _extends({}, propsToForwardToView, {
|
|
148
151
|
views,
|
|
149
152
|
timezone,
|
|
153
|
+
value,
|
|
150
154
|
onChange: setValueAndGoToNextView,
|
|
151
155
|
view: popperView,
|
|
152
156
|
onViewChange: setView,
|
|
@@ -155,8 +159,12 @@ export const usePickerViews = ({
|
|
|
155
159
|
showViewSwitcher: timeViewsCount > 1,
|
|
156
160
|
timeViewsCount
|
|
157
161
|
});
|
|
158
|
-
if (
|
|
159
|
-
return
|
|
162
|
+
if (RendererInterceptor) {
|
|
163
|
+
return /*#__PURE__*/_jsx(RendererInterceptor, {
|
|
164
|
+
viewRenderers: viewRenderers,
|
|
165
|
+
popperView: popperView,
|
|
166
|
+
rendererProps: rendererProps
|
|
167
|
+
});
|
|
160
168
|
}
|
|
161
169
|
return renderer(rendererProps);
|
|
162
170
|
}
|
|
@@ -39,20 +39,17 @@ export const useStaticPicker = _ref => {
|
|
|
39
39
|
autoFocus
|
|
40
40
|
} = props;
|
|
41
41
|
const {
|
|
42
|
-
layoutProps,
|
|
43
42
|
providerProps,
|
|
44
43
|
renderCurrentView
|
|
45
44
|
} = usePicker(_extends({}, pickerParams, {
|
|
46
45
|
props,
|
|
47
46
|
autoFocusView: autoFocus ?? false,
|
|
48
|
-
fieldRef: undefined,
|
|
49
47
|
localeText,
|
|
50
|
-
additionalViewProps: {},
|
|
51
48
|
variant: displayStaticWrapperAs
|
|
52
49
|
}));
|
|
53
50
|
const Layout = slots?.layout ?? PickerStaticLayout;
|
|
54
51
|
const renderPicker = () => /*#__PURE__*/_jsx(PickerProvider, _extends({}, providerProps, {
|
|
55
|
-
children: /*#__PURE__*/_jsx(Layout, _extends({},
|
|
52
|
+
children: /*#__PURE__*/_jsx(Layout, _extends({}, slotProps?.layout, {
|
|
56
53
|
slots: slots,
|
|
57
54
|
slotProps: slotProps,
|
|
58
55
|
sx: [...(Array.isArray(sx) ? sx : [sx]), ...(Array.isArray(slotProps?.layout?.sx) ? slotProps.layout.sx : [slotProps?.layout?.sx])],
|
|
@@ -4,9 +4,9 @@ import { BasePickerProps } from '../../models/props/basePickerProps';
|
|
|
4
4
|
import { UsePickerParams } from '../usePicker';
|
|
5
5
|
import { UsePickerViewsProps } from '../usePicker/usePickerViews';
|
|
6
6
|
import { DateOrTimeViewWithMeridiem, PickerValue } from '../../models';
|
|
7
|
-
export interface UseStaticPickerSlots
|
|
7
|
+
export interface UseStaticPickerSlots extends ExportedPickersLayoutSlots<PickerValue> {
|
|
8
8
|
}
|
|
9
|
-
export interface UseStaticPickerSlotProps
|
|
9
|
+
export interface UseStaticPickerSlotProps extends ExportedPickersLayoutSlotProps<PickerValue> {
|
|
10
10
|
}
|
|
11
11
|
export interface StaticOnlyPickerProps {
|
|
12
12
|
/**
|
|
@@ -26,19 +26,19 @@ export interface StaticOnlyPickerProps {
|
|
|
26
26
|
*/
|
|
27
27
|
onClose?: () => void;
|
|
28
28
|
}
|
|
29
|
-
export interface UseStaticPickerProps<TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<PickerValue, TView, any
|
|
29
|
+
export interface UseStaticPickerProps<TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<PickerValue, TView, any>> extends BasePickerProps<PickerValue, TView, TError, TExternalProps>, StaticOnlyPickerProps {
|
|
30
30
|
/**
|
|
31
31
|
* Overridable component slots.
|
|
32
32
|
* @default {}
|
|
33
33
|
*/
|
|
34
|
-
slots?: UseStaticPickerSlots
|
|
34
|
+
slots?: UseStaticPickerSlots;
|
|
35
35
|
/**
|
|
36
36
|
* The props used for each component slot.
|
|
37
37
|
* @default {}
|
|
38
38
|
*/
|
|
39
|
-
slotProps?: UseStaticPickerSlotProps
|
|
39
|
+
slotProps?: UseStaticPickerSlotProps;
|
|
40
40
|
}
|
|
41
|
-
export interface UseStaticPickerParams<TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseStaticPickerProps<TView, any, TExternalProps>> extends Pick<UsePickerParams<PickerValue, TView, TExternalProps
|
|
41
|
+
export interface UseStaticPickerParams<TView extends DateOrTimeViewWithMeridiem, TExternalProps extends UseStaticPickerProps<TView, any, TExternalProps>> extends Pick<UsePickerParams<PickerValue, TView, TExternalProps>, 'valueManager' | 'valueType' | 'validator'> {
|
|
42
42
|
props: TExternalProps;
|
|
43
43
|
/**
|
|
44
44
|
* Ref to pass to the root element
|
|
@@ -19,7 +19,7 @@ export const useUtils = () => useLocalizationContext().utils;
|
|
|
19
19
|
export const useDefaultDates = () => useLocalizationContext().defaultDates;
|
|
20
20
|
export const useNow = timezone => {
|
|
21
21
|
const utils = useUtils();
|
|
22
|
-
const now = React.useRef();
|
|
22
|
+
const now = React.useRef(undefined);
|
|
23
23
|
if (now.current === undefined) {
|
|
24
24
|
now.current = utils.date(undefined, timezone);
|
|
25
25
|
}
|
package/internals/index.d.ts
CHANGED
|
@@ -24,14 +24,14 @@ export { PickersToolbarButton } from './components/PickersToolbarButton';
|
|
|
24
24
|
export { DAY_MARGIN, DIALOG_WIDTH, VIEW_HEIGHT } from './constants/dimensions';
|
|
25
25
|
export { useControlledValueWithTimezone } from './hooks/useValueWithTimezone';
|
|
26
26
|
export type { DesktopOnlyPickerProps } from './hooks/useDesktopPicker';
|
|
27
|
-
export { useField, createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections, } from './hooks/useField';
|
|
27
|
+
export { useField, useFieldInternalPropsWithDefaults, createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections, } from './hooks/useField';
|
|
28
28
|
export type { UseFieldInternalProps, UseFieldParams, UseFieldResponse, FieldValueManager, FieldChangeHandler, FieldChangeHandlerContext, } from './hooks/useField';
|
|
29
29
|
export { useFieldOwnerState } from './hooks/useFieldOwnerState';
|
|
30
30
|
export type { MobileOnlyPickerProps } from './hooks/useMobilePicker';
|
|
31
31
|
export { usePicker } from './hooks/usePicker';
|
|
32
|
-
export type {
|
|
33
|
-
export type { UsePickerValueNonStaticProps, PickerValueManager, PickerSelectionState, } from './hooks/usePicker/usePickerValue.types';
|
|
34
|
-
export type { PickerViewRendererLookup, PickerViewRenderer, UsePickerViewsProps, } from './hooks/usePicker/usePickerViews';
|
|
32
|
+
export type { UsePickerParams, UsePickerProps, UsePickerValueFieldResponse, PickerViewsRendererProps, } from './hooks/usePicker';
|
|
33
|
+
export type { UsePickerValueContextValue, UsePickerValueNonStaticProps, PickerValueManager, PickerSelectionState, } from './hooks/usePicker/usePickerValue.types';
|
|
34
|
+
export type { PickerViewRendererLookup, PickerRendererInterceptorProps, PickerViewRenderer, UsePickerViewsProps, } from './hooks/usePicker/usePickerViews';
|
|
35
35
|
export type { UsePickerProviderNonStaticProps } from './hooks/usePicker/usePickerProvider';
|
|
36
36
|
export { usePickerPrivateContext } from './hooks/usePickerPrivateContext';
|
|
37
37
|
export { useStaticPicker } from './hooks/useStaticPicker';
|
|
@@ -46,7 +46,7 @@ export type { RangePosition } from './models/pickers';
|
|
|
46
46
|
export type { BaseSingleInputFieldProps, FieldRangeSection } from './models/fields';
|
|
47
47
|
export type { BasePickerProps, BasePickerInputProps, BaseNonStaticPickerProps, } from './models/props/basePickerProps';
|
|
48
48
|
export type { BaseClockProps, DesktopOnlyTimePickerProps, AmPmProps } from './models/props/time';
|
|
49
|
-
export type {
|
|
49
|
+
export type { ExportedBaseTabsProps } from './models/props/tabs';
|
|
50
50
|
export type { BaseToolbarProps, ExportedBaseToolbarProps } from './models/props/toolbar';
|
|
51
51
|
export type { FormProps } from './models/formProps';
|
|
52
52
|
export type { PickerVariant, TimeViewWithMeridiem, DateOrTimeViewWithMeridiem, } from './models/common';
|
|
@@ -57,7 +57,6 @@ export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual, getTodayDate
|
|
|
57
57
|
export { resolveTimeViewsResponse, resolveDateTimeFormat } from './utils/date-time-utils';
|
|
58
58
|
export { getDefaultReferenceDate } from './utils/getDefaultReferenceDate';
|
|
59
59
|
export { executeInTheNextEventLoopTick, getActiveElement, onSpaceOrEnter, DEFAULT_DESKTOP_MODE_MEDIA_QUERY, } from './utils/utils';
|
|
60
|
-
export { useDefaultizedDateField, useDefaultizedTimeField, useDefaultizedDateTimeField, } from './hooks/defaultizedFieldProps';
|
|
61
60
|
export { useDefaultReduceAnimations } from './hooks/useDefaultReduceAnimations';
|
|
62
61
|
export { applyDefaultViewProps } from './utils/views';
|
|
63
62
|
export { DayCalendar } from '../DateCalendar/DayCalendar';
|
|
@@ -65,4 +64,7 @@ export type { DayCalendarProps, DayCalendarSlots, DayCalendarSlotProps, Exported
|
|
|
65
64
|
export type { ExportedDateCalendarProps } from '../DateCalendar/DateCalendar.types';
|
|
66
65
|
export { useCalendarState } from '../DateCalendar/useCalendarState';
|
|
67
66
|
export { isInternalTimeView, isTimeView } from './utils/time-utils';
|
|
68
|
-
export {
|
|
67
|
+
export { DateTimePickerToolbarOverrideContext } from '../DateTimePicker/DateTimePickerToolbar';
|
|
68
|
+
export { getDateFieldInternalPropsDefaults } from '../managers/useDateManager';
|
|
69
|
+
export { getTimeFieldInternalPropsDefaults } from '../managers/useTimeManager';
|
|
70
|
+
export { getDateTimeFieldInternalPropsDefaults } from '../managers/useDateTimeManager';
|
package/internals/index.js
CHANGED
|
@@ -11,7 +11,7 @@ export { pickersPopperClasses } from "./components/pickersPopperClasses.js";
|
|
|
11
11
|
export { PickersToolbarButton } from "./components/PickersToolbarButton.js";
|
|
12
12
|
export { DAY_MARGIN, DIALOG_WIDTH, VIEW_HEIGHT } from "./constants/dimensions.js";
|
|
13
13
|
export { useControlledValueWithTimezone } from "./hooks/useValueWithTimezone.js";
|
|
14
|
-
export { useField, createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from "./hooks/useField/index.js";
|
|
14
|
+
export { useField, useFieldInternalPropsWithDefaults, createDateStrForV7HiddenInputFromSections, createDateStrForV6InputFromSections } from "./hooks/useField/index.js";
|
|
15
15
|
export { useFieldOwnerState } from "./hooks/useFieldOwnerState.js";
|
|
16
16
|
export { usePicker } from "./hooks/usePicker/index.js";
|
|
17
17
|
export { usePickerPrivateContext } from "./hooks/usePickerPrivateContext.js";
|
|
@@ -25,10 +25,12 @@ export { applyDefaultDate, replaceInvalidDateByNull, areDatesEqual, getTodayDate
|
|
|
25
25
|
export { resolveTimeViewsResponse, resolveDateTimeFormat } from "./utils/date-time-utils.js";
|
|
26
26
|
export { getDefaultReferenceDate } from "./utils/getDefaultReferenceDate.js";
|
|
27
27
|
export { executeInTheNextEventLoopTick, getActiveElement, onSpaceOrEnter, DEFAULT_DESKTOP_MODE_MEDIA_QUERY } from "./utils/utils.js";
|
|
28
|
-
export { useDefaultizedDateField, useDefaultizedTimeField, useDefaultizedDateTimeField } from "./hooks/defaultizedFieldProps.js";
|
|
29
28
|
export { useDefaultReduceAnimations } from "./hooks/useDefaultReduceAnimations.js";
|
|
30
29
|
export { applyDefaultViewProps } from "./utils/views.js";
|
|
31
30
|
export { DayCalendar } from "../DateCalendar/DayCalendar.js";
|
|
32
31
|
export { useCalendarState } from "../DateCalendar/useCalendarState.js";
|
|
33
32
|
export { isInternalTimeView, isTimeView } from "./utils/time-utils.js";
|
|
34
|
-
export {
|
|
33
|
+
export { DateTimePickerToolbarOverrideContext } from "../DateTimePicker/DateTimePickerToolbar.js";
|
|
34
|
+
export { getDateFieldInternalPropsDefaults } from "../managers/useDateManager.js";
|
|
35
|
+
export { getTimeFieldInternalPropsDefaults } from "../managers/useTimeManager.js";
|
|
36
|
+
export { getDateTimeFieldInternalPropsDefaults } from "../managers/useDateTimeManager.js";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PickerManager } from '../../models';
|
|
2
|
+
export type PickerAnyManager = PickerManager<any, any, any, any, any>;
|
|
3
|
+
type PickerManagerProperties<TManager extends PickerAnyManager> = TManager extends PickerManager<infer TValue, infer TEnableAccessibleFieldDOMStructure, infer TError, infer TFieldInternalProps, infer TFieldInternalPropsWithDefaults> ? {
|
|
4
|
+
value: TValue;
|
|
5
|
+
enableAccessibleFieldDOMStructure: TEnableAccessibleFieldDOMStructure;
|
|
6
|
+
error: TError;
|
|
7
|
+
fieldInternalProps: TFieldInternalProps;
|
|
8
|
+
fieldInternalPropsWithDefaults: TFieldInternalPropsWithDefaults;
|
|
9
|
+
} : never;
|
|
10
|
+
export type PickerManagerFieldInternalProps<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['fieldInternalProps'];
|
|
11
|
+
export type PickerManagerFieldInternalPropsWithDefaults<TManager extends PickerAnyManager> = PickerManagerProperties<TManager>['fieldInternalPropsWithDefaults'];
|
|
12
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -11,7 +11,7 @@ import { PickerValidValue } from '../value';
|
|
|
11
11
|
/**
|
|
12
12
|
* Props common to all pickers after applying the default props on each picker.
|
|
13
13
|
*/
|
|
14
|
-
export interface BasePickerProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<TValue, TView, any
|
|
14
|
+
export interface BasePickerProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem, TError, TExternalProps extends UsePickerViewsProps<TValue, TView, any>> extends UsePickerBaseProps<TValue, TView, TError, TExternalProps> {
|
|
15
15
|
className?: string;
|
|
16
16
|
/**
|
|
17
17
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
@@ -26,7 +26,7 @@ export interface BasePickerProps<TValue extends PickerValidValue, TView extends
|
|
|
26
26
|
/**
|
|
27
27
|
* Props common to all pickers before applying the default props on each picker.
|
|
28
28
|
*/
|
|
29
|
-
export interface BasePickerInputProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem, TError> extends Omit<MakeOptional<BasePickerProps<TValue, TView, TError, any
|
|
29
|
+
export interface BasePickerInputProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem, TError> extends Omit<MakeOptional<BasePickerProps<TValue, TView, TError, any>, 'openTo' | 'views'>, 'viewRenderers'> {
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Props common to all non-static pickers.
|
|
@@ -1,18 +1,5 @@
|
|
|
1
1
|
import { SxProps } from '@mui/system';
|
|
2
2
|
import { Theme } from '@mui/material/styles';
|
|
3
|
-
import { DateOrTimeViewWithMeridiem } from '../common';
|
|
4
|
-
export interface BaseTabsProps<TView extends DateOrTimeViewWithMeridiem> {
|
|
5
|
-
/**
|
|
6
|
-
* Currently visible picker view.
|
|
7
|
-
*/
|
|
8
|
-
view: TView;
|
|
9
|
-
/**
|
|
10
|
-
* Callback called when a tab is clicked.
|
|
11
|
-
* @template TView
|
|
12
|
-
* @param {TView} view The view to open
|
|
13
|
-
*/
|
|
14
|
-
onViewChange: (view: TView) => void;
|
|
15
|
-
}
|
|
16
3
|
export interface ExportedBaseTabsProps {
|
|
17
4
|
className?: string;
|
|
18
5
|
/**
|
|
@@ -1,26 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { SxProps } from '@mui/system';
|
|
3
3
|
import { Theme } from '@mui/material/styles';
|
|
4
|
-
|
|
5
|
-
import { PickerValidValue } from '../value';
|
|
6
|
-
export interface BaseToolbarProps<TValue extends PickerValidValue, TView extends DateOrTimeViewWithMeridiem> extends ExportedBaseToolbarProps {
|
|
7
|
-
isLandscape: boolean;
|
|
8
|
-
onChange: (newValue: TValue) => void;
|
|
9
|
-
value: TValue;
|
|
10
|
-
/**
|
|
11
|
-
* Currently visible picker view.
|
|
12
|
-
*/
|
|
13
|
-
view: TView;
|
|
14
|
-
/**
|
|
15
|
-
* Callback called when a toolbar is clicked
|
|
16
|
-
* @template TView
|
|
17
|
-
* @param {TView} view The view to open
|
|
18
|
-
*/
|
|
19
|
-
onViewChange: (view: TView) => void;
|
|
20
|
-
/**
|
|
21
|
-
* Available views.
|
|
22
|
-
*/
|
|
23
|
-
views: readonly TView[];
|
|
4
|
+
export interface BaseToolbarProps extends ExportedBaseToolbarProps {
|
|
24
5
|
titleId?: string;
|
|
25
6
|
}
|
|
26
7
|
export interface ExportedBaseToolbarProps {
|
|
@@ -58,7 +58,7 @@ export const findClosestEnabledDate = ({
|
|
|
58
58
|
}
|
|
59
59
|
return null;
|
|
60
60
|
};
|
|
61
|
-
export const replaceInvalidDateByNull = (utils, value) =>
|
|
61
|
+
export const replaceInvalidDateByNull = (utils, value) => !utils.isValid(value) ? null : value;
|
|
62
62
|
export const applyDefaultDate = (utils, value, defaultValue) => {
|
|
63
63
|
if (value == null || !utils.isValid(value)) {
|
|
64
64
|
return defaultValue;
|
|
@@ -12,7 +12,7 @@ export const singleItemValueManager = {
|
|
|
12
12
|
referenceDate
|
|
13
13
|
} = _ref,
|
|
14
14
|
params = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
15
|
-
if (
|
|
15
|
+
if (params.utils.isValid(value)) {
|
|
16
16
|
return value;
|
|
17
17
|
}
|
|
18
18
|
if (referenceDate != null) {
|
|
@@ -25,11 +25,11 @@ export const singleItemValueManager = {
|
|
|
25
25
|
isSameError: (a, b) => a === b,
|
|
26
26
|
hasError: error => error != null,
|
|
27
27
|
defaultErrorState: null,
|
|
28
|
-
getTimezone: (utils, value) =>
|
|
28
|
+
getTimezone: (utils, value) => utils.isValid(value) ? utils.getTimezone(value) : null,
|
|
29
29
|
setTimezone: (utils, timezone, value) => value == null ? null : utils.setTimezone(value, timezone)
|
|
30
30
|
};
|
|
31
31
|
export const singleItemFieldValueManager = {
|
|
32
|
-
updateReferenceValue: (utils, value, prevReferenceValue) =>
|
|
32
|
+
updateReferenceValue: (utils, value, prevReferenceValue) => !utils.isValid(value) ? prevReferenceValue : value,
|
|
33
33
|
getSectionsFromValue: (utils, date, prevSections, getSectionsFromDate) => {
|
|
34
34
|
const shouldReUsePrevDateSections = !utils.isValid(date) && !!prevSections;
|
|
35
35
|
if (shouldReUsePrevDateSections) {
|
|
@@ -45,7 +45,7 @@ export const singleItemFieldValueManager = {
|
|
|
45
45
|
getSections: sections => sections,
|
|
46
46
|
getNewValuesFromNewActiveDate: newActiveDate => ({
|
|
47
47
|
value: newActiveDate,
|
|
48
|
-
referenceValue:
|
|
48
|
+
referenceValue: utils.isValid(newActiveDate) ? newActiveDate : state.referenceValue
|
|
49
49
|
})
|
|
50
50
|
}),
|
|
51
51
|
parseValueStr: (valueStr, referenceValue, parseDate) => parseDate(valueStr.trim(), referenceValue)
|
package/locales/index.d.ts
CHANGED
package/locales/index.js
CHANGED
package/locales/nbNO.js
CHANGED
|
@@ -16,11 +16,10 @@ const nbNOPickers = {
|
|
|
16
16
|
// DateRange labels
|
|
17
17
|
start: 'Start',
|
|
18
18
|
end: 'Slutt',
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
startDate: 'Startdato',
|
|
20
|
+
startTime: 'Starttid',
|
|
21
|
+
endDate: 'Sluttdato',
|
|
22
|
+
endTime: 'Slutttid',
|
|
24
23
|
// Action bar
|
|
25
24
|
cancelButtonLabel: 'Avbryt',
|
|
26
25
|
clearButtonLabel: 'Fjern',
|
|
@@ -46,8 +45,7 @@ const nbNOPickers = {
|
|
|
46
45
|
// Open picker labels
|
|
47
46
|
openDatePickerDialogue: formattedDate => formattedDate ? `Velg dato, valgt dato er ${formattedDate}` : 'Velg dato',
|
|
48
47
|
openTimePickerDialogue: formattedTime => formattedTime ? `Velg tid, valgt tid er ${formattedTime}` : 'Velg tid',
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
fieldClearLabel: 'Slett',
|
|
51
49
|
// Table labels
|
|
52
50
|
timeTableLabel: 'velg tid',
|
|
53
51
|
dateTableLabel: 'velg dato',
|
|
@@ -59,19 +57,17 @@ const nbNOPickers = {
|
|
|
59
57
|
fieldHoursPlaceholder: () => 'tt',
|
|
60
58
|
fieldMinutesPlaceholder: () => 'mm',
|
|
61
59
|
fieldSecondsPlaceholder: () => 'ss',
|
|
62
|
-
fieldMeridiemPlaceholder: () => 'aa'
|
|
63
|
-
|
|
60
|
+
fieldMeridiemPlaceholder: () => 'aa',
|
|
64
61
|
// View names
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
62
|
+
year: 'År',
|
|
63
|
+
month: 'Måned',
|
|
64
|
+
day: 'Dag',
|
|
65
|
+
weekDay: 'Ukedag',
|
|
66
|
+
hours: 'Timer',
|
|
67
|
+
minutes: 'Minutter',
|
|
68
|
+
seconds: 'Sekunder',
|
|
69
|
+
meridiem: 'Meridiem',
|
|
74
70
|
// Common
|
|
75
|
-
|
|
71
|
+
empty: 'Tøm'
|
|
76
72
|
};
|
|
77
73
|
export const nbNO = getPickersLocalization(nbNOPickers);
|
|
@@ -18,7 +18,7 @@ export const buildGetOpenDialogAriaText = params => {
|
|
|
18
18
|
propsTranslation
|
|
19
19
|
} = params;
|
|
20
20
|
return value => {
|
|
21
|
-
const formattedValue =
|
|
21
|
+
const formattedValue = utils.isValid(value) ? utils.format(value, formatKey) : null;
|
|
22
22
|
const translation = propsTranslation ?? contextTranslation;
|
|
23
23
|
return translation(formattedValue);
|
|
24
24
|
};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { TimeViewWithMeridiem } from '../internals/models';
|
|
2
|
+
export declare const zhTW: {
|
|
3
|
+
components: {
|
|
4
|
+
MuiLocalizationProvider: {
|
|
5
|
+
defaultProps: {
|
|
6
|
+
localeText: {
|
|
7
|
+
previousMonth?: string | undefined;
|
|
8
|
+
nextMonth?: string | undefined;
|
|
9
|
+
calendarWeekNumberHeaderLabel?: string | undefined;
|
|
10
|
+
calendarWeekNumberHeaderText?: string | undefined;
|
|
11
|
+
calendarWeekNumberAriaLabelText?: ((weekNumber: number) => string) | undefined;
|
|
12
|
+
calendarWeekNumberText?: ((weekNumber: number) => string) | undefined;
|
|
13
|
+
openPreviousView?: string | undefined;
|
|
14
|
+
openNextView?: string | undefined;
|
|
15
|
+
calendarViewSwitchingButtonAriaLabel?: ((currentView: import("@mui/x-date-pickers/models").DateView) => string) | undefined;
|
|
16
|
+
start?: string | undefined;
|
|
17
|
+
end?: string | undefined;
|
|
18
|
+
startDate?: string | undefined;
|
|
19
|
+
startTime?: string | undefined;
|
|
20
|
+
endDate?: string | undefined;
|
|
21
|
+
endTime?: string | undefined;
|
|
22
|
+
cancelButtonLabel?: string | undefined;
|
|
23
|
+
clearButtonLabel?: string | undefined;
|
|
24
|
+
okButtonLabel?: string | undefined;
|
|
25
|
+
todayButtonLabel?: string | undefined;
|
|
26
|
+
clockLabelText?: ((view: import("@mui/x-date-pickers/models").TimeView, formattedTime: string | null) => string) | undefined;
|
|
27
|
+
hoursClockNumberText?: ((hours: string) => string) | undefined;
|
|
28
|
+
minutesClockNumberText?: ((minutes: string) => string) | undefined;
|
|
29
|
+
secondsClockNumberText?: ((seconds: string) => string) | undefined;
|
|
30
|
+
selectViewText?: ((view: TimeViewWithMeridiem) => string) | undefined;
|
|
31
|
+
openDatePickerDialogue?: ((formattedDate: string | null) => string) | undefined;
|
|
32
|
+
openTimePickerDialogue?: ((formattedTime: string | null) => string) | undefined;
|
|
33
|
+
fieldClearLabel?: string | undefined;
|
|
34
|
+
timeTableLabel?: string | undefined;
|
|
35
|
+
dateTableLabel?: string | undefined;
|
|
36
|
+
fieldYearPlaceholder?: ((params: {
|
|
37
|
+
digitAmount: number;
|
|
38
|
+
format: string;
|
|
39
|
+
}) => string) | undefined;
|
|
40
|
+
fieldMonthPlaceholder?: ((params: {
|
|
41
|
+
contentType: import("@mui/x-date-pickers/models").FieldSectionContentType;
|
|
42
|
+
format: string;
|
|
43
|
+
}) => string) | undefined;
|
|
44
|
+
fieldDayPlaceholder?: ((params: {
|
|
45
|
+
format: string;
|
|
46
|
+
}) => string) | undefined;
|
|
47
|
+
fieldWeekDayPlaceholder?: ((params: {
|
|
48
|
+
contentType: import("@mui/x-date-pickers/models").FieldSectionContentType;
|
|
49
|
+
format: string;
|
|
50
|
+
}) => string) | undefined;
|
|
51
|
+
fieldHoursPlaceholder?: ((params: {
|
|
52
|
+
format: string;
|
|
53
|
+
}) => string) | undefined;
|
|
54
|
+
fieldMinutesPlaceholder?: ((params: {
|
|
55
|
+
format: string;
|
|
56
|
+
}) => string) | undefined;
|
|
57
|
+
fieldSecondsPlaceholder?: ((params: {
|
|
58
|
+
format: string;
|
|
59
|
+
}) => string) | undefined;
|
|
60
|
+
fieldMeridiemPlaceholder?: ((params: {
|
|
61
|
+
format: string;
|
|
62
|
+
}) => string) | undefined;
|
|
63
|
+
year?: string | undefined;
|
|
64
|
+
month?: string | undefined;
|
|
65
|
+
day?: string | undefined;
|
|
66
|
+
weekDay?: string | undefined;
|
|
67
|
+
hours?: string | undefined;
|
|
68
|
+
minutes?: string | undefined;
|
|
69
|
+
seconds?: string | undefined;
|
|
70
|
+
meridiem?: string | undefined;
|
|
71
|
+
empty?: string | undefined;
|
|
72
|
+
datePickerToolbarTitle?: string | undefined;
|
|
73
|
+
timePickerToolbarTitle?: string | undefined;
|
|
74
|
+
dateTimePickerToolbarTitle?: string | undefined;
|
|
75
|
+
dateRangePickerToolbarTitle?: string | undefined;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
};
|
package/locales/zhTW.js
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { getPickersLocalization } from "./utils/getPickersLocalization.js";
|
|
2
|
+
const views = {
|
|
3
|
+
hours: '小時',
|
|
4
|
+
minutes: '分鐘',
|
|
5
|
+
seconds: '秒',
|
|
6
|
+
meridiem: '十二小時制'
|
|
7
|
+
};
|
|
8
|
+
const zhTWPickers = {
|
|
9
|
+
// Calendar navigation
|
|
10
|
+
previousMonth: '上個月',
|
|
11
|
+
nextMonth: '下個月',
|
|
12
|
+
// View navigation
|
|
13
|
+
openPreviousView: '前一個視圖',
|
|
14
|
+
openNextView: '下一個視圖',
|
|
15
|
+
calendarViewSwitchingButtonAriaLabel: view => view === 'year' ? '年視圖已打開,切換為日曆視圖' : '日曆視圖已打開,切換為年視圖',
|
|
16
|
+
// DateRange labels
|
|
17
|
+
start: '開始',
|
|
18
|
+
end: '結束',
|
|
19
|
+
startDate: '開始日期',
|
|
20
|
+
startTime: '開始時間',
|
|
21
|
+
endDate: '結束日期',
|
|
22
|
+
endTime: '結束時間',
|
|
23
|
+
// Action bar
|
|
24
|
+
cancelButtonLabel: '取消',
|
|
25
|
+
clearButtonLabel: '清除',
|
|
26
|
+
okButtonLabel: '確認',
|
|
27
|
+
todayButtonLabel: '今天',
|
|
28
|
+
// Toolbar titles
|
|
29
|
+
datePickerToolbarTitle: '選擇日期',
|
|
30
|
+
dateTimePickerToolbarTitle: '選擇日期和時間',
|
|
31
|
+
timePickerToolbarTitle: '選擇時間',
|
|
32
|
+
dateRangePickerToolbarTitle: '選擇時間範圍',
|
|
33
|
+
// Clock labels
|
|
34
|
+
clockLabelText: (view, formattedTime) => `選擇 ${views[view]}. ${!formattedTime ? '未選擇時間' : `已選擇${formattedTime}`}`,
|
|
35
|
+
hoursClockNumberText: hours => `${hours}小時`,
|
|
36
|
+
minutesClockNumberText: minutes => `${minutes}分鐘`,
|
|
37
|
+
secondsClockNumberText: seconds => `${seconds}秒`,
|
|
38
|
+
// Digital clock labels
|
|
39
|
+
selectViewText: view => `選擇 ${views[view]}`,
|
|
40
|
+
// Calendar labels
|
|
41
|
+
calendarWeekNumberHeaderLabel: '週數',
|
|
42
|
+
calendarWeekNumberHeaderText: '#',
|
|
43
|
+
calendarWeekNumberAriaLabelText: weekNumber => `第${weekNumber}週`,
|
|
44
|
+
calendarWeekNumberText: weekNumber => `${weekNumber}`,
|
|
45
|
+
// Open picker labels
|
|
46
|
+
openDatePickerDialogue: formattedDate => formattedDate ? `選擇日期,已選擇${formattedDate}` : '選擇日期',
|
|
47
|
+
openTimePickerDialogue: formattedTime => formattedTime ? `選擇時間,已選擇${formattedTime}` : '選擇時間',
|
|
48
|
+
fieldClearLabel: '清除',
|
|
49
|
+
// Table labels
|
|
50
|
+
timeTableLabel: '選擇時間',
|
|
51
|
+
dateTableLabel: '選擇日期',
|
|
52
|
+
// Field section placeholders
|
|
53
|
+
fieldYearPlaceholder: params => 'Y'.repeat(params.digitAmount),
|
|
54
|
+
fieldMonthPlaceholder: params => params.contentType === 'letter' ? 'MMMM' : 'MM',
|
|
55
|
+
fieldDayPlaceholder: () => 'DD',
|
|
56
|
+
fieldWeekDayPlaceholder: params => params.contentType === 'letter' ? 'EEEE' : 'EE',
|
|
57
|
+
fieldHoursPlaceholder: () => 'hh',
|
|
58
|
+
fieldMinutesPlaceholder: () => 'mm',
|
|
59
|
+
fieldSecondsPlaceholder: () => 'ss',
|
|
60
|
+
fieldMeridiemPlaceholder: () => 'aa',
|
|
61
|
+
// View names
|
|
62
|
+
year: '年份',
|
|
63
|
+
month: '月份',
|
|
64
|
+
day: '日期',
|
|
65
|
+
weekDay: '星期',
|
|
66
|
+
hours: '時',
|
|
67
|
+
minutes: '分',
|
|
68
|
+
seconds: '秒',
|
|
69
|
+
meridiem: '十二小時制',
|
|
70
|
+
// Common
|
|
71
|
+
empty: '空'
|
|
72
|
+
};
|
|
73
|
+
export const zhTW = getPickersLocalization(zhTWPickers);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { useDateManager } from './useDateManager';
|
|
2
|
+
export type { UseDateManagerReturnValue, UseDateManagerParameters } from './useDateManager';
|
|
3
|
+
export { useTimeManager } from './useTimeManager';
|
|
4
|
+
export type { UseTimeManagerReturnValue, UseTimeManagerParameters } from './useTimeManager';
|
|
5
|
+
export { useDateTimeManager } from './useDateTimeManager';
|
|
6
|
+
export type { UseDateTimeManagerReturnValue, UseDateTimeManagerParameters, } from './useDateTimeManager';
|