@alauda-fe/common 1.4.20 → 1.4.21
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/core/utils/dev-helpers.d.ts +1 -0
- package/core/utils/public-api.d.ts +1 -0
- package/esm2022/core/utils/dev-helpers.mjs +5 -0
- package/esm2022/core/utils/public-api.mjs +2 -1
- package/esm2022/translate/i18n-assets-loader.mjs +25 -7
- package/esm2022/translate/i18n-config.mjs +7 -6
- package/package.json +1 -1
- package/translate/i18n-assets-loader.d.ts +6 -1
- package/translate/i18n-config.d.ts +4 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isLocalDev(): boolean;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export function isLocalDev() {
|
|
2
|
+
return (location.hostname === 'localhost' &&
|
|
3
|
+
localStorage.getItem('__local_dev__') !== 'false');
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2LWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9kZXYtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsVUFBVTtJQUN4QixPQUFPLENBQ0wsUUFBUSxDQUFDLFFBQVEsS0FBSyxXQUFXO1FBQ2pDLFlBQVksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLEtBQUssT0FBTyxDQUNsRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBpc0xvY2FsRGV2KCkge1xuICByZXR1cm4gKFxuICAgIGxvY2F0aW9uLmhvc3RuYW1lID09PSAnbG9jYWxob3N0JyAmJlxuICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdfX2xvY2FsX2Rldl9fJykgIT09ICdmYWxzZSdcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -23,4 +23,5 @@ export * from './sort-fn';
|
|
|
23
23
|
export * from './workload';
|
|
24
24
|
export * from './router';
|
|
25
25
|
export * from './disabled-state';
|
|
26
|
-
|
|
26
|
+
export * from './dev-helpers';
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jb3JlL3V0aWxzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgKiBmcm9tICcuL2NhY2hlLXN0b3JlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sb3ItaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbic7XG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZS1yZWN1cnNpdmUtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vY3Jvbi11dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2s4cy11dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vb2JzZXJ2YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL29wZXJhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcG9vbCc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUnO1xuZXhwb3J0ICogZnJvbSAnLi93aXRoLWxvYWQtc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91bml0JztcbmV4cG9ydCAqIGZyb20gJy4veWFtbCc7XG5leHBvcnQgKiBmcm9tICcuL3ZlcnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNvdXJjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbC1zdG9yYWdlLWNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm1hdC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9ub2RlJztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC1mbic7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtsb2FkJztcbmV4cG9ydCAqIGZyb20gJy4vcm91dGVyJztcbmV4cG9ydCAqIGZyb20gJy4vZGlzYWJsZWQtc3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kZXYtaGVscGVycyc7XG4iXX0=
|
|
@@ -6,9 +6,22 @@ export class I18nAssetsLoader {
|
|
|
6
6
|
this.assetsStore = {};
|
|
7
7
|
}
|
|
8
8
|
async loadI18n(language) {
|
|
9
|
-
const allAssets = await Promise.all(
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
const allAssets = await Promise.all([
|
|
10
|
+
...(this.options.modules || [])
|
|
11
|
+
.reverse()
|
|
12
|
+
.map(module => replaceTemplate(`/console-i18n/{{ language }}/${module}.json`, {
|
|
13
|
+
language,
|
|
14
|
+
}))
|
|
15
|
+
.map(filePath => this.fetchI18nFile(filePath)),
|
|
16
|
+
...(this.options.files || []).reverse().map(file => {
|
|
17
|
+
const filePath = isBuiltInLanguage(language)
|
|
18
|
+
? replaceTemplate(file.path, { language, name: file.name })
|
|
19
|
+
: replaceTemplate(`/console-i18n/{{ language }}/${file.name}.json`, {
|
|
20
|
+
language,
|
|
21
|
+
});
|
|
22
|
+
return this.fetchI18nFile(filePath).then(i18nObj => file.scope ? { [file.scope]: i18nObj } : i18nObj);
|
|
23
|
+
}),
|
|
24
|
+
]);
|
|
12
25
|
this.assetsStore[language] = Object.values(allAssets).reduce((acc, curr) => Object.assign(acc, curr), {});
|
|
13
26
|
return this.assetsStore[language];
|
|
14
27
|
}
|
|
@@ -21,11 +34,11 @@ export class I18nAssetsLoader {
|
|
|
21
34
|
getLoadedI18n() {
|
|
22
35
|
return this.assetsStore;
|
|
23
36
|
}
|
|
24
|
-
fetchI18nFile(
|
|
25
|
-
return fetch(
|
|
37
|
+
fetchI18nFile(filePath) {
|
|
38
|
+
return fetch(filePath)
|
|
26
39
|
.then(res => res.json())
|
|
27
40
|
.catch(err => {
|
|
28
|
-
console.error(`Failed to load i18n file
|
|
41
|
+
console.error(`Failed to load i18n file: ${filePath}`);
|
|
29
42
|
console.error(err);
|
|
30
43
|
return {};
|
|
31
44
|
});
|
|
@@ -55,4 +68,9 @@ export function setAuiTranslation(i18nService, loader, locale) {
|
|
|
55
68
|
translation,
|
|
56
69
|
});
|
|
57
70
|
}
|
|
58
|
-
|
|
71
|
+
function replaceTemplate(str, data) {
|
|
72
|
+
return str.replace(/{{\s*(\w+)\s*}}/g, (_, key) => {
|
|
73
|
+
return key in data ? data[key] : '';
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi1hc3NldHMtbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RyYW5zbGF0ZS9pMThuLWFzc2V0cy1sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFDTCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLHNCQUFzQixHQUN2QixNQUFNLGVBQWUsQ0FBQztBQVF2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCLFlBQTZCLE9BQThCO1FBQTlCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBRjFDLGdCQUFXLEdBQXdDLEVBQUUsQ0FBQztJQUVULENBQUM7SUFFL0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFnQjtRQUM3QixNQUFNLFNBQVMsR0FBa0IsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO1lBQ2pELEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7aUJBQzVCLE9BQU8sRUFBRTtpQkFDVCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDWixlQUFlLENBQUMsZ0NBQWdDLE1BQU0sT0FBTyxFQUFFO2dCQUM3RCxRQUFRO2FBQ1QsQ0FBQyxDQUNIO2lCQUNBLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEQsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDakQsTUFBTSxRQUFRLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDO29CQUMxQyxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUs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QUFDO1NBQzNCLENBQ29CLENBQUM7SUFFNUIsV0FBVyxDQUFDLE9BQU8sQ0FBQztRQUNsQixNQUFNO1FBQ04sV0FBVztLQUNaLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxHQUFXLEVBQUUsSUFBNEI7SUFDaEUsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ2hELE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICdAYWxhdWRhL3VpJztcblxuaW1wb3J0IHsgRkFMTEJBQ0tfTEFOR1VBR0UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBnZXRVc2VyTGFuZ3VhZ2UsXG4gIGlzQnVpbHRJbkxhbmd1YWdlLFxuICBsb2FkQXZhaWxhYmxlTGFuZ3VhZ2VzLFxufSBmcm9tICcuL2kxOG4tY29uZmlnJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSTE4bkFzc2V0c0xvYWRPcHRpb25zIHtcbiAgbW9kdWxlcz86IHN0cmluZ1tdO1xuICBmaWxlcz86IEFycmF5PHsgbmFtZTogc3RyaW5nOyBwYXRoOiBzdHJpbmc7IHNjb3BlPzogc3RyaW5nIH0+O1xufVxuXG5leHBvcnQgY2xhc3MgSTE4bkFzc2V0c0xvYWRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXNzZXRzU3RvcmU6IHsgW2xhbmd1YWdlOiBzdHJpbmddOiBUcmFuc2xhdGlvbiB9ID0ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBJMThuQXNzZXRzTG9hZE9wdGlvbnMpIHt9XG5cbiAgYXN5bmMgbG9hZEkxOG4obGFuZ3VhZ2U6IHN0cmluZykge1xuICAgIGNvbnN0IGFsbEFzc2V0czogVHJhbnNsYXRpb25bXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIC4uLih0aGlzLm9wdGlvbnMubW9kdWxlcyB8fCBbXSlcbiAgICAgICAgLnJldmVyc2UoKVxuICAgICAgICAubWFwKG1vZHVsZSA9PlxuICAgICAgICAgIHJlcGxhY2VUZW1wbGF0ZShgL2NvbnNvbGUtaTE4bi97eyBsYW5ndWFnZSB9fS8ke21vZHVsZX0uanNvbmAsIHtcbiAgICAgICAgICAgIGxhbmd1YWdlLFxuICAgICAgICAgIH0pLFxuICAgICAgICApXG4gICAgICAgIC5tYXAoZmlsZVBhdGggPT4gdGhpcy5mZXRjaEkxOG5GaWxlKGZpbGVQYXRoKSksXG4gICAgICAuLi4odGhpcy5vcHRpb25zLmZpbGVzIHx8IFtdKS5yZXZlcnNlKCkubWFwKGZpbGUgPT4ge1xuICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGlzQnVpbHRJbkxhbmd1YWdlKGxhbmd1YWdlKVxuICAgICAgICAgID8gcmVwbGFjZVRlbXBsYXRlKGZpbGUucGF0aCwgeyBsYW5ndWFnZSwgbmFtZTogZmlsZS5uYW1lIH0pXG4gICAgICAgICAgOiByZXBsYWNlVGVtcGxhdGUoYC9jb25zb2xlLWkxOG4ve3sgbGFuZ3VhZ2UgfX0vJHtmaWxlLm5hbWV9Lmpzb25gLCB7XG4gICAgICAgICAgICAgIGxhbmd1YWdlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLmZldGNoSTE4bkZpbGUoZmlsZVBhdGgpLnRoZW4oaTE4bk9iaiA9PlxuICAgICAgICAgIGZpbGUuc2NvcGUgPyB7IFtmaWxlLnNjb3BlXTogaTE4bk9iaiB9IDogaTE4bk9iaixcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgIF0pO1xuXG4gICAgdGhpcy5hc3NldHNTdG9yZVtsYW5ndWFnZV0gPSBPYmplY3QudmFsdWVzKGFsbEFzc2V0cykucmVkdWNlKFxuICAgICAgKGFjYywgY3VycikgPT4gT2JqZWN0LmFzc2lnbihhY2MsIGN1cnIpLFxuICAgICAge30sXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLmFzc2V0c1N0b3JlW2xhbmd1YWdlXTtcbiAgfVxuXG4gIGdldExvYWRlZExhbmd1YWdlcygpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5hc3NldHNTdG9yZSk7XG4gIH1cblxuICBsYW5ndWFnZUlzTG9hZGVkKGxhbmd1YWdlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRMb2FkZWRMYW5ndWFnZXMoKS5pbmNsdWRlcyhsYW5ndWFnZSk7XG4gIH1cblxuICBnZXRMb2FkZWRJMThuKCkge1xuICAgIHJldHVybiB0aGlzLmFzc2V0c1N0b3JlO1xuICB9XG5cbiAgcHJpdmF0ZSBmZXRjaEkxOG5GaWxlKGZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zbGF0aW9uPiB7XG4gICAgcmV0dXJuIGZldGNoKGZpbGVQYXRoKVxuICAgICAgLnRoZW4ocmVzID0+IHJlcy5qc29uKCkpXG4gICAgICAuY2F0Y2goZXJyID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgRmFpbGVkIHRvIGxvYWQgaTE4biBmaWxlOiAke2ZpbGVQYXRofWApO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmlnZ2VyQWxsSTE4bkxvYWRlcihsb2FkZXJzOiBJMThuQXNzZXRzTG9hZGVyW10pIHtcbiAgcmV0dXJuIGxvYWRBdmFpbGFibGVMYW5ndWFnZXMoKS50aGVuKCgpID0+IHtcbiAgICBjb25zdCB1c2VyTGFuZ3VhZ2UgPSBnZXRVc2VyTGFuZ3VhZ2UoKTtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoXG4gICAgICBpc0J1aWx0SW5MYW5ndWFnZSh1c2VyTGFuZ3VhZ2UpXG4gICAgICAgID8gbG9hZGVycy5tYXAobG9hZGVyID0+IGxvYWRlci5sb2FkSTE4bih1c2VyTGFuZ3VhZ2UpKVxuICAgICAgICA6IGxvYWRlcnMuZmxhdE1hcChsb2FkZXIgPT4gW1xuICAgICAgICAgICAgbG9hZGVyLmxvYWRJMThuKHVzZXJMYW5ndWFnZSksXG4gICAgICAgICAgICBsb2FkZXIubG9hZEkxOG4oRkFMTEJBQ0tfTEFOR1VBR0UpLFxuICAgICAgICAgIF0pLFxuICAgICk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0QXVpVHJhbnNsYXRpb24oXG4gIGkxOG5TZXJ2aWNlOiBJMThuU2VydmljZSxcbiAgbG9hZGVyOiBJMThuQXNzZXRzTG9hZGVyLFxuICBsb2NhbGU6IHN0cmluZyxcbikge1xuICBjb25zdCBhbGxUcmFuc2xhdGlvbnMgPSBsb2FkZXIuZ2V0TG9hZGVkSTE4bigpO1xuICBjb25zdCB0cmFuc2xhdGlvbiA9IChcbiAgICBpc0J1aWx0SW5MYW5ndWFnZShsb2NhbGUpXG4gICAgICA/IGFsbFRyYW5zbGF0aW9uc1tsb2NhbGVdXG4gICAgICA6IHtcbiAgICAgICAgICAuLi5hbGxUcmFuc2xhdGlvbnNbRkFMTEJBQ0tfTEFOR1VBR0VdLFxuICAgICAgICAgIC4uLmFsbFRyYW5zbGF0aW9uc1tsb2NhbGVdLFxuICAgICAgICB9XG4gICkgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICBpMThuU2VydmljZS5zZXRJMThuKHtcbiAgICBsb2NhbGUsXG4gICAgdHJhbnNsYXRpb24sXG4gIH0pO1xufVxuXG5mdW5jdGlvbiByZXBsYWNlVGVtcGxhdGUoc3RyOiBzdHJpbmcsIGRhdGE6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC97e1xccyooXFx3KylcXHMqfX0vZywgKF8sIGtleSkgPT4ge1xuICAgIHJldHVybiBrZXkgaW4gZGF0YSA/IGRhdGFba2V5XSA6ICcnO1xuICB9KTtcbn1cbiJdfQ==
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { isLocalDev } from '../core/public-api';
|
|
1
2
|
import { FALLBACK_LANGUAGE, LOCALE_STORAGE } from './constants';
|
|
2
3
|
let __availableLanguages;
|
|
4
|
+
const BUILTIN_LANGUAGES = [{ id: 'en', name: 'English' }];
|
|
3
5
|
export async function loadAvailableLanguages() {
|
|
4
|
-
__availableLanguages =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
: '/console/api/v1/i18n/languages')
|
|
6
|
+
__availableLanguages = isLocalDev()
|
|
7
|
+
? BUILTIN_LANGUAGES
|
|
8
|
+
: (await fetch('/console/api/v1/i18n/languages')
|
|
8
9
|
.then(res => res.json())
|
|
9
10
|
.then(res => res.availableLanguages)) || [];
|
|
10
11
|
return __availableLanguages;
|
|
@@ -30,6 +31,6 @@ export function getUserLanguage(availableLanguages) {
|
|
|
30
31
|
return FALLBACK_LANGUAGE;
|
|
31
32
|
}
|
|
32
33
|
export function isBuiltInLanguage(language) {
|
|
33
|
-
return
|
|
34
|
+
return BUILTIN_LANGUAGES.some(lang => lang.id === language);
|
|
34
35
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdHJhbnNsYXRlL2kxOG4tY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBT2hFLElBQUksb0JBQWdDLENBQUM7QUFFckMsTUFBTSxpQkFBaUIsR0FBZSxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztBQUV0RSxNQUFNLENBQUMsS0FBSyxVQUFVLHNCQUFzQjtJQUMxQyxvQkFBb0IsR0FBRyxVQUFVLEVBQUU7UUFDakMsQ0FBQyxDQUFDLGlCQUFpQjtRQUNuQixDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQzthQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFbEQsT0FBTyxvQkFBb0IsQ0FBQztBQUM5QixDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQjtJQUduQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUNELE9BQU8sb0JBQW9CLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQUMsa0JBQTZCO0lBQzNELGtCQUFrQjtRQUNoQixrQkFBa0IsSUFBSSxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVyRSxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVELE1BQU0sYUFBYSxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQ25FLFNBQVMsQ0FBQyxTQUFTLENBQ3BCLENBQUM7SUFFRixLQUFLLE1BQU0sUUFBUSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sVUFBVSxHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FDeEMsYUFBYSxDQUFDLEVBQUUsQ0FDZCxhQUFhLEtBQUssUUFBUTtZQUMxQixhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3pELENBQUM7UUFDRixJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLGlCQUFpQixDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsUUFBZ0I7SUFDaEQsT0FBTyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDO0FBQzlELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWVwUmVhZG9ubHkgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcblxuaW1wb3J0IHsgaXNMb2NhbERldiB9IGZyb20gJy4uL2NvcmUvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IEZBTExCQUNLX0xBTkdVQUdFLCBMT0NBTEVfU1RPUkFHRSB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuaW50ZXJmYWNlIExhbmdJbmZvIHtcbiAgaWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xufVxuXG5sZXQgX19hdmFpbGFibGVMYW5ndWFnZXM6IExhbmdJbmZvW107XG5cbmNvbnN0IEJVSUxUSU5fTEFOR1VBR0VTOiBMYW5nSW5mb1tdID0gW3sgaWQ6ICdlbicsIG5hbWU6ICdFbmdsaXNoJyB9XTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRBdmFpbGFibGVMYW5ndWFnZXMoKTogUHJvbWlzZTxMYW5nSW5mb1tdPiB7XG4gIF9fYXZhaWxhYmxlTGFuZ3VhZ2VzID0gaXNMb2NhbERldigpXG4gICAgPyBCVUlMVElOX0xBTkdVQUdFU1xuICAgIDogKGF3YWl0IGZldGNoKCcvY29uc29sZS9hcGkvdjEvaTE4bi9sYW5ndWFnZXMnKVxuICAgICAgICAudGhlbihyZXMgPT4gcmVzLmpzb24oKSlcbiAgICAgICAgLnRoZW4ocmVzID0+IHJlcy5hdmFpbGFibGVMYW5ndWFnZXMpKSB8fCBbXTtcblxuICByZXR1cm4gX19hdmFpbGFibGVMYW5ndWFnZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmFpbGFibGVMYW5ndWFnZXMoKTogRGVlcFJlYWRvbmx5PFxuICB0eXBlb2YgX19hdmFpbGFibGVMYW5ndWFnZXNcbj4ge1xuICBpZiAoIV9fYXZhaWxhYmxlTGFuZ3VhZ2VzKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdBdmFpbGFibGUgbGFuZ3VhZ2VzIG5vdCBsb2FkZWQnKTtcbiAgfVxuICByZXR1cm4gX19hdmFpbGFibGVMYW5ndWFnZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVc2VyTGFuZ3VhZ2UoYXZhaWxhYmxlTGFuZ3VhZ2VzPzogc3RyaW5nW10pIHtcbiAgYXZhaWxhYmxlTGFuZ3VhZ2VzID1cbiAgICBhdmFpbGFibGVMYW5ndWFnZXMgfHwgZ2V0QXZhaWxhYmxlTGFuZ3VhZ2VzKCkubWFwKGxhbmcgPT4gbGFuZy5pZCk7XG5cbiAgY29uc3QgbG9jYWxlTGFuZ3VhZ2UgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShMT0NBTEVfU1RPUkFHRSk7XG4gIGNvbnN0IHVzZXJMYW5ndWFnZXMgPSAobG9jYWxlTGFuZ3VhZ2UgPyBbbG9jYWxlTGFuZ3VhZ2VdIDogW10pLmNvbmNhdChcbiAgICBuYXZpZ2F0b3IubGFuZ3VhZ2VzLFxuICApO1xuXG4gIGZvciAoY29uc3QgdXNlckxhbmcgb2YgdXNlckxhbmd1YWdlcykge1xuICAgIGNvbnN0IHJlc3VsdExhbmcgPSBhdmFpbGFibGVMYW5ndWFnZXMuZmluZChcbiAgICAgIGF2YWlsYWJsZUxhbmcgPT5cbiAgICAgICAgYXZhaWxhYmxlTGFuZyA9PT0gdXNlckxhbmcgfHxcbiAgICAgICAgYXZhaWxhYmxlTGFuZy5zcGxpdCgnLScpWzBdID09PSB1c2VyTGFuZy5zcGxpdCgnLScpWzBdLFxuICAgICk7XG4gICAgaWYgKHJlc3VsdExhbmcpIHtcbiAgICAgIHJldHVybiByZXN1bHRMYW5nO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBGQUxMQkFDS19MQU5HVUFHRTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQnVpbHRJbkxhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpIHtcbiAgcmV0dXJuIEJVSUxUSU5fTEFOR1VBR0VTLnNvbWUobGFuZyA9PiBsYW5nLmlkID09PSBsYW5ndWFnZSk7XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { I18nService } from '@alauda/ui';
|
|
2
2
|
import { Translation } from './types';
|
|
3
3
|
export interface I18nAssetsLoadOptions {
|
|
4
|
-
modules
|
|
4
|
+
modules?: string[];
|
|
5
|
+
files?: Array<{
|
|
6
|
+
name: string;
|
|
7
|
+
path: string;
|
|
8
|
+
scope?: string;
|
|
9
|
+
}>;
|
|
5
10
|
}
|
|
6
11
|
export declare class I18nAssetsLoader {
|
|
7
12
|
private readonly options;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { DeepReadonly } from 'ts-essentials';
|
|
2
|
-
|
|
2
|
+
interface LangInfo {
|
|
3
3
|
id: string;
|
|
4
4
|
name: string;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
name: string;
|
|
9
|
-
}>>;
|
|
5
|
+
}
|
|
6
|
+
declare let __availableLanguages: LangInfo[];
|
|
7
|
+
export declare function loadAvailableLanguages(): Promise<LangInfo[]>;
|
|
10
8
|
export declare function getAvailableLanguages(): DeepReadonly<typeof __availableLanguages>;
|
|
11
9
|
export declare function getUserLanguage(availableLanguages?: string[]): string;
|
|
12
10
|
export declare function isBuiltInLanguage(language: string): boolean;
|