From 070d86b80484d3aa1361f318e0e52ba568185d78 Mon Sep 17 00:00:00 2001 From: retrozinndev Date: Sat, 23 Aug 2025 19:19:15 -0300 Subject: [PATCH] :boom: fix(i18n/intl): use `Array.includes()` instead of index i forgot it was an array and thought it was an object lol --- src/i18n/intl.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/i18n/intl.ts b/src/i18n/intl.ts index 8dd79e8..9324c36 100644 --- a/src/i18n/intl.ts +++ b/src/i18n/intl.ts @@ -11,14 +11,15 @@ const languages: Array = Object.keys(i18nKeys); let language: string = getSystemLanguage(); export function getSystemLanguage(): string { - const sysLanguage: (string|null|undefined) = GLib.getenv("LANG") || GLib.getenv("LANGUAGE"); + const sysLanguage: (string|null|undefined) = GLib.getenv("LANG") ?? GLib.getenv("LANGUAGE"), + splitted: Array|undefined = sysLanguage?.split('.'); - if(!sysLanguage || languages[sysLanguage as keyof typeof languages] === undefined) { - console.warn(`Intl: Fallback to default \`${languages[0]}\``); + if(!splitted || !languages.includes(splitted![0])) { + console.warn(`Intl: Falling back to default \`${languages[0]}\``); return languages[0]; } - return sysLanguage.split('.')[0]; + return splitted![0]; } export function setLanguage(lang: string): string {