@yelon/bis 15.0.0-beta.6 → 15.1.0-29196db0

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 { of, forkJoin, map, Subject, takeUntil, mergeMap, mergeAll, BehaviorSubject, throwError, filter, take, switchMap, catchError } 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,26 @@ 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, ja_JP as ja_JP$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
+ import ngElGr from '@angular/common/locales/el';
27
28
  import ngEn from '@angular/common/locales/en';
29
+ import ngEsEs from '@angular/common/locales/es';
30
+ import ngFr from '@angular/common/locales/fr';
31
+ import ngHr from '@angular/common/locales/hr';
32
+ import ngIt from '@angular/common/locales/it';
33
+ import ngJa from '@angular/common/locales/ja';
34
+ import ngKo from '@angular/common/locales/ko';
35
+ import ngPl from '@angular/common/locales/pl';
36
+ import ngSl from '@angular/common/locales/sl';
37
+ import ngTr from '@angular/common/locales/tr';
28
38
  import ngZh from '@angular/common/locales/zh';
29
39
  import ngZhTw from '@angular/common/locales/zh-Hant';
30
- import { zhCN, zhTW, enUS } from 'date-fns/locale';
40
+ import { zhCN, zhTW, enUS, el, es, fr, hr, it, ja, ko, pl, sl, tr } from 'date-fns/locale';
31
41
  import * as i2 from 'ng-zorro-antd/i18n';
32
- import { zh_CN, zh_TW, en_US } from 'ng-zorro-antd/i18n';
42
+ import { zh_CN, zh_TW, en_US, el_GR, es_ES, fr_FR, hr_HR, it_IT, ja_JP, ko_KR, pl_PL, sl_SI, tr_TR } from 'ng-zorro-antd/i18n';
33
43
  import * as i3$1 from '@angular/cdk/platform';
34
44
  import * as i4 from '@yelon/util/config';
35
45
  import { YunzaiConfigService as YunzaiConfigService$1 } from '@yelon/util/config';
@@ -76,7 +86,7 @@ class YunzaiClearStorageComponent {
76
86
  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
87
  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
88
  <i nz-icon nzType="tool"></i>
79
- {{ 'menu.clear.local.storage' | i18n }}
89
+ {{ 'storage.clear' | i18n }}
80
90
  `, 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
91
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiClearStorageComponent, decorators: [{
82
92
  type: Component,
@@ -84,7 +94,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
84
94
  selector: 'yunzai-clearstorage',
85
95
  template: `
86
96
  <i nz-icon nzType="tool"></i>
87
- {{ 'menu.clear.local.storage' | i18n }}
97
+ {{ 'storage.clear' | i18n }}
88
98
  `,
89
99
  host: {
90
100
  '[class.d-block]': 'true'
@@ -112,7 +122,7 @@ class YunzaiFullScreenComponent {
112
122
  YunzaiFullScreenComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiFullScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
123
  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
124
  <i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
115
- {{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
125
+ {{ (status ? 'exitFullscreen' : 'fullscreen') | i18n }}
116
126
  `, 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
127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiFullScreenComponent, decorators: [{
118
128
  type: Component,
@@ -120,7 +130,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
120
130
  selector: 'yunzai-fullscreen',
121
131
  template: `
122
132
  <i nz-icon [nzType]="status ? 'fullscreen-exit' : 'fullscreen'"></i>
123
- {{ (status ? 'menu.fullscreen.exit' : 'menu.fullscreen') | i18n }}
133
+ {{ (status ? 'exitFullscreen' : 'fullscreen') | i18n }}
124
134
  `,
125
135
  host: {
126
136
  '[class.d-block]': 'true'
@@ -135,8 +145,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
135
145
  args: ['click']
136
146
  }] } });
137
147
 
138
- const DEFAULT = 'zh-CN';
139
- const LANGS = {
148
+ const BUSINESS_DEFAULT_CONFIG = {
149
+ baseUrl: '/backstage',
150
+ systemCode: 'portal',
151
+ loginForm: null,
152
+ refreshTokenEnabled: true,
153
+ refreshTokenType: 're-request'
154
+ };
155
+ function mergeBisConfig(srv) {
156
+ return srv.merge('bis', BUSINESS_DEFAULT_CONFIG);
157
+ }
158
+
159
+ const YUNZAI_LANGS = {
140
160
  'zh-CN': {
141
161
  text: '简体中文',
142
162
  ng: ngZh,
@@ -160,21 +180,105 @@ const LANGS = {
160
180
  date: enUS,
161
181
  yelon: en_US$1,
162
182
  abbr: '🇬🇧'
183
+ },
184
+ 'el-GR': {
185
+ text: 'Ελληνικά',
186
+ ng: ngElGr,
187
+ zorro: el_GR,
188
+ date: el,
189
+ yelon: el_GR$1,
190
+ abbr: '🇬🇷'
191
+ },
192
+ 'es-ES': {
193
+ text: 'Español',
194
+ ng: ngEsEs,
195
+ zorro: es_ES,
196
+ date: es,
197
+ yelon: es_ES$1,
198
+ abbr: '🇪🇸'
199
+ },
200
+ 'fr-FR': {
201
+ text: 'Français',
202
+ ng: ngFr,
203
+ zorro: fr_FR,
204
+ date: fr,
205
+ yelon: fr_FR$1,
206
+ abbr: '🇫🇷'
207
+ },
208
+ 'hr-HR': {
209
+ text: 'Hrvatski',
210
+ ng: ngHr,
211
+ zorro: hr_HR,
212
+ date: hr,
213
+ yelon: hr_HR$1,
214
+ abbr: '🇭🇷'
215
+ },
216
+ 'it-IT': {
217
+ text: 'Italiano',
218
+ ng: ngIt,
219
+ zorro: it_IT,
220
+ date: it,
221
+ yelon: it_IT$1,
222
+ abbr: '🇮🇹'
223
+ },
224
+ 'ja-JP': {
225
+ text: '日本語',
226
+ ng: ngJa,
227
+ zorro: ja_JP,
228
+ date: ja,
229
+ yelon: ja_JP$1,
230
+ abbr: '🇯🇵'
231
+ },
232
+ 'ko-KR': {
233
+ text: '한국어',
234
+ ng: ngKo,
235
+ zorro: ko_KR,
236
+ date: ko,
237
+ yelon: ko_KR$1,
238
+ abbr: '🇰🇷'
239
+ },
240
+ 'pl-PL': {
241
+ text: 'Polski',
242
+ ng: ngPl,
243
+ zorro: pl_PL,
244
+ date: pl,
245
+ yelon: pl_PL$1,
246
+ abbr: '🇵🇱'
247
+ },
248
+ 'sl-SI': {
249
+ text: 'Slovenščina',
250
+ ng: ngSl,
251
+ zorro: sl_SI,
252
+ date: sl,
253
+ yelon: sl_SI$1,
254
+ abbr: '🇸🇮'
255
+ },
256
+ 'tr-TR': {
257
+ text: 'Türkçe',
258
+ ng: ngTr,
259
+ zorro: tr_TR,
260
+ date: tr,
261
+ yelon: tr_TR$1,
262
+ abbr: '🇹🇷'
163
263
  }
164
264
  };
265
+
266
+ const DEFAULT = 'zh-CN';
165
267
  class YunzaiI18NService extends YunzaiI18nBaseService {
166
- constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv) {
268
+ constructor(http, settings, nzI18nService, yelonLocaleService, platform, cogSrv, cacheService) {
167
269
  super(cogSrv);
168
270
  this.http = http;
169
271
  this.settings = settings;
170
272
  this.nzI18nService = nzI18nService;
171
273
  this.yelonLocaleService = yelonLocaleService;
172
274
  this.platform = platform;
275
+ this.cacheService = cacheService;
173
276
  this._defaultLang = DEFAULT;
174
- this._langs = Object.keys(LANGS).map(code => {
175
- const item = LANGS[code];
277
+ this._langs = Object.keys(YUNZAI_LANGS).map(code => {
278
+ const item = YUNZAI_LANGS[code];
176
279
  return { code, text: item.text, abbr: item.abbr };
177
280
  });
281
+ this.bisConf = mergeBisConfig(cogSrv);
178
282
  const defaultLang = this.getDefaultLang();
179
283
  this._defaultLang = this._langs.findIndex(w => w.code === defaultLang) === -1 ? DEFAULT : defaultLang;
180
284
  }
@@ -190,13 +294,26 @@ class YunzaiI18NService extends YunzaiI18nBaseService {
190
294
  return arr.length <= 1 ? res : `${arr[0]}-${arr[1].toUpperCase()}`;
191
295
  }
192
296
  loadLangData(lang) {
193
- return this.http.get(`assets/tmp/i18n/${lang}.json`);
297
+ const key = `_yz_lang_${lang}`;
298
+ if (this.cacheService.getNone(key)) {
299
+ return of(this.cacheService.get(key));
300
+ }
301
+ else {
302
+ if (ngDevMode) {
303
+ return this.http.get(`assets/tmp/i18n/${lang}.json`);
304
+ }
305
+ else {
306
+ return this.http.get(`${this.bisConf.baseUrl}/i18n/${lang}`);
307
+ }
308
+ }
194
309
  }
195
310
  use(lang, data) {
196
311
  if (this._currentLang === lang)
197
312
  return;
313
+ const key = `_yz_lang_${lang}`;
314
+ this.cacheService.set(key, data);
198
315
  this._data = this.flatData(data, []);
199
- const item = LANGS[lang];
316
+ const item = YUNZAI_LANGS[lang];
200
317
  registerLocaleData(item.ng);
201
318
  this.nzI18nService.setLocale(item.zorro);
202
319
  this.nzI18nService.setDateLocale(item.date);
@@ -208,12 +325,12 @@ class YunzaiI18NService extends YunzaiI18nBaseService {
208
325
  return this._langs;
209
326
  }
210
327
  }
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 });
328
+ 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
329
  YunzaiI18NService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, providedIn: 'root' });
213
330
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiI18NService, decorators: [{
214
331
  type: Injectable,
215
332
  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 }]; } });
333
+ }], 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
334
 
218
335
  class YunzaiI18NComponent {
219
336
  get langs() {
@@ -245,7 +362,7 @@ YunzaiI18NComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", vers
245
362
  YunzaiI18NComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiI18NComponent, selector: "yunzai-i18n", inputs: { showLangText: "showLangText" }, ngImport: i0, template: `
246
363
  <div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
247
364
  <i nz-icon nzType="global"></i>
248
- {{ 'menu.lang' | i18n }}
365
+ {{ 'lang.nav' | i18n }}
249
366
  <i nz-icon nzType="down"></i>
250
367
  </div>
251
368
  <i
@@ -280,7 +397,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
280
397
  template: `
281
398
  <div *ngIf="showLangText" nz-dropdown [nzDropdownMenu]="langMenu" nzPlacement="bottomRight">
282
399
  <i nz-icon nzType="global"></i>
283
- {{ 'menu.lang' | i18n }}
400
+ {{ 'lang.nav' | i18n }}
284
401
  <i nz-icon nzType="down"></i>
285
402
  </div>
286
403
  <i
@@ -330,25 +447,25 @@ class YunzaiNotifyComponent {
330
447
  key: 'msg',
331
448
  title: this.y18n.fanyi('notify.message'),
332
449
  list: [],
333
- emptyText: this.y18n.fanyi('notify.message.emptyText'),
450
+ emptyText: this.y18n.fanyi('notify.message.empty'),
334
451
  emptyImage: './assets/tmp/img/message.svg',
335
- clearText: this.y18n.fanyi('notify.message.clearText')
452
+ clearText: this.y18n.fanyi('notify.message.clear')
336
453
  },
337
454
  {
338
455
  key: 'todo',
339
456
  title: this.y18n.fanyi('notify.todo'),
340
457
  list: [],
341
- emptyText: this.y18n.fanyi('notify.todo.emptyText'),
458
+ emptyText: this.y18n.fanyi('notify.todo.empty'),
342
459
  emptyImage: './assets/tmp/img/todo.svg',
343
- clearText: this.y18n.fanyi('notify.todo.clearText')
460
+ clearText: this.y18n.fanyi('notify.todo.clear')
344
461
  },
345
462
  {
346
463
  key: 'notice',
347
464
  title: this.y18n.fanyi('notify.notice'),
348
465
  list: [],
349
- emptyText: this.y18n.fanyi('notify.notice.emptyText'),
466
+ emptyText: this.y18n.fanyi('notify.notice.empty'),
350
467
  emptyImage: './assets/tmp/img/notice.svg',
351
- clearText: this.y18n.fanyi('notify.notice.clearText')
468
+ clearText: this.y18n.fanyi('notify.notice.clear')
352
469
  }
353
470
  ];
354
471
  this.loading = false;
@@ -668,17 +785,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
668
785
  type: Input
669
786
  }] } });
670
787
 
671
- const BUSINESS_DEFAULT_CONFIG = {
672
- baseUrl: '/backstage',
673
- systemCode: 'portal',
674
- loginForm: null,
675
- refreshTokenEnabled: true,
676
- refreshTokenType: 're-request'
677
- };
678
- function mergeBisConfig(srv) {
679
- return srv.merge('bis', BUSINESS_DEFAULT_CONFIG);
680
- }
681
-
682
788
  class YunzaiUserComponent {
683
789
  constructor(injector, msg, tokenService,
684
790
  // @ts-ignore
@@ -716,7 +822,7 @@ class YunzaiUserComponent {
716
822
  }
717
823
  }
718
824
  }
719
- 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 });
825
+ 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 });
720
826
  YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiUserComponent, selector: "yunzai-user", ngImport: i0, template: `
721
827
  <div
722
828
  class="yunzai-default__nav-item d-flex align-items-center px-sm"
@@ -738,7 +844,7 @@ YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
738
844
  <li nz-menu-divider></li>
739
845
  <div nz-menu-item (click)="logout()">
740
846
  <i nz-icon nzType="logout" class="mr-sm"></i>
741
- {{ 'menu.account.logout' | i18n }}
847
+ {{ 'logout' | i18n }}
742
848
  </div>
743
849
  </div>
744
850
  </nz-dropdown-menu>
@@ -768,7 +874,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
768
874
  <li nz-menu-divider></li>
769
875
  <div nz-menu-item (click)="logout()">
770
876
  <i nz-icon nzType="logout" class="mr-sm"></i>
771
- {{ 'menu.account.logout' | i18n }}
877
+ {{ 'logout' | i18n }}
772
878
  </div>
773
879
  </div>
774
880
  </nz-dropdown-menu>
@@ -778,7 +884,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
778
884
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$1.NzMessageService }, { type: undefined, decorators: [{
779
885
  type: Inject,
780
886
  args: [YA_SERVICE_TOKEN]
781
- }] }, { type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }]; } });
887
+ }] }, { type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }]; } });
782
888
 
783
889
  var TopicType;
784
890
  (function (TopicType) {
@@ -895,7 +1001,7 @@ class LayoutNavApplicationComponent {
895
1001
  this.state.destroy$.complete();
896
1002
  }
897
1003
  }
898
- 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 });
1004
+ 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 });
899
1005
  LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavApplicationComponent, selector: "layout-nav-application", ngImport: i0, template: `
900
1006
  <!-- template start-->
901
1007
  <ng-template #search>
@@ -927,15 +1033,15 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
927
1033
  <!-- template end-->
928
1034
 
929
1035
  <!-- button start-->
930
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1036
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
931
1037
  <!-- button end-->
932
1038
 
933
1039
  <!-- header start-->
934
1040
  <div class="yz-application" nz-row *ngIf="state.active">
935
1041
  <div nz-col [nzSpan]="3" class="yz-application-topic">
936
- <div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
937
- <div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
938
- <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name }}</div>
1042
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1043
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1044
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
939
1045
  </div>
940
1046
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
941
1047
  <div *ngSwitchCase="TopicType.FULL">
@@ -951,8 +1057,8 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
951
1057
  <ul>
952
1058
  <li *ngFor="let d of state.list" (click)="open(d)">
953
1059
  <a href="javascript:;">
954
- <h4>{{ d.name }}</h4>
955
- <p>{{ d.intro }}</p>
1060
+ <h4>{{ d.name | i18n }}</h4>
1061
+ <p>{{ d.intro | i18n }}</p>
956
1062
  </a>
957
1063
  </li>
958
1064
  </ul>
@@ -997,15 +1103,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
997
1103
  <!-- template end-->
998
1104
 
999
1105
  <!-- button start-->
1000
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1106
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
1001
1107
  <!-- button end-->
1002
1108
 
1003
1109
  <!-- header start-->
1004
1110
  <div class="yz-application" nz-row *ngIf="state.active">
1005
1111
  <div nz-col [nzSpan]="3" class="yz-application-topic">
1006
- <div class="yz-application-text" (click)="full()">{{ 'application.all' | i18n }}</div>
1007
- <div class="yz-application-text" (click)="own()">{{ 'application.mine' | i18n }}</div>
1008
- <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name }}</div>
1112
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1113
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1114
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
1009
1115
  </div>
1010
1116
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
1011
1117
  <div *ngSwitchCase="TopicType.FULL">
@@ -1021,8 +1127,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1021
1127
  <ul>
1022
1128
  <li *ngFor="let d of state.list" (click)="open(d)">
1023
1129
  <a href="javascript:;">
1024
- <h4>{{ d.name }}</h4>
1025
- <p>{{ d.intro }}</p>
1130
+ <h4>{{ d.name | i18n }}</h4>
1131
+ <p>{{ d.intro | i18n }}</p>
1026
1132
  </a>
1027
1133
  </li>
1028
1134
  </ul>
@@ -1033,7 +1139,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1033
1139
  <!-- header end-->
1034
1140
  `
1035
1141
  }]
1036
- }], ctorParameters: function () { return [{ type: i1$4.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1142
+ }], ctorParameters: function () { return [{ type: i1$3.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1037
1143
 
1038
1144
  class LayoutNavGroupComponent {
1039
1145
  constructor(inject, cacheService, http) {
@@ -1077,7 +1183,7 @@ class LayoutNavGroupComponent {
1077
1183
  this.state.destroy$.complete();
1078
1184
  }
1079
1185
  }
1080
- 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 });
1186
+ 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 });
1081
1187
  LayoutNavGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavGroupComponent, selector: "layout-nav-group", ngImport: i0, template: `
1082
1188
  <div class="yz-application-group">
1083
1189
  <nz-tabset>
@@ -1141,7 +1247,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1141
1247
  </div>
1142
1248
  `
1143
1249
  }]
1144
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$4.CacheService }, { type: i1$2._HttpClient }]; } });
1250
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$3.CacheService }, { type: i1$2._HttpClient }]; } });
1145
1251
 
1146
1252
  class LayoutNavTileComponent {
1147
1253
  constructor() { }
@@ -1174,7 +1280,7 @@ class YunzaiLayoutBasicComponent {
1174
1280
  if (!this.state.display.nav) {
1175
1281
  cascadingStyleSheet = {
1176
1282
  ...cascadingStyleSheet,
1177
- top: 0
1283
+ top: '0px'
1178
1284
  };
1179
1285
  }
1180
1286
  if (!this.state.display.aside) {
@@ -1257,12 +1363,18 @@ class YunzaiLayoutBasicComponent {
1257
1363
  this.layoutDisplayService.listen('reuseTab', (display) => {
1258
1364
  this.state.display.reusetab = display;
1259
1365
  });
1366
+ this.layoutDisplayService.listen('nav', (display) => {
1367
+ this.state.display.nav = display;
1368
+ });
1369
+ this.layoutDisplayService.listen('aside', (display) => {
1370
+ this.state.display.aside = display;
1371
+ });
1260
1372
  }
1261
1373
  ngOnDestroy() {
1262
1374
  this.state.destroy$.complete();
1263
1375
  }
1264
1376
  }
1265
- 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 });
1377
+ 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 });
1266
1378
  YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiLayoutBasicComponent, selector: "yz-layout-basic", ngImport: i0, template: `<layout-default
1267
1379
  [options]="options"
1268
1380
  [asideUser]="asideUserTpl"
@@ -1300,20 +1412,20 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1300
1412
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1301
1413
  <div nz-menu style="width: 200px;">
1302
1414
  <div nz-menu-item>
1303
- {{ 'menu.application.mode' | i18n }}
1415
+ {{ 'mode.nav' | i18n }}
1304
1416
  </div>
1305
1417
 
1306
1418
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1307
1419
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1308
- {{ 'menu.application.application' | i18n }}
1420
+ {{ 'mode.nav.application' | i18n }}
1309
1421
  </div>
1310
1422
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1311
1423
  <i nz-icon nzType="group" class="mr-sm"></i>
1312
- {{ 'menu.application.group' | i18n }}
1424
+ {{ 'mode.nav.group' | i18n }}
1313
1425
  </div>
1314
1426
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1315
1427
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1316
- {{ 'menu.application.tile' | i18n }}
1428
+ {{ 'mode.nav.tile' | i18n }}
1317
1429
  </div>
1318
1430
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1319
1431
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1336,7 +1448,7 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1336
1448
  </div>
1337
1449
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1338
1450
  <ul nz-menu>
1339
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1451
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1340
1452
  </ul>
1341
1453
  </nz-dropdown-menu>
1342
1454
  </ng-template>
@@ -1388,20 +1500,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1388
1500
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1389
1501
  <div nz-menu style="width: 200px;">
1390
1502
  <div nz-menu-item>
1391
- {{ 'menu.application.mode' | i18n }}
1503
+ {{ 'mode.nav' | i18n }}
1392
1504
  </div>
1393
1505
 
1394
1506
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1395
1507
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1396
- {{ 'menu.application.application' | i18n }}
1508
+ {{ 'mode.nav.application' | i18n }}
1397
1509
  </div>
1398
1510
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1399
1511
  <i nz-icon nzType="group" class="mr-sm"></i>
1400
- {{ 'menu.application.group' | i18n }}
1512
+ {{ 'mode.nav.group' | i18n }}
1401
1513
  </div>
1402
1514
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1403
1515
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1404
- {{ 'menu.application.tile' | i18n }}
1516
+ {{ 'mode.nav.tile' | i18n }}
1405
1517
  </div>
1406
1518
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1407
1519
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1424,7 +1536,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1424
1536
  </div>
1425
1537
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1426
1538
  <ul nz-menu>
1427
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1539
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1428
1540
  </ul>
1429
1541
  </nz-dropdown-menu>
1430
1542
  </ng-template>
@@ -1436,7 +1548,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1436
1548
  <router-outlet></router-outlet>
1437
1549
  </ng-template> `
1438
1550
  }]
1439
- }], ctorParameters: function () { return [{ type: i1$5.LayoutDisplayService }, { type: i1$4.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1551
+ }], ctorParameters: function () { return [{ type: i1$5.LayoutDisplayService }, { type: i1$3.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1440
1552
  type: Inject,
1441
1553
  args: [WINDOW]
1442
1554
  }] }]; } });
@@ -1532,14 +1644,14 @@ class ActGuard {
1532
1644
  });
1533
1645
  }
1534
1646
  }
1535
- 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 });
1647
+ 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 });
1536
1648
  ActGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, providedIn: 'root' });
1537
1649
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, decorators: [{
1538
1650
  type: Injectable,
1539
1651
  args: [{
1540
1652
  providedIn: 'root'
1541
1653
  }]
1542
- }], ctorParameters: function () { return [{ type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }, { type: i1$3.PathToRegexpService }, { type: i5$1.Router }]; } });
1654
+ }], ctorParameters: function () { return [{ type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }, { type: i1$4.PathToRegexpService }, { type: i5$1.Router }]; } });
1543
1655
 
1544
1656
  class YunzaiAuthService {
1545
1657
  constructor(injector) {
@@ -2826,7 +2938,7 @@ class YunzaiStartupService {
2826
2938
  }
2827
2939
  }
2828
2940
  }
2829
- 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 });
2941
+ 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 });
2830
2942
  YunzaiStartupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService });
2831
2943
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, decorators: [{
2832
2944
  type: Injectable
@@ -2836,7 +2948,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
2836
2948
  }] }, { type: undefined, decorators: [{
2837
2949
  type: Inject,
2838
2950
  args: [WINDOW]
2839
- }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$4.CacheService }, { type: i1$3.YunzaiConfigService }]; } });
2951
+ }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$3.CacheService }, { type: i1$4.YunzaiConfigService }]; } });
2840
2952
  function mapYzSideToYelonMenu(menus) {
2841
2953
  menus.forEach(menu => {
2842
2954
  menu.badgeDot = menu.badge_dot || null;