Add new languages to language options

This commit is contained in:
mrjvs 2023-12-28 00:12:35 +01:00
parent 09e6ced6fe
commit 2f18c3a998
2 changed files with 32 additions and 14 deletions

View File

@ -2,6 +2,8 @@ import ar from "@/assets/locales/ar.json";
import cs from "@/assets/locales/cs.json"; import cs from "@/assets/locales/cs.json";
import de from "@/assets/locales/de.json"; import de from "@/assets/locales/de.json";
import en from "@/assets/locales/en.json"; import en from "@/assets/locales/en.json";
import es from "@/assets/locales/es.json";
import et from "@/assets/locales/et.json";
import fr from "@/assets/locales/fr.json"; import fr from "@/assets/locales/fr.json";
import he from "@/assets/locales/he.json"; import he from "@/assets/locales/he.json";
import it from "@/assets/locales/it.json"; import it from "@/assets/locales/it.json";
@ -13,6 +15,7 @@ import pirate from "@/assets/locales/pirate.json";
import pl from "@/assets/locales/pl.json"; import pl from "@/assets/locales/pl.json";
import sv from "@/assets/locales/sv.json"; import sv from "@/assets/locales/sv.json";
import th from "@/assets/locales/th.json"; import th from "@/assets/locales/th.json";
import tok from "@/assets/locales/tok.json";
import tr from "@/assets/locales/tr.json"; import tr from "@/assets/locales/tr.json";
import vi from "@/assets/locales/vi.json"; import vi from "@/assets/locales/vi.json";
import zh from "@/assets/locales/zh.json"; import zh from "@/assets/locales/zh.json";
@ -36,6 +39,9 @@ export const locales = {
th, th,
ne, ne,
ar, ar,
es,
et,
tok,
}; };
export type Locales = keyof typeof locales; export type Locales = keyof typeof locales;

View File

@ -17,22 +17,34 @@ i18n.use(initReactI18next).init({
}, },
}); });
export const appLanguageOptions = langCodes.map((lang) => { const extraLanguages: Record<
if (lang === "pirate") { string,
return { {
code: string;
name: string;
nativeName: string;
}
> = {
pirate: {
code: "pirate", code: "pirate",
name: "Pirate", name: "Pirate",
nativeName: "Pirate Tongue", nativeName: "Pirate Tongue",
}; },
} minion: {
if (lang === "minion") {
return {
code: "minion", code: "minion",
name: "Minion", name: "Minion",
nativeName: "Minionese", nativeName: "Minionese",
}; },
} tok: {
code: "tok",
name: "Toki pona",
nativeName: "Toki pona",
},
};
export const appLanguageOptions = langCodes.map((lang) => {
const extraLang = extraLanguages[lang];
if (extraLang) return extraLang;
const [langObj] = ISO6391.getLanguages([lang]); const [langObj] = ISO6391.getLanguages([lang]);
if (!langObj) if (!langObj)