From 05209222b3cf14625ec4155e05a18b0ec7e876bc Mon Sep 17 00:00:00 2001 From: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com> Date: Sun, 13 Apr 2025 07:19:35 -0500 Subject: [PATCH] consolidate --- web/public/locales/en/common.json | 2 +- web/src/components/menu/GeneralSettings.tsx | 142 +++++--------------- 2 files changed, 33 insertions(+), 111 deletions(-) diff --git a/web/public/locales/en/common.json b/web/public/locales/en/common.json index 6083c7950c..bc3d558cb3 100644 --- a/web/public/locales/en/common.json +++ b/web/public/locales/en/common.json @@ -107,7 +107,7 @@ "configurationEditor": "Configuration Editor", "languages": "Languages", "language": { - "en": "English", + "en": "English (English)", "es": "Español (Spanish)", "zhCN": "简体中文 (Simplified Chinese)", "hi": "हिन्दी (Hindi)", diff --git a/web/src/components/menu/GeneralSettings.tsx b/web/src/components/menu/GeneralSettings.tsx index c825b0e005..dc8ea91ae2 100644 --- a/web/src/components/menu/GeneralSettings.tsx +++ b/web/src/components/menu/GeneralSettings.tsx @@ -73,6 +73,17 @@ export default function GeneralSettings({ className }: GeneralSettingsProps) { const { data: config } = useSWR("config"); const logoutUrl = config?.proxy?.logout_url || "/api/logout"; + // languages + + const languages = [ + { code: "en", label: t("menu.language.en") }, + { code: "es", label: t("menu.language.es") }, + { code: "zh-CN", label: t("menu.language.zhCN") }, + { code: "tr", label: t("menu.language.tr") }, + { code: "nl", label: t("menu.language.nl") }, + { code: "nb", label: t("menu.language.nb") }, + ]; + // settings const { language, setLanguage } = useLanguage(); @@ -313,116 +324,27 @@ export default function GeneralSettings({ className }: GeneralSettingsProps) { } > - setLanguage("en")} - > - {language.trim() === "en" ? ( - <> - - {t("menu.language.en")} - - ) : ( - {t("menu.language.en")} - )} - - setLanguage("es")} - > - {language === "es" ? ( - <> - - {t("menu.language.es")} - - ) : ( - {t("menu.language.es")} - )} - - setLanguage("zh-CN")} - > - {language === "zh-CN" ? ( - <> - - {t("menu.language.zhCN")} - - ) : ( - - {t("menu.language.zhCN")} - - )} - - setLanguage("tr")} - > - {language === "tr" ? ( - <> - - {t("menu.language.tr")} - - ) : ( - {t("menu.language.tr")} - )} - - setLanguage("nl")} - > - {language === "nl" ? ( - <> - - {t("menu.language.nl")} - - ) : ( - {t("menu.language.nl")} - )} - - setLanguage("nb")} - > - {language === "nb" ? ( - <> - - {t("menu.language.nb")} - - ) : ( - {t("menu.language.nb")} - )} - + {languages.map(({ code, label }) => ( + setLanguage(code)} + > + {language.trim() === code ? ( + <> + + {label} + + ) : ( + {label} + )} + + ))}