Allow setting locale for datetime widget directly

pull/771/head
Michael Shamoon 2 years ago
parent 272be2c086
commit 84b7f103c3

@ -13,17 +13,18 @@ const textSizes = {
}; };
export default function DateTime({ options }) { export default function DateTime({ options }) {
const { text_size: textSize, format } = options; const { text_size: textSize, locale, format } = options;
const { i18n } = useTranslation(); const { i18n } = useTranslation();
const [date, setDate] = useState(""); const [date, setDate] = useState("");
const dateLocale = locale ?? i18n.language;
useEffect(() => { useEffect(() => {
const dateFormat = new Intl.DateTimeFormat(i18n.language, { ...format }); const dateFormat = new Intl.DateTimeFormat(dateLocale, { ...format });
const interval = setInterval(() => { const interval = setInterval(() => {
setDate(dateFormat.format(new Date())); setDate(dateFormat.format(new Date()));
}, 1000); }, 1000);
return () => clearInterval(interval); return () => clearInterval(interval);
}, [date, setDate, i18n.language, format]); }, [date, setDate, dateLocale, format]);
return ( return (
<div className="flex flex-col justify-center first:ml-0 ml-4"> <div className="flex flex-col justify-center first:ml-0 ml-4">

Loading…
Cancel
Save