diff --git a/app/soapbox/features/compose/components/schedule-form.tsx b/app/soapbox/features/compose/components/schedule-form.tsx index 22e10daef..97e71ef58 100644 --- a/app/soapbox/features/compose/components/schedule-form.tsx +++ b/app/soapbox/features/compose/components/schedule-form.tsx @@ -1,7 +1,9 @@ 'use strict'; import classNames from 'clsx'; +import { enUS, it } from 'date-fns/locale'; import React from 'react'; +import { registerLocale } from 'react-datepicker'; import { defineMessages, FormattedMessage, useIntl } from 'react-intl'; import { setSchedule, removeSchedule } from 'soapbox/actions/compose'; @@ -11,6 +13,7 @@ import BundleContainer from 'soapbox/features/ui/containers/bundle-container'; import { DatePicker } from 'soapbox/features/ui/util/async-components'; import { useAppDispatch, useCompose } from 'soapbox/hooks'; + export const isCurrentOrFutureDate = (date: Date) => { return date && new Date().setHours(0, 0, 0, 0) <= new Date(date).setHours(0, 0, 0, 0); }; @@ -35,6 +38,12 @@ const ScheduleForm: React.FC = ({ composeId }) => { const dispatch = useAppDispatch(); const intl = useIntl(); + if ('it' === intl.locale) { + registerLocale(intl.locale, it); + } else { + registerLocale(intl.locale, enUS); + } + const scheduledAt = useCompose(composeId).schedule; const active = !!scheduledAt; @@ -59,9 +68,10 @@ const ScheduleForm: React.FC = ({ composeId }) => { {Component => ( = ({ onClose }) => { const intl = useIntl(); + + if ('it' === intl.locale) { + registerLocale(intl.locale, it); + } else { + registerLocale(intl.locale, enUS); + } + const dispatch = useAppDispatch(); const [tab, setTab] = useState<'edit' | 'pending'>('edit'); @@ -261,8 +270,9 @@ const ComposeEventModal: React.FC = ({ onClose }) => { > {Component => ( = ({ onClose }) => { > {Component => (