dia-gov's picture
Upload 569 files
cd6f98e verified
export type Language = {
code: string;
name: string;
flag: string;
};
export const ENGLISH = { code: "en", name: "English", flag: "🇺🇸" };
export const availableLanguages: Language[] = [
ENGLISH,
{ code: "fr", name: "Français", flag: "🇫🇷" },
{ code: "es", name: "Español", flag: "🇪🇸" },
{ code: "de", name: "Deutsch", flag: "🇩🇪" },
{ code: "ja", name: "日本語", flag: "🇯🇵" },
{ code: "ko", name: "한국어", flag: "🇰🇷" },
{ code: "zh", name: "简体中文", flag: "🇨🇳" },
{ code: "zhtw", name: "繁體中文", flag: "🇹🇼" },
{ code: "hr", name: "Hrvatski", flag: "🇭🇷" },
{ code: "lt", name: "Lietuvių", flag: "🇱🇹" },
{ code: "uk", name: "Українська", flag: "🇺🇦" },
{ code: "pt", name: "Português", flag: "🇵🇹" },
{ code: "it", name: "Italiano", flag: "🇮🇹" },
{ code: "hu", name: "Magyar", flag: "🇭🇺" },
{ code: "nl", name: "Nederlands", flag: "🇳🇱" },
{ code: "pl", name: "Polski", flag: "🇵🇱" },
{ code: "ru", name: "Русский", flag: "🇷🇺" },
{ code: "ro", name: "Română", flag: "🇷🇴" },
{ code: "sk", name: "Slovenčina", flag: "🇸🇰" },
{ code: "tr", name: "Türkçe", flag: "🇹🇷" },
];
export const languages: Language[] = availableLanguages.sort((a, b) =>
a.name.localeCompare(b.name)
);
export const findLanguage = (nameOrLocale: string): Language => {
const selectedLanguage = languages.find(
(lang) => lang.code === nameOrLocale || lang.name === nameOrLocale.substring(4).trim()
);
return selectedLanguage || ENGLISH;
};