UNPKG

@inlang/paraglide-js

Version:

[![NPM Downloads](https://img.shields.io/npm/dw/%40inlang%2Fparaglide-js?logo=npm&logoColor=red&label=npm%20downloads)](https://www.npmjs.com/package/@inlang/paraglide-js) [![GitHub Issues](https://img.shields.io/github/issues-closed/opral/paraglide-js?lo

45 lines 1.55 kB
import { newProject } from "@inlang/sdk"; import { expect, test } from "vitest"; import { createParaglide } from "../create-paraglide.js"; const runtime = await createParaglide({ blob: await newProject({ settings: { baseLocale: "en", locales: ["en", "ar"], }, }), }); test("returns direction for a provided locale", () => { expect(runtime.getTextDirection("en")).toBe("ltr"); expect(runtime.getTextDirection("ar")).toBe("rtl"); }); test("uses current locale when no locale is provided", () => { runtime.setLocale("ar", { reload: false }); expect(runtime.getTextDirection()).toBe("rtl"); runtime.setLocale("en", { reload: false }); expect(runtime.getTextDirection()).toBe("ltr"); }); test("falls back when Intl.Locale text info is unavailable", () => { const OriginalLocale = Intl.Locale; class MockLocale { constructor(_locale) { } } Object.defineProperty(Intl, "Locale", { value: MockLocale, configurable: true, }); try { expect(runtime.getTextDirection("ar")).toBe("rtl"); expect(runtime.getTextDirection("ug")).toBe("rtl"); expect(runtime.getTextDirection("sd")).toBe("rtl"); expect(runtime.getTextDirection("ks")).toBe("rtl"); expect(runtime.getTextDirection("en")).toBe("ltr"); } finally { Object.defineProperty(Intl, "Locale", { value: OriginalLocale, configurable: true, }); } }); //# sourceMappingURL=get-text-direction.test.js.map