Refactor for readability

This commit is contained in:
Deluan
2021-06-09 22:35:20 -04:00
parent 7f85ecd515
commit 2afb2db7ef
8 changed files with 193 additions and 187 deletions
+38
View File
@@ -0,0 +1,38 @@
import { SelectInput, useLocale, useSetLocale, useTranslate } from 'react-admin'
import { useGetLanguageChoices } from '../i18n'
import { HelpMsg } from './HelpMsg'
import { docsUrl, openInNewTab } from '../utils'
const helpKey = '_help'
export const SelectLanguage = (props) => {
const translate = useTranslate()
const setLocale = useSetLocale()
const locale = useLocale()
const { choices } = useGetLanguageChoices()
choices.push({
id: helpKey,
name: <HelpMsg caption={'Help to translate'} />,
})
return (
<SelectInput
{...props}
source="language"
label={translate('menu.personal.options.language')}
defaultValue={locale}
choices={choices}
translateChoice={false}
onChange={(event) => {
if (event.target.value === helpKey) {
openInNewTab(docsUrl('/docs/developers/translations/'))
return
}
setLocale(event.target.value).then(() => {
localStorage.setItem('locale', event.target.value)
})
}}
/>
)
}