@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
@@ -332,25 +449,25 @@ class YunzaiNotifyComponent {
332
449
  key: 'msg',
333
450
  title: this.y18n.fanyi('notify.message'),
334
451
  list: [],
335
- emptyText: this.y18n.fanyi('notify.message.emptyText'),
452
+ emptyText: this.y18n.fanyi('notify.message.empty'),
336
453
  emptyImage: './assets/tmp/img/message.svg',
337
- clearText: this.y18n.fanyi('notify.message.clearText')
454
+ clearText: this.y18n.fanyi('notify.message.clear')
338
455
  },
339
456
  {
340
457
  key: 'todo',
341
458
  title: this.y18n.fanyi('notify.todo'),
342
459
  list: [],
343
- emptyText: this.y18n.fanyi('notify.todo.emptyText'),
460
+ emptyText: this.y18n.fanyi('notify.todo.empty'),
344
461
  emptyImage: './assets/tmp/img/todo.svg',
345
- clearText: this.y18n.fanyi('notify.todo.clearText')
462
+ clearText: this.y18n.fanyi('notify.todo.clear')
346
463
  },
347
464
  {
348
465
  key: 'notice',
349
466
  title: this.y18n.fanyi('notify.notice'),
350
467
  list: [],
351
- emptyText: this.y18n.fanyi('notify.notice.emptyText'),
468
+ emptyText: this.y18n.fanyi('notify.notice.empty'),
352
469
  emptyImage: './assets/tmp/img/notice.svg',
353
- clearText: this.y18n.fanyi('notify.notice.clearText')
470
+ clearText: this.y18n.fanyi('notify.notice.clear')
354
471
  }
355
472
  ];
356
473
  this.loading = false;
@@ -659,17 +776,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
659
776
  type: Input
660
777
  }] } });
661
778
 
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
779
  class YunzaiUserComponent {
674
780
  constructor(injector, msg, tokenService,
675
781
  // @ts-ignore
@@ -707,7 +813,7 @@ class YunzaiUserComponent {
707
813
  }
708
814
  }
709
815
  }
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 });
816
+ 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
817
  YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiUserComponent, selector: "yunzai-user", ngImport: i0, template: `
712
818
  <div
713
819
  class="yunzai-default__nav-item d-flex align-items-center px-sm"
@@ -729,7 +835,7 @@ YunzaiUserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
729
835
  <li nz-menu-divider></li>
730
836
  <div nz-menu-item (click)="logout()">
731
837
  <i nz-icon nzType="logout" class="mr-sm"></i>
732
- {{ 'menu.account.logout' | i18n }}
838
+ {{ 'logout' | i18n }}
733
839
  </div>
734
840
  </div>
735
841
  </nz-dropdown-menu>
@@ -759,7 +865,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
759
865
  <li nz-menu-divider></li>
760
866
  <div nz-menu-item (click)="logout()">
761
867
  <i nz-icon nzType="logout" class="mr-sm"></i>
762
- {{ 'menu.account.logout' | i18n }}
868
+ {{ 'logout' | i18n }}
763
869
  </div>
764
870
  </div>
765
871
  </nz-dropdown-menu>
@@ -770,7 +876,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
770
876
  return [{ type: i0.Injector }, { type: i1$1.NzMessageService }, { type: undefined, decorators: [{
771
877
  type: Inject,
772
878
  args: [YA_SERVICE_TOKEN]
773
- }] }, { type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }];
879
+ }] }, { type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }];
774
880
  } });
775
881
 
776
882
  var TopicType;
@@ -888,7 +994,7 @@ class LayoutNavApplicationComponent {
888
994
  this.state.destroy$.complete();
889
995
  }
890
996
  }
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 });
997
+ 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
998
  LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavApplicationComponent, selector: "layout-nav-application", ngImport: i0, template: `
893
999
  <!-- template start-->
894
1000
  <ng-template #search>
@@ -920,15 +1026,15 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
920
1026
  <!-- template end-->
921
1027
 
922
1028
  <!-- button start-->
923
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1029
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
924
1030
  <!-- button end-->
925
1031
 
926
1032
  <!-- header start-->
927
1033
  <div class="yz-application" nz-row *ngIf="state.active">
928
1034
  <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>
1035
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1036
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1037
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
932
1038
  </div>
933
1039
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
934
1040
  <div *ngSwitchCase="TopicType.FULL">
@@ -944,8 +1050,8 @@ LayoutNavApplicationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
944
1050
  <ul>
945
1051
  <li *ngFor="let d of state.list" (click)="open(d)">
946
1052
  <a href="javascript:;">
947
- <h4>{{ d.name }}</h4>
948
- <p>{{ d.intro }}</p>
1053
+ <h4>{{ d.name | i18n }}</h4>
1054
+ <p>{{ d.intro | i18n }}</p>
949
1055
  </a>
950
1056
  </li>
951
1057
  </ul>
@@ -990,15 +1096,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
990
1096
  <!-- template end-->
991
1097
 
992
1098
  <!-- button start-->
993
- <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'application.button' | i18n }}</div>
1099
+ <div class="yunzai-default__nav-item" (click)="diffChange()"> {{ 'mode.nav' | i18n }}</div>
994
1100
  <!-- button end-->
995
1101
 
996
1102
  <!-- header start-->
997
1103
  <div class="yz-application" nz-row *ngIf="state.active">
998
1104
  <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>
1105
+ <div class="yz-application-text" (click)="full()">{{ 'mode.nav.all' | i18n }}</div>
1106
+ <div class="yz-application-text" (click)="own()">{{ 'mode.nav.mine' | i18n }}</div>
1107
+ <div class="yz-application-text" *ngFor="let d of state.topics" (click)="every(d)">{{ d.name | i18n }}</div>
1002
1108
  </div>
1003
1109
  <div nz-col [nzSpan]="21" [ngSwitch]="state.topic" class="yz-application-container">
1004
1110
  <div *ngSwitchCase="TopicType.FULL">
@@ -1014,8 +1120,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1014
1120
  <ul>
1015
1121
  <li *ngFor="let d of state.list" (click)="open(d)">
1016
1122
  <a href="javascript:;">
1017
- <h4>{{ d.name }}</h4>
1018
- <p>{{ d.intro }}</p>
1123
+ <h4>{{ d.name | i18n }}</h4>
1124
+ <p>{{ d.intro | i18n }}</p>
1019
1125
  </a>
1020
1126
  </li>
1021
1127
  </ul>
@@ -1026,7 +1132,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1026
1132
  <!-- header end-->
1027
1133
  `
1028
1134
  }]
1029
- }], ctorParameters: function () { return [{ type: i1$4.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1135
+ }], ctorParameters: function () { return [{ type: i1$3.CacheService }, { type: YunzaiI18NService }, { type: i1$2._HttpClient }, { type: i0.Injector }]; } });
1030
1136
 
1031
1137
  class LayoutNavGroupComponent {
1032
1138
  constructor(inject, cacheService, http) {
@@ -1070,7 +1176,7 @@ class LayoutNavGroupComponent {
1070
1176
  this.state.destroy$.complete();
1071
1177
  }
1072
1178
  }
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 });
1179
+ 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
1180
  LayoutNavGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: LayoutNavGroupComponent, selector: "layout-nav-group", ngImport: i0, template: `
1075
1181
  <div class="yz-application-group">
1076
1182
  <nz-tabset>
@@ -1134,7 +1240,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1134
1240
  </div>
1135
1241
  `
1136
1242
  }]
1137
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$4.CacheService }, { type: i1$2._HttpClient }]; } });
1243
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1$3.CacheService }, { type: i1$2._HttpClient }]; } });
1138
1244
 
1139
1245
  class LayoutNavTileComponent {
1140
1246
  constructor() { }
@@ -1165,7 +1271,7 @@ class YunzaiLayoutBasicComponent {
1165
1271
  get reusetabCSS() {
1166
1272
  let cascadingStyleSheet = {};
1167
1273
  if (!this.state.display.nav) {
1168
- cascadingStyleSheet = Object.assign(Object.assign({}, cascadingStyleSheet), { top: 0 });
1274
+ cascadingStyleSheet = Object.assign(Object.assign({}, cascadingStyleSheet), { top: '0px' });
1169
1275
  }
1170
1276
  if (!this.state.display.aside) {
1171
1277
  cascadingStyleSheet = Object.assign(Object.assign({}, cascadingStyleSheet), { left: '24px' });
@@ -1245,12 +1351,18 @@ class YunzaiLayoutBasicComponent {
1245
1351
  this.layoutDisplayService.listen('reuseTab', (display) => {
1246
1352
  this.state.display.reusetab = display;
1247
1353
  });
1354
+ this.layoutDisplayService.listen('nav', (display) => {
1355
+ this.state.display.nav = display;
1356
+ });
1357
+ this.layoutDisplayService.listen('aside', (display) => {
1358
+ this.state.display.aside = display;
1359
+ });
1248
1360
  }
1249
1361
  ngOnDestroy() {
1250
1362
  this.state.destroy$.complete();
1251
1363
  }
1252
1364
  }
1253
- 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 });
1365
+ 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 });
1254
1366
  YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: YunzaiLayoutBasicComponent, selector: "yz-layout-basic", ngImport: i0, template: `<layout-default
1255
1367
  [options]="options"
1256
1368
  [asideUser]="asideUserTpl"
@@ -1288,20 +1400,20 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1288
1400
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1289
1401
  <div nz-menu style="width: 200px;">
1290
1402
  <div nz-menu-item>
1291
- {{ 'menu.application.mode' | i18n }}
1403
+ {{ 'mode.nav' | i18n }}
1292
1404
  </div>
1293
1405
 
1294
1406
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1295
1407
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1296
- {{ 'menu.application.application' | i18n }}
1408
+ {{ 'mode.nav.application' | i18n }}
1297
1409
  </div>
1298
1410
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1299
1411
  <i nz-icon nzType="group" class="mr-sm"></i>
1300
- {{ 'menu.application.group' | i18n }}
1412
+ {{ 'mode.nav.group' | i18n }}
1301
1413
  </div>
1302
1414
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1303
1415
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1304
- {{ 'menu.application.tile' | i18n }}
1416
+ {{ 'mode.nav.tile' | i18n }}
1305
1417
  </div>
1306
1418
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1307
1419
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1324,7 +1436,7 @@ YunzaiLayoutBasicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
1324
1436
  </div>
1325
1437
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1326
1438
  <ul nz-menu>
1327
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1439
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1328
1440
  </ul>
1329
1441
  </nz-dropdown-menu>
1330
1442
  </ng-template>
@@ -1376,20 +1488,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1376
1488
  <nz-dropdown-menu #settingsMenu="nzDropdownMenu">
1377
1489
  <div nz-menu style="width: 200px;">
1378
1490
  <div nz-menu-item>
1379
- {{ 'menu.application.mode' | i18n }}
1491
+ {{ 'mode.nav' | i18n }}
1380
1492
  </div>
1381
1493
 
1382
1494
  <div nz-menu-item (click)="onNavTypeChange(NavType.APPLICATION)">
1383
1495
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1384
- {{ 'menu.application.application' | i18n }}
1496
+ {{ 'mode.nav.application' | i18n }}
1385
1497
  </div>
1386
1498
  <div nz-menu-item (click)="onNavTypeChange(NavType.GROUP)">
1387
1499
  <i nz-icon nzType="group" class="mr-sm"></i>
1388
- {{ 'menu.application.group' | i18n }}
1500
+ {{ 'mode.nav.group' | i18n }}
1389
1501
  </div>
1390
1502
  <div nz-menu-item (click)="onNavTypeChange(NavType.TILE)">
1391
1503
  <i nz-icon nzType="appstore" class="mr-sm"></i>
1392
- {{ 'menu.application.tile' | i18n }}
1504
+ {{ 'mode.nav.tile' | i18n }}
1393
1505
  </div>
1394
1506
  <div nz-menu-item> <yunzai-fullscreen></yunzai-fullscreen> </div>
1395
1507
  <div nz-menu-item> <yunzai-clearstorage></yunzai-clearstorage> </div>
@@ -1412,7 +1524,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1412
1524
  </div>
1413
1525
  <nz-dropdown-menu #userMenu="nzDropdownMenu">
1414
1526
  <ul nz-menu>
1415
- <li nz-menu-item routerLink="/">{{ 'menu.backtohome' | i18n }}</li>
1527
+ <li nz-menu-item routerLink="/">{{ 'back.home' | i18n }}</li>
1416
1528
  </ul>
1417
1529
  </nz-dropdown-menu>
1418
1530
  </ng-template>
@@ -1425,7 +1537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
1425
1537
  </ng-template> `
1426
1538
  }]
1427
1539
  }], ctorParameters: function () {
1428
- return [{ type: i1$5.LayoutDisplayService }, { type: i1$4.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1540
+ return [{ type: i1$5.LayoutDisplayService }, { type: i1$3.CacheService }, { type: i3$3.StompService }, { type: undefined, decorators: [{
1429
1541
  type: Inject,
1430
1542
  args: [WINDOW]
1431
1543
  }] }];
@@ -1522,14 +1634,14 @@ class ActGuard {
1522
1634
  });
1523
1635
  }
1524
1636
  }
1525
- 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 });
1637
+ 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 });
1526
1638
  ActGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, providedIn: 'root' });
1527
1639
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: ActGuard, decorators: [{
1528
1640
  type: Injectable,
1529
1641
  args: [{
1530
1642
  providedIn: 'root'
1531
1643
  }]
1532
- }], ctorParameters: function () { return [{ type: i1$3.YunzaiConfigService }, { type: i1$4.CacheService }, { type: i1$3.PathToRegexpService }, { type: i5$1.Router }]; } });
1644
+ }], ctorParameters: function () { return [{ type: i1$4.YunzaiConfigService }, { type: i1$3.CacheService }, { type: i1$4.PathToRegexpService }, { type: i5$1.Router }]; } });
1533
1645
 
1534
1646
  class YunzaiAuthService {
1535
1647
  constructor(injector) {
@@ -2816,7 +2928,7 @@ class YunzaiStartupService {
2816
2928
  }
2817
2929
  }
2818
2930
  }
2819
- 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 });
2931
+ 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 });
2820
2932
  YunzaiStartupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService });
2821
2933
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: YunzaiStartupService, decorators: [{
2822
2934
  type: Injectable
@@ -2827,7 +2939,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
2827
2939
  }] }, { type: undefined, decorators: [{
2828
2940
  type: Inject,
2829
2941
  args: [WINDOW]
2830
- }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$4.CacheService }, { type: i1$3.YunzaiConfigService }];
2942
+ }] }, { type: i1$2.SettingsService }, { type: i3$4.ACLService }, { type: i1$2.TitleService }, { type: YunzaiAuthService }, { type: i1$3.CacheService }, { type: i1$4.YunzaiConfigService }];
2831
2943
  } });
2832
2944
  function mapYzSideToYelonMenu(menus) {
2833
2945
  menus.forEach(menu => {