Internationalization & localization (#1822)
* install and setup lingui * setup dynamic locale activation and async loading * first pass of automated replacement of text messages * add some more documentaton * fix nits * add `es` and `hi`locales for testing purposes * make accessibilityLabel localized * compile and extract new messages * fix merge conflicts * fix eslint warning * change instructions from sending email to opening PR * fix comments
This commit is contained in:
parent
82059b7ee1
commit
4c7850f8c4
108 changed files with 10334 additions and 1365 deletions
20
src/locale/i18n.ts
Normal file
20
src/locale/i18n.ts
Normal file
|
@ -0,0 +1,20 @@
|
|||
import {i18n} from '@lingui/core'
|
||||
|
||||
export const locales = {
|
||||
en: 'English',
|
||||
cs: 'Česky',
|
||||
fr: 'Français',
|
||||
hi: 'हिंदी',
|
||||
es: 'Español',
|
||||
}
|
||||
export const defaultLocale = 'en'
|
||||
|
||||
/**
|
||||
* We do a dynamic import of just the catalog that we need
|
||||
* @param locale any locale string
|
||||
*/
|
||||
export async function dynamicActivate(locale: string) {
|
||||
const {messages} = await import(`./locales/${locale}/messages`)
|
||||
i18n.load(locale, messages)
|
||||
i18n.activate(locale)
|
||||
}
|
1
src/locale/locales/cs/messages.js
Normal file
1
src/locale/locales/cs/messages.js
Normal file
File diff suppressed because one or more lines are too long
1544
src/locale/locales/cs/messages.po
Normal file
1544
src/locale/locales/cs/messages.po
Normal file
File diff suppressed because it is too large
Load diff
1
src/locale/locales/en/messages.js
Normal file
1
src/locale/locales/en/messages.js
Normal file
File diff suppressed because one or more lines are too long
1544
src/locale/locales/en/messages.po
Normal file
1544
src/locale/locales/en/messages.po
Normal file
File diff suppressed because it is too large
Load diff
1
src/locale/locales/es/messages.js
Normal file
1
src/locale/locales/es/messages.js
Normal file
File diff suppressed because one or more lines are too long
1544
src/locale/locales/es/messages.po
Normal file
1544
src/locale/locales/es/messages.po
Normal file
File diff suppressed because it is too large
Load diff
1
src/locale/locales/fr/messages.js
Normal file
1
src/locale/locales/fr/messages.js
Normal file
File diff suppressed because one or more lines are too long
1544
src/locale/locales/fr/messages.po
Normal file
1544
src/locale/locales/fr/messages.po
Normal file
File diff suppressed because it is too large
Load diff
1
src/locale/locales/hi/messages.js
Normal file
1
src/locale/locales/hi/messages.js
Normal file
File diff suppressed because one or more lines are too long
1544
src/locale/locales/hi/messages.po
Normal file
1544
src/locale/locales/hi/messages.po
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue