2022-03-01 05:54:32 +01:00
|
|
|
import React from 'react';
|
|
|
|
import { FormattedMessage } from 'react-intl';
|
|
|
|
import DropDown from 'components/common/DropDown';
|
|
|
|
import Button from 'components/common/Button';
|
|
|
|
import useLocale from 'hooks/useLocale';
|
|
|
|
import { DEFAULT_LOCALE } from 'lib/constants';
|
|
|
|
import styles from './TimezoneSetting.module.css';
|
2022-11-08 07:35:51 +01:00
|
|
|
import { languages } from 'lib/lang';
|
2022-03-01 05:54:32 +01:00
|
|
|
|
|
|
|
export default function LanguageSetting() {
|
|
|
|
const { locale, saveLocale } = useLocale();
|
|
|
|
const options = Object.keys(languages).map(key => ({ ...languages[key], value: key }));
|
|
|
|
|
|
|
|
function handleReset() {
|
|
|
|
saveLocale(DEFAULT_LOCALE);
|
|
|
|
}
|
|
|
|
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<DropDown
|
|
|
|
menuClassName={styles.menu}
|
|
|
|
value={locale}
|
|
|
|
options={options}
|
|
|
|
onChange={saveLocale}
|
|
|
|
/>
|
|
|
|
<Button className={styles.button} size="small" onClick={handleReset}>
|
|
|
|
<FormattedMessage id="label.reset" defaultMessage="Reset" />
|
|
|
|
</Button>
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
}
|