2025-09-27 16:07:45 -05:00
|
|
|
import locales from "@blitzkit/i18n/locales.json";
|
2024-12-27 13:43:25 -06:00
|
|
|
|
|
|
|
|
export function getBestLocale() {
|
2025-01-10 14:37:29 -06:00
|
|
|
const desiredLocale =
|
2025-09-27 16:07:45 -05:00
|
|
|
localStorage.getItem("preferred-locale") ??
|
|
|
|
|
navigator.language.split("-")[0];
|
|
|
|
|
const isSupported = locales.supported.some(
|
|
|
|
|
({ locale }) => locale === desiredLocale
|
2025-01-10 14:37:29 -06:00
|
|
|
);
|
2025-09-27 16:07:45 -05:00
|
|
|
const isDefault = desiredLocale === locales.default;
|
2024-12-27 13:43:25 -06:00
|
|
|
|
|
|
|
|
if (!isSupported || isDefault) return undefined;
|
|
|
|
|
|
|
|
|
|
return desiredLocale;
|
|
|
|
|
}
|