commit d178affa2893ce9cde57c5f4889acd0c327afb3f
parent 7a98e3a1c6f0530f418203ddf3260a7225f13f35
Author: Sebastian <sebasjm@taler-systems.com>
Date: Thu, 29 Jan 2026 17:43:21 -0300
show all langs in dev
Diffstat:
1 file changed, 18 insertions(+), 9 deletions(-)
diff --git a/packages/merchant-backoffice-ui/src/components/menu/LangSelector.tsx b/packages/merchant-backoffice-ui/src/components/menu/LangSelector.tsx
@@ -24,23 +24,29 @@ import { h, VNode } from "preact";
import { useState } from "preact/hooks";
import langIcon from "../../assets/icons/languageicon.svg";
import { strings as messages } from "../../i18n/strings.js";
+import { usePreference } from "../../hooks/preference.js";
type LangsNames = {
[P in keyof typeof messages]: string;
};
-const names: LangsNames = {
- // uk: "Українська [uk]",
- // tr: "Türkçe [tr]",
- // sv: "Svenska [sv]",
- // it: "Italiano [it]",
+const LANG_NAMES_PROD: LangsNames = {
fr: "Français [fr]",
- // es: "Español [es]",
de: "Deutsch [de]",
en: "English [en]",
};
+const LANG_NAMES_DEV: LangsNames = {
+ fr: "Français [fr]",
+ de: "Deutsch [de]",
+ en: "English [en]",
+ uk: "Українська [uk]",
+ tr: "Türkçe [tr]",
+ sv: "Svenska [sv]",
+ it: "Italiano [it]",
+ es: "Español [es]",
+};
-function getLangName(s: keyof LangsNames | string) {
+function getLangName(names: LangsNames, s: keyof LangsNames | string) {
if (names[s]) return names[s];
return s;
}
@@ -48,6 +54,9 @@ function getLangName(s: keyof LangsNames | string) {
export function LangSelector(): VNode {
const [updatingLang, setUpdatingLang] = useState(false);
const { lang, changeLanguage } = useTranslationContext();
+ const [{ persona }] = usePreference();
+ const names =
+ persona === "developer" ? LANG_NAMES_DEV : LANG_NAMES_PROD;
return (
<div class="dropdown is-active ">
@@ -61,7 +70,7 @@ export function LangSelector(): VNode {
<div class="icon is-small is-left">
<img src={langIcon} />
</div>
- <span>{getLangName(lang)}</span>
+ <span>{getLangName(names, lang)}</span>
<div class="icon is-right">
<i class="mdi mdi-chevron-down" />
</div>
@@ -82,7 +91,7 @@ export function LangSelector(): VNode {
setUpdatingLang(false);
}}
>
- {getLangName(l)}
+ {getLangName(names, l)}
</a>
))}
</div>