Made sure that 3 letter languages are also handled

pull/4692/head
Frank Elsinga 3 weeks ago committed by GitHub
parent ae9c7be347
commit 00a734e5b0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -66,7 +66,7 @@ export function currentLocale() {
const potentialLocales = [ localStorage.locale, navigator.language, ...navigator.languages ];
const availableLocales = potentialLocales
.filter(l => !!l)
.map(l => l.substring(0, 2) in messages ? l.substring(0, 2) : l)
.map(l => l.split("-")[0] in messages ? l.split("-")[0] : l)
.filter(l => l in messages);
return availableLocales[0] || "en";
}

@ -46,6 +46,12 @@ describe("Test i18n.js", () => {
setLanguages(['abc', 'en-US', 'pl', 'ja']);
expect(currentLocale()).equal("en");
setLanguages(['fil-PH', 'pl']);
expect(currentLocale()).equal("pl");
setLanguages(['shi-Latn-MA', 'pl']);
expect(currentLocale()).equal("pl");
setLanguages(['pl']);
localStorage.locale = "ja-ZZ";
expect(currentLocale()).equal("ja");

Loading…
Cancel
Save