@yelon/bis 15.0.0-beta.7 → 15.1.0-077d885e

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.
@@ -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 { forkJoin, map, Subject, takeUntil, of, mergeMap, mergeAll, BehaviorSubject, throwError, filter, take, switchMap, catchError } from 'rxjs';
4
- import * as i1$3 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
5
  import { WINDOW, log as log$1, deepCopy, YunzaiConfigService } from '@yelon/util';
6
6
  import * as i1$5 from '@yelon/theme/layout-default';
7
- import * as i1$4 from '@yelon/cache';
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
- {{ 'menu.clear.local.storage' | i18n }}
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
- {{ 'menu.clear.local.storage' | i18n }}
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 ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
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 ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
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 DEFAULT = 'zh-CN';
139
- const LANGS = {
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._langs = Object.keys(LANGS).map(code => {
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._defaultLang = this._langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
270
+ this.getLangs()
271
+ .pipe(takeUntil(this.destroy$))
272
+ .subscribe(langs => {
273
+ this._defaultLang = langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
274
+ });
275
+ this.bis = mergeBisConfig(cogSrv);
180
276
  }
181
277
  getDefaultLang() {
182
278
  if (!this.platform.isBrowser) {
@@ -190,35 +286,70 @@ class YunzaiI18NService extends YunzaiI18nBaseService {
190
286
  return arr.length <= 1 ? res : `${arr[0]}-${arr[1].toUpperCase()}`;
191
287
  }
192
288
  loadLangData(lang) {
193
- return this.http.get(`assets/tmp/i18n/${lang}.json`);
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/${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 = LANGS[lang];
200
- registerLocaleData(item.ng);
201
- this.nzI18nService.setLocale(item.zorro);
202
- this.nzI18nService.setDateLocale(item.date);
203
- this.yelonLocaleService.setLocale(item.yelon);
204
- this._currentLang = lang;
205
- this._change$.next(lang);
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
- return this._langs;
330
+ const langs = Object.keys(YUNZAI_LANGS).map(code => {
331
+ const item = YUNZAI_LANGS[code];
332
+ return { code, text: item.text, abbr: item.abbr, icon: undefined };
333
+ });
334
+ if (ngDevMode) {
335
+ return of(langs);
336
+ }
337
+ else {
338
+ return this.http.get(`${this.bis.baseUrl}/i18n/api/v2/list?_allow_anonymous`).pipe(catchError(() => of(langs)));
339
+ }
340
+ }
341
+ ngOnDestroy() {
342
+ this.destroy$.complete();
209
343
  }
210
344
  }
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 });
345
+ 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
346
  YunzaiI18NService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, providedIn: 'root' });
213
347
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, decorators: [{
214
348
  type: Injectable,
215
349
  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 }]; } });
350
+ }], 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
351
 
218
352
  class YunzaiI18NComponent {
219
- get langs() {
220
- return this.i18n.getLangs();
221
- }
222
353
  get curLangCode() {
223
354
  return this.settings.layout.lang;
224
355
  }
@@ -226,8 +357,16 @@ class YunzaiI18NComponent {
226
357
  this.settings = settings;
227
358
  this.i18n = i18n;
228
359
  this.doc = doc;
360
+ this.destroy$ = new Subject();
229
361
  /** Whether to display language text */
230
362
  this.showLangText = true;
363
+ this.langs = [];
364
+ this.i18n
365
+ .getLangs()
366
+ .pipe(takeUntil(this.destroy$))
367
+ .subscribe(langs => {
368
+ this.langs = langs;
369
+ });
231
370
  }
232
371
  change(lang) {
233
372
  const spinEl = this.doc.createElement('div');
@@ -240,12 +379,15 @@ class YunzaiI18NComponent {
240
379
  setTimeout(() => this.doc.location.reload());
241
380
  });
242
381
  }
382
+ ngOnDestroy() {
383
+ this.destroy$.complete();
384
+ }
243
385
  }
244
386
  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
387
  YunzaiI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiI18NComponent, selector: "yunzai-i18n", inputs: { showLangText: "showLangText" }, ngImport: i0, template: `
246
388
  <div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
247
389
  <i nz-icon nzType="global"></i>
248
- {{ 'menu.lang' | i18n }}
390
+ {{ 'lang.nav' | i18n }}
249
391
  <i nz-icon nzType="down"></i>
250
392
  </div>
251
393
  <i
@@ -264,7 +406,12 @@ YunzaiI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
264
406
  [nzSelected]="item.code === curLangCode"
265
407
  (click)="change(item.code)"
266
408
  >
267
- <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
409
+ <template *ngIf="!item.icon">
410
+ <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
411
+ </template>
412
+ <template *ngIf="item.icon">
413
+ <img [src]="'data:image/png;base64,' + item.icon" [alt]="item.abbr" class="pr-xs" />
414
+ </template>
268
415
  {{ item.text }}
269
416
  </li>
270
417
  </ul>
@@ -280,7 +427,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
280
427
  template: `
281
428
  <div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
282
429
  <i nz-icon nzType="global"></i>
283
- {{ 'menu.lang' | i18n }}
430
+ {{ 'lang.nav' | i18n }}
284
431
  <i nz-icon nzType="down"></i>
285
432
  </div>
286
433
  <i
@@ -299,7 +446,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
299
446
  [nzSelected]="item.code === curLangCode"
300
447
  (click)="change(item.code)"
301
448
  >
302
- <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
449
+ <template *ngIf="!item.icon">
450
+ <span role="img" [attr.aria-label]="item.text" class="pr-xs">{{ item.abbr }}</span>
451
+ </template>
452
+ <template *ngIf="item.icon">
453
+ <img [src]="'data:image/png;base64,' + item.icon" [alt]="item.abbr" class="pr-xs" />
454
+ </template>
303
455
  {{ item.text }}
304
456
  </li>
305
457
  </ul>
@@ -332,25 +484,25 @@ class YunzaiNotifyComponent {
332
484
  key: 'msg',
333
485
  title: this.y18n.fanyi('notify.message'),
334
486
  list: [],
335
- emptyText: this.y18n.fanyi('notify.message.emptyText'),
487
+ emptyText: this.y18n.fanyi('notify.message.empty'),
336
488
  emptyImage: './assets/tmp/img/message.svg',
337
- clearText: this.y18n.fanyi('notify.message.clearText')
489
+ clearText: this.y18n.fanyi('notify.message.clear')
338
490
  },
339
491
  {
340
492
  key: 'todo',
341
493
  title: this.y18n.fanyi('notify.todo'),
342
494
  list: [],
343
- emptyText: this.y18n.fanyi('notify.todo.emptyText'),
495
+ emptyText: this.y18n.fanyi('notify.todo.empty'),
344
496
  emptyImage: './assets/tmp/img/todo.svg',
345
- clearText: this.y18n.fanyi('notify.todo.clearText')
497
+ clearText: this.y18n.fanyi('notify.todo.clear')
346
498
  },
347
499
  {
348
500
  key: 'notice',
349
501
  title: this.y18n.fanyi('notify.notice'),
350
502
  list: [],
351
- emptyText: this.y18n.fanyi('notify.notice.emptyText'),
503
+ emptyText: this.y18n.fanyi('notify.notice.empty'),
352
504
  emptyImage: './assets/tmp/img/notice.svg',
353
- clearText: this.y18n.fanyi('notify.notice.clearText')
505
+ clearText: this.y18n.fanyi('notify.notice.clear')
354
506
  }
355
507
  ];
356
508
  this.loading = false;
@@ -659,17 +811,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
659
811
  type: Input
660
812
  }] } });
661
813
 
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
814
  class YunzaiUserComponent {
674
815
  constructor(injector, msg, tokenService,
675
816
  // @ts-ignore
@@ -707,7 +848,7 @@ class YunzaiUserComponent {
707
848
  }
708
849
  }
709
850
  }
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$3.YunzaiConfigService }, { token: i1$4.CacheService }], target: i0.ɵɵFactoryTarget.Component });
851
+ 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
852
  YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiUserComponent, selector: "yunzai-user", ngImport: i0, template: `
712
853
  <div
713
854
  class="yunzai-default__nav-item d-flex align-items-center px-sm"
@@ -729,7 +870,7 @@ YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
729
870
  <li nz-menu-divider></li>
730
871
  <div nz-menu-item (click)="logout()">
731
872
  <i nz-icon nzType="logout" class="mr-sm"></i>
732
- {{ 'menu.account.logout' | i18n }}
873
+ {{ 'logout' | i18n }}
733
874
  </div>
734
875
  </div>
735
876
  </nz-dropdown-menu>
@@ -759,7 +900,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
759
900
  <li nz-menu-divider></li>
760
901
  <div nz-menu-item (click)="logout()">
761
902
  <i nz-icon nzType="logout" class="mr-sm"></i>
762
- {{ 'menu.account.logout' | i18n }}
903
+ {{ 'logout' | i18n }}
763
904
  </div>
764
905
  </div>
765
906
  </nz-dropdown-menu>
@@ -770,7 +911,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
770
911
  return [{ type: i0.Injector }, { type: i1$1.NzMessageService }, { type: undefined, decorators: [{
771
912
  type: Inject,
772
913
  args: [YA_SERVICE_TOKEN]
773
- }] }, { type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }];
914
+ }] }, { type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }];
774
915
  } });
775
916
 
776
917
  var TopicType;
@@ -888,7 +1029,7 @@ class LayoutNavApplicationComponent {
888
1029
  this.state.destroy$.complete();
889
1030
  }
890
1031
  }
891
- LayoutNavApplicationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavApplicationComponent, deps: [{ token: i1$4.CacheService }, { token: YunzaiI18NService }, { token: i1$2._HttpClient }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1032
+ 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
1033
  LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavApplicationComponent, selector: "layout-nav-application", ngImport: i0, template: `
893
1034
  <!-- template start-->
894
1035
  <ng-template #search>
@@ -920,15 +1061,15 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
920
1061
  <!-- template end-->
921
1062
 
922
1063
  <!-- button start-->
923
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1064
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
924
1065
  <!-- button end-->
925
1066
 
926
1067
  <!-- header start-->
927
1068
  <div class="yz-application" nz-row *ngIf="state.active">
928
1069
  <div nz-col [nzSpan]="3" class="yz-application-topic">
929
- <div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
930
- <div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
931
- <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name }}</div>
1070
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1071
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1072
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
932
1073
  </div>
933
1074
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
934
1075
  <div *ngSwitchCase="TopicType.FULL">
@@ -944,8 +1085,8 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
944
1085
  <ul>
945
1086
  <li *ngFor="let d of state.list" (click)="open(d)">
946
1087
  <a href="javascript:;">
947
- <h4>{{ d.name }}</h4>
948
- <p>{{ d.intro }}</p>
1088
+ <h4>{{ d.name | i18n }}</h4>
1089
+ <p>{{ d.intro | i18n }}</p>
949
1090
  </a>
950
1091
  </li>
951
1092
  </ul>
@@ -990,15 +1131,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
990
1131
  <!-- template end-->
991
1132
 
992
1133
  <!-- button start-->
993
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1134
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
994
1135
  <!-- button end-->
995
1136
 
996
1137
  <!-- header start-->
997
1138
  <div class="yz-application" nz-row *ngIf="state.active">
998
1139
  <div nz-col [nzSpan]="3" class="yz-application-topic">
999
- <div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
1000
- <div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
1001
- <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name }}</div>
1140
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1141
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1142
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
1002
1143
  </div>
1003
1144
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
1004
1145
  <div *ngSwitchCase="TopicType.FULL">
@@ -1014,8 +1155,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1014
1155
  <ul>
1015
1156
  <li *ngFor="let d of state.list" (click)="open(d)">
1016
1157
  <a href="javascript:;">
1017
- <h4>{{ d.name }}</h4>
1018
- <p>{{ d.intro }}</p>
1158
+ <h4>{{ d.name | i18n }}</h4>
1159
+ <p>{{ d.intro | i18n }}</p>
1019
1160
  </a>
1020
1161
  </li>
1021
1162
  </ul>
@@ -1026,7 +1167,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1026
1167
  <!-- header end-->
1027
1168
  `
1028
1169
  }]
1029
- }], ctorParameters: function () { return [{ type: i1$4.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1170
+ }], ctorParameters: function () { return [{ type: i1$3.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1030
1171
 
1031
1172
  class LayoutNavGroupComponent {
1032
1173
  constructor(inject, cacheService, http) {
@@ -1070,7 +1211,7 @@ class LayoutNavGroupComponent {
1070
1211
  this.state.destroy$.complete();
1071
1212
  }
1072
1213
  }
1073
- LayoutNavGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: LayoutNavGroupComponent, deps: [{ token: i0.Injector }, { token: i1$4.CacheService }, { token: i1$2._HttpClient }], target: i0.ɵɵFactoryTarget.Component });
1214
+ 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
1215
  LayoutNavGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavGroupComponent, selector: "layout-nav-group", ngImport: i0, template: `
1075
1216
  <div class="yz-application-group">
1076
1217
  <nz-tabset>
@@ -1134,7 +1275,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1134
1275
  </div>
1135
1276
  `
1136
1277
  }]
1137
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$4.CacheService }, { type: i1$2._HttpClient }]; } });
1278
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$3.CacheService }, { type: i1$2._HttpClient }]; } });
1138
1279
 
1139
1280
  class LayoutNavTileComponent {
1140
1281
  constructor() { }
@@ -1256,7 +1397,7 @@ class YunzaiLayoutBasicComponent {
1256
1397
  this.state.destroy$.complete();
1257
1398
  }
1258
1399
  }
1259
- YunzaiLayoutBasicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiLayoutBasicComponent, deps: [{ token: i1$5.LayoutDisplayService }, { token: i1$4.CacheService }, { token: i3$3.StompService }, { token: WINDOW }], target: i0.ɵɵFactoryTarget.Component });
1400
+ 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
1401
  YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiLayoutBasicComponent, selector: "yz-layout-basic", ngImport: i0, template: `<layout-default
1261
1402
  [options]="options"
1262
1403
  [asideUser]="asideUserTpl"
@@ -1294,20 +1435,20 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1294
1435
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1295
1436
  <div nz-menu style="width: 200px;">
1296
1437
  <div nz-menu-item>
1297
- {{ 'menu.application.mode' | i18n }}
1438
+ {{ 'mode.nav' | i18n }}
1298
1439
  </div>
1299
1440
 
1300
1441
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1301
1442
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1302
- {{ 'menu.application.application' | i18n }}
1443
+ {{ 'mode.nav.application' | i18n }}
1303
1444
  </div>
1304
1445
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1305
1446
  <i nz-icon nzType="group" class="mr-sm"></i>
1306
- {{ 'menu.application.group' | i18n }}
1447
+ {{ 'mode.nav.group' | i18n }}
1307
1448
  </div>
1308
1449
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1309
1450
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1310
- {{ 'menu.application.tile' | i18n }}
1451
+ {{ 'mode.nav.tile' | i18n }}
1311
1452
  </div>
1312
1453
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1313
1454
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1330,7 +1471,7 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1330
1471
  </div>
1331
1472
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1332
1473
  <ul nz-menu>
1333
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1474
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1334
1475
  </ul>
1335
1476
  </nz-dropdown-menu>
1336
1477
  </ng-template>
@@ -1382,20 +1523,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1382
1523
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1383
1524
  <div nz-menu style="width: 200px;">
1384
1525
  <div nz-menu-item>
1385
- {{ 'menu.application.mode' | i18n }}
1526
+ {{ 'mode.nav' | i18n }}
1386
1527
  </div>
1387
1528
 
1388
1529
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1389
1530
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1390
- {{ 'menu.application.application' | i18n }}
1531
+ {{ 'mode.nav.application' | i18n }}
1391
1532
  </div>
1392
1533
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1393
1534
  <i nz-icon nzType="group" class="mr-sm"></i>
1394
- {{ 'menu.application.group' | i18n }}
1535
+ {{ 'mode.nav.group' | i18n }}
1395
1536
  </div>
1396
1537
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1397
1538
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1398
- {{ 'menu.application.tile' | i18n }}
1539
+ {{ 'mode.nav.tile' | i18n }}
1399
1540
  </div>
1400
1541
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1401
1542
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1418,7 +1559,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1418
1559
  </div>
1419
1560
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1420
1561
  <ul nz-menu>
1421
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1562
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1422
1563
  </ul>
1423
1564
  </nz-dropdown-menu>
1424
1565
  </ng-template>
@@ -1431,7 +1572,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1431
1572
  </ng-template> `
1432
1573
  }]
1433
1574
  }], ctorParameters: function () {
1434
- return [{ type: i1$5.LayoutDisplayService }, { type: i1$4.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1575
+ return [{ type: i1$5.LayoutDisplayService }, { type: i1$3.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1435
1576
  type: Inject,
1436
1577
  args: [WINDOW]
1437
1578
  }] }];
@@ -1528,14 +1669,14 @@ class ActGuard {
1528
1669
  });
1529
1670
  }
1530
1671
  }
1531
- ActGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, deps: [{ token: i1$3.YunzaiConfigService }, { token: i1$4.CacheService }, { token: i1$3.PathToRegexpService }, { token: i5$1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
1672
+ 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
1673
  ActGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, providedIn: 'root' });
1533
1674
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, decorators: [{
1534
1675
  type: Injectable,
1535
1676
  args: [{
1536
1677
  providedIn: 'root'
1537
1678
  }]
1538
- }], ctorParameters: function () { return [{ type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }, { type: i1$3.PathToRegexpService }, { type: i5$1.Router }]; } });
1679
+ }], ctorParameters: function () { return [{ type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }, { type: i1$4.PathToRegexpService }, { type: i5$1.Router }]; } });
1539
1680
 
1540
1681
  class YunzaiAuthService {
1541
1682
  constructor(injector) {
@@ -1859,6 +2000,8 @@ class YunzaiDefaultInterceptor {
1859
2000
  if (url.includes('.json') && url.includes('assets')) {
1860
2001
  url = req.url;
1861
2002
  }
2003
+ if (url.includes('i18n'))
2004
+ return next.handle(req);
1862
2005
  // 加入语言头
1863
2006
  const newReq = req.clone({ url, setHeaders: this.getAdditionalHeaders(req.headers) });
1864
2007
  return next.handle(newReq).pipe(mergeMap(ev => {
@@ -2754,7 +2897,9 @@ class YunzaiStartupService {
2754
2897
  }
2755
2898
  load() {
2756
2899
  log$1('startup.service: ', 'load');
2757
- const defaultLang = this.i18n.defaultLang;
2900
+ let defaultLang = this.cacheService.getNone(this.i18n.cacheDefaultKey);
2901
+ if (!defaultLang)
2902
+ defaultLang = this.i18n.defaultLang;
2758
2903
  return this.i18n.loadLangData(defaultLang).pipe(mergeMap(langData => {
2759
2904
  log$1('startup.service: ', 'set i18n, defaultLang->', defaultLang, ' langData->', langData);
2760
2905
  this.i18n.use(defaultLang, langData);
@@ -2822,7 +2967,7 @@ class YunzaiStartupService {
2822
2967
  }
2823
2968
  }
2824
2969
  }
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$4.CacheService }, { token: i1$3.YunzaiConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
2970
+ 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
2971
  YunzaiStartupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService });
2827
2972
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, decorators: [{
2828
2973
  type: Injectable
@@ -2833,7 +2978,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
2833
2978
  }] }, { type: undefined, decorators: [{
2834
2979
  type: Inject,
2835
2980
  args: [WINDOW]
2836
- }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$4.CacheService }, { type: i1$3.YunzaiConfigService }];
2981
+ }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$3.CacheService }, { type: i1$4.YunzaiConfigService }];
2837
2982
  } });
2838
2983
  function mapYzSideToYelonMenu(menus) {
2839
2984
  menus.forEach(menu => {
@@ -2883,5 +3028,5 @@ const YUNZAI_APPINIT_PROVIDES = [
2883
3028
  * Generated bundle index. Do not edit.
2884
3029
  */
2885
3030
 
2886
- export { ActGuard, BUSINESS_DEFAULT_CONFIG, LayoutNavApplicationComponent, LayoutNavGroupComponent, LayoutNavTileComponent, NavType, TopicType, YUNZAI_APPINIT_PROVIDES, 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 };
3031
+ export { ActGuard, BUSINESS_DEFAULT_CONFIG, LayoutNavApplicationComponent, LayoutNavGroupComponent, LayoutNavTileComponent, NavType, TopicType, 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
3032
  //# sourceMappingURL=layout.mjs.map