UNPKG

homebridge-flume

Version:

Homebridge plugin to integrate Flume devices into HomeKit.

41 lines 1.27 kB
import { readFileSync } from 'fs'; import merge from 'lodash.merge'; import de from './de.js'; import en from './en.js'; import es from './es.js'; export var Language; (function (Language) { Language["DE"] = "de"; Language["EN"] = "en"; Language["ES"] = "es"; })(Language || (Language = {})); const Translations = { [Language.DE]: de, [Language.EN]: en, [Language.ES]: es, }; export function getTranslation(language) { return Translations[language] ?? {}; } export function getStrings(language) { return merge({}, en, getTranslation(language)); } export let strings = en; export function setLanguage(configPath) { let isoLang; try { const systemConfig = readFileSync(configPath, { encoding: 'utf8' }); isoLang = JSON.parse(systemConfig).platforms.filter((c) => c.platform === 'config')[0].lang; } catch { // nothing } if (isoLang === undefined || isoLang.trim().length === 0 || isoLang === 'auto') { isoLang = Intl.DateTimeFormat().resolvedOptions().locale.split('-')[0]; } const currentLanguage = isoLang in Translations ? isoLang : Language.EN; if (currentLanguage !== Language.EN) { strings = getStrings(currentLanguage); } } //# sourceMappingURL=i18n.js.map