From fc617ff4f566998fdbe73b69b4f02be551f4ce5b Mon Sep 17 00:00:00 2001 From: Nikita Karamov Date: Sat, 20 Jan 2024 16:23:26 +0100 Subject: [PATCH] Add support for script direction --- src/components/language-select.astro | 2 +- src/i18n/engine.ts | 4 ++++ src/i18n/translations.ts | 12 ++++++------ 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/components/language-select.astro b/src/components/language-select.astro index b80a206..fa7bcab 100644 --- a/src/components/language-select.astro +++ b/src/components/language-select.astro @@ -24,7 +24,7 @@ const initialLanguage = "en"; selected={k === initialLanguage} value={k} > - {v} + {v.autonym} ); }) diff --git a/src/i18n/engine.ts b/src/i18n/engine.ts index 7d28f4b..5d850df 100644 --- a/src/i18n/engine.ts +++ b/src/i18n/engine.ts @@ -71,4 +71,8 @@ export function applyTranslations(language: string) { } } } + + document.documentElement.lang = language; + document.documentElement.dir = + languages[language as keyof typeof languages].dir; } diff --git a/src/i18n/translations.ts b/src/i18n/translations.ts index 92a56b3..84db5f8 100644 --- a/src/i18n/translations.ts +++ b/src/i18n/translations.ts @@ -14,12 +14,12 @@ import nl from "./translations/nl.json"; import ru from "./translations/ru.json"; export const languages = { - en: "English", - de: "Deutsch", - es: "Español", - fr: "Français", - nl: "Nederlands", - ru: "Русский", + en: { autonym: "English", dir: "ltr" }, + de: { autonym: "Deutsch", dir: "ltr" }, + es: { autonym: "Español", dir: "ltr" }, + fr: { autonym: "Français", dir: "ltr" }, + nl: { autonym: "Nederlands", dir: "ltr" }, + ru: { autonym: "Русский", dir: "ltr" }, }; export const strings: Record> = {