File size: 598 Bytes
f8b5d42 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import i18n from "@/i18n";
import { resources as languages } from "@/locales/resources";
export function useLanguageOptions() {
const supportedLanguages = Object.keys(languages);
const languageNames = new Intl.DisplayNames(supportedLanguages, {
type: "language",
});
const changeLanguage = (newLang = "en") => {
if (!Object.keys(languages).includes(newLang)) return false;
i18n.changeLanguage(newLang);
};
return {
currentLanguage: i18n.language || "en",
supportedLanguages,
getLanguageName: (lang = "en") => languageNames.of(lang),
changeLanguage,
};
}
|