Use Intl for names of languages (#11427)

* Use Intl for names of languages

* Tweak Intl language style from "American English" -> "US English"

* Update tests

* Fix tests

* Consolidate languageHandler-test files

* Improve coverage

* Consistent casing for languages in dropdown

* Update LanguageDropdown.tsx

* Delint & update snapshot

* Fix tests

* Improve coverage

`of` will fallback to the given code with fallback=code (default)
This commit is contained in:
Michael Telatynski 2023-08-22 15:07:16 +01:00 committed by GitHub
parent 3684c77cfe
commit 4de315fb6c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 304 additions and 193 deletions

View file

@ -32,24 +32,18 @@ const lv = {
// de_DE.json
// lv.json - mock version with few translations, used to test fallback translation
fetchMock
.get("/i18n/languages.json", {
en: {
fileName: "en_EN.json",
label: "English",
},
de: {
fileName: "de_DE.json",
label: "German",
},
lv: {
fileName: "lv.json",
label: "Latvian",
},
})
.get("end:en_EN.json", en)
.get("end:de_DE.json", de)
.get("end:lv.json", lv);
export function setupLanguageMock() {
fetchMock
.get("/i18n/languages.json", {
en: "en_EN.json",
de: "de_DE.json",
lv: "lv.json",
})
.get("end:en_EN.json", en)
.get("end:de_DE.json", de)
.get("end:lv.json", lv);
}
setupLanguageMock();
languageHandler.setLanguage("en");
languageHandler.setMissingEntryGenerator((key) => key.split("|", 2)[1]);