Make kcMessage more easily hackable

This commit is contained in:
garronej
2021-10-12 00:24:08 +02:00
parent 0e8984e5b1
commit ef5b01956a
2 changed files with 29 additions and 68 deletions

View File

@ -3,77 +3,36 @@ import { kcMessages } from "./kcMessages/login";
export type KcLanguageTag = keyof typeof kcMessages; export type KcLanguageTag = keyof typeof kcMessages;
export type LanguageLabel = const kcLanguageByTagLabel = {
/* spell-checker: disable */ /* spell-checker: disable */
| "Deutsch" "es": "Español",
| "Norsk" "it": "Italiano",
| "Русский" "fr": "Français",
| "Svenska" "ca": "Català",
| "Português (Brasil)" "en": "English",
| "Lietuvių" "de": "Deutsch",
| "English" "no": "Norsk",
| "Italiano" "pt-BR": "Português (Brasil)",
| "Français" "ru": "Русский",
| "中文简体" "sk": "Slovenčina",
| "Español" "ja": "日本語",
| "Čeština" "pl": "Polski",
| "日本語" "zh-CN": "中文简体",
| "Slovenčina" "sv": "Svenska",
| "Polski" "lt": "Lietuvių",
| "Català" "cs": "Čeština",
| "Nederlands" "nl": "Nederlands",
| "Türkçe" "tr": "Türkçe",
| "Dansk" "da": "Dansk",
| "Magyar"; "hu": "Magyar",
/* spell-checker: enable */ /* spell-checker: enable */
} as const;
export type LanguageLabel =
typeof kcLanguageByTagLabel[keyof typeof kcLanguageByTagLabel];
export function getKcLanguageTagLabel(language: KcLanguageTag): LanguageLabel { export function getKcLanguageTagLabel(language: KcLanguageTag): LanguageLabel {
switch (language) { return kcLanguageByTagLabel[language] ?? language;
/* spell-checker: disable */
case "es":
return "Español";
case "it":
return "Italiano";
case "fr":
return "Français";
case "ca":
return "Català";
case "en":
return "English";
case "de":
return "Deutsch";
case "no":
return "Norsk";
case "pt-BR":
return "Português (Brasil)";
case "ru":
return "Русский";
case "sk":
return "Slovenčina";
case "ja":
return "日本語";
case "pl":
return "Polski";
case "zh-CN":
return "中文简体";
case "sv":
return "Svenska";
case "lt":
return "Lietuvių";
case "cs":
return "Čeština";
case "nl":
return "Nederlands";
case "tr":
return "Türkçe";
case "da":
return "Dansk";
case "hu":
return "Magyar";
/* spell-checker: enable */
}
return language;
} }
const availableLanguages = objectKeys(kcMessages); const availableLanguages = objectKeys(kcMessages);

View File

@ -6,6 +6,8 @@ import { useEvt } from "evt/hooks";
import ReactMarkdown from "react-markdown"; import ReactMarkdown from "react-markdown";
import { id } from "tsafe/id"; import { id } from "tsafe/id";
export { kcMessages };
export type MessageKey = keyof typeof kcMessages["en"]; export type MessageKey = keyof typeof kcMessages["en"];
/** /**