umami/components/settings/LanguageSetting.js

31 lines
892 B
JavaScript
Raw Normal View History

2022-03-01 05:54:32 +01:00
import { FormattedMessage } from 'react-intl';
import DropDown from 'components/common/DropDown';
import { Button } from 'react-basics';
2022-03-01 05:54:32 +01:00
import useLocale from 'hooks/useLocale';
import { DEFAULT_LOCALE } from 'lib/constants';
import styles from './TimezoneSetting.module.css';
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="sm" onClick={handleReset}>
2022-03-01 05:54:32 +01:00
<FormattedMessage id="label.reset" defaultMessage="Reset" />
</Button>
</>
);
}