i18n: add French, Russian, Chinese Simplified, and Dutch translations
This commit is contained in:
@@ -3,18 +3,22 @@ import { useSettingsStore } from '../store/settingsStore'
|
||||
import de from './translations/de'
|
||||
import en from './translations/en'
|
||||
import es from './translations/es'
|
||||
import fr from './translations/fr'
|
||||
import ru from './translations/ru'
|
||||
import zh from './translations/zh'
|
||||
import nl from './translations/nl'
|
||||
|
||||
type TranslationStrings = Record<string, string>
|
||||
|
||||
const translations: Record<string, TranslationStrings> = { de, en, es }
|
||||
const LOCALES: Record<string, string> = { de: 'de-DE', en: 'en-US', es: 'es-ES' }
|
||||
const translations: Record<string, TranslationStrings> = { de, en, es, fr, ru, zh, nl }
|
||||
const LOCALES: Record<string, string> = { de: 'de-DE', en: 'en-US', es: 'es-ES', fr: 'fr-FR', ru: 'ru-RU', zh: 'zh-CN', nl: 'nl-NL' }
|
||||
|
||||
export function getLocaleForLanguage(language: string): string {
|
||||
return LOCALES[language] || LOCALES.en
|
||||
}
|
||||
|
||||
export function getIntlLanguage(language: string): string {
|
||||
return language === 'de' || language === 'es' ? language : 'en'
|
||||
return ['de', 'es', 'fr', 'ru', 'zh', 'nl'].includes(language) ? language : 'en'
|
||||
}
|
||||
|
||||
interface TranslationContextValue {
|
||||
|
||||
1082
client/src/i18n/translations/fr.ts
Normal file
1082
client/src/i18n/translations/fr.ts
Normal file
File diff suppressed because it is too large
Load Diff
1082
client/src/i18n/translations/nl.ts
Normal file
1082
client/src/i18n/translations/nl.ts
Normal file
File diff suppressed because it is too large
Load Diff
1082
client/src/i18n/translations/ru.ts
Normal file
1082
client/src/i18n/translations/ru.ts
Normal file
File diff suppressed because it is too large
Load Diff
1082
client/src/i18n/translations/zh.ts
Normal file
1082
client/src/i18n/translations/zh.ts
Normal file
File diff suppressed because it is too large
Load Diff
@@ -270,6 +270,10 @@ export default function SettingsPage(): React.ReactElement {
|
||||
{ value: 'de', label: 'Deutsch' },
|
||||
{ value: 'en', label: 'English' },
|
||||
{ value: 'es', label: 'Español' },
|
||||
{ value: 'fr', label: 'Français' },
|
||||
{ value: 'nl', label: 'Nederlands' },
|
||||
{ value: 'ru', label: 'Русский' },
|
||||
{ value: 'zh', label: '中文' },
|
||||
].map(opt => (
|
||||
<button
|
||||
key={opt.value}
|
||||
|
||||
Reference in New Issue
Block a user