language fix

This commit is contained in:
2025-09-10 14:24:52 +08:00
parent ea0e3e1409
commit 6b3176ed39
3 changed files with 21 additions and 31 deletions
+21 -23
View File
@@ -12,8 +12,6 @@ export enum LanguageType {
EN = "en", // 英文
CN = "cn", // 中文
HI = "hi", // 印地语
FR = "fr", // 法语
DE = "de", //德语
}
export enum LanguageEvent {
@@ -60,13 +58,9 @@ export default class LanguageUtils {
private static detectSystemLanguage() {
const systemLanguage = sys.language;
if (systemLanguage.startsWith("zh")) {
this.currentLanguage = LanguageType.CN;
this.currentLanguage = LanguageType.EN;
} else if (systemLanguage.startsWith("hi")) {
this.currentLanguage = LanguageType.HI;
} else if (systemLanguage.startsWith("fr")) {
this.currentLanguage = LanguageType.FR;
} else if (systemLanguage.startsWith("de")) {
this.currentLanguage = LanguageType.DE;
} else {
this.currentLanguage = LanguageType.EN;
}
@@ -127,12 +121,6 @@ export default class LanguageUtils {
case LanguageType.HI:
text = languageData.languageHi;
break;
case LanguageType.FR:
text = languageData.languageFr;
break;
case LanguageType.DE:
text = languageData.languageDe;
break;
default:
text = languageData.languageEn;
}
@@ -184,12 +172,6 @@ export default class LanguageUtils {
case LanguageType.HI:
text = languageData.languageHi;
break;
case LanguageType.FR:
text = languageData.languageFr;
break;
case LanguageType.DE:
text = languageData.languageDe;
break;
default:
text = languageData.languageEn;
}
@@ -202,6 +184,26 @@ export default class LanguageUtils {
return text;
}
public static getTextWithParams(
key: string,
params: { [key: string]: any },
defaultText: string = ""
): string {
let text = this.getText(key, defaultText);
if (!params || Object.keys(params).length === 0) {
return text;
}
// Replace placeholders in the format {paramName} with actual values
for (const [paramKey, paramValue] of Object.entries(params)) {
const placeholder = `{${paramKey}}`;
text = text.replace(new RegExp(placeholder, 'g'), String(paramValue));
}
return text;
}
public static getAvailableLanguages(): LanguageType[] {
return Object.values(LanguageType);
}
@@ -214,10 +216,6 @@ export default class LanguageUtils {
return "中文";
case LanguageType.HI:
return "हिंदी";
case LanguageType.FR:
return "Français";
case LanguageType.DE:
return "Deutsch";
default:
return language;
}