@inlang/paraglide-js
Version:
[](https://www.npmjs.com/package/@inlang/paraglide-js) [ => {
const originalNavigator = globalThis.navigator;
const runtime = await createParaglide({
blob: await newProject({
settings: {
baseLocale: "en",
locales: ["en", "fr", "de"],
},
}),
isServer: "false",
strategy: ["preferredLanguage"],
});
// Mock navigator.languages
Object.defineProperty(globalThis, "navigator", {
value: {
languages: ["fr-FR", "en-US", "de"],
},
configurable: true,
});
expect(runtime.getLocale()).toBe("fr");
// Restore original navigator
Object.defineProperty(globalThis, "navigator", {
value: originalNavigator,
configurable: true,
});
});
test("canonicalizes navigator locale casing", async () => {
const originalNavigator = globalThis.navigator;
const runtime = await createParaglide({
blob: await newProject({
settings: {
baseLocale: "en",
locales: ["en", "pt-BR"],
},
}),
isServer: "false",
strategy: ["preferredLanguage"],
});
Object.defineProperty(globalThis, "navigator", {
value: {
languages: ["pt-br", "en-US"],
},
configurable: true,
});
expect(runtime.getLocale()).toBe("pt-BR");
Object.defineProperty(globalThis, "navigator", {
value: originalNavigator,
configurable: true,
});
});
//# sourceMappingURL=extract-locale-from-navigator.test.js.map