@zwa73/utils 1.0.142 → 1.0.143
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/UtilI18n.d.ts +2 -2
- package/dist/UtilI18n.js +4 -2
- package/package.json +1 -1
- package/src/UtilI18n.ts +5 -4
package/dist/UtilI18n.d.ts
CHANGED
|
@@ -74,7 +74,7 @@ export declare class SI18n {
|
|
|
74
74
|
* @param i18nDataDir - 国际化数据的路径。
|
|
75
75
|
* @param lang - 要设置的语言。
|
|
76
76
|
*/
|
|
77
|
-
static init(i18nDataDir: string, lang?: LangFlag): Promise<void>;
|
|
77
|
+
static init(i18nDataDir: string, lang?: LangFlag | '*'): Promise<void>;
|
|
78
78
|
/**根据提供的字符串,返回对应的国际化字符串
|
|
79
79
|
* @param text - 字符串数组
|
|
80
80
|
* @param markStr - 特殊标记文本
|
|
@@ -97,7 +97,7 @@ export declare class SI18n {
|
|
|
97
97
|
* @param lang - 要查找的语言。
|
|
98
98
|
* @returns 对应的国际化字符串。
|
|
99
99
|
*/
|
|
100
|
-
static getI18n(key: string, lang
|
|
100
|
+
static getI18n(key: string, lang?: LangFlag): string;
|
|
101
101
|
/**尝试获取指定语言的翻译,如果没有找到,将回滚到其他可用的语言。
|
|
102
102
|
* @param lang - 要查找的语言。
|
|
103
103
|
* @param dat - 包含翻译的数据对象。
|
package/dist/UtilI18n.js
CHANGED
|
@@ -87,9 +87,9 @@ class SI18n {
|
|
|
87
87
|
ltable[t.target_lang] ??= v;
|
|
88
88
|
});
|
|
89
89
|
});
|
|
90
|
-
if (lang != undefined && !SI18n._vaildLang.includes(lang))
|
|
90
|
+
if (lang != undefined && lang != '*' && !SI18n._vaildLang.includes(lang))
|
|
91
91
|
SI18n._vaildLang.push(lang);
|
|
92
|
-
SI18n._lang = lang;
|
|
92
|
+
SI18n._lang = lang == "*" ? undefined : lang;
|
|
93
93
|
SI18n._dataDir = i18nDataDir;
|
|
94
94
|
}
|
|
95
95
|
static t(strings, ...values) {
|
|
@@ -134,6 +134,8 @@ class SI18n {
|
|
|
134
134
|
source: 'Runtime'
|
|
135
135
|
});
|
|
136
136
|
}
|
|
137
|
+
if (lang == undefined)
|
|
138
|
+
return obj.original;
|
|
137
139
|
if (obj.invalid === true)
|
|
138
140
|
return obj.original;
|
|
139
141
|
return SI18n.tryAndRollback(lang, obj);
|
package/package.json
CHANGED
package/src/UtilI18n.ts
CHANGED
|
@@ -102,7 +102,7 @@ export class SI18n {
|
|
|
102
102
|
* @param i18nDataDir - 国际化数据的路径。
|
|
103
103
|
* @param lang - 要设置的语言。
|
|
104
104
|
*/
|
|
105
|
-
static async init(i18nDataDir:string,lang?:LangFlag){
|
|
105
|
+
static async init(i18nDataDir:string,lang?:LangFlag|'*'){
|
|
106
106
|
const date = new Date().toISOString();
|
|
107
107
|
const mergePath = path.join(i18nDataDir,BaseFile);
|
|
108
108
|
const table = await UtilFT.loadJSONFile<I18nOrigTable>(mergePath,{default:{
|
|
@@ -138,10 +138,10 @@ export class SI18n {
|
|
|
138
138
|
})
|
|
139
139
|
});
|
|
140
140
|
|
|
141
|
-
if(lang!=undefined && !SI18n._vaildLang.includes(lang))
|
|
141
|
+
if(lang!=undefined && lang!='*' && !SI18n._vaildLang.includes(lang))
|
|
142
142
|
SI18n._vaildLang.push(lang);
|
|
143
143
|
|
|
144
|
-
SI18n._lang = lang;
|
|
144
|
+
SI18n._lang = lang=="*" ? undefined : lang;
|
|
145
145
|
SI18n._dataDir = i18nDataDir;
|
|
146
146
|
}
|
|
147
147
|
/**根据提供的字符串,返回对应的国际化字符串
|
|
@@ -190,7 +190,7 @@ export class SI18n {
|
|
|
190
190
|
* @param lang - 要查找的语言。
|
|
191
191
|
* @returns 对应的国际化字符串。
|
|
192
192
|
*/
|
|
193
|
-
static getI18n(key:string,lang
|
|
193
|
+
static getI18n(key:string,lang?:LangFlag){
|
|
194
194
|
if(SI18n._table==undefined) UtilFunc.throwError('SI18n 未初始化');
|
|
195
195
|
let obj = SI18n._table.text_table[key];
|
|
196
196
|
if(obj==undefined){
|
|
@@ -204,6 +204,7 @@ export class SI18n {
|
|
|
204
204
|
source:'Runtime'
|
|
205
205
|
});
|
|
206
206
|
}
|
|
207
|
+
if(lang==undefined) return obj.original;
|
|
207
208
|
if(obj.invalid===true) return obj.original;
|
|
208
209
|
return SI18n.tryAndRollback(lang,obj);
|
|
209
210
|
}
|