diff --git a/src/card.ts b/src/card.ts index 6e9aba25..abca3544 100644 --- a/src/card.ts +++ b/src/card.ts @@ -43,7 +43,7 @@ import { REPO_URL } from './const.js'; import './editor.js'; -import { localize } from './localize/localize.js'; +import { getLanguage, localize } from './localize/localize.js'; import './patches/ha-camera-stream.js'; import './patches/ha-hls-player.js'; import './patches/ha-web-rtc-player.ts'; @@ -1369,6 +1369,7 @@ export class FrigateCard extends LitElement { ha_version: this._hass.config.version, card_version: CARD_VERSION, frigate_version: Object.fromEntries(frigateVersionMap), + lang: getLanguage(), ...(this._rawConfig && { config: this._rawConfig }), }, }); diff --git a/src/localize/localize.ts b/src/localize/localize.ts index 9a083867..9b353b08 100644 --- a/src/localize/localize.ts +++ b/src/localize/localize.ts @@ -7,7 +7,7 @@ const languages: any = { pt_BR: pt_BR, }; -export function localize(string: string, search = '', replace = ''): string { +export function getLanguage(): string { const canonicalizeLanguage = (language?: string | null): string | null => { if (!language) { return null; @@ -16,7 +16,7 @@ export function localize(string: string, search = '', replace = ''): string { }; // Try the HA language first... - let lang; + let lang: string | null = null; const HALanguage = localStorage.getItem('selectedLanguage'); if (HALanguage) { const selectedLanguage = canonicalizeLanguage(JSON.parse(HALanguage)); @@ -34,9 +34,11 @@ export function localize(string: string, search = '', replace = ''): string { } } } + return lang || 'en'; +} - // Default to English is there's still no language setting. - lang = lang || 'en'; +export function localize(string: string, search = '', replace = ''): string { + const lang = getLanguage(); let translated: string; try {