evcc-io/assets/js/i18n.js
2022-11-29 22:20:45 +01:00

25 lines
748 B
JavaScript

import { createI18n } from "vue-i18n";
import de from "../i18n/de.toml";
import en from "../i18n/en.toml";
import it from "../i18n/it.toml";
import lt from "../i18n/lt.toml";
import nl from "../i18n/nl.toml";
import pl from "../i18n/pl.toml";
import pt from "../i18n/pt.toml";
const PREFERRED_LOCALE_KEY = "preferred_locale";
function getBrowserLocale() {
const navigatorLocale =
navigator.languages !== undefined ? navigator.languages[0] : navigator.language;
if (!navigatorLocale) {
return undefined;
}
return navigatorLocale.trim().split(/-|_/)[0];
}
export default createI18n({
locale: window.localStorage[PREFERRED_LOCALE_KEY] || getBrowserLocale(),
fallbackLocale: "en",
messages: { de, en, it, lt, nl, pl, pt },
});