core: skip fallbacks in english translation

This commit is contained in:
undefined committed 2022-06-29 00:26:09 +08:00
1 parent 0bb6be0eaf
commit 5409186bf7
2 files changed
+6 -1

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "3.14.2",
"version": "3.14.3",
"bin": "bin/hydrooj.js",
"main": "src/loader",
"module": "src/loader",
+5
View File
@@ -7,6 +7,11 @@ declare global {
}
String.prototype.translate = function translate(...languages: string[]) {
if (languages[0].startsWith('en')) {
// For most use cases, source text equals to translated text in English.
// So if it doesn't exist, we should use the original text instead of fallback.
return locales[languages[0]]?.[this] || locales['en']?.[this] || this;
}
for (const language of languages) {
if (!language) continue;
const curr = (locales[language] || {})[this] || (locales[language.split('_')[0]] || {})[this];