11import { unstable_useForkRef as useForkRef } from '@mui/utils' ;
2- import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns ' ;
2+ import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFnsV3 ' ;
33import { DatePicker } from '@mui/x-date-pickers/DatePicker' ;
44import { DateTimePicker } from '@mui/x-date-pickers/DateTimePicker' ;
55import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider' ;
66import { TimePicker } from '@mui/x-date-pickers/TimePicker' ;
7- import formatDate from 'date-fns/format' ;
8- import parse from 'date-fns/parse' ;
9- import parseISO from 'date-fns/parseISO' ;
7+ import { formatDate } from 'date-fns/format' ;
8+ import { parse } from 'date-fns/parse' ;
9+ import { parseISO } from 'date-fns/parseISO' ;
1010import React , { useCallback , useMemo , useRef , useState } from 'react' ;
1111
1212import Field from '@staticcms/core/components/common/field/Field' ;
1313import classNames from '@staticcms/core/lib/util/classNames.util' ;
1414import { generateClassNames } from '@staticcms/core/lib/util/theming.util' ;
1515import NowButton from './components/NowButton' ;
1616import { DEFAULT_DATETIME_FORMAT } from './constants' ;
17- import { useDatetimeFormats } from './datetime.util' ;
17+ import { getDateFnsLocale , useDatetimeFormats } from './datetime.util' ;
1818import { localToUTC } from './utc.util' ;
1919
2020import type { DateTimeField , WidgetControlProps } from '@staticcms/core' ;
@@ -43,6 +43,7 @@ const DateTimeControl: FC<WidgetControlProps<string | Date, DateTimeField>> = ({
4343 errors,
4444 hasErrors,
4545 forSingleList,
46+ config : { locale } ,
4647 onChange,
4748} ) => {
4849 const ref = useRef < HTMLInputElement | null > ( null ) ;
@@ -194,6 +195,8 @@ const DateTimeControl: FC<WidgetControlProps<string | Date, DateTimeField>> = ({
194195 rootRef ,
195196 ] ) ;
196197
198+ const dateLocale = useMemo ( ( ) => ( locale ? getDateFnsLocale ( locale ) : undefined ) , [ locale ] ) ;
199+
197200 return (
198201 < Field
199202 inputRef = { ! open ? ref : undefined }
@@ -213,7 +216,11 @@ const DateTimeControl: FC<WidgetControlProps<string | Date, DateTimeField>> = ({
213216 wrapperClassName = { classes . wrapper }
214217 >
215218 < div className = { classes [ 'inputs' ] } >
216- < LocalizationProvider key = "localization-provider" dateAdapter = { AdapterDateFns } >
219+ < LocalizationProvider
220+ key = "localization-provider"
221+ dateAdapter = { AdapterDateFns }
222+ adapterLocale = { dateLocale }
223+ >
217224 { dateTimePicker }
218225 </ LocalizationProvider >
219226 < NowButton
0 commit comments