@yelon/bis 15.2.0 → 15.2.2
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/LICENSE +21 -21
- package/README.md +23 -23
- package/esm2020/bis.mjs +4 -4
- package/esm2020/index.mjs +1 -1
- package/esm2020/layout/bis.config.mjs +10 -10
- package/esm2020/layout/html-names.mjs +32 -32
- package/esm2020/layout/icon/style-icons.mjs +795 -795
- package/esm2020/layout/layout-basic/index.mjs +2 -2
- package/esm2020/layout/layout-basic/interface.mjs +6 -6
- package/esm2020/layout/layout-basic/layout-basic.component.mjs +355 -355
- package/esm2020/layout/layout-nav/index.mjs +4 -4
- package/esm2020/layout/layout-nav/layout-nav-application.component.mjs +326 -326
- package/esm2020/layout/layout-nav/layout-nav-group.component.mjs +123 -123
- package/esm2020/layout/layout-nav/layout-nav-tile.component.mjs +14 -14
- package/esm2020/layout/layout-nav/types.mjs +1 -1
- package/esm2020/layout/layout.mjs +4 -4
- package/esm2020/layout/public_api.mjs +12 -12
- package/esm2020/layout/widgets/index.mjs +6 -6
- package/esm2020/layout/widgets/yunzai-clear-storage.component.mjs +44 -44
- package/esm2020/layout/widgets/yunzai-fullscreen.component.mjs +44 -44
- package/esm2020/layout/widgets/yunzai-i18n.component.mjs +145 -145
- package/esm2020/layout/widgets/yunzai-notify.component.mjs +182 -182
- package/esm2020/layout/widgets/yunzai-theme-btn.component.mjs +200 -200
- package/esm2020/layout/widgets/yunzai-user.component.mjs +129 -129
- package/esm2020/layout/yunzai-act.guard.mjs +106 -106
- package/esm2020/layout/yunzai-auth.service.mjs +169 -167
- package/esm2020/layout/yunzai-default.interceptor.mjs +208 -208
- package/esm2020/layout/yunzai-i18n.service.mjs +130 -130
- package/esm2020/layout/yunzai-lang.mjs +113 -113
- package/esm2020/layout/yunzai-layout.module.mjs +75 -75
- package/esm2020/layout/yunzai-startup.service.mjs +156 -156
- package/esm2020/public_api.mjs +1 -1
- package/fesm2015/bis.mjs +6 -6
- package/fesm2015/layout.mjs +3232 -3230
- package/fesm2015/layout.mjs.map +1 -1
- package/fesm2020/bis.mjs +6 -6
- package/fesm2020/layout.mjs +3240 -3238
- package/fesm2020/layout.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/index.less +1 -1
- package/layout/bis.config.d.ts +3 -3
- package/layout/html-names.d.ts +31 -31
- package/layout/icon/style-icons.d.ts +1 -1
- package/layout/index.d.ts +5 -5
- package/layout/layout-basic/index.d.ts +2 -2
- package/layout/layout-basic/interface.d.ts +24 -24
- package/layout/layout-basic/layout-basic.component.d.ts +32 -32
- package/layout/layout-nav/index.d.ts +4 -4
- package/layout/layout-nav/layout-nav-application.component.d.ts +27 -27
- package/layout/layout-nav/layout-nav-group.component.d.ts +17 -17
- package/layout/layout-nav/layout-nav-tile.component.d.ts +6 -6
- package/layout/layout-nav/types.d.ts +15 -15
- package/layout/public_api.d.ts +12 -12
- package/layout/style/index.less +154 -154
- package/layout/widgets/index.d.ts +6 -6
- package/layout/widgets/yunzai-clear-storage.component.d.ts +11 -11
- package/layout/widgets/yunzai-fullscreen.component.d.ts +8 -8
- package/layout/widgets/yunzai-i18n.component.d.ts +21 -21
- package/layout/widgets/yunzai-notify.component.d.ts +30 -30
- package/layout/widgets/yunzai-theme-btn.component.d.ts +32 -32
- package/layout/widgets/yunzai-user.component.d.ts +28 -28
- package/layout/yunzai-act.guard.d.ts +22 -22
- package/layout/yunzai-auth.service.d.ts +21 -21
- package/layout/yunzai-default.interceptor.d.ts +27 -27
- package/layout/yunzai-i18n.service.d.ts +33 -33
- package/layout/yunzai-lang.d.ts +11 -11
- package/layout/yunzai-layout.module.d.ts +21 -21
- package/layout/yunzai-startup.service.d.ts +37 -37
- package/package.json +47 -47
- package/public_api.d.ts +2 -2
- package/theme-compact.less +3 -3
- package/theme-dark.less +46 -46
- package/theme-default.less +46 -46
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
import { registerLocaleData } from '@angular/common';
|
|
2
|
-
import ngEn from '@angular/common/locales/en';
|
|
3
|
-
import { Injectable } from '@angular/core';
|
|
4
|
-
import { Subject, catchError, of, takeUntil } from 'rxjs';
|
|
5
|
-
import { enUS as dfEn } from 'date-fns/locale';
|
|
6
|
-
import { map } from 'rxjs/operators';
|
|
7
|
-
import { YunzaiI18nBaseService, en_US as yelonEnUS } from '@yelon/theme';
|
|
8
|
-
import { en_US as zorroEnUS } from 'ng-zorro-antd/i18n';
|
|
9
|
-
import { mergeBisConfig } from './bis.config';
|
|
10
|
-
import { YUNZAI_LANGS } from './yunzai-lang';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@yelon/theme";
|
|
13
|
-
import * as i2 from "ng-zorro-antd/i18n";
|
|
14
|
-
import * as i3 from "@angular/cdk/platform";
|
|
15
|
-
import * as i4 from "@yelon/util/config";
|
|
16
|
-
import * as i5 from "@yelon/cache";
|
|
17
|
-
const DEFAULT = 'zh-CN';
|
|
18
|
-
class YunzaiI18NService extends YunzaiI18nBaseService {
|
|
19
|
-
constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv, cacheService) {
|
|
20
|
-
super(cogSrv);
|
|
21
|
-
this.http = http;
|
|
22
|
-
this.settings = settings;
|
|
23
|
-
this.nzI18nService = nzI18nService;
|
|
24
|
-
this.yelonLocaleService = yelonLocaleService;
|
|
25
|
-
this.platform = platform;
|
|
26
|
-
this.cacheService = cacheService;
|
|
27
|
-
this._defaultLang = DEFAULT;
|
|
28
|
-
this.destroy$ = new Subject();
|
|
29
|
-
const defaultLang = this.getDefaultLang();
|
|
30
|
-
this.bis = mergeBisConfig(cogSrv);
|
|
31
|
-
this.getLangs()
|
|
32
|
-
.pipe(takeUntil(this.destroy$))
|
|
33
|
-
.subscribe(langs => {
|
|
34
|
-
this._defaultLang = langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
getDefaultLang() {
|
|
38
|
-
if (!this.platform.isBrowser) {
|
|
39
|
-
return DEFAULT;
|
|
40
|
-
}
|
|
41
|
-
if (this.settings.layout.lang) {
|
|
42
|
-
return this.settings.layout.lang;
|
|
43
|
-
}
|
|
44
|
-
let res = (navigator.languages ? navigator.languages[0] : null) || navigator.language;
|
|
45
|
-
const arr = res.split('-');
|
|
46
|
-
return arr.length <= 1 ? res : `${arr[0]}-${arr[1].toUpperCase()}`;
|
|
47
|
-
}
|
|
48
|
-
loadLangData(lang) {
|
|
49
|
-
if (ngDevMode) {
|
|
50
|
-
return this.http.get(`assets/tmp/i18n/${lang}.json`);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
if (this.getLang(lang)) {
|
|
54
|
-
return of(this.getLang(lang));
|
|
55
|
-
}
|
|
56
|
-
return this.http
|
|
57
|
-
.get(`${this.bis.baseUrl}/i18n/api/v2/language/${lang}?_allow_anonymous`)
|
|
58
|
-
.pipe(catchError(() => this.http.get(`assets/tmp/i18n/${lang}.json`)));
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
use(lang, data) {
|
|
62
|
-
if (this._currentLang === lang)
|
|
63
|
-
return;
|
|
64
|
-
if (!ngDevMode) {
|
|
65
|
-
this.cacheLang(lang, data);
|
|
66
|
-
}
|
|
67
|
-
this._data = this.flatData(data, []);
|
|
68
|
-
const item = YUNZAI_LANGS[lang];
|
|
69
|
-
if (item) {
|
|
70
|
-
registerLocaleData(item.ng);
|
|
71
|
-
this.nzI18nService.setLocale(item.zorro);
|
|
72
|
-
this.nzI18nService.setDateLocale(item.date);
|
|
73
|
-
this.yelonLocaleService.setLocale(item.yelon);
|
|
74
|
-
this._currentLang = lang;
|
|
75
|
-
this._change$.next(lang);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
registerLocaleData(ngEn);
|
|
79
|
-
this.nzI18nService.setLocale(zorroEnUS);
|
|
80
|
-
this.nzI18nService.setDateLocale(dfEn);
|
|
81
|
-
this.yelonLocaleService.setLocale(yelonEnUS);
|
|
82
|
-
this._currentLang = lang;
|
|
83
|
-
this._change$.next(lang);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
getLangs() {
|
|
87
|
-
const langs = Object.keys(YUNZAI_LANGS).map(code => {
|
|
88
|
-
const item = YUNZAI_LANGS[code];
|
|
89
|
-
return { code, text: item.text, abbr: item.abbr, image: undefined };
|
|
90
|
-
});
|
|
91
|
-
if (ngDevMode) {
|
|
92
|
-
return of(langs);
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
if (this.getCachedLangs().length > 0) {
|
|
96
|
-
return of(this.getCachedLangs());
|
|
97
|
-
}
|
|
98
|
-
return this.http.get(`${this.bis.baseUrl}/i18n/api/v2/language?_allow_anonymous`).pipe(map((response) => {
|
|
99
|
-
this.cacheLangs(response.data);
|
|
100
|
-
return response.data;
|
|
101
|
-
}), catchError(() => of(langs)));
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
cacheLang(lang, data) {
|
|
105
|
-
const key = `_yz_lang_${lang}`;
|
|
106
|
-
this.cacheService.set(key, data);
|
|
107
|
-
}
|
|
108
|
-
getLang(lang) {
|
|
109
|
-
const key = `_yz_lang_${lang}`;
|
|
110
|
-
return this.cacheService.get(key, { mode: 'none' });
|
|
111
|
-
}
|
|
112
|
-
cacheLangs(langs) {
|
|
113
|
-
const key = `_yz_langs`;
|
|
114
|
-
this.cacheService.set(key, langs);
|
|
115
|
-
}
|
|
116
|
-
getCachedLangs() {
|
|
117
|
-
const key = `_yz_langs`;
|
|
118
|
-
return this.cacheService.get(key, { mode: 'none' }) || [];
|
|
119
|
-
}
|
|
120
|
-
ngOnDestroy() {
|
|
121
|
-
this.destroy$.complete();
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
YunzaiI18NService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
125
|
-
YunzaiI18NService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
127
|
-
type: Injectable,
|
|
128
|
-
args: [{ providedIn: 'root' }]
|
|
129
|
-
}], ctorParameters: function () { return [{ type: i1._HttpClient }, { type: i1.SettingsService }, { type: i2.NzI18nService }, { type: i1.YelonLocaleService }, { type: i3.Platform }, { type: i4.YunzaiConfigService }, { type: i5.CacheService }]; } });
|
|
130
|
-
export { YunzaiI18NService as YzI18NService, YunzaiI18NService };
|
|
1
|
+
import { registerLocaleData } from '@angular/common';
|
|
2
|
+
import ngEn from '@angular/common/locales/en';
|
|
3
|
+
import { Injectable } from '@angular/core';
|
|
4
|
+
import { Subject, catchError, of, takeUntil } from 'rxjs';
|
|
5
|
+
import { enUS as dfEn } from 'date-fns/locale';
|
|
6
|
+
import { map } from 'rxjs/operators';
|
|
7
|
+
import { YunzaiI18nBaseService, en_US as yelonEnUS } from '@yelon/theme';
|
|
8
|
+
import { en_US as zorroEnUS } from 'ng-zorro-antd/i18n';
|
|
9
|
+
import { mergeBisConfig } from './bis.config';
|
|
10
|
+
import { YUNZAI_LANGS } from './yunzai-lang';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@yelon/theme";
|
|
13
|
+
import * as i2 from "ng-zorro-antd/i18n";
|
|
14
|
+
import * as i3 from "@angular/cdk/platform";
|
|
15
|
+
import * as i4 from "@yelon/util/config";
|
|
16
|
+
import * as i5 from "@yelon/cache";
|
|
17
|
+
const DEFAULT = 'zh-CN';
|
|
18
|
+
class YunzaiI18NService extends YunzaiI18nBaseService {
|
|
19
|
+
constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv, cacheService) {
|
|
20
|
+
super(cogSrv);
|
|
21
|
+
this.http = http;
|
|
22
|
+
this.settings = settings;
|
|
23
|
+
this.nzI18nService = nzI18nService;
|
|
24
|
+
this.yelonLocaleService = yelonLocaleService;
|
|
25
|
+
this.platform = platform;
|
|
26
|
+
this.cacheService = cacheService;
|
|
27
|
+
this._defaultLang = DEFAULT;
|
|
28
|
+
this.destroy$ = new Subject();
|
|
29
|
+
const defaultLang = this.getDefaultLang();
|
|
30
|
+
this.bis = mergeBisConfig(cogSrv);
|
|
31
|
+
this.getLangs()
|
|
32
|
+
.pipe(takeUntil(this.destroy$))
|
|
33
|
+
.subscribe(langs => {
|
|
34
|
+
this._defaultLang = langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
getDefaultLang() {
|
|
38
|
+
if (!this.platform.isBrowser) {
|
|
39
|
+
return DEFAULT;
|
|
40
|
+
}
|
|
41
|
+
if (this.settings.layout.lang) {
|
|
42
|
+
return this.settings.layout.lang;
|
|
43
|
+
}
|
|
44
|
+
let res = (navigator.languages ? navigator.languages[0] : null) || navigator.language;
|
|
45
|
+
const arr = res.split('-');
|
|
46
|
+
return arr.length <= 1 ? res : `${arr[0]}-${arr[1].toUpperCase()}`;
|
|
47
|
+
}
|
|
48
|
+
loadLangData(lang) {
|
|
49
|
+
if (ngDevMode) {
|
|
50
|
+
return this.http.get(`assets/tmp/i18n/${lang}.json`);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
if (this.getLang(lang)) {
|
|
54
|
+
return of(this.getLang(lang));
|
|
55
|
+
}
|
|
56
|
+
return this.http
|
|
57
|
+
.get(`${this.bis.baseUrl}/i18n/api/v2/language/${lang}?_allow_anonymous`)
|
|
58
|
+
.pipe(catchError(() => this.http.get(`assets/tmp/i18n/${lang}.json`)));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
use(lang, data) {
|
|
62
|
+
if (this._currentLang === lang)
|
|
63
|
+
return;
|
|
64
|
+
if (!ngDevMode) {
|
|
65
|
+
this.cacheLang(lang, data);
|
|
66
|
+
}
|
|
67
|
+
this._data = this.flatData(data, []);
|
|
68
|
+
const item = YUNZAI_LANGS[lang];
|
|
69
|
+
if (item) {
|
|
70
|
+
registerLocaleData(item.ng);
|
|
71
|
+
this.nzI18nService.setLocale(item.zorro);
|
|
72
|
+
this.nzI18nService.setDateLocale(item.date);
|
|
73
|
+
this.yelonLocaleService.setLocale(item.yelon);
|
|
74
|
+
this._currentLang = lang;
|
|
75
|
+
this._change$.next(lang);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
registerLocaleData(ngEn);
|
|
79
|
+
this.nzI18nService.setLocale(zorroEnUS);
|
|
80
|
+
this.nzI18nService.setDateLocale(dfEn);
|
|
81
|
+
this.yelonLocaleService.setLocale(yelonEnUS);
|
|
82
|
+
this._currentLang = lang;
|
|
83
|
+
this._change$.next(lang);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
getLangs() {
|
|
87
|
+
const langs = Object.keys(YUNZAI_LANGS).map(code => {
|
|
88
|
+
const item = YUNZAI_LANGS[code];
|
|
89
|
+
return { code, text: item.text, abbr: item.abbr, image: undefined };
|
|
90
|
+
});
|
|
91
|
+
if (ngDevMode) {
|
|
92
|
+
return of(langs);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
if (this.getCachedLangs().length > 0) {
|
|
96
|
+
return of(this.getCachedLangs());
|
|
97
|
+
}
|
|
98
|
+
return this.http.get(`${this.bis.baseUrl}/i18n/api/v2/language?_allow_anonymous`).pipe(map((response) => {
|
|
99
|
+
this.cacheLangs(response.data);
|
|
100
|
+
return response.data;
|
|
101
|
+
}), catchError(() => of(langs)));
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
cacheLang(lang, data) {
|
|
105
|
+
const key = `_yz_lang_${lang}`;
|
|
106
|
+
this.cacheService.set(key, data);
|
|
107
|
+
}
|
|
108
|
+
getLang(lang) {
|
|
109
|
+
const key = `_yz_lang_${lang}`;
|
|
110
|
+
return this.cacheService.get(key, { mode: 'none' });
|
|
111
|
+
}
|
|
112
|
+
cacheLangs(langs) {
|
|
113
|
+
const key = `_yz_langs`;
|
|
114
|
+
this.cacheService.set(key, langs);
|
|
115
|
+
}
|
|
116
|
+
getCachedLangs() {
|
|
117
|
+
const key = `_yz_langs`;
|
|
118
|
+
return this.cacheService.get(key, { mode: 'none' }) || [];
|
|
119
|
+
}
|
|
120
|
+
ngOnDestroy() {
|
|
121
|
+
this.destroy$.complete();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
YunzaiI18NService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: YunzaiI18NService, deps: [{ token: i1._HttpClient }, { token: i1.SettingsService }, { token: i2.NzI18nService }, { token: i1.YelonLocaleService }, { token: i3.Platform }, { token: i4.YunzaiConfigService }, { token: i5.CacheService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
125
|
+
YunzaiI18NService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: YunzaiI18NService, providedIn: 'root' });
|
|
126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: YunzaiI18NService, decorators: [{
|
|
127
|
+
type: Injectable,
|
|
128
|
+
args: [{ providedIn: 'root' }]
|
|
129
|
+
}], ctorParameters: function () { return [{ type: i1._HttpClient }, { type: i1.SettingsService }, { type: i2.NzI18nService }, { type: i1.YelonLocaleService }, { type: i3.Platform }, { type: i4.YunzaiConfigService }, { type: i5.CacheService }]; } });
|
|
130
|
+
export { YunzaiI18NService as YzI18NService, YunzaiI18NService };
|
|
131
131
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWkxOG4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Jpcy9sYXlvdXQveXVuemFpLWkxOG4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLElBQUksTUFBTSw0QkFBNEIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBYyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEUsT0FBTyxFQUFFLElBQUksSUFBSSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUlMLHFCQUFxQixFQUVyQixLQUFLLElBQUksU0FBUyxFQUNuQixNQUFNLGNBQWMsQ0FBQztBQUd0QixPQUFPLEVBQWlCLEtBQUssSUFBSSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFJN0MsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDO0FBRXhCLE1BQ00saUJBQWtCLFNBQVEscUJBQXFCO0lBS25ELFlBQ1UsSUFBaUIsRUFDakIsUUFBeUIsRUFDekIsYUFBNEIsRUFDNUIsa0JBQXNDLEVBQ3RDLFFBQWtCLEVBQzFCLE1BQTJCLEVBQ25CLFlBQTBCO1FBRWxDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQVJOLFNBQUksR0FBSixJQUFJLENBQWE7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDekIsa0JBQWEsR0FBYixh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LEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7OzhHQXBIRyxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQURHLE1BQU07MkZBQzFCLGlCQUFpQjtrQkFEdEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBd0hsQyxPQUFPLEVBQUUsaUJBQWlCLElBQUksYUFBYSxFQUFFLGlCQUFpQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IG5nRW4gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZW4nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBjYXRjaEVycm9yLCBvZiwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGVuVVMgYXMgZGZFbiB9IGZyb20gJ2RhdGUtZm5zL2xvY2FsZSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENhY2hlU2VydmljZSB9IGZyb20gJ0B5ZWxvbi9jYWNoZSc7XG5pbXBvcnQge1xuICBZZWxvbkxvY2FsZVNlcnZpY2UsXG4gIFNldHRpbmdzU2VydmljZSxcbiAgX0h0dHBDbGllbnQsXG4gIFl1bnphaUkxOG5CYXNlU2VydmljZSxcbiAgWXVuemFpSTE4TlR5cGUsXG4gIGVuX1VTIGFzIHllbG9uRW5VU1xufSBmcm9tICdAeWVsb24vdGhlbWUnO1xuaW1wb3J0IHsgWXVuemFpQnVzaW5lc3NDb25maWcsIFl1bnphaUNvbmZpZ1NlcnZpY2UgfSBmcm9tICdAeWVsb24vdXRpbC9jb25maWcnO1xuaW1wb3J0IHsgTnpTYWZlQW55IH0gZnJvbSAnbmctem9ycm8tYW50ZC9jb3JlL3R5cGVzJztcbmltcG9ydCB7IE56STE4blNlcnZpY2UsIGVuX1VTIGFzIHpvcnJvRW5VUyB9IGZyb20gJ25nLXpvcnJvLWFudGQvaTE4bic7XG5cbmltcG9ydCB7IG1lcmdlQmlzQ29uZmlnIH0gZnJvbSAnLi9iaXMuY29uZmlnJztcbmltcG9ydCB7IFlVTlpBSV9MQU5HUyB9IGZyb20gJy4veXVuemFpLWxhbmcnO1xuXG5kZWNsYXJlIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbjtcblxuY29uc3QgREVGQVVMVCA9ICd6aC1DTic7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5jbGFzcyBZdW56YWlJMThOU2VydmljZSBleHRlbmRzIFl1bnphaUkxOG5CYXNlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCBvdmVycmlkZSBfZGVmYXVsdExhbmcgPSBERUZBVUxUO1xuICBwcml2YXRlIGJpczogWXVuemFpQnVzaW5lc3NDb25maWc7XG4gIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBfSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHNldHRpbmdzOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBuekkxOG5TZXJ2aWNlOiBOekkxOG5TZXJ2aWNlLFxuICAgIHByaXZhdGUgeWVsb25Mb2NhbGVTZXJ2aWNlOiBZZWxvbkxvY2FsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgY29nU3J2OiBZdW56YWlDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2FjaGVTZXJ2aWNlOiBDYWNoZVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoY29nU3J2KTtcbiAgICBjb25zdCBkZWZhdWx0TGFuZyA9IHRoaXMuZ2V0RGVmYXVsdExhbmcoKTtcbiAgICB0aGlzLmJpcyA9IG1lcmdlQmlzQ29uZmlnKGNvZ1Nydik7XG4gICAgdGhpcy5nZXRMYW5ncygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKGxhbmdzID0+IHtcbiAgICAgICAgdGhpcy5fZGVmYXVsdExhbmcgPSBsYW5ncy5maW5kSW5kZXgodyA9PiB3LmNvZGUgPT09IGRlZmF1bHRMYW5nKSA9PT0gLTEgPyBERUZBVUxUIDogZGVmYXVsdExhbmc7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdExhbmcoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMucGxhdGZvcm0uaXNCcm93c2VyKSB7XG4gICAgICByZXR1cm4gREVGQVVMVDtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2V0dGluZ3MubGF5b3V0LmxhbmcpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzLmxheW91dC5sYW5nO1xuICAgIH1cbiAgICBsZXQgcmVzID0gKG5hdmlnYXRvci5sYW5ndWFnZXMgPyBuYXZpZ2F0b3IubGFuZ3VhZ2VzWzBdIDogbnVsbCkgfHwgbmF2aWdhdG9yLmxhbmd1YWdlO1xuICAgIGNvbnN0IGFyciA9IHJlcy5zcGxpdCgnLScpO1xuICAgIHJldHVybiBhcnIubGVuZ3RoIDw9IDEgPyByZXMgOiBgJHthcnJbMF19LSR7YXJyWzFdLnRvVXBwZXJDYXNlKCl9YDtcbiAgfVxuXG4gIGxvYWRMYW5nRGF0YShsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPE56U2FmZUFueT4ge1xuICAgIGlmIChuZ0Rldk1vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGBhc3NldHMvdG1wL2kxOG4vJHtsYW5nfS5qc29uYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmdldExhbmcobGFuZykpIHtcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMuZ2V0TGFuZyhsYW5nKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgIC5nZXQoYCR7dGhpcy5iaXMuYmFzZVVybH0vaTE4bi9hcGkvdjIvbGFuZ3VhZ2UvJHtsYW5nfT9fYWxsb3dfYW5vbnltb3VzYClcbiAgICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiB0aGlzLmh0dHAuZ2V0KGBhc3NldHMvdG1wL2kxOG4vJHtsYW5nfS5qc29uYCkpKTtcbiAgICB9XG4gIH1cblxuICB1c2UobGFuZzogc3RyaW5nLCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHZvaWQge1xuICAgIGlmICh0aGlzLl9jdXJyZW50TGFuZyA9PT0gbGFuZykgcmV0dXJuO1xuICAgIGlmICghbmdEZXZNb2RlKSB7XG4gICAgICB0aGlzLmNhY2hlTGFuZyhsYW5nLCBkYXRhKTtcbiAgICB9XG4gICAgdGhpcy5fZGF0YSA9IHRoaXMuZmxhdERhdGEoZGF0YSwgW10pO1xuICAgIGNvbnN0IGl0ZW0gPSBZVU5aQUlfTEFOR1NbbGFuZ107XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShpdGVtLm5nKTtcbiAgICAgIHRoaXMubnpJMThuU2VydmljZS5zZXRMb2NhbGUoaXRlbS56b3Jybyk7XG4gICAgICB0aGlzLm56STE4blNlcnZpY2Uuc2V0RGF0ZUxvY2FsZShpdGVtLmRhdGUpO1xuICAgICAgdGhpcy55ZWxvbkxvY2FsZVNlcnZpY2Uuc2V0TG9jYWxlKGl0ZW0ueWVsb24pO1xuICAgICAgdGhpcy5fY3VycmVudExhbmcgPSBsYW5nO1xuICAgICAgdGhpcy5fY2hhbmdlJC5uZXh0KGxhbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZWdpc3RlckxvY2FsZURhdGEobmdFbik7XG4gICAgICB0aGlzLm56STE4blNlcnZpY2Uuc2V0TG9jYWxlKHpvcnJvRW5VUyk7XG4gICAgICB0aGlzLm56STE4blNlcnZpY2Uuc2V0RGF0ZUxvY2FsZShkZkVuKTtcbiAgICAgIHRoaXMueWVsb25Mb2NhbGVTZXJ2aWNlLnNldExvY2FsZSh5ZWxvbkVuVVMpO1xuICAgICAgdGhpcy5fY3VycmVudExhbmcgPSBsYW5nO1xuICAgICAgdGhpcy5fY2hhbmdlJC5uZXh0KGxhbmcpO1xuICAgIH1cbiAgfVxuXG4gIGdldExhbmdzKCk6IE9ic2VydmFibGU8WXVuemFpSTE4TlR5cGVbXT4ge1xuICAgIGNvbnN0IGxhbmdzID0gT2JqZWN0LmtleXMoWVVOWkFJX0xBTkdTKS5tYXAoY29kZSA9PiB7XG4gICAgICBjb25zdCBpdGVtID0gWVVOWkFJX0xBTkdTW2NvZGVdO1xuICAgICAgcmV0dXJuIHsgY29kZSwgdGV4dDogaXRlbS50ZXh0LCBhYmJyOiBpdGVtLmFiYnIsIGltYWdlOiB1bmRlZmluZWQgfTtcbiAgICB9KTtcbiAgICBpZiAobmdEZXZNb2RlKSB7XG4gICAgICByZXR1cm4gb2YobGFuZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5nZXRDYWNoZWRMYW5ncygpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMuZ2V0Q2FjaGVkTGFuZ3MoKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmJpcy5iYXNlVXJsfS9pMThuL2FwaS92Mi9sYW5ndWFnZT9fYWxsb3dfYW5vbnltb3VzYCkucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5jYWNoZUxhbmdzKHJlc3BvbnNlLmRhdGEpO1xuICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihsYW5ncykpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGNhY2hlTGFuZyhsYW5nOiBzdHJpbmcsIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgY29uc3Qga2V5ID0gYF95el9sYW5nXyR7bGFuZ31gO1xuICAgIHRoaXMuY2FjaGVTZXJ2aWNlLnNldChrZXksIGRhdGEpO1xuICB9XG5cbiAgZ2V0TGFuZyhsYW5nOiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgY29uc3Qga2V5ID0gYF95el9sYW5nXyR7bGFuZ31gO1xuICAgIHJldHVybiB0aGlzLmNhY2hlU2VydmljZS5nZXQoa2V5LCB7IG1vZGU6ICdub25lJyB9KTtcbiAgfVxuXG4gIGNhY2hlTGFuZ3MobGFuZ3M6IFl1bnphaUkxOE5UeXBlW10pOiB2b2lkIHtcbiAgICBjb25zdCBrZXkgPSBgX3l6X2xhbmdzYDtcbiAgICB0aGlzLmNhY2hlU2VydmljZS5zZXQoa2V5LCBsYW5ncyk7XG4gIH1cblxuICBnZXRDYWNoZWRMYW5ncygpOiBZdW56YWlJMThOVHlwZVtdIHtcbiAgICBjb25zdCBrZXkgPSBgX3l6X2xhbmdzYDtcbiAgICByZXR1cm4gdGhpcy5jYWNoZVNlcnZpY2UuZ2V0KGtleSwgeyBtb2RlOiAnbm9uZScgfSkgfHwgW107XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cblxuZXhwb3J0IHsgWXVuemFpSTE4TlNlcnZpY2UgYXMgWXpJMThOU2VydmljZSwgWXVuemFpSTE4TlNlcnZpY2UgfTtcbiJdfQ==
|
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
import ngElGr from '@angular/common/locales/el';
|
|
2
|
-
import ngEn from '@angular/common/locales/en';
|
|
3
|
-
import ngEsEs from '@angular/common/locales/es';
|
|
4
|
-
import ngFr from '@angular/common/locales/fr';
|
|
5
|
-
import ngHr from '@angular/common/locales/hr';
|
|
6
|
-
import ngIt from '@angular/common/locales/it';
|
|
7
|
-
import ngKo from '@angular/common/locales/ko';
|
|
8
|
-
import ngPl from '@angular/common/locales/pl';
|
|
9
|
-
import ngSl from '@angular/common/locales/sl';
|
|
10
|
-
import ngTr from '@angular/common/locales/tr';
|
|
11
|
-
import ngZh from '@angular/common/locales/zh';
|
|
12
|
-
import ngZhTw from '@angular/common/locales/zh-Hant';
|
|
13
|
-
import { enUS as dfEn, zhCN as dfZhCn, zhTW as dfZhTw, el as dfEl, es as dfEs, fr as dfFr, hr as dfHr, it as dfIt, ko as dfKo, pl as dfPl, sl as dfSl, tr as dfTr } from 'date-fns/locale';
|
|
14
|
-
import { el_GR as yelonElGR, en_US as yelonEnUS, es_ES as yelonEsES, fr_FR as yelonFrFR, hr_HR as yelonHrHR, it_IT as yelonItIT, ko_KR as yelonKoKR, pl_PL as yelonPlPL, sl_SI as yelonSlSI, tr_TR as yelonTrTR, zh_CN as yelonZhCn, zh_TW as yelonZhTw } from '@yelon/theme';
|
|
15
|
-
import { el_GR as zorroElGR, en_US as zorroEnUS, es_ES as zorroEsES, fr_FR as zorroFrFR, hr_HR as zorroHrHR, it_IT as zorroItIT, ko_KR as zorroKoKR, pl_PL as zorroPlPL, sl_SI as zorroSlSI, tr_TR as zorroTrTR, zh_CN as zorroZhCN, zh_TW as zorroZhTW } from 'ng-zorro-antd/i18n';
|
|
16
|
-
export const YUNZAI_LANGS = {
|
|
17
|
-
'zh-CN': {
|
|
18
|
-
text: '简体中文',
|
|
19
|
-
ng: ngZh,
|
|
20
|
-
zorro: zorroZhCN,
|
|
21
|
-
date: dfZhCn,
|
|
22
|
-
yelon: yelonZhCn,
|
|
23
|
-
abbr: '🇨🇳'
|
|
24
|
-
},
|
|
25
|
-
'zh-TW': {
|
|
26
|
-
text: '繁体中文',
|
|
27
|
-
ng: ngZhTw,
|
|
28
|
-
zorro: zorroZhTW,
|
|
29
|
-
date: dfZhTw,
|
|
30
|
-
yelon: yelonZhTw,
|
|
31
|
-
abbr: '🇭🇰'
|
|
32
|
-
},
|
|
33
|
-
'en-US': {
|
|
34
|
-
text: 'English',
|
|
35
|
-
ng: ngEn,
|
|
36
|
-
zorro: zorroEnUS,
|
|
37
|
-
date: dfEn,
|
|
38
|
-
yelon: yelonEnUS,
|
|
39
|
-
abbr: '🇬🇧'
|
|
40
|
-
},
|
|
41
|
-
'el-GR': {
|
|
42
|
-
text: 'Ελληνικά',
|
|
43
|
-
ng: ngElGr,
|
|
44
|
-
zorro: zorroElGR,
|
|
45
|
-
date: dfEl,
|
|
46
|
-
yelon: yelonElGR,
|
|
47
|
-
abbr: '🇬🇷'
|
|
48
|
-
},
|
|
49
|
-
'es-ES': {
|
|
50
|
-
text: 'Español',
|
|
51
|
-
ng: ngEsEs,
|
|
52
|
-
zorro: zorroEsES,
|
|
53
|
-
date: dfEs,
|
|
54
|
-
yelon: yelonEsES,
|
|
55
|
-
abbr: '🇪🇸'
|
|
56
|
-
},
|
|
57
|
-
'fr-FR': {
|
|
58
|
-
text: 'Français',
|
|
59
|
-
ng: ngFr,
|
|
60
|
-
zorro: zorroFrFR,
|
|
61
|
-
date: dfFr,
|
|
62
|
-
yelon: yelonFrFR,
|
|
63
|
-
abbr: '🇫🇷'
|
|
64
|
-
},
|
|
65
|
-
'hr-HR': {
|
|
66
|
-
text: 'Hrvatski',
|
|
67
|
-
ng: ngHr,
|
|
68
|
-
zorro: zorroHrHR,
|
|
69
|
-
date: dfHr,
|
|
70
|
-
yelon: yelonHrHR,
|
|
71
|
-
abbr: '🇭🇷'
|
|
72
|
-
},
|
|
73
|
-
'it-IT': {
|
|
74
|
-
text: 'Italiano',
|
|
75
|
-
ng: ngIt,
|
|
76
|
-
zorro: zorroItIT,
|
|
77
|
-
date: dfIt,
|
|
78
|
-
yelon: yelonItIT,
|
|
79
|
-
abbr: '🇮🇹'
|
|
80
|
-
},
|
|
81
|
-
'ko-KR': {
|
|
82
|
-
text: '한국어',
|
|
83
|
-
ng: ngKo,
|
|
84
|
-
zorro: zorroKoKR,
|
|
85
|
-
date: dfKo,
|
|
86
|
-
yelon: yelonKoKR,
|
|
87
|
-
abbr: '🇰🇷'
|
|
88
|
-
},
|
|
89
|
-
'pl-PL': {
|
|
90
|
-
text: 'Polski',
|
|
91
|
-
ng: ngPl,
|
|
92
|
-
zorro: zorroPlPL,
|
|
93
|
-
date: dfPl,
|
|
94
|
-
yelon: yelonPlPL,
|
|
95
|
-
abbr: '🇵🇱'
|
|
96
|
-
},
|
|
97
|
-
'sl-SI': {
|
|
98
|
-
text: 'Slovenščina',
|
|
99
|
-
ng: ngSl,
|
|
100
|
-
zorro: zorroSlSI,
|
|
101
|
-
date: dfSl,
|
|
102
|
-
yelon: yelonSlSI,
|
|
103
|
-
abbr: '🇸🇮'
|
|
104
|
-
},
|
|
105
|
-
'tr-TR': {
|
|
106
|
-
text: 'Türkçe',
|
|
107
|
-
ng: ngTr,
|
|
108
|
-
zorro: zorroTrTR,
|
|
109
|
-
date: dfTr,
|
|
110
|
-
yelon: yelonTrTR,
|
|
111
|
-
abbr: '🇹🇷'
|
|
112
|
-
}
|
|
113
|
-
};
|
|
1
|
+
import ngElGr from '@angular/common/locales/el';
|
|
2
|
+
import ngEn from '@angular/common/locales/en';
|
|
3
|
+
import ngEsEs from '@angular/common/locales/es';
|
|
4
|
+
import ngFr from '@angular/common/locales/fr';
|
|
5
|
+
import ngHr from '@angular/common/locales/hr';
|
|
6
|
+
import ngIt from '@angular/common/locales/it';
|
|
7
|
+
import ngKo from '@angular/common/locales/ko';
|
|
8
|
+
import ngPl from '@angular/common/locales/pl';
|
|
9
|
+
import ngSl from '@angular/common/locales/sl';
|
|
10
|
+
import ngTr from '@angular/common/locales/tr';
|
|
11
|
+
import ngZh from '@angular/common/locales/zh';
|
|
12
|
+
import ngZhTw from '@angular/common/locales/zh-Hant';
|
|
13
|
+
import { enUS as dfEn, zhCN as dfZhCn, zhTW as dfZhTw, el as dfEl, es as dfEs, fr as dfFr, hr as dfHr, it as dfIt, ko as dfKo, pl as dfPl, sl as dfSl, tr as dfTr } from 'date-fns/locale';
|
|
14
|
+
import { el_GR as yelonElGR, en_US as yelonEnUS, es_ES as yelonEsES, fr_FR as yelonFrFR, hr_HR as yelonHrHR, it_IT as yelonItIT, ko_KR as yelonKoKR, pl_PL as yelonPlPL, sl_SI as yelonSlSI, tr_TR as yelonTrTR, zh_CN as yelonZhCn, zh_TW as yelonZhTw } from '@yelon/theme';
|
|
15
|
+
import { el_GR as zorroElGR, en_US as zorroEnUS, es_ES as zorroEsES, fr_FR as zorroFrFR, hr_HR as zorroHrHR, it_IT as zorroItIT, ko_KR as zorroKoKR, pl_PL as zorroPlPL, sl_SI as zorroSlSI, tr_TR as zorroTrTR, zh_CN as zorroZhCN, zh_TW as zorroZhTW } from 'ng-zorro-antd/i18n';
|
|
16
|
+
export const YUNZAI_LANGS = {
|
|
17
|
+
'zh-CN': {
|
|
18
|
+
text: '简体中文',
|
|
19
|
+
ng: ngZh,
|
|
20
|
+
zorro: zorroZhCN,
|
|
21
|
+
date: dfZhCn,
|
|
22
|
+
yelon: yelonZhCn,
|
|
23
|
+
abbr: '🇨🇳'
|
|
24
|
+
},
|
|
25
|
+
'zh-TW': {
|
|
26
|
+
text: '繁体中文',
|
|
27
|
+
ng: ngZhTw,
|
|
28
|
+
zorro: zorroZhTW,
|
|
29
|
+
date: dfZhTw,
|
|
30
|
+
yelon: yelonZhTw,
|
|
31
|
+
abbr: '🇭🇰'
|
|
32
|
+
},
|
|
33
|
+
'en-US': {
|
|
34
|
+
text: 'English',
|
|
35
|
+
ng: ngEn,
|
|
36
|
+
zorro: zorroEnUS,
|
|
37
|
+
date: dfEn,
|
|
38
|
+
yelon: yelonEnUS,
|
|
39
|
+
abbr: '🇬🇧'
|
|
40
|
+
},
|
|
41
|
+
'el-GR': {
|
|
42
|
+
text: 'Ελληνικά',
|
|
43
|
+
ng: ngElGr,
|
|
44
|
+
zorro: zorroElGR,
|
|
45
|
+
date: dfEl,
|
|
46
|
+
yelon: yelonElGR,
|
|
47
|
+
abbr: '🇬🇷'
|
|
48
|
+
},
|
|
49
|
+
'es-ES': {
|
|
50
|
+
text: 'Español',
|
|
51
|
+
ng: ngEsEs,
|
|
52
|
+
zorro: zorroEsES,
|
|
53
|
+
date: dfEs,
|
|
54
|
+
yelon: yelonEsES,
|
|
55
|
+
abbr: '🇪🇸'
|
|
56
|
+
},
|
|
57
|
+
'fr-FR': {
|
|
58
|
+
text: 'Français',
|
|
59
|
+
ng: ngFr,
|
|
60
|
+
zorro: zorroFrFR,
|
|
61
|
+
date: dfFr,
|
|
62
|
+
yelon: yelonFrFR,
|
|
63
|
+
abbr: '🇫🇷'
|
|
64
|
+
},
|
|
65
|
+
'hr-HR': {
|
|
66
|
+
text: 'Hrvatski',
|
|
67
|
+
ng: ngHr,
|
|
68
|
+
zorro: zorroHrHR,
|
|
69
|
+
date: dfHr,
|
|
70
|
+
yelon: yelonHrHR,
|
|
71
|
+
abbr: '🇭🇷'
|
|
72
|
+
},
|
|
73
|
+
'it-IT': {
|
|
74
|
+
text: 'Italiano',
|
|
75
|
+
ng: ngIt,
|
|
76
|
+
zorro: zorroItIT,
|
|
77
|
+
date: dfIt,
|
|
78
|
+
yelon: yelonItIT,
|
|
79
|
+
abbr: '🇮🇹'
|
|
80
|
+
},
|
|
81
|
+
'ko-KR': {
|
|
82
|
+
text: '한국어',
|
|
83
|
+
ng: ngKo,
|
|
84
|
+
zorro: zorroKoKR,
|
|
85
|
+
date: dfKo,
|
|
86
|
+
yelon: yelonKoKR,
|
|
87
|
+
abbr: '🇰🇷'
|
|
88
|
+
},
|
|
89
|
+
'pl-PL': {
|
|
90
|
+
text: 'Polski',
|
|
91
|
+
ng: ngPl,
|
|
92
|
+
zorro: zorroPlPL,
|
|
93
|
+
date: dfPl,
|
|
94
|
+
yelon: yelonPlPL,
|
|
95
|
+
abbr: '🇵🇱'
|
|
96
|
+
},
|
|
97
|
+
'sl-SI': {
|
|
98
|
+
text: 'Slovenščina',
|
|
99
|
+
ng: ngSl,
|
|
100
|
+
zorro: zorroSlSI,
|
|
101
|
+
date: dfSl,
|
|
102
|
+
yelon: yelonSlSI,
|
|
103
|
+
abbr: '🇸🇮'
|
|
104
|
+
},
|
|
105
|
+
'tr-TR': {
|
|
106
|
+
text: 'Türkçe',
|
|
107
|
+
ng: ngTr,
|
|
108
|
+
zorro: zorroTrTR,
|
|
109
|
+
date: dfTr,
|
|
110
|
+
yelon: yelonTrTR,
|
|
111
|
+
abbr: '🇹🇷'
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
114
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLWxhbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9iaXMvbGF5b3V0L3l1bnphaS1sYW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hELE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sTUFBTSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hELE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQzlDLE9BQU8sTUFBTSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJELE9BQU8sRUFDTCxJQUFJLElBQUksSUFBSSxFQUNaLElBQUksSUFBSSxNQUFNLEVBQ2QsSUFBSSxJQUFJLE1BQU0sRUFDZCxFQUFFLElBQUksSUFBSSxFQUNWLEVBQUUsSUFBSSxJQUFJLEVBQ1YsRUFBRSxJQUFJLElBQUksRUFDVixFQUFFLElBQUksSUFBSSxFQUNWLEVBQUUsSUFBSSxJQUFJLEVBQ1YsRUFBRSxJQUFJLElBQUksRUFDVixFQUFFLElBQUksSUFBSSxFQUNWLEVBQUUsSUFBSSxJQUFJLEVBQ1YsRUFBRSxJQUFJLElBQUksRUFDWCxNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDTCxLQUFLLElBQUksU0FBUyxFQUNsQixLQUFLLElBQUksU0FBUyxFQUNsQixLQUFLLElBQUksU0FBUyxFQUNsQixLQUFLLElBQUksU0FB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LEVBQUU7UUFDUCxJQUFJLEVBQUUsUUFBUTtRQUNkLEVBQUUsRUFBRSxJQUFJO1FBQ1IsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsTUFBTTtLQUNiO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsSUFBSSxFQUFFLGFBQWE7UUFDbkIsRUFBRSxFQUFFLElBQUk7UUFDUixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxTQUFTO1FBQ2hCLElBQUksRUFBRSxNQUFNO0tBQ2I7SUFDRCxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUUsUUFBUTtRQUNkLEVBQUUsRUFBRSxJQUFJO1FBQ1IsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsTUFBTTtLQUNiO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBuZ0VsR3IgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZWwnO1xuaW1wb3J0IG5nRW4gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZW4nO1xuaW1wb3J0IG5nRXNFcyBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9lcyc7XG5pbXBvcnQgbmdGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgbmdIciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9ocic7XG5pbXBvcnQgbmdJdCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9pdCc7XG5pbXBvcnQgbmdLbyBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9rbyc7XG5pbXBvcnQgbmdQbCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9wbCc7XG5pbXBvcnQgbmdTbCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9zbCc7XG5pbXBvcnQgbmdUciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy90cic7XG5pbXBvcnQgbmdaaCBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy96aCc7XG5pbXBvcnQgbmdaaFR3IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3poLUhhbnQnO1xuXG5pbXBvcnQge1xuICBlblVTIGFzIGRmRW4sXG4gIHpoQ04gYXMgZGZaaENuLFxuICB6aFRXIGFzIGRmWmhUdyxcbiAgZWwgYXMgZGZFbCxcbiAgZXMgYXMgZGZFcyxcbiAgZnIgYXMgZGZGcixcbiAgaHIgYXMgZGZIcixcbiAgaXQgYXMgZGZJdCxcbiAga28gYXMgZGZLbyxcbiAgcGwgYXMgZGZQbCxcbiAgc2wgYXMgZGZTbCxcbiAgdHIgYXMgZGZUclxufSBmcm9tICdkYXRlLWZucy9sb2NhbGUnO1xuXG5pbXBvcnQge1xuICBlbF9HUiBhcyB5ZWxvbkVsR1IsXG4gIGVuX1VTIGFzIHllbG9uRW5VUyxcbiAgZXNfRVMgYXMgeWVsb25Fc0VTLFxuICBmcl9GUiBhcyB5ZWxvbkZyRlIsXG4gIGhyX0hSIGFzIHllbG9uSHJIUixcbiAgaXRfSVQgYXMgeWVsb25JdElULFxuICBrb19LUiBhcyB5ZWxvbktvS1IsXG4gIHBsX1BMIGFzIHllbG9uUGxQTCxcbiAgc2xfU0kgYXMgeWVsb25TbFNJLFxuICB0cl9UUiBhcyB5ZWxvblRyVFIsXG4gIHpoX0NOIGFzIHllbG9uWmhDbixcbiAgemhfVFcgYXMgeWVsb25aaFR3XG59IGZyb20gJ0B5ZWxvbi90aGVtZSc7XG5pbXBvcnQge1xuICBlbF9HUiBhcyB6b3Jyb0VsR1IsXG4gIGVuX1VTIGFzIHpvcnJvRW5VUyxcbiAgZXNfRVMgYXMgem9ycm9Fc0VTLFxuICBmcl9GUiBhcyB6b3Jyb0ZyRlIsXG4gIGhyX0hSIGFzIHpvcnJvSHJIUixcbiAgaXRfSVQgYXMgem9ycm9JdElULFxuICBrb19LUiBhcyB6b3Jyb0tvS1IsXG4gIHBsX1BMIGFzIHpvcnJvUGxQTCxcbiAgc2xfU0kgYXMgem9ycm9TbFNJLFxuICB0cl9UUiBhcyB6b3Jyb1RyVFIsXG4gIHpoX0NOIGFzIHpvcnJvWmhDTixcbiAgemhfVFcgYXMgem9ycm9aaFRXXG59IGZyb20gJ25nLXpvcnJvLWFudGQvaTE4bic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGFuZ0NvbmZpZ0RhdGEge1xuICBhYmJyOiBzdHJpbmc7XG4gIHRleHQ6IHN0cmluZztcbiAgbmc6IGFueTtcbiAgem9ycm86IGFueTtcbiAgZGF0ZTogYW55O1xuICB5ZWxvbjogYW55O1xufVxuXG5leHBvcnQgY29uc3QgWVVOWkFJX0xBTkdTOiB7IFtrZXk6IHN0cmluZ106IExhbmdDb25maWdEYXRhIH0gPSB7XG4gICd6aC1DTic6IHtcbiAgICB0ZXh0OiAn566A5L2T5Lit5paHJyxcbiAgICBuZzogbmdaaCxcbiAgICB6b3Jybzogem9ycm9aaENOLFxuICAgIGRhdGU6IGRmWmhDbixcbiAgICB5ZWxvbjogeWVsb25aaENuLFxuICAgIGFiYnI6ICfwn4eo8J+HsydcbiAgfSxcbiAgJ3poLVRXJzoge1xuICAgIHRleHQ6ICfnuYHkvZPkuK3mlocnLFxuICAgIG5nOiBuZ1poVHcsXG4gICAgem9ycm86IHpvcnJvWmhUVyxcbiAgICBkYXRlOiBkZlpoVHcsXG4gICAgeWVsb246IHllbG9uWmhUdyxcbiAgICBhYmJyOiAn8J+HrfCfh7AnXG4gIH0sXG4gICdlbi1VUyc6IHtcbiAgICB0ZXh0OiAnRW5nbGlzaCcsXG4gICAgbmc6IG5nRW4sXG4gICAgem9ycm86IHpvcnJvRW5VUyxcbiAgICBkYXRlOiBkZkVuLFxuICAgIHllbG9uOiB5ZWxvbkVuVVMsXG4gICAgYWJicjogJ/Cfh6zwn4enJ1xuICB9LFxuICAnZWwtR1InOiB7XG4gICAgdGV4dDogJ86VzrvOu863zr3Ouc66zqwnLFxuICAgIG5nOiBuZ0VsR3IsXG4gICAgem9ycm86IHpvcnJvRWxHUixcbiAgICBkYXRlOiBkZkVsLFxuICAgIHllbG9uOiB5ZWxvbkVsR1IsXG4gICAgYWJicjogJ/Cfh6zwn4e3J1xuICB9LFxuICAnZXMtRVMnOiB7XG4gICAgdGV4dDogJ0VzcGHDsW9sJyxcbiAgICBuZzogbmdFc0VzLFxuICAgIHpvcnJvOiB6b3Jyb0VzRVMsXG4gICAgZGF0ZTogZGZFcyxcbiAgICB5ZWxvbjogeWVsb25Fc0VTLFxuICAgIGFiYnI6ICfwn4eq8J+HuCdcbiAgfSxcbiAgJ2ZyLUZSJzoge1xuICAgIHRleHQ6ICdGcmFuw6dhaXMnLFxuICAgIG5nOiBuZ0ZyLFxuICAgIHpvcnJvOiB6b3Jyb0ZyRlIsXG4gICAgZGF0ZTogZGZGcixcbiAgICB5ZWxvbjogeWVsb25GckZSLFxuICAgIGFiYnI6ICfwn4er8J+HtydcbiAgfSxcbiAgJ2hyLUhSJzoge1xuICAgIHRleHQ6ICdIcnZhdHNraScsXG4gICAgbmc6IG5nSHIsXG4gICAgem9ycm86IHpvcnJvSHJIUixcbiAgICBkYXRlOiBkZkhyLFxuICAgIHllbG9uOiB5ZWxvbkhySFIsXG4gICAgYWJicjogJ/Cfh63wn4e3J1xuICB9LFxuICAnaXQtSVQnOiB7XG4gICAgdGV4dDogJ0l0YWxpYW5vJyxcbiAgICBuZzogbmdJdCxcbiAgICB6b3Jybzogem9ycm9JdElULFxuICAgIGRhdGU6IGRmSXQsXG4gICAgeWVsb246IHllbG9uSXRJVCxcbiAgICBhYmJyOiAn8J+HrvCfh7knXG4gIH0sXG4gICdrby1LUic6IHtcbiAgICB0ZXh0OiAn7ZWc6rWt7Ja0JyxcbiAgICBuZzogbmdLbyxcbiAgICB6b3Jybzogem9ycm9Lb0tSLFxuICAgIGRhdGU6IGRmS28sXG4gICAgeWVsb246IHllbG9uS29LUixcbiAgICBhYmJyOiAn8J+HsPCfh7cnXG4gIH0sXG4gICdwbC1QTCc6IHtcbiAgICB0ZXh0OiAnUG9sc2tpJyxcbiAgICBuZzogbmdQbCxcbiAgICB6b3Jybzogem9ycm9QbFBMLFxuICAgIGRhdGU6IGRmUGwsXG4gICAgeWVsb246IHllbG9uUGxQTCxcbiAgICBhYmJyOiAn8J+HtfCfh7EnXG4gIH0sXG4gICdzbC1TSSc6IHtcbiAgICB0ZXh0OiAnU2xvdmVuxaHEjWluYScsXG4gICAgbmc6IG5nU2wsXG4gICAgem9ycm86IHpvcnJvU2xTSSxcbiAgICBkYXRlOiBkZlNsLFxuICAgIHllbG9uOiB5ZWxvblNsU0ksXG4gICAgYWJicjogJ/Cfh7jwn4euJ1xuICB9LFxuICAndHItVFInOiB7XG4gICAgdGV4dDogJ1TDvHJrw6dlJyxcbiAgICBuZzogbmdUcixcbiAgICB6b3Jybzogem9ycm9UclRSLFxuICAgIGRhdGU6IGRmVHIsXG4gICAgeWVsb246IHllbG9uVHJUUixcbiAgICBhYmJyOiAn8J+HufCfh7cnXG4gIH1cbn07XG4iXX0=
|