@yelon/bis 15.1.0 → 15.1.1-beta.0
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/esm2020/layout/layout-basic/layout-basic.component.mjs +31 -16
- package/esm2020/layout/layout-nav/layout-nav-application.component.mjs +68 -47
- package/esm2020/layout/layout-nav/types.mjs +2 -7
- package/esm2020/layout/public_api.mjs +2 -1
- package/esm2020/layout/widgets/yunzai-clear-storage.component.mjs +3 -3
- package/esm2020/layout/widgets/yunzai-fullscreen.component.mjs +3 -3
- package/esm2020/layout/widgets/yunzai-i18n.component.mjs +27 -8
- package/esm2020/layout/widgets/yunzai-notify.component.mjs +7 -7
- package/esm2020/layout/widgets/yunzai-user.component.mjs +3 -3
- package/esm2020/layout/yunzai-default.interceptor.mjs +3 -1
- package/esm2020/layout/yunzai-i18n.service.mjs +68 -49
- package/esm2020/layout/yunzai-lang.mjs +114 -0
- package/esm2020/layout/yunzai-startup.service.mjs +4 -2
- package/fesm2015/layout.mjs +314 -137
- package/fesm2015/layout.mjs.map +1 -1
- package/fesm2020/layout.mjs +314 -137
- package/fesm2020/layout.mjs.map +1 -1
- package/layout/layout-basic/layout-basic.component.d.ts +1 -0
- package/layout/layout-nav/layout-nav-application.component.d.ts +7 -6
- package/layout/layout-nav/types.d.ts +1 -6
- package/layout/public_api.d.ts +1 -0
- package/layout/widgets/yunzai-i18n.component.d.ts +6 -7
- package/layout/yunzai-i18n.service.d.ts +10 -9
- package/layout/yunzai-lang.d.ts +11 -0
- package/package.json +11 -11
package/fesm2015/layout.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Component, ChangeDetectionStrategy, HostListener, Injectable, Inject, Input, Optional, NgModule, APP_INITIALIZER } from '@angular/core';
|
|
3
|
-
import {
|
|
4
|
-
import * as i1$
|
|
5
|
-
import { WINDOW, log as log$1, deepCopy, YunzaiConfigService } from '@yelon/util';
|
|
3
|
+
import { Subject, takeUntil, of, catchError, forkJoin, map, mergeMap, mergeAll, BehaviorSubject, throwError, filter, take, switchMap } from 'rxjs';
|
|
4
|
+
import * as i1$4 from '@yelon/util';
|
|
5
|
+
import { WINDOW, hasFavicon, setFavicon, log as log$1, deepCopy, YunzaiConfigService } from '@yelon/util';
|
|
6
6
|
import * as i1$5 from '@yelon/theme/layout-default';
|
|
7
|
-
import * as i1$
|
|
7
|
+
import * as i1$3 from '@yelon/cache';
|
|
8
8
|
import { CacheService } from '@yelon/cache';
|
|
9
9
|
import * as i3$3 from '@yelon/socket';
|
|
10
10
|
import * as i4$1 from '@angular/common';
|
|
@@ -20,16 +20,25 @@ import * as i9 from 'ng-zorro-antd/avatar';
|
|
|
20
20
|
import * as i1 from 'ng-zorro-antd/modal';
|
|
21
21
|
import * as i1$1 from 'ng-zorro-antd/message';
|
|
22
22
|
import * as i1$2 from '@yelon/theme';
|
|
23
|
-
import { zh_CN as zh_CN$1, zh_TW as zh_TW$1, en_US as en_US$1, YunzaiI18nBaseService, YUNZAI_I18N_TOKEN, _HttpClient } from '@yelon/theme';
|
|
23
|
+
import { zh_CN as zh_CN$1, zh_TW as zh_TW$1, en_US as en_US$1, el_GR as el_GR$1, es_ES as es_ES$1, fr_FR as fr_FR$1, hr_HR as hr_HR$1, it_IT as it_IT$1, ko_KR as ko_KR$1, pl_PL as pl_PL$1, sl_SI as sl_SI$1, tr_TR as tr_TR$1, YunzaiI18nBaseService, YUNZAI_I18N_TOKEN, _HttpClient } from '@yelon/theme';
|
|
24
24
|
import screenfull from 'screenfull';
|
|
25
25
|
import { __decorate } from 'tslib';
|
|
26
26
|
import { InputBoolean } from '@yelon/util/decorator';
|
|
27
27
|
import ngEn from '@angular/common/locales/en';
|
|
28
|
+
import { zhCN, zhTW, enUS, el, es, fr, hr, it, ko, pl, sl, tr } from 'date-fns/locale';
|
|
29
|
+
import * as i2 from 'ng-zorro-antd/i18n';
|
|
30
|
+
import { zh_CN, zh_TW, en_US, el_GR, es_ES, fr_FR, hr_HR, it_IT, ko_KR, pl_PL, sl_SI, tr_TR } from 'ng-zorro-antd/i18n';
|
|
31
|
+
import ngElGr from '@angular/common/locales/el';
|
|
32
|
+
import ngEsEs from '@angular/common/locales/es';
|
|
33
|
+
import ngFr from '@angular/common/locales/fr';
|
|
34
|
+
import ngHr from '@angular/common/locales/hr';
|
|
35
|
+
import ngIt from '@angular/common/locales/it';
|
|
36
|
+
import ngKo from '@angular/common/locales/ko';
|
|
37
|
+
import ngPl from '@angular/common/locales/pl';
|
|
38
|
+
import ngSl from '@angular/common/locales/sl';
|
|
39
|
+
import ngTr from '@angular/common/locales/tr';
|
|
28
40
|
import ngZh from '@angular/common/locales/zh';
|
|
29
41
|
import ngZhTw from '@angular/common/locales/zh-Hant';
|
|
30
|
-
import { zhCN, zhTW, enUS } from 'date-fns/locale';
|
|
31
|
-
import * as i2 from 'ng-zorro-antd/i18n';
|
|
32
|
-
import { zh_CN, zh_TW, en_US } from 'ng-zorro-antd/i18n';
|
|
33
42
|
import * as i3$1 from '@angular/cdk/platform';
|
|
34
43
|
import * as i4 from '@yelon/util/config';
|
|
35
44
|
import { YunzaiConfigService as YunzaiConfigService$1 } from '@yelon/util/config';
|
|
@@ -76,7 +85,7 @@ class YunzaiClearStorageComponent {
|
|
|
76
85
|
YunzaiClearStorageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiClearStorageComponent, deps: [{ token: i1.NzModalService }, { token: i1$1.NzMessageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
77
86
|
YunzaiClearStorageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiClearStorageComponent, selector: "yunzai-clearstorage", host: { listeners: { "click": "_click()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: `
|
|
78
87
|
<i nz-icon nzType="tool"></i>
|
|
79
|
-
{{ '
|
|
88
|
+
{{ 'storage.clear' | i18n }}
|
|
80
89
|
`, isInline: true, dependencies: [{ kind: "directive", type: i3.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
81
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiClearStorageComponent, decorators: [{
|
|
82
91
|
type: Component,
|
|
@@ -84,7 +93,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
84
93
|
selector: 'yunzai-clearstorage',
|
|
85
94
|
template: `
|
|
86
95
|
<i nz-icon nzType="tool"></i>
|
|
87
|
-
{{ '
|
|
96
|
+
{{ 'storage.clear' | i18n }}
|
|
88
97
|
`,
|
|
89
98
|
host: {
|
|
90
99
|
'[class.d-block]': 'true'
|
|
@@ -112,7 +121,7 @@ class YunzaiFullScreenComponent {
|
|
|
112
121
|
YunzaiFullScreenComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiFullScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
113
122
|
YunzaiFullScreenComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiFullScreenComponent, selector: "yunzai-fullscreen", host: { listeners: { "window:resize": "_resize()", "click": "_click()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: `
|
|
114
123
|
<i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
|
|
115
|
-
{{ (status ? '
|
|
124
|
+
{{ (status ? 'exitFullscreen' : 'fullscreen') | i18n }}
|
|
116
125
|
`, isInline: true, dependencies: [{ kind: "directive", type: i3.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
117
126
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiFullScreenComponent, decorators: [{
|
|
118
127
|
type: Component,
|
|
@@ -120,7 +129,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
120
129
|
selector: 'yunzai-fullscreen',
|
|
121
130
|
template: `
|
|
122
131
|
<i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
|
|
123
|
-
{{ (status ? '
|
|
132
|
+
{{ (status ? 'exitFullscreen' : 'fullscreen') | i18n }}
|
|
124
133
|
`,
|
|
125
134
|
host: {
|
|
126
135
|
'[class.d-block]': 'true'
|
|
@@ -135,8 +144,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
135
144
|
args: ['click']
|
|
136
145
|
}] } });
|
|
137
146
|
|
|
138
|
-
const
|
|
139
|
-
|
|
147
|
+
const BUSINESS_DEFAULT_CONFIG = {
|
|
148
|
+
baseUrl: '/backstage',
|
|
149
|
+
systemCode: 'portal',
|
|
150
|
+
loginForm: null,
|
|
151
|
+
refreshTokenEnabled: true,
|
|
152
|
+
refreshTokenType: 're-request'
|
|
153
|
+
};
|
|
154
|
+
function mergeBisConfig(srv) {
|
|
155
|
+
return srv.merge('bis', BUSINESS_DEFAULT_CONFIG);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
const YUNZAI_LANGS = {
|
|
140
159
|
'zh-CN': {
|
|
141
160
|
text: '简体中文',
|
|
142
161
|
ng: ngZh,
|
|
@@ -160,23 +179,100 @@ const LANGS = {
|
|
|
160
179
|
date: enUS,
|
|
161
180
|
yelon: en_US$1,
|
|
162
181
|
abbr: '🇬🇧'
|
|
182
|
+
},
|
|
183
|
+
'el-GR': {
|
|
184
|
+
text: 'Ελληνικά',
|
|
185
|
+
ng: ngElGr,
|
|
186
|
+
zorro: el_GR,
|
|
187
|
+
date: el,
|
|
188
|
+
yelon: el_GR$1,
|
|
189
|
+
abbr: '🇬🇷'
|
|
190
|
+
},
|
|
191
|
+
'es-ES': {
|
|
192
|
+
text: 'Español',
|
|
193
|
+
ng: ngEsEs,
|
|
194
|
+
zorro: es_ES,
|
|
195
|
+
date: es,
|
|
196
|
+
yelon: es_ES$1,
|
|
197
|
+
abbr: '🇪🇸'
|
|
198
|
+
},
|
|
199
|
+
'fr-FR': {
|
|
200
|
+
text: 'Français',
|
|
201
|
+
ng: ngFr,
|
|
202
|
+
zorro: fr_FR,
|
|
203
|
+
date: fr,
|
|
204
|
+
yelon: fr_FR$1,
|
|
205
|
+
abbr: '🇫🇷'
|
|
206
|
+
},
|
|
207
|
+
'hr-HR': {
|
|
208
|
+
text: 'Hrvatski',
|
|
209
|
+
ng: ngHr,
|
|
210
|
+
zorro: hr_HR,
|
|
211
|
+
date: hr,
|
|
212
|
+
yelon: hr_HR$1,
|
|
213
|
+
abbr: '🇭🇷'
|
|
214
|
+
},
|
|
215
|
+
'it-IT': {
|
|
216
|
+
text: 'Italiano',
|
|
217
|
+
ng: ngIt,
|
|
218
|
+
zorro: it_IT,
|
|
219
|
+
date: it,
|
|
220
|
+
yelon: it_IT$1,
|
|
221
|
+
abbr: '🇮🇹'
|
|
222
|
+
},
|
|
223
|
+
'ko-KR': {
|
|
224
|
+
text: '한국어',
|
|
225
|
+
ng: ngKo,
|
|
226
|
+
zorro: ko_KR,
|
|
227
|
+
date: ko,
|
|
228
|
+
yelon: ko_KR$1,
|
|
229
|
+
abbr: '🇰🇷'
|
|
230
|
+
},
|
|
231
|
+
'pl-PL': {
|
|
232
|
+
text: 'Polski',
|
|
233
|
+
ng: ngPl,
|
|
234
|
+
zorro: pl_PL,
|
|
235
|
+
date: pl,
|
|
236
|
+
yelon: pl_PL$1,
|
|
237
|
+
abbr: '🇵🇱'
|
|
238
|
+
},
|
|
239
|
+
'sl-SI': {
|
|
240
|
+
text: 'Slovenščina',
|
|
241
|
+
ng: ngSl,
|
|
242
|
+
zorro: sl_SI,
|
|
243
|
+
date: sl,
|
|
244
|
+
yelon: sl_SI$1,
|
|
245
|
+
abbr: '🇸🇮'
|
|
246
|
+
},
|
|
247
|
+
'tr-TR': {
|
|
248
|
+
text: 'Türkçe',
|
|
249
|
+
ng: ngTr,
|
|
250
|
+
zorro: tr_TR,
|
|
251
|
+
date: tr,
|
|
252
|
+
yelon: tr_TR$1,
|
|
253
|
+
abbr: '🇹🇷'
|
|
163
254
|
}
|
|
164
255
|
};
|
|
256
|
+
|
|
257
|
+
const DEFAULT = 'zh-CN';
|
|
165
258
|
class YunzaiI18NService extends YunzaiI18nBaseService {
|
|
166
|
-
constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv) {
|
|
259
|
+
constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv, cacheService) {
|
|
167
260
|
super(cogSrv);
|
|
168
261
|
this.http = http;
|
|
169
262
|
this.settings = settings;
|
|
170
263
|
this.nzI18nService = nzI18nService;
|
|
171
264
|
this.yelonLocaleService = yelonLocaleService;
|
|
172
265
|
this.platform = platform;
|
|
266
|
+
this.cacheService = cacheService;
|
|
173
267
|
this._defaultLang = DEFAULT;
|
|
174
|
-
this.
|
|
175
|
-
const item = LANGS[code];
|
|
176
|
-
return { code, text: item.text, abbr: item.abbr };
|
|
177
|
-
});
|
|
268
|
+
this.destroy$ = new Subject();
|
|
178
269
|
const defaultLang = this.getDefaultLang();
|
|
179
|
-
this.
|
|
270
|
+
this.bis = mergeBisConfig(cogSrv);
|
|
271
|
+
this.getLangs()
|
|
272
|
+
.pipe(takeUntil(this.destroy$))
|
|
273
|
+
.subscribe(langs => {
|
|
274
|
+
this._defaultLang = langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
|
|
275
|
+
});
|
|
180
276
|
}
|
|
181
277
|
getDefaultLang() {
|
|
182
278
|
if (!this.platform.isBrowser) {
|
|
@@ -190,35 +286,72 @@ class YunzaiI18NService extends YunzaiI18nBaseService {
|
|
|
190
286
|
return arr.length <= 1 ? res : `${arr[0]}-${arr[1].toUpperCase()}`;
|
|
191
287
|
}
|
|
192
288
|
loadLangData(lang) {
|
|
193
|
-
|
|
289
|
+
const key = `_yz_lang_${lang}`;
|
|
290
|
+
if (this.cacheService.getNone(key)) {
|
|
291
|
+
return of(this.cacheService.get(key));
|
|
292
|
+
}
|
|
293
|
+
else {
|
|
294
|
+
if (ngDevMode) {
|
|
295
|
+
return this.http.get(`assets/tmp/i18n/${lang}.json`);
|
|
296
|
+
}
|
|
297
|
+
else {
|
|
298
|
+
return this.http
|
|
299
|
+
.get(`${this.bis.baseUrl}/i18n/api/v2/language/${lang}?_allow_anonymous`)
|
|
300
|
+
.pipe(catchError(() => this.http.get(`assets/tmp/i18n/${lang}.json`)));
|
|
301
|
+
}
|
|
302
|
+
}
|
|
194
303
|
}
|
|
195
304
|
use(lang, data) {
|
|
196
305
|
if (this._currentLang === lang)
|
|
197
306
|
return;
|
|
307
|
+
const key = `_yz_lang_${lang}`;
|
|
308
|
+
this.cacheService.set(key, data);
|
|
309
|
+
this.cacheService.set(this.cacheDefaultKey, lang);
|
|
198
310
|
this._data = this.flatData(data, []);
|
|
199
|
-
const item =
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
311
|
+
const item = YUNZAI_LANGS[lang];
|
|
312
|
+
if (item) {
|
|
313
|
+
registerLocaleData(item.ng);
|
|
314
|
+
this.nzI18nService.setLocale(item.zorro);
|
|
315
|
+
this.nzI18nService.setDateLocale(item.date);
|
|
316
|
+
this.yelonLocaleService.setLocale(item.yelon);
|
|
317
|
+
this._currentLang = lang;
|
|
318
|
+
this._change$.next(lang);
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
registerLocaleData(ngEn);
|
|
322
|
+
this.nzI18nService.setLocale(en_US);
|
|
323
|
+
this.nzI18nService.setDateLocale(enUS);
|
|
324
|
+
this.yelonLocaleService.setLocale(en_US$1);
|
|
325
|
+
this._currentLang = lang;
|
|
326
|
+
this._change$.next(lang);
|
|
327
|
+
}
|
|
206
328
|
}
|
|
207
329
|
getLangs() {
|
|
208
|
-
|
|
330
|
+
const langs = Object.keys(YUNZAI_LANGS).map(code => {
|
|
331
|
+
const item = YUNZAI_LANGS[code];
|
|
332
|
+
return { code, text: item.text, abbr: item.abbr, image: undefined };
|
|
333
|
+
});
|
|
334
|
+
if (ngDevMode) {
|
|
335
|
+
return of(langs);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
return this.http
|
|
339
|
+
.get(`${this.bis.baseUrl}/i18n/api/v2/language?_allow_anonymous`)
|
|
340
|
+
.pipe(catchError(() => of(langs)));
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
ngOnDestroy() {
|
|
344
|
+
this.destroy$.complete();
|
|
209
345
|
}
|
|
210
346
|
}
|
|
211
|
-
YunzaiI18NService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, deps: [{ token: i1$2._HttpClient }, { token: i1$2.SettingsService }, { token: i2.NzI18nService }, { token: i1$2.YelonLocaleService }, { token: i3$1.Platform }, { token: i4.YunzaiConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
347
|
+
YunzaiI18NService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, deps: [{ token: i1$2._HttpClient }, { token: i1$2.SettingsService }, { token: i2.NzI18nService }, { token: i1$2.YelonLocaleService }, { token: i3$1.Platform }, { token: i4.YunzaiConfigService }, { token: i1$3.CacheService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
212
348
|
YunzaiI18NService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, providedIn: 'root' });
|
|
213
349
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, decorators: [{
|
|
214
350
|
type: Injectable,
|
|
215
351
|
args: [{ providedIn: 'root' }]
|
|
216
|
-
}], ctorParameters: function () { return [{ type: i1$2._HttpClient }, { type: i1$2.SettingsService }, { type: i2.NzI18nService }, { type: i1$2.YelonLocaleService }, { type: i3$1.Platform }, { type: i4.YunzaiConfigService }]; } });
|
|
352
|
+
}], ctorParameters: function () { return [{ type: i1$2._HttpClient }, { type: i1$2.SettingsService }, { type: i2.NzI18nService }, { type: i1$2.YelonLocaleService }, { type: i3$1.Platform }, { type: i4.YunzaiConfigService }, { type: i1$3.CacheService }]; } });
|
|
217
353
|
|
|
218
354
|
class YunzaiI18NComponent {
|
|
219
|
-
get langs() {
|
|
220
|
-
return this.i18n.getLangs();
|
|
221
|
-
}
|
|
222
355
|
get curLangCode() {
|
|
223
356
|
return this.settings.layout.lang;
|
|
224
357
|
}
|
|
@@ -226,8 +359,16 @@ class YunzaiI18NComponent {
|
|
|
226
359
|
this.settings = settings;
|
|
227
360
|
this.i18n = i18n;
|
|
228
361
|
this.doc = doc;
|
|
362
|
+
this.destroy$ = new Subject();
|
|
229
363
|
/** Whether to display language text */
|
|
230
364
|
this.showLangText = true;
|
|
365
|
+
this.langs = [];
|
|
366
|
+
this.i18n
|
|
367
|
+
.getLangs()
|
|
368
|
+
.pipe(takeUntil(this.destroy$))
|
|
369
|
+
.subscribe(langs => {
|
|
370
|
+
this.langs = langs;
|
|
371
|
+
});
|
|
231
372
|
}
|
|
232
373
|
change(lang) {
|
|
233
374
|
const spinEl = this.doc.createElement('div');
|
|
@@ -240,12 +381,15 @@ class YunzaiI18NComponent {
|
|
|
240
381
|
setTimeout(() => this.doc.location.reload());
|
|
241
382
|
});
|
|
242
383
|
}
|
|
384
|
+
ngOnDestroy() {
|
|
385
|
+
this.destroy$.complete();
|
|
386
|
+
}
|
|
243
387
|
}
|
|
244
388
|
YunzaiI18NComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NComponent, deps: [{ token: i1$2.SettingsService }, { token: YUNZAI_I18N_TOKEN }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
245
389
|
YunzaiI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiI18NComponent, selector: "yunzai-i18n", inputs: { showLangText: "showLangText" }, ngImport: i0, template: `
|
|
246
390
|
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
247
391
|
<i nz-icon nzType="global"></i>
|
|
248
|
-
{{ '
|
|
392
|
+
{{ 'lang.nav' | i18n }}
|
|
249
393
|
<i nz-icon nzType="down"></i>
|
|
250
394
|
</div>
|
|
251
395
|
<i
|
|
@@ -264,7 +408,12 @@ YunzaiI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
|
|
|
264
408
|
[nzSelected]="item.code === curLangCode"
|
|
265
409
|
(click)="change(item.code)"
|
|
266
410
|
>
|
|
267
|
-
<
|
|
411
|
+
<template *ngIf="!item.icon">
|
|
412
|
+
<span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
413
|
+
</template>
|
|
414
|
+
<template *ngIf="item.icon">
|
|
415
|
+
<img [src]="'data:image/png;base64,' + item.icon" [alt]="item.abbr" class="pr-xs" />
|
|
416
|
+
</template>
|
|
268
417
|
{{ item.text }}
|
|
269
418
|
</li>
|
|
270
419
|
</ul>
|
|
@@ -280,7 +429,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
280
429
|
template: `
|
|
281
430
|
<div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
|
|
282
431
|
<i nz-icon nzType="global"></i>
|
|
283
|
-
{{ '
|
|
432
|
+
{{ 'lang.nav' | i18n }}
|
|
284
433
|
<i nz-icon nzType="down"></i>
|
|
285
434
|
</div>
|
|
286
435
|
<i
|
|
@@ -299,7 +448,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
299
448
|
[nzSelected]="item.code === curLangCode"
|
|
300
449
|
(click)="change(item.code)"
|
|
301
450
|
>
|
|
302
|
-
<
|
|
451
|
+
<template *ngIf="!item.icon">
|
|
452
|
+
<span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
|
|
453
|
+
</template>
|
|
454
|
+
<template *ngIf="item.icon">
|
|
455
|
+
<img [src]="'data:image/png;base64,' + item.icon" [alt]="item.abbr" class="pr-xs" />
|
|
456
|
+
</template>
|
|
303
457
|
{{ item.text }}
|
|
304
458
|
</li>
|
|
305
459
|
</ul>
|
|
@@ -332,25 +486,25 @@ class YunzaiNotifyComponent {
|
|
|
332
486
|
key: 'msg',
|
|
333
487
|
title: this.y18n.fanyi('notify.message'),
|
|
334
488
|
list: [],
|
|
335
|
-
emptyText: this.y18n.fanyi('notify.message.
|
|
489
|
+
emptyText: this.y18n.fanyi('notify.message.empty'),
|
|
336
490
|
emptyImage: './assets/tmp/img/message.svg',
|
|
337
|
-
clearText: this.y18n.fanyi('notify.message.
|
|
491
|
+
clearText: this.y18n.fanyi('notify.message.clear')
|
|
338
492
|
},
|
|
339
493
|
{
|
|
340
494
|
key: 'todo',
|
|
341
495
|
title: this.y18n.fanyi('notify.todo'),
|
|
342
496
|
list: [],
|
|
343
|
-
emptyText: this.y18n.fanyi('notify.todo.
|
|
497
|
+
emptyText: this.y18n.fanyi('notify.todo.empty'),
|
|
344
498
|
emptyImage: './assets/tmp/img/todo.svg',
|
|
345
|
-
clearText: this.y18n.fanyi('notify.todo.
|
|
499
|
+
clearText: this.y18n.fanyi('notify.todo.clear')
|
|
346
500
|
},
|
|
347
501
|
{
|
|
348
502
|
key: 'notice',
|
|
349
503
|
title: this.y18n.fanyi('notify.notice'),
|
|
350
504
|
list: [],
|
|
351
|
-
emptyText: this.y18n.fanyi('notify.notice.
|
|
505
|
+
emptyText: this.y18n.fanyi('notify.notice.empty'),
|
|
352
506
|
emptyImage: './assets/tmp/img/notice.svg',
|
|
353
|
-
clearText: this.y18n.fanyi('notify.notice.
|
|
507
|
+
clearText: this.y18n.fanyi('notify.notice.clear')
|
|
354
508
|
}
|
|
355
509
|
];
|
|
356
510
|
this.loading = false;
|
|
@@ -659,17 +813,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
659
813
|
type: Input
|
|
660
814
|
}] } });
|
|
661
815
|
|
|
662
|
-
const BUSINESS_DEFAULT_CONFIG = {
|
|
663
|
-
baseUrl: '/backstage',
|
|
664
|
-
systemCode: 'portal',
|
|
665
|
-
loginForm: null,
|
|
666
|
-
refreshTokenEnabled: true,
|
|
667
|
-
refreshTokenType: 're-request'
|
|
668
|
-
};
|
|
669
|
-
function mergeBisConfig(srv) {
|
|
670
|
-
return srv.merge('bis', BUSINESS_DEFAULT_CONFIG);
|
|
671
|
-
}
|
|
672
|
-
|
|
673
816
|
class YunzaiUserComponent {
|
|
674
817
|
constructor(injector, msg, tokenService,
|
|
675
818
|
// @ts-ignore
|
|
@@ -707,7 +850,7 @@ class YunzaiUserComponent {
|
|
|
707
850
|
}
|
|
708
851
|
}
|
|
709
852
|
}
|
|
710
|
-
YunzaiUserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiUserComponent, deps: [{ token: i0.Injector }, { token: i1$1.NzMessageService }, { token: YA_SERVICE_TOKEN }, { token: i1$
|
|
853
|
+
YunzaiUserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiUserComponent, deps: [{ token: i0.Injector }, { token: i1$1.NzMessageService }, { token: YA_SERVICE_TOKEN }, { token: i1$4.YunzaiConfigService }, { token: i1$3.CacheService }], target: i0.ɵɵFactoryTarget.Component });
|
|
711
854
|
YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiUserComponent, selector: "yunzai-user", ngImport: i0, template: `
|
|
712
855
|
<div
|
|
713
856
|
class="yunzai-default__nav-item d-flex align-items-center px-sm"
|
|
@@ -729,7 +872,7 @@ YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
|
|
|
729
872
|
<li nz-menu-divider></li>
|
|
730
873
|
<div nz-menu-item (click)="logout()">
|
|
731
874
|
<i nz-icon nzType="logout" class="mr-sm"></i>
|
|
732
|
-
{{ '
|
|
875
|
+
{{ 'logout' | i18n }}
|
|
733
876
|
</div>
|
|
734
877
|
</div>
|
|
735
878
|
</nz-dropdown-menu>
|
|
@@ -759,7 +902,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
759
902
|
<li nz-menu-divider></li>
|
|
760
903
|
<div nz-menu-item (click)="logout()">
|
|
761
904
|
<i nz-icon nzType="logout" class="mr-sm"></i>
|
|
762
|
-
{{ '
|
|
905
|
+
{{ 'logout' | i18n }}
|
|
763
906
|
</div>
|
|
764
907
|
</div>
|
|
765
908
|
</nz-dropdown-menu>
|
|
@@ -770,26 +913,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
770
913
|
return [{ type: i0.Injector }, { type: i1$1.NzMessageService }, { type: undefined, decorators: [{
|
|
771
914
|
type: Inject,
|
|
772
915
|
args: [YA_SERVICE_TOKEN]
|
|
773
|
-
}] }, { type: i1$
|
|
916
|
+
}] }, { type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }];
|
|
774
917
|
} });
|
|
775
918
|
|
|
776
|
-
var TopicType;
|
|
777
|
-
(function (TopicType) {
|
|
778
|
-
TopicType[TopicType["FULL"] = 0] = "FULL";
|
|
779
|
-
TopicType[TopicType["OWN"] = 1] = "OWN";
|
|
780
|
-
TopicType[TopicType["EVERY"] = 2] = "EVERY";
|
|
781
|
-
})(TopicType || (TopicType = {}));
|
|
782
|
-
|
|
783
919
|
class LayoutNavApplicationComponent {
|
|
784
920
|
constructor(cacheService, i18n, http, inject) {
|
|
785
921
|
this.cacheService = cacheService;
|
|
786
922
|
this.i18n = i18n;
|
|
787
923
|
this.http = http;
|
|
788
924
|
this.inject = inject;
|
|
789
|
-
this.TopicType = TopicType;
|
|
790
925
|
this.state = {
|
|
791
926
|
active: false,
|
|
792
|
-
type:
|
|
927
|
+
type: 'all',
|
|
793
928
|
topic: undefined,
|
|
794
929
|
topics: [],
|
|
795
930
|
list: [],
|
|
@@ -798,18 +933,32 @@ class LayoutNavApplicationComponent {
|
|
|
798
933
|
};
|
|
799
934
|
}
|
|
800
935
|
ngOnInit() {
|
|
801
|
-
this.
|
|
936
|
+
this.fetchAllTopic();
|
|
937
|
+
this.attachNav('all');
|
|
802
938
|
}
|
|
803
|
-
|
|
804
|
-
this.state.
|
|
805
|
-
|
|
939
|
+
fetchAllTopic() {
|
|
940
|
+
this.state.topics = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
941
|
+
}
|
|
942
|
+
attachNav(type, topic) {
|
|
806
943
|
this.state.type = type;
|
|
944
|
+
this.clearSearch();
|
|
945
|
+
if (type === 'all') {
|
|
946
|
+
this.displayAllNav();
|
|
947
|
+
}
|
|
948
|
+
if (type === 'mine') {
|
|
949
|
+
this.displayMineNav();
|
|
950
|
+
}
|
|
951
|
+
if (type === 'other' && topic) {
|
|
952
|
+
this.displayOtherNav(topic);
|
|
953
|
+
}
|
|
807
954
|
}
|
|
808
|
-
|
|
809
|
-
this.
|
|
955
|
+
clearSearch() {
|
|
956
|
+
this.state.search = null;
|
|
957
|
+
}
|
|
958
|
+
displayAllNav() {
|
|
959
|
+
this.state.list = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
810
960
|
}
|
|
811
|
-
|
|
812
|
-
this.initTopic(TopicType.OWN);
|
|
961
|
+
displayMineNav() {
|
|
813
962
|
const temp = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
814
963
|
this.state.list = temp
|
|
815
964
|
.filter((topic) => {
|
|
@@ -822,11 +971,10 @@ class LayoutNavApplicationComponent {
|
|
|
822
971
|
return topic.children.length > 0;
|
|
823
972
|
});
|
|
824
973
|
}
|
|
825
|
-
|
|
826
|
-
this.
|
|
827
|
-
this.state.topic = e;
|
|
974
|
+
displayOtherNav(topic) {
|
|
975
|
+
this.state.topic = topic;
|
|
828
976
|
const temp = this.cacheService.get('_yz_header', { mode: 'none' });
|
|
829
|
-
this.state.list =
|
|
977
|
+
this.state.list = temp.filter(t => t.key === topic.key)[0].children;
|
|
830
978
|
}
|
|
831
979
|
diffChange(flag) {
|
|
832
980
|
if (flag) {
|
|
@@ -888,9 +1036,9 @@ class LayoutNavApplicationComponent {
|
|
|
888
1036
|
this.state.destroy$.complete();
|
|
889
1037
|
}
|
|
890
1038
|
}
|
|
891
|
-
LayoutNavApplicationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavApplicationComponent, deps: [{ token: i1$
|
|
1039
|
+
LayoutNavApplicationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavApplicationComponent, deps: [{ token: i1$3.CacheService }, { token: YunzaiI18NService }, { token: i1$2._HttpClient }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
892
1040
|
LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavApplicationComponent, selector: "layout-nav-application", ngImport: i0, template: `
|
|
893
|
-
<!--
|
|
1041
|
+
<!-- search start-->
|
|
894
1042
|
<ng-template #search>
|
|
895
1043
|
<div nz-row class="yz-application-list-search">
|
|
896
1044
|
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
@@ -907,45 +1055,50 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
|
|
|
907
1055
|
</nz-input-group>
|
|
908
1056
|
</div>
|
|
909
1057
|
</ng-template>
|
|
1058
|
+
<!-- search end -->
|
|
1059
|
+
|
|
1060
|
+
<!-- right menu start -->
|
|
910
1061
|
<ng-template #ld>
|
|
911
1062
|
<div class="yz-application-list">
|
|
912
1063
|
<ul>
|
|
913
|
-
<li *ngFor="let
|
|
914
|
-
<h5>{{
|
|
915
|
-
<a href="javascript:;" *ngFor="let
|
|
1064
|
+
<li *ngFor="let topic of state.list">
|
|
1065
|
+
<h5>{{ topic.name | i18n }}</h5>
|
|
1066
|
+
<a href="javascript:;" *ngFor="let nav of topic.children" (click)="open(nav)">{{ nav.name | i18n }}</a>
|
|
916
1067
|
</li>
|
|
917
1068
|
</ul>
|
|
918
1069
|
</div>
|
|
919
1070
|
</ng-template>
|
|
920
|
-
<!--
|
|
1071
|
+
<!-- right menu end -->
|
|
921
1072
|
|
|
922
1073
|
<!-- button start-->
|
|
923
|
-
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ '
|
|
1074
|
+
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
|
|
924
1075
|
<!-- button end-->
|
|
925
1076
|
|
|
926
1077
|
<!-- header start-->
|
|
927
1078
|
<div class="yz-application" nz-row *ngIf="state.active">
|
|
928
1079
|
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
929
|
-
<div class="yz-application-text" (click)="
|
|
930
|
-
<div class="yz-application-text" (click)="
|
|
931
|
-
<div class="yz-application-text" *ngFor="let
|
|
1080
|
+
<div class="yz-application-text" (click)="attachNav('all')">{{ 'mode.nav.all' | i18n }}</div>
|
|
1081
|
+
<div class="yz-application-text" (click)="attachNav('mine')">{{ 'mode.nav.mine' | i18n }}</div>
|
|
1082
|
+
<div class="yz-application-text" *ngFor="let nav of state.topics" (click)="attachNav('other', nav)">{{
|
|
1083
|
+
nav.name | i18n
|
|
1084
|
+
}}</div>
|
|
932
1085
|
</div>
|
|
933
1086
|
<div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
|
|
934
|
-
<div *
|
|
1087
|
+
<div *ngIf="state.type === 'all'">
|
|
935
1088
|
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
936
1089
|
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
937
1090
|
</div>
|
|
938
|
-
<div *
|
|
1091
|
+
<div *ngIf="state.type === 'mine'">
|
|
939
1092
|
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
940
1093
|
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
941
1094
|
</div>
|
|
942
|
-
<div *
|
|
1095
|
+
<div *ngIf="state.type === 'other'" class="yz-application-list">
|
|
943
1096
|
<div class="yz-application-list-item">
|
|
944
1097
|
<ul>
|
|
945
|
-
<li *ngFor="let
|
|
1098
|
+
<li *ngFor="let nav of state.list" (click)="open(nav)">
|
|
946
1099
|
<a href="javascript:;">
|
|
947
|
-
<h4>{{
|
|
948
|
-
<p>{{
|
|
1100
|
+
<h4>{{ nav.name | i18n }}</h4>
|
|
1101
|
+
<p>{{ nav.intro | i18n }}</p>
|
|
949
1102
|
</a>
|
|
950
1103
|
</li>
|
|
951
1104
|
</ul>
|
|
@@ -954,13 +1107,13 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
|
|
|
954
1107
|
</div>
|
|
955
1108
|
</div>
|
|
956
1109
|
<!-- header end-->
|
|
957
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type:
|
|
1110
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i7$1.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i7$1.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i8.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "directive", type: i9$1.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i9$1.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i9$1.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }] });
|
|
958
1111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavApplicationComponent, decorators: [{
|
|
959
1112
|
type: Component,
|
|
960
1113
|
args: [{
|
|
961
1114
|
selector: `layout-nav-application`,
|
|
962
1115
|
template: `
|
|
963
|
-
<!--
|
|
1116
|
+
<!-- search start-->
|
|
964
1117
|
<ng-template #search>
|
|
965
1118
|
<div nz-row class="yz-application-list-search">
|
|
966
1119
|
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
@@ -977,45 +1130,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
977
1130
|
</nz-input-group>
|
|
978
1131
|
</div>
|
|
979
1132
|
</ng-template>
|
|
1133
|
+
<!-- search end -->
|
|
1134
|
+
|
|
1135
|
+
<!-- right menu start -->
|
|
980
1136
|
<ng-template #ld>
|
|
981
1137
|
<div class="yz-application-list">
|
|
982
1138
|
<ul>
|
|
983
|
-
<li *ngFor="let
|
|
984
|
-
<h5>{{
|
|
985
|
-
<a href="javascript:;" *ngFor="let
|
|
1139
|
+
<li *ngFor="let topic of state.list">
|
|
1140
|
+
<h5>{{ topic.name | i18n }}</h5>
|
|
1141
|
+
<a href="javascript:;" *ngFor="let nav of topic.children" (click)="open(nav)">{{ nav.name | i18n }}</a>
|
|
986
1142
|
</li>
|
|
987
1143
|
</ul>
|
|
988
1144
|
</div>
|
|
989
1145
|
</ng-template>
|
|
990
|
-
<!--
|
|
1146
|
+
<!-- right menu end -->
|
|
991
1147
|
|
|
992
1148
|
<!-- button start-->
|
|
993
|
-
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ '
|
|
1149
|
+
<div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
|
|
994
1150
|
<!-- button end-->
|
|
995
1151
|
|
|
996
1152
|
<!-- header start-->
|
|
997
1153
|
<div class="yz-application" nz-row *ngIf="state.active">
|
|
998
1154
|
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
999
|
-
<div class="yz-application-text" (click)="
|
|
1000
|
-
<div class="yz-application-text" (click)="
|
|
1001
|
-
<div class="yz-application-text" *ngFor="let
|
|
1155
|
+
<div class="yz-application-text" (click)="attachNav('all')">{{ 'mode.nav.all' | i18n }}</div>
|
|
1156
|
+
<div class="yz-application-text" (click)="attachNav('mine')">{{ 'mode.nav.mine' | i18n }}</div>
|
|
1157
|
+
<div class="yz-application-text" *ngFor="let nav of state.topics" (click)="attachNav('other', nav)">{{
|
|
1158
|
+
nav.name | i18n
|
|
1159
|
+
}}</div>
|
|
1002
1160
|
</div>
|
|
1003
1161
|
<div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
|
|
1004
|
-
<div *
|
|
1162
|
+
<div *ngIf="state.type === 'all'">
|
|
1005
1163
|
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
1006
1164
|
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
1007
1165
|
</div>
|
|
1008
|
-
<div *
|
|
1166
|
+
<div *ngIf="state.type === 'mine'">
|
|
1009
1167
|
<ng-template [ngTemplateOutlet]="search"></ng-template>
|
|
1010
1168
|
<ng-template [ngTemplateOutlet]="ld"></ng-template>
|
|
1011
1169
|
</div>
|
|
1012
|
-
<div *
|
|
1170
|
+
<div *ngIf="state.type === 'other'" class="yz-application-list">
|
|
1013
1171
|
<div class="yz-application-list-item">
|
|
1014
1172
|
<ul>
|
|
1015
|
-
<li *ngFor="let
|
|
1173
|
+
<li *ngFor="let nav of state.list" (click)="open(nav)">
|
|
1016
1174
|
<a href="javascript:;">
|
|
1017
|
-
<h4>{{
|
|
1018
|
-
<p>{{
|
|
1175
|
+
<h4>{{ nav.name | i18n }}</h4>
|
|
1176
|
+
<p>{{ nav.intro | i18n }}</p>
|
|
1019
1177
|
</a>
|
|
1020
1178
|
</li>
|
|
1021
1179
|
</ul>
|
|
@@ -1026,7 +1184,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
1026
1184
|
<!-- header end-->
|
|
1027
1185
|
`
|
|
1028
1186
|
}]
|
|
1029
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
1187
|
+
}], ctorParameters: function () { return [{ type: i1$3.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
|
|
1030
1188
|
|
|
1031
1189
|
class LayoutNavGroupComponent {
|
|
1032
1190
|
constructor(inject, cacheService, http) {
|
|
@@ -1070,7 +1228,7 @@ class LayoutNavGroupComponent {
|
|
|
1070
1228
|
this.state.destroy$.complete();
|
|
1071
1229
|
}
|
|
1072
1230
|
}
|
|
1073
|
-
LayoutNavGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavGroupComponent, deps: [{ token: i0.Injector }, { token: i1$
|
|
1231
|
+
LayoutNavGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavGroupComponent, deps: [{ token: i0.Injector }, { token: i1$3.CacheService }, { token: i1$2._HttpClient }], target: i0.ɵɵFactoryTarget.Component });
|
|
1074
1232
|
LayoutNavGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavGroupComponent, selector: "layout-nav-group", ngImport: i0, template: `
|
|
1075
1233
|
<div class="yz-application-group">
|
|
1076
1234
|
<nz-tabset>
|
|
@@ -1134,7 +1292,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
1134
1292
|
</div>
|
|
1135
1293
|
`
|
|
1136
1294
|
}]
|
|
1137
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$
|
|
1295
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$3.CacheService }, { type: i1$2._HttpClient }]; } });
|
|
1138
1296
|
|
|
1139
1297
|
class LayoutNavTileComponent {
|
|
1140
1298
|
constructor() { }
|
|
@@ -1199,12 +1357,27 @@ class YunzaiLayoutBasicComponent {
|
|
|
1199
1357
|
}
|
|
1200
1358
|
ngOnInit() {
|
|
1201
1359
|
this.initLogo();
|
|
1360
|
+
this.initFavicon();
|
|
1202
1361
|
this.initNavType();
|
|
1203
1362
|
this.initAside();
|
|
1204
1363
|
this.addLayoutDisplayListener();
|
|
1205
1364
|
this.stompService.listen();
|
|
1206
1365
|
this.toIndex();
|
|
1207
1366
|
}
|
|
1367
|
+
initFavicon() {
|
|
1368
|
+
console.log('init favicon');
|
|
1369
|
+
const projectInfo = this.cacheService.get('_yz_project_info', { mode: 'none' });
|
|
1370
|
+
if (projectInfo.faviconUrl) {
|
|
1371
|
+
hasFavicon(projectInfo.faviconUrl).then((has) => {
|
|
1372
|
+
if (has) {
|
|
1373
|
+
setFavicon(projectInfo.faviconUrl);
|
|
1374
|
+
}
|
|
1375
|
+
else {
|
|
1376
|
+
setFavicon('./assets/favicon.ico');
|
|
1377
|
+
}
|
|
1378
|
+
});
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1208
1381
|
initAside() {
|
|
1209
1382
|
const aside = this.cacheService.get('_yz_current', { mode: 'none' });
|
|
1210
1383
|
this.state.aside = Object.assign({}, aside);
|
|
@@ -1256,7 +1429,7 @@ class YunzaiLayoutBasicComponent {
|
|
|
1256
1429
|
this.state.destroy$.complete();
|
|
1257
1430
|
}
|
|
1258
1431
|
}
|
|
1259
|
-
YunzaiLayoutBasicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiLayoutBasicComponent, deps: [{ token: i1$5.LayoutDisplayService }, { token: i1$
|
|
1432
|
+
YunzaiLayoutBasicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiLayoutBasicComponent, deps: [{ token: i1$5.LayoutDisplayService }, { token: i1$3.CacheService }, { token: i3$3.StompService }, { token: WINDOW }], target: i0.ɵɵFactoryTarget.Component });
|
|
1260
1433
|
YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiLayoutBasicComponent, selector: "yz-layout-basic", ngImport: i0, template: `<layout-default
|
|
1261
1434
|
[options]="options"
|
|
1262
1435
|
[asideUser]="asideUserTpl"
|
|
@@ -1294,20 +1467,20 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
1294
1467
|
<nz-dropdown-menu #settingsMenu="nzDropdownMenu">
|
|
1295
1468
|
<div nz-menu style="width: 200px;">
|
|
1296
1469
|
<div nz-menu-item>
|
|
1297
|
-
{{ '
|
|
1470
|
+
{{ 'mode.nav' | i18n }}
|
|
1298
1471
|
</div>
|
|
1299
1472
|
|
|
1300
1473
|
<div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
|
|
1301
1474
|
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
1302
|
-
{{ '
|
|
1475
|
+
{{ 'mode.nav.application' | i18n }}
|
|
1303
1476
|
</div>
|
|
1304
1477
|
<div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
|
|
1305
1478
|
<i nz-icon nzType="group" class="mr-sm"></i>
|
|
1306
|
-
{{ '
|
|
1479
|
+
{{ 'mode.nav.group' | i18n }}
|
|
1307
1480
|
</div>
|
|
1308
1481
|
<div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
|
|
1309
1482
|
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
1310
|
-
{{ '
|
|
1483
|
+
{{ 'mode.nav.tile' | i18n }}
|
|
1311
1484
|
</div>
|
|
1312
1485
|
<div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
|
|
1313
1486
|
<div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
|
|
@@ -1324,13 +1497,13 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
1324
1497
|
<div nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu" class="yunzai-default__aside-user">
|
|
1325
1498
|
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon"></nz-avatar>
|
|
1326
1499
|
<div class="yunzai-default__aside-user-info">
|
|
1327
|
-
<strong>{{ aside.name }}</strong>
|
|
1328
|
-
<p class="mb0">{{ aside.intro }}</p>
|
|
1500
|
+
<strong>{{ aside.name | i18n }}</strong>
|
|
1501
|
+
<p class="mb0">{{ aside.intro | i18n }}</p>
|
|
1329
1502
|
</div>
|
|
1330
1503
|
</div>
|
|
1331
1504
|
<nz-dropdown-menu #userMenu="nzDropdownMenu">
|
|
1332
1505
|
<ul nz-menu>
|
|
1333
|
-
<li nz-menu-item routerLink="/">{{ '
|
|
1506
|
+
<li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
|
|
1334
1507
|
</ul>
|
|
1335
1508
|
</nz-dropdown-menu>
|
|
1336
1509
|
</ng-template>
|
|
@@ -1382,20 +1555,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
1382
1555
|
<nz-dropdown-menu #settingsMenu="nzDropdownMenu">
|
|
1383
1556
|
<div nz-menu style="width: 200px;">
|
|
1384
1557
|
<div nz-menu-item>
|
|
1385
|
-
{{ '
|
|
1558
|
+
{{ 'mode.nav' | i18n }}
|
|
1386
1559
|
</div>
|
|
1387
1560
|
|
|
1388
1561
|
<div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
|
|
1389
1562
|
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
1390
|
-
{{ '
|
|
1563
|
+
{{ 'mode.nav.application' | i18n }}
|
|
1391
1564
|
</div>
|
|
1392
1565
|
<div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
|
|
1393
1566
|
<i nz-icon nzType="group" class="mr-sm"></i>
|
|
1394
|
-
{{ '
|
|
1567
|
+
{{ 'mode.nav.group' | i18n }}
|
|
1395
1568
|
</div>
|
|
1396
1569
|
<div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
|
|
1397
1570
|
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
1398
|
-
{{ '
|
|
1571
|
+
{{ 'mode.nav.tile' | i18n }}
|
|
1399
1572
|
</div>
|
|
1400
1573
|
<div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
|
|
1401
1574
|
<div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
|
|
@@ -1412,13 +1585,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
1412
1585
|
<div nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu" class="yunzai-default__aside-user">
|
|
1413
1586
|
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon"></nz-avatar>
|
|
1414
1587
|
<div class="yunzai-default__aside-user-info">
|
|
1415
|
-
<strong>{{ aside.name }}</strong>
|
|
1416
|
-
<p class="mb0">{{ aside.intro }}</p>
|
|
1588
|
+
<strong>{{ aside.name | i18n }}</strong>
|
|
1589
|
+
<p class="mb0">{{ aside.intro | i18n }}</p>
|
|
1417
1590
|
</div>
|
|
1418
1591
|
</div>
|
|
1419
1592
|
<nz-dropdown-menu #userMenu="nzDropdownMenu">
|
|
1420
1593
|
<ul nz-menu>
|
|
1421
|
-
<li nz-menu-item routerLink="/">{{ '
|
|
1594
|
+
<li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
|
|
1422
1595
|
</ul>
|
|
1423
1596
|
</nz-dropdown-menu>
|
|
1424
1597
|
</ng-template>
|
|
@@ -1431,7 +1604,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
1431
1604
|
</ng-template> `
|
|
1432
1605
|
}]
|
|
1433
1606
|
}], ctorParameters: function () {
|
|
1434
|
-
return [{ type: i1$5.LayoutDisplayService }, { type: i1$
|
|
1607
|
+
return [{ type: i1$5.LayoutDisplayService }, { type: i1$3.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
|
|
1435
1608
|
type: Inject,
|
|
1436
1609
|
args: [WINDOW]
|
|
1437
1610
|
}] }];
|
|
@@ -1528,14 +1701,14 @@ class ActGuard {
|
|
|
1528
1701
|
});
|
|
1529
1702
|
}
|
|
1530
1703
|
}
|
|
1531
|
-
ActGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, deps: [{ token: i1$
|
|
1704
|
+
ActGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, deps: [{ token: i1$4.YunzaiConfigService }, { token: i1$3.CacheService }, { token: i1$4.PathToRegexpService }, { token: i5$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1532
1705
|
ActGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, providedIn: 'root' });
|
|
1533
1706
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, decorators: [{
|
|
1534
1707
|
type: Injectable,
|
|
1535
1708
|
args: [{
|
|
1536
1709
|
providedIn: 'root'
|
|
1537
1710
|
}]
|
|
1538
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
1711
|
+
}], ctorParameters: function () { return [{ type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }, { type: i1$4.PathToRegexpService }, { type: i5$1.Router }]; } });
|
|
1539
1712
|
|
|
1540
1713
|
class YunzaiAuthService {
|
|
1541
1714
|
constructor(injector) {
|
|
@@ -1859,6 +2032,8 @@ class YunzaiDefaultInterceptor {
|
|
|
1859
2032
|
if (url.includes('.json') && url.includes('assets')) {
|
|
1860
2033
|
url = req.url;
|
|
1861
2034
|
}
|
|
2035
|
+
if (url.includes('i18n'))
|
|
2036
|
+
return next.handle(req);
|
|
1862
2037
|
// 加入语言头
|
|
1863
2038
|
const newReq = req.clone({ url, setHeaders: this.getAdditionalHeaders(req.headers) });
|
|
1864
2039
|
return next.handle(newReq).pipe(mergeMap(ev => {
|
|
@@ -2754,7 +2929,9 @@ class YunzaiStartupService {
|
|
|
2754
2929
|
}
|
|
2755
2930
|
load() {
|
|
2756
2931
|
log$1('startup.service: ', 'load');
|
|
2757
|
-
|
|
2932
|
+
let defaultLang = this.cacheService.getNone(this.i18n.cacheDefaultKey);
|
|
2933
|
+
if (!defaultLang)
|
|
2934
|
+
defaultLang = this.i18n.defaultLang;
|
|
2758
2935
|
return this.i18n.loadLangData(defaultLang).pipe(mergeMap(langData => {
|
|
2759
2936
|
log$1('startup.service: ', 'set i18n, defaultLang->', defaultLang, ' langData->', langData);
|
|
2760
2937
|
this.i18n.use(defaultLang, langData);
|
|
@@ -2822,7 +2999,7 @@ class YunzaiStartupService {
|
|
|
2822
2999
|
}
|
|
2823
3000
|
}
|
|
2824
3001
|
}
|
|
2825
|
-
YunzaiStartupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, deps: [{ token: i8.NzIconService }, { token: i1$2.MenuService }, { token: YUNZAI_I18N_TOKEN }, { token: WINDOW }, { token: i1$2.SettingsService }, { token: i3$4.ACLService }, { token: i1$2.TitleService }, { token: YunzaiAuthService }, { token: i1$
|
|
3002
|
+
YunzaiStartupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, deps: [{ token: i8.NzIconService }, { token: i1$2.MenuService }, { token: YUNZAI_I18N_TOKEN }, { token: WINDOW }, { token: i1$2.SettingsService }, { token: i3$4.ACLService }, { token: i1$2.TitleService }, { token: YunzaiAuthService }, { token: i1$3.CacheService }, { token: i1$4.YunzaiConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2826
3003
|
YunzaiStartupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService });
|
|
2827
3004
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, decorators: [{
|
|
2828
3005
|
type: Injectable
|
|
@@ -2833,7 +3010,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
|
2833
3010
|
}] }, { type: undefined, decorators: [{
|
|
2834
3011
|
type: Inject,
|
|
2835
3012
|
args: [WINDOW]
|
|
2836
|
-
}] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$
|
|
3013
|
+
}] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$3.CacheService }, { type: i1$4.YunzaiConfigService }];
|
|
2837
3014
|
} });
|
|
2838
3015
|
function mapYzSideToYelonMenu(menus) {
|
|
2839
3016
|
menus.forEach(menu => {
|
|
@@ -2883,5 +3060,5 @@ const YUNZAI_APPINIT_PROVIDES = [
|
|
|
2883
3060
|
* Generated bundle index. Do not edit.
|
|
2884
3061
|
*/
|
|
2885
3062
|
|
|
2886
|
-
export { ActGuard, BUSINESS_DEFAULT_CONFIG, LayoutNavApplicationComponent, LayoutNavGroupComponent, LayoutNavTileComponent, NavType,
|
|
3063
|
+
export { ActGuard, BUSINESS_DEFAULT_CONFIG, LayoutNavApplicationComponent, LayoutNavGroupComponent, LayoutNavTileComponent, NavType, YUNZAI_APPINIT_PROVIDES, YUNZAI_LANGS, YUNZAI_APPINIT_PROVIDES as YZ_APPINIT_PROVIDES, YunzaiAuthService, YunzaiClearStorageComponent, YunzaiDefaultInterceptor, YunzaiFullScreenComponent, YunzaiI18NComponent, YunzaiI18NService, YunzaiLayoutBasicComponent, YunzaiLayoutModule, YunzaiNotifyComponent, YunzaiStartupService, YunzaiStartupServiceFactory, YunzaiThemBtnComponent, YunzaiUserComponent, YunzaiAuthService as YzAuthService, YunzaiDefaultInterceptor as YzDefaultInterceptor, YunzaiI18NService as YzI18NService, YunzaiLayoutBasicComponent as YzLayoutBasicComponent, YunzaiStartupService as YzStartupService, YunzaiStartupServiceFactory as YzStartupServiceFactory, generateAbility, mapYzSideToYelonMenu, mergeBisConfig };
|
|
2887
3064
|
//# sourceMappingURL=layout.mjs.map
|