From e2460374dee914eae8d1edfbbb8d9e2309432fc3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 25 May 2026 13:24:11 +0000 Subject: [PATCH] fix(i18n): normalize html language tags in client detection Agent-Logs-Url: https://github.com/trails-cool/trails/sessions/7546ba18-5628-4f50-bc8b-104fa7ba6afe Co-authored-by: stigi <13815+stigi@users.noreply.github.com> --- packages/i18n/src/client.test.ts | 16 ++++++++++++++++ packages/i18n/src/index.ts | 1 + 2 files changed, 17 insertions(+) create mode 100644 packages/i18n/src/client.test.ts diff --git a/packages/i18n/src/client.test.ts b/packages/i18n/src/client.test.ts new file mode 100644 index 0000000..c7b0d28 --- /dev/null +++ b/packages/i18n/src/client.test.ts @@ -0,0 +1,16 @@ +/** + * @vitest-environment jsdom + */ +import { describe, expect, it } from "vitest"; +import { i18n, initI18nClient } from "./index.ts"; + +describe("initI18nClient", () => { + it("normalizes regional html lang tags to supported languages", () => { + document.documentElement.lang = "de-DE"; + + initI18nClient(); + + expect(i18n.language).toBe("de"); + expect(i18n.t("journal:nav.login")).toBe("Anmelden"); + }); +}); diff --git a/packages/i18n/src/index.ts b/packages/i18n/src/index.ts index 5db3adb..7634071 100644 --- a/packages/i18n/src/index.ts +++ b/packages/i18n/src/index.ts @@ -64,6 +64,7 @@ export function initI18nClient() { ...commonOptions, detection: { order: ["htmlTag", "navigator"], + convertDetectedLanguage: (lng: string) => matchSupportedLng(lng), caches: [], }, });