@yelon/bis 17.2.2 → 17.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/esm2022/layout/layout-basic.component.mjs +202 -70
- package/esm2022/layout/layout-nav-application.component.mjs +48 -44
- package/esm2022/layout/layout-nav-group.component.mjs +13 -10
- package/esm2022/layout/layout-nav-tile.component.mjs +3 -3
- package/esm2022/layout/layout.module.mjs +4 -4
- package/esm2022/src/bis.module.mjs +4 -4
- package/esm2022/src/helper.mjs +2 -2
- package/esm2022/src/startup.service.mjs +11 -9
- package/esm2022/src/yunzai-act.guard.mjs +3 -3
- package/esm2022/src/yunzai-analysis-addon.guard.mjs +3 -3
- package/esm2022/yunzai-widgets/yunzai-clear-storage.component.mjs +3 -3
- package/esm2022/yunzai-widgets/yunzai-fullscreen.component.mjs +3 -3
- package/esm2022/yunzai-widgets/yunzai-i18n.component.mjs +3 -3
- package/esm2022/yunzai-widgets/yunzai-notify.component.mjs +6 -5
- package/esm2022/yunzai-widgets/yunzai-user.component.mjs +7 -6
- package/esm2022/yunzai-widgets/yunzai-widget.module.mjs +4 -4
- package/fesm2022/bis.mjs +23 -21
- package/fesm2022/bis.mjs.map +1 -1
- package/fesm2022/layout.mjs +267 -128
- package/fesm2022/layout.mjs.map +1 -1
- package/fesm2022/yunzai-widgets.mjs +24 -22
- package/fesm2022/yunzai-widgets.mjs.map +1 -1
- package/layout/layout-basic.component.d.ts +23 -2
- package/layout/layout-nav-group.component.d.ts +1 -0
- package/layout/style/index.less +58 -30
- package/package.json +12 -12
- package/src/startup.service.d.ts +10 -8
- package/theme-default.less +11 -9
- package/yunzai-widgets/yunzai-notify.component.d.ts +1 -0
- package/yunzai-widgets/yunzai-user.component.d.ts +1 -0
package/fesm2022/layout.mjs
CHANGED
|
@@ -16,20 +16,27 @@ import * as i3 from 'ng-zorro-antd/input';
|
|
|
16
16
|
import { NzInputModule } from 'ng-zorro-antd/input';
|
|
17
17
|
import * as i4$1 from 'ng-zorro-antd/tabs';
|
|
18
18
|
import { NzTabsModule } from 'ng-zorro-antd/tabs';
|
|
19
|
+
import { HttpClient } from '@angular/common/http';
|
|
19
20
|
import * as i2$2 from '@angular/router';
|
|
20
21
|
import { RouterModule } from '@angular/router';
|
|
21
22
|
import * as i3$2 from '@yelon/abc/reuse-tab';
|
|
22
23
|
import { ReuseTabModule } from '@yelon/abc/reuse-tab';
|
|
23
|
-
import * as
|
|
24
|
+
import * as i13 from '@yelon/bis/yunzai-widgets';
|
|
24
25
|
import { YunzaiWidgetsModule } from '@yelon/bis/yunzai-widgets';
|
|
25
26
|
import { StompService } from '@yelon/socket';
|
|
26
27
|
import * as i1$2 from '@yelon/theme/layout-default';
|
|
27
28
|
import { LayoutDisplayService, LayoutDefaultModule } from '@yelon/theme/layout-default';
|
|
28
|
-
import * as
|
|
29
|
+
import * as i12 from '@yelon/theme/theme-btn';
|
|
29
30
|
import { ThemeBtnModule } from '@yelon/theme/theme-btn';
|
|
30
|
-
import { YunzaiConfigService, WINDOW, useLocalStorageHeader, NavType, useLocalStorageProjectInfo, hasFavicon, setFavicon, useLocalStorageCurrent, useLocalStorageHeaderType, useLocalStorageDefaultRoute, log } from '@yelon/util';
|
|
31
|
+
import { YunzaiConfigService, WINDOW, useLocalStorageHeader, YUNZAI_CONFIG, NavType, useLocalStorageProjectInfo, hasFavicon, setFavicon, useLocalStorageCurrent, useLocalStorageHeaderType, useLocalStorageDefaultRoute, log } from '@yelon/util';
|
|
31
32
|
import * as i7 from 'ng-zorro-antd/avatar';
|
|
32
33
|
import { NzAvatarModule } from 'ng-zorro-antd/avatar';
|
|
34
|
+
import * as i11 from 'ng-zorro-antd/descriptions';
|
|
35
|
+
import { NzDescriptionsModule } from 'ng-zorro-antd/descriptions';
|
|
36
|
+
import * as i9 from 'ng-zorro-antd/modal';
|
|
37
|
+
import { NzModalModule } from 'ng-zorro-antd/modal';
|
|
38
|
+
import * as i10 from 'ng-zorro-antd/skeleton';
|
|
39
|
+
import { NzSkeletonModule } from 'ng-zorro-antd/skeleton';
|
|
33
40
|
import { Subject, takeUntil } from 'rxjs';
|
|
34
41
|
import { mergeBisConfig } from '@yelon/bis/config';
|
|
35
42
|
import * as i2$1 from 'ng-zorro-antd/menu';
|
|
@@ -176,8 +183,8 @@ class YunzaiNavApplicationComponent {
|
|
|
176
183
|
ngOnDestroy() {
|
|
177
184
|
this.destroy$.complete();
|
|
178
185
|
}
|
|
179
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
180
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
186
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiNavApplicationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
187
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: YunzaiNavApplicationComponent, isStandalone: true, selector: "yunzai-layout-nav-application", ngImport: i0, template: `
|
|
181
188
|
<ng-template #search>
|
|
182
189
|
<div nz-row class="yz-application-list-search">
|
|
183
190
|
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
@@ -223,25 +230,27 @@ class YunzaiNavApplicationComponent {
|
|
|
223
230
|
|
|
224
231
|
<div class="yz-application" id="navDropdown" nz-row *ngIf="state.active">
|
|
225
232
|
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
233
|
+
<div class="yz-application-topic-list">
|
|
234
|
+
@if (showAllMenu) {
|
|
235
|
+
<div data-event-id="_nav_topic" data-name="全部应用" class="yz-application-text" (click)="attachNav('all')"
|
|
236
|
+
>{{ 'mode.nav.all' | i18n }}
|
|
237
|
+
</div>
|
|
238
|
+
}
|
|
239
|
+
@if (showMineMenu) {
|
|
240
|
+
<div data-event-id="_nav_topic" data-name="我的应用" class="yz-application-text" (click)="attachNav('mine')"
|
|
241
|
+
>{{ 'mode.nav.mine' | i18n }}
|
|
242
|
+
</div>
|
|
243
|
+
}
|
|
244
|
+
@for (nav of state.topics; track nav) {
|
|
245
|
+
<div
|
|
246
|
+
data-event-id="_nav_topic"
|
|
247
|
+
[attr.data-name]="nav.name | i18n"
|
|
248
|
+
class="yz-application-text"
|
|
249
|
+
(click)="attachNav('other', nav)"
|
|
250
|
+
>{{ nav.name | i18n }}
|
|
251
|
+
</div>
|
|
252
|
+
}
|
|
253
|
+
</div>
|
|
245
254
|
</div>
|
|
246
255
|
<div nz-col [nzSpan]="21" class="yz-application-container">
|
|
247
256
|
@switch (state.type) {
|
|
@@ -258,7 +267,7 @@ class YunzaiNavApplicationComponent {
|
|
|
258
267
|
</div>
|
|
259
268
|
}
|
|
260
269
|
@case ('other') {
|
|
261
|
-
<div class="yz-application-list">
|
|
270
|
+
<div class="yz-application-list yz-application-list-other">
|
|
262
271
|
<div class="yz-application-list-item">
|
|
263
272
|
<ul>
|
|
264
273
|
@for (nav of state.list; track nav) {
|
|
@@ -278,7 +287,7 @@ class YunzaiNavApplicationComponent {
|
|
|
278
287
|
</div>
|
|
279
288
|
`, isInline: true, dependencies: [{ kind: "pipe", type: I18nPipe, name: "i18n" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i2.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i3.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: NzGridModule }] }); }
|
|
280
289
|
}
|
|
281
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
290
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiNavApplicationComponent, decorators: [{
|
|
282
291
|
type: Component,
|
|
283
292
|
args: [{
|
|
284
293
|
selector: `yunzai-layout-nav-application`,
|
|
@@ -328,25 +337,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
328
337
|
|
|
329
338
|
<div class="yz-application" id="navDropdown" nz-row *ngIf="state.active">
|
|
330
339
|
<div nz-col [nzSpan]="3" class="yz-application-topic">
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
340
|
+
<div class="yz-application-topic-list">
|
|
341
|
+
@if (showAllMenu) {
|
|
342
|
+
<div data-event-id="_nav_topic" data-name="全部应用" class="yz-application-text" (click)="attachNav('all')"
|
|
343
|
+
>{{ 'mode.nav.all' | i18n }}
|
|
344
|
+
</div>
|
|
345
|
+
}
|
|
346
|
+
@if (showMineMenu) {
|
|
347
|
+
<div data-event-id="_nav_topic" data-name="我的应用" class="yz-application-text" (click)="attachNav('mine')"
|
|
348
|
+
>{{ 'mode.nav.mine' | i18n }}
|
|
349
|
+
</div>
|
|
350
|
+
}
|
|
351
|
+
@for (nav of state.topics; track nav) {
|
|
352
|
+
<div
|
|
353
|
+
data-event-id="_nav_topic"
|
|
354
|
+
[attr.data-name]="nav.name | i18n"
|
|
355
|
+
class="yz-application-text"
|
|
356
|
+
(click)="attachNav('other', nav)"
|
|
357
|
+
>{{ nav.name | i18n }}
|
|
358
|
+
</div>
|
|
359
|
+
}
|
|
360
|
+
</div>
|
|
350
361
|
</div>
|
|
351
362
|
<div nz-col [nzSpan]="21" class="yz-application-container">
|
|
352
363
|
@switch (state.type) {
|
|
@@ -363,7 +374,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
363
374
|
</div>
|
|
364
375
|
}
|
|
365
376
|
@case ('other') {
|
|
366
|
-
<div class="yz-application-list">
|
|
377
|
+
<div class="yz-application-list yz-application-list-other">
|
|
367
378
|
<div class="yz-application-list-item">
|
|
368
379
|
<ul>
|
|
369
380
|
@for (nav of state.list; track nav) {
|
|
@@ -391,6 +402,7 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
391
402
|
constructor() {
|
|
392
403
|
this.http = inject(_HttpClient);
|
|
393
404
|
this.destroy$ = new Subject();
|
|
405
|
+
this.win = inject(WINDOW);
|
|
394
406
|
this.state = {
|
|
395
407
|
topics: []
|
|
396
408
|
};
|
|
@@ -411,24 +423,24 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
411
423
|
}
|
|
412
424
|
switch (topic.target) {
|
|
413
425
|
case 'href':
|
|
414
|
-
|
|
426
|
+
this.win.location.href = topic.url;
|
|
415
427
|
break;
|
|
416
428
|
case 'blank':
|
|
417
|
-
|
|
429
|
+
this.win.location.href = topic.url;
|
|
418
430
|
break;
|
|
419
431
|
case 'target':
|
|
420
|
-
|
|
432
|
+
this.win.location.href = topic.url;
|
|
421
433
|
break;
|
|
422
434
|
default:
|
|
423
|
-
|
|
435
|
+
this.win.location.href = topic.url;
|
|
424
436
|
break;
|
|
425
437
|
}
|
|
426
438
|
}
|
|
427
439
|
ngOnDestroy() {
|
|
428
440
|
this.destroy$.complete();
|
|
429
441
|
}
|
|
430
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
431
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
442
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutNavGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
443
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: YunzaiLayoutNavGroupComponent, isStandalone: true, selector: "yunzai-layout-nav-group", ngImport: i0, template: `
|
|
432
444
|
<div class="yz-application-group">
|
|
433
445
|
<nz-tabset>
|
|
434
446
|
@for (menu of state.topics; track menu) {
|
|
@@ -462,8 +474,9 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
462
474
|
(click)="open(item)"
|
|
463
475
|
>
|
|
464
476
|
@if (item.icon) {
|
|
465
|
-
<i nz-icon [nzType]="item.icon" nzTheme="outline"></i>
|
|
477
|
+
<i nz-icon [nzType]="item.icon" nzTheme="outline"></i>
|
|
466
478
|
}
|
|
479
|
+
{{ item.name | i18n }}
|
|
467
480
|
</li>
|
|
468
481
|
</ng-container>
|
|
469
482
|
}
|
|
@@ -477,7 +490,7 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
477
490
|
</div>
|
|
478
491
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i1$1.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i2$1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i2$1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i3$1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "directive", type: i3$1.NzDropDownADirective, selector: "a[nz-dropdown]" }, { kind: "component", type: i3$1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }, { kind: "ngmodule", type: NzTabsModule }, { kind: "component", type: i4$1.NzTabSetComponent, selector: "nz-tabset", inputs: ["nzSelectedIndex", "nzTabPosition", "nzTabBarExtraContent", "nzCanDeactivate", "nzAddIcon", "nzTabBarStyle", "nzType", "nzSize", "nzAnimated", "nzTabBarGutter", "nzHideAdd", "nzCentered", "nzHideAll", "nzLinkRouter", "nzLinkExact"], outputs: ["nzSelectChange", "nzSelectedIndexChange", "nzTabListScroll", "nzClose", "nzAdd"], exportAs: ["nzTabset"] }, { kind: "component", type: i4$1.NzTabComponent, selector: "nz-tab", inputs: ["nzTitle", "nzClosable", "nzCloseIcon", "nzDisabled", "nzForceRender"], outputs: ["nzSelect", "nzDeselect", "nzClick", "nzContextmenu"], exportAs: ["nzTab"] }] }); }
|
|
479
492
|
}
|
|
480
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
493
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutNavGroupComponent, decorators: [{
|
|
481
494
|
type: Component,
|
|
482
495
|
args: [{
|
|
483
496
|
selector: `yunzai-layout-nav-group`,
|
|
@@ -515,8 +528,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
515
528
|
(click)="open(item)"
|
|
516
529
|
>
|
|
517
530
|
@if (item.icon) {
|
|
518
|
-
<i nz-icon [nzType]="item.icon" nzTheme="outline"></i>
|
|
531
|
+
<i nz-icon [nzType]="item.icon" nzTheme="outline"></i>
|
|
519
532
|
}
|
|
533
|
+
{{ item.name | i18n }}
|
|
520
534
|
</li>
|
|
521
535
|
</ng-container>
|
|
522
536
|
}
|
|
@@ -535,10 +549,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
535
549
|
}] });
|
|
536
550
|
|
|
537
551
|
class YunzaiLayoutNavTileComponent {
|
|
538
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
539
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
552
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutNavTileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
553
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: YunzaiLayoutNavTileComponent, isStandalone: true, selector: "yunzai-layout-nav-tile", ngImport: i0, template: `<ng-template />`, isInline: true }); }
|
|
540
554
|
}
|
|
541
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
555
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutNavTileComponent, decorators: [{
|
|
542
556
|
type: Component,
|
|
543
557
|
args: [{
|
|
544
558
|
selector: `yunzai-layout-nav-tile`,
|
|
@@ -552,6 +566,7 @@ class YunzaiLayoutBasicComponent {
|
|
|
552
566
|
this.stomp = inject(StompService);
|
|
553
567
|
this.win = inject(WINDOW);
|
|
554
568
|
this.layoutDisplayService = inject(LayoutDisplayService);
|
|
569
|
+
this.conf = inject(YUNZAI_CONFIG);
|
|
555
570
|
this.NavType = NavType;
|
|
556
571
|
this.state = {
|
|
557
572
|
options: {
|
|
@@ -570,6 +585,12 @@ class YunzaiLayoutBasicComponent {
|
|
|
570
585
|
},
|
|
571
586
|
navType: NavType.APPLICATION
|
|
572
587
|
};
|
|
588
|
+
this.headerStyleList = [];
|
|
589
|
+
this.applicationModal = {
|
|
590
|
+
isVisible: false,
|
|
591
|
+
loading: false
|
|
592
|
+
};
|
|
593
|
+
this.httpClient = inject(HttpClient);
|
|
573
594
|
}
|
|
574
595
|
get options() {
|
|
575
596
|
return this.state.options;
|
|
@@ -600,6 +621,7 @@ class YunzaiLayoutBasicComponent {
|
|
|
600
621
|
return cascadingStyleSheet;
|
|
601
622
|
}
|
|
602
623
|
ngOnInit() {
|
|
624
|
+
this.config = this.conf.bis;
|
|
603
625
|
this.initLogo();
|
|
604
626
|
this.initFavicon();
|
|
605
627
|
this.initNavType();
|
|
@@ -640,17 +662,19 @@ class YunzaiLayoutBasicComponent {
|
|
|
640
662
|
const projectInfo = getProjectInfo();
|
|
641
663
|
if (navType !== null) {
|
|
642
664
|
this.state.navType = navType;
|
|
643
|
-
return;
|
|
644
665
|
}
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
fetchedNavType = projectInfo.headerStyle.pop()?.value;
|
|
666
|
+
else {
|
|
667
|
+
this.state.navType = NavType.APPLICATION;
|
|
648
668
|
}
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
669
|
+
if (projectInfo.headerStyle && projectInfo.headerStyle.length > 0) {
|
|
670
|
+
this.headerStyleList = projectInfo.headerStyle;
|
|
671
|
+
const hasThis = this.headerStyleList.some(item => item.value === this.state.navType);
|
|
672
|
+
if (!hasThis) {
|
|
673
|
+
this.state.navType = projectInfo.headerStyle[0].value;
|
|
674
|
+
const [setHeaderType] = useLocalStorageHeaderType();
|
|
675
|
+
setHeaderType(this.state.navType);
|
|
676
|
+
}
|
|
652
677
|
}
|
|
653
|
-
this.state.navType = fetchedNavType;
|
|
654
678
|
}
|
|
655
679
|
toIndex() {
|
|
656
680
|
const [, getDefaultRoute] = useLocalStorageDefaultRoute();
|
|
@@ -673,8 +697,30 @@ class YunzaiLayoutBasicComponent {
|
|
|
673
697
|
this.state.display.aside = display;
|
|
674
698
|
});
|
|
675
699
|
}
|
|
676
|
-
|
|
677
|
-
|
|
700
|
+
// 关于本应用
|
|
701
|
+
aboutApplication() {
|
|
702
|
+
const urlArr = window.location.pathname.split(`${this.config.baseUrl}/`);
|
|
703
|
+
if (urlArr.length > 1) {
|
|
704
|
+
// 应用标识,截取路径中 /backstage/后第一个字符串
|
|
705
|
+
// 例: http://222.30.194.61/backstage/auth/page/oafportal/#/base/menu 中 auth
|
|
706
|
+
const name = urlArr[1].split('/')[0];
|
|
707
|
+
this.applicationModal.isVisible = true;
|
|
708
|
+
this.applicationModal.loading = true;
|
|
709
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
710
|
+
this.httpClient.get(`/basic/api/app/aboutApp?name=${name}`).subscribe(
|
|
711
|
+
// @ts-ignore
|
|
712
|
+
(response) => {
|
|
713
|
+
this.applicationModal.loading = false;
|
|
714
|
+
if (response.data) {
|
|
715
|
+
this.applicationInfo = response.data;
|
|
716
|
+
}
|
|
717
|
+
}, () => {
|
|
718
|
+
this.applicationModal.loading = false;
|
|
719
|
+
});
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutBasicComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
723
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: YunzaiLayoutBasicComponent, isStandalone: true, selector: "yunzai-layout-basic", ngImport: i0, template: `
|
|
678
724
|
<layout-default [options]="options" [asideUser]="asideUserTpl" [content]="displayReusetab ? contentTpl : noneTpl">
|
|
679
725
|
<layout-default-header-item direction="left">
|
|
680
726
|
<ng-container [ngSwitch]="navType">
|
|
@@ -687,6 +733,8 @@ class YunzaiLayoutBasicComponent {
|
|
|
687
733
|
<ng-container *ngSwitchCase="NavType.TILE">
|
|
688
734
|
<yunzai-layout-nav-tile />
|
|
689
735
|
</ng-container>
|
|
736
|
+
<ng-container *ngSwitchCase="NavType.BLANK" />
|
|
737
|
+
<ng-container *ngSwitchCase="NavType.TABS" />
|
|
690
738
|
<ng-container *ngSwitchDefault>
|
|
691
739
|
<yunzai-layout-nav-application />
|
|
692
740
|
</ng-container>
|
|
@@ -714,23 +762,40 @@ class YunzaiLayoutBasicComponent {
|
|
|
714
762
|
<div data-event-id="_nav_mode" nz-menu-item>
|
|
715
763
|
{{ 'mode.nav' | i18n }}
|
|
716
764
|
</div>
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
765
|
+
|
|
766
|
+
@if (headerStyleList.length > 1) {
|
|
767
|
+
@for (i of headerStyleList; track $index) {
|
|
768
|
+
<div
|
|
769
|
+
data-event-id="_nav_mode"
|
|
770
|
+
nz-menu-item
|
|
771
|
+
[attr.data-type]="i.value"
|
|
772
|
+
(click)="onNavTypeChange(i.value)"
|
|
773
|
+
>
|
|
774
|
+
<ng-container [ngSwitch]="i.value">
|
|
775
|
+
<ng-container *ngSwitchCase="NavType.APPLICATION">
|
|
776
|
+
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
777
|
+
</ng-container>
|
|
778
|
+
<ng-container *ngSwitchCase="NavType.GROUP">
|
|
779
|
+
<i nz-icon nzType="group" class="mr-sm"></i>
|
|
780
|
+
</ng-container>
|
|
781
|
+
<ng-container *ngSwitchCase="NavType.TILE">
|
|
782
|
+
<i nz-icon nzType="dash" class="mr-sm"></i>
|
|
783
|
+
</ng-container>
|
|
784
|
+
<ng-container *ngSwitchCase="NavType.BLANK">
|
|
785
|
+
<i nz-icon nzType="border" class="mr-sm"></i>
|
|
786
|
+
</ng-container>
|
|
787
|
+
<ng-container *ngSwitchCase="NavType.TABS">
|
|
788
|
+
<i nz-icon nzType="insert-row-above" class="mr-sm"></i>
|
|
789
|
+
</ng-container>
|
|
790
|
+
<ng-container *ngSwitchDefault>
|
|
791
|
+
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
792
|
+
</ng-container>
|
|
793
|
+
{{ 'mode.nav.' + i.value | i18n }}
|
|
794
|
+
</ng-container>
|
|
795
|
+
</div>
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
|
|
734
799
|
<div data-event-id="_nav_fullscreen" nz-menu-item>
|
|
735
800
|
<yunzai-header-fullscreen />
|
|
736
801
|
</div>
|
|
@@ -748,15 +813,9 @@ class YunzaiLayoutBasicComponent {
|
|
|
748
813
|
</layout-default-header-item>
|
|
749
814
|
</layout-default>
|
|
750
815
|
<ng-template #asideUserTpl>
|
|
751
|
-
<div
|
|
752
|
-
|
|
753
|
-
nz-dropdown
|
|
754
|
-
nzTrigger="click"
|
|
755
|
-
[nzDropdownMenu]="userMenu"
|
|
756
|
-
class="yunzai-default__aside-user"
|
|
757
|
-
>
|
|
758
|
-
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon" />
|
|
759
|
-
<div class="yunzai-default__aside-user-info">
|
|
816
|
+
<div data-event-id="_route_user" class="yunzai-default__aside-user">
|
|
817
|
+
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon" (click)="aboutApplication()" />
|
|
818
|
+
<div class="yunzai-default__aside-user-info" nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu">
|
|
760
819
|
<strong>{{ aside.name | i18n }}</strong>
|
|
761
820
|
<p class="mb0">{{ aside.intro | i18n }}</p>
|
|
762
821
|
</div>
|
|
@@ -771,10 +830,42 @@ class YunzaiLayoutBasicComponent {
|
|
|
771
830
|
<reuse-tab #reuseTab [ngStyle]="reusetabCSS" />
|
|
772
831
|
<router-outlet (activate)="reuseTab.activate($event)" (attach)="reuseTab.activate($event)" />
|
|
773
832
|
</ng-template>
|
|
774
|
-
<ng-template #noneTpl>
|
|
775
|
-
|
|
833
|
+
<ng-template #noneTpl>
|
|
834
|
+
<router-outlet />
|
|
835
|
+
</ng-template>
|
|
836
|
+
|
|
837
|
+
<nz-modal
|
|
838
|
+
nzTitle="关于本应用"
|
|
839
|
+
[(nzVisible)]="applicationModal.isVisible"
|
|
840
|
+
[nzOkText]="null"
|
|
841
|
+
[nzCancelText]="'关闭'"
|
|
842
|
+
[nzWidth]="700"
|
|
843
|
+
(nzOnCancel)="applicationModal.isVisible = false"
|
|
844
|
+
>
|
|
845
|
+
<ng-container *nzModalContent>
|
|
846
|
+
<nz-skeleton [nzLoading]="applicationModal.loading" [nzActive]="true">
|
|
847
|
+
<nz-descriptions nzBordered [nzSize]="'middle'" [nzColumn]="{ xxl: 2, xl: 2, lg: 2, md: 2, sm: 2, xs: 1 }">
|
|
848
|
+
<nz-descriptions-item nzTitle="应用名称">{{ applicationInfo?.showName }}</nz-descriptions-item>
|
|
849
|
+
<nz-descriptions-item nzTitle="应用标识">{{ applicationInfo?.name }}</nz-descriptions-item>
|
|
850
|
+
<nz-descriptions-item nzTitle="版本总数">{{ applicationInfo?.versionNum }}</nz-descriptions-item>
|
|
851
|
+
<nz-descriptions-item nzTitle="应用首次部署时间">{{
|
|
852
|
+
applicationInfo?.firstDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
853
|
+
}}</nz-descriptions-item>
|
|
854
|
+
<nz-descriptions-item nzTitle="当前版本">{{ applicationInfo?.currentVersion }}</nz-descriptions-item>
|
|
855
|
+
<nz-descriptions-item nzTitle="当前版本部署时间">{{
|
|
856
|
+
applicationInfo?.currentDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
857
|
+
}}</nz-descriptions-item>
|
|
858
|
+
<nz-descriptions-item nzTitle="最新版本">{{ applicationInfo?.lastVersion }}</nz-descriptions-item>
|
|
859
|
+
<nz-descriptions-item nzTitle="最新版本发布时间">{{
|
|
860
|
+
applicationInfo?.lastPushDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
861
|
+
}}</nz-descriptions-item>
|
|
862
|
+
</nz-descriptions>
|
|
863
|
+
</nz-skeleton>
|
|
864
|
+
</ng-container>
|
|
865
|
+
</nz-modal>
|
|
866
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: LayoutDefaultModule }, { kind: "component", type: i1$2.LayoutDefaultComponent, selector: "layout-default", inputs: ["options", "asideUser", "asideBottom", "nav", "content", "customError", "fetchingStrictly", "fetching"], exportAs: ["layoutDefault"] }, { kind: "component", type: i1$2.LayoutDefaultHeaderItemComponent, selector: "layout-default-header-item", inputs: ["hidden", "direction"] }, { kind: "directive", type: i1$2.LayoutDefaultHeaderItemTriggerDirective, selector: "[layout-default-header-item-trigger]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ReuseTabModule }, { kind: "component", type: i3$2.ReuseTabComponent, selector: "reuse-tab, [reuse-tab]", inputs: ["mode", "i18n", "debug", "max", "tabMaxWidth", "excludes", "allowClose", "keepingScroll", "storageState", "keepingScrollContainer", "customContextMenu", "tabBarExtraContent", "tabBarGutter", "tabBarStyle", "tabType", "routeParamMatchMode", "disabled", "titleRender", "canClose"], outputs: ["change", "close"], exportAs: ["reuseTab"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: I18nPipe, name: "i18n" }, { kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i2$1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i2$1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i3$1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i3$1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: NzAvatarModule }, { kind: "component", type: i7.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon"], outputs: ["nzError"], exportAs: ["nzAvatar"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i1$1.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzModalModule }, { kind: "component", type: i9.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzDraggable", "nzContent", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }, { kind: "directive", type: i9.NzModalContentDirective, selector: "[nzModalContent]", exportAs: ["nzModalContent"] }, { kind: "ngmodule", type: NzSkeletonModule }, { kind: "component", type: i10.NzSkeletonComponent, selector: "nz-skeleton", inputs: ["nzActive", "nzLoading", "nzRound", "nzTitle", "nzAvatar", "nzParagraph"], exportAs: ["nzSkeleton"] }, { kind: "ngmodule", type: NzDescriptionsModule }, { kind: "component", type: i11.NzDescriptionsComponent, selector: "nz-descriptions", inputs: ["nzBordered", "nzLayout", "nzColumn", "nzSize", "nzTitle", "nzExtra", "nzColon"], exportAs: ["nzDescriptions"] }, { kind: "component", type: i11.NzDescriptionsItemComponent, selector: "nz-descriptions-item", inputs: ["nzSpan", "nzTitle"], exportAs: ["nzDescriptionsItem"] }, { kind: "ngmodule", type: ThemeBtnModule }, { kind: "component", type: i12.ThemeBtnComponent, selector: "theme-btn", inputs: ["types", "devTips", "deployUrl"], outputs: ["themeChange"] }, { kind: "ngmodule", type: YunzaiWidgetsModule }, { kind: "component", type: i13.YunzaiHeaderClearStorageComponent, selector: "yunzai-header-clear-storage" }, { kind: "component", type: i13.YunzaiHeaderFullScreenComponent, selector: "yunzai-header-fullscreen" }, { kind: "component", type: i13.YunzaiHeaderNotifyComponent, selector: "yunzai-header-notify" }, { kind: "component", type: i13.YunzaiHeaderI18nComponent, selector: "yunzai-header-i18n", inputs: ["showLangText"] }, { kind: "component", type: i13.YunzaiHeaderUserComponent, selector: "yunzai-header-user" }, { kind: "component", type: YunzaiNavApplicationComponent, selector: "yunzai-layout-nav-application" }, { kind: "component", type: YunzaiLayoutNavGroupComponent, selector: "yunzai-layout-nav-group" }, { kind: "component", type: YunzaiLayoutNavTileComponent, selector: "yunzai-layout-nav-tile" }] }); }
|
|
776
867
|
}
|
|
777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
868
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutBasicComponent, decorators: [{
|
|
778
869
|
type: Component,
|
|
779
870
|
args: [{
|
|
780
871
|
selector: `yunzai-layout-basic`,
|
|
@@ -791,6 +882,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
791
882
|
<ng-container *ngSwitchCase="NavType.TILE">
|
|
792
883
|
<yunzai-layout-nav-tile />
|
|
793
884
|
</ng-container>
|
|
885
|
+
<ng-container *ngSwitchCase="NavType.BLANK" />
|
|
886
|
+
<ng-container *ngSwitchCase="NavType.TABS" />
|
|
794
887
|
<ng-container *ngSwitchDefault>
|
|
795
888
|
<yunzai-layout-nav-application />
|
|
796
889
|
</ng-container>
|
|
@@ -818,23 +911,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
818
911
|
<div data-event-id="_nav_mode" nz-menu-item>
|
|
819
912
|
{{ 'mode.nav' | i18n }}
|
|
820
913
|
</div>
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
914
|
+
|
|
915
|
+
@if (headerStyleList.length > 1) {
|
|
916
|
+
@for (i of headerStyleList; track $index) {
|
|
917
|
+
<div
|
|
918
|
+
data-event-id="_nav_mode"
|
|
919
|
+
nz-menu-item
|
|
920
|
+
[attr.data-type]="i.value"
|
|
921
|
+
(click)="onNavTypeChange(i.value)"
|
|
922
|
+
>
|
|
923
|
+
<ng-container [ngSwitch]="i.value">
|
|
924
|
+
<ng-container *ngSwitchCase="NavType.APPLICATION">
|
|
925
|
+
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
926
|
+
</ng-container>
|
|
927
|
+
<ng-container *ngSwitchCase="NavType.GROUP">
|
|
928
|
+
<i nz-icon nzType="group" class="mr-sm"></i>
|
|
929
|
+
</ng-container>
|
|
930
|
+
<ng-container *ngSwitchCase="NavType.TILE">
|
|
931
|
+
<i nz-icon nzType="dash" class="mr-sm"></i>
|
|
932
|
+
</ng-container>
|
|
933
|
+
<ng-container *ngSwitchCase="NavType.BLANK">
|
|
934
|
+
<i nz-icon nzType="border" class="mr-sm"></i>
|
|
935
|
+
</ng-container>
|
|
936
|
+
<ng-container *ngSwitchCase="NavType.TABS">
|
|
937
|
+
<i nz-icon nzType="insert-row-above" class="mr-sm"></i>
|
|
938
|
+
</ng-container>
|
|
939
|
+
<ng-container *ngSwitchDefault>
|
|
940
|
+
<i nz-icon nzType="appstore" class="mr-sm"></i>
|
|
941
|
+
</ng-container>
|
|
942
|
+
{{ 'mode.nav.' + i.value | i18n }}
|
|
943
|
+
</ng-container>
|
|
944
|
+
</div>
|
|
945
|
+
}
|
|
946
|
+
}
|
|
947
|
+
|
|
838
948
|
<div data-event-id="_nav_fullscreen" nz-menu-item>
|
|
839
949
|
<yunzai-header-fullscreen />
|
|
840
950
|
</div>
|
|
@@ -852,15 +962,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
852
962
|
</layout-default-header-item>
|
|
853
963
|
</layout-default>
|
|
854
964
|
<ng-template #asideUserTpl>
|
|
855
|
-
<div
|
|
856
|
-
|
|
857
|
-
nz-dropdown
|
|
858
|
-
nzTrigger="click"
|
|
859
|
-
[nzDropdownMenu]="userMenu"
|
|
860
|
-
class="yunzai-default__aside-user"
|
|
861
|
-
>
|
|
862
|
-
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon" />
|
|
863
|
-
<div class="yunzai-default__aside-user-info">
|
|
965
|
+
<div data-event-id="_route_user" class="yunzai-default__aside-user">
|
|
966
|
+
<nz-avatar class="yunzai-default__aside-user-avatar" [nzSrc]="aside.icon" (click)="aboutApplication()" />
|
|
967
|
+
<div class="yunzai-default__aside-user-info" nz-dropdown nzTrigger="click" [nzDropdownMenu]="userMenu">
|
|
864
968
|
<strong>{{ aside.name | i18n }}</strong>
|
|
865
969
|
<p class="mb0">{{ aside.intro | i18n }}</p>
|
|
866
970
|
</div>
|
|
@@ -875,7 +979,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
875
979
|
<reuse-tab #reuseTab [ngStyle]="reusetabCSS" />
|
|
876
980
|
<router-outlet (activate)="reuseTab.activate($event)" (attach)="reuseTab.activate($event)" />
|
|
877
981
|
</ng-template>
|
|
878
|
-
<ng-template #noneTpl>
|
|
982
|
+
<ng-template #noneTpl>
|
|
983
|
+
<router-outlet />
|
|
984
|
+
</ng-template>
|
|
985
|
+
|
|
986
|
+
<nz-modal
|
|
987
|
+
nzTitle="关于本应用"
|
|
988
|
+
[(nzVisible)]="applicationModal.isVisible"
|
|
989
|
+
[nzOkText]="null"
|
|
990
|
+
[nzCancelText]="'关闭'"
|
|
991
|
+
[nzWidth]="700"
|
|
992
|
+
(nzOnCancel)="applicationModal.isVisible = false"
|
|
993
|
+
>
|
|
994
|
+
<ng-container *nzModalContent>
|
|
995
|
+
<nz-skeleton [nzLoading]="applicationModal.loading" [nzActive]="true">
|
|
996
|
+
<nz-descriptions nzBordered [nzSize]="'middle'" [nzColumn]="{ xxl: 2, xl: 2, lg: 2, md: 2, sm: 2, xs: 1 }">
|
|
997
|
+
<nz-descriptions-item nzTitle="应用名称">{{ applicationInfo?.showName }}</nz-descriptions-item>
|
|
998
|
+
<nz-descriptions-item nzTitle="应用标识">{{ applicationInfo?.name }}</nz-descriptions-item>
|
|
999
|
+
<nz-descriptions-item nzTitle="版本总数">{{ applicationInfo?.versionNum }}</nz-descriptions-item>
|
|
1000
|
+
<nz-descriptions-item nzTitle="应用首次部署时间">{{
|
|
1001
|
+
applicationInfo?.firstDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
1002
|
+
}}</nz-descriptions-item>
|
|
1003
|
+
<nz-descriptions-item nzTitle="当前版本">{{ applicationInfo?.currentVersion }}</nz-descriptions-item>
|
|
1004
|
+
<nz-descriptions-item nzTitle="当前版本部署时间">{{
|
|
1005
|
+
applicationInfo?.currentDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
1006
|
+
}}</nz-descriptions-item>
|
|
1007
|
+
<nz-descriptions-item nzTitle="最新版本">{{ applicationInfo?.lastVersion }}</nz-descriptions-item>
|
|
1008
|
+
<nz-descriptions-item nzTitle="最新版本发布时间">{{
|
|
1009
|
+
applicationInfo?.lastPushDate | date: 'yyyy-MM-dd HH:mm:ss'
|
|
1010
|
+
}}</nz-descriptions-item>
|
|
1011
|
+
</nz-descriptions>
|
|
1012
|
+
</nz-skeleton>
|
|
1013
|
+
</ng-container>
|
|
1014
|
+
</nz-modal>
|
|
879
1015
|
`,
|
|
880
1016
|
standalone: true,
|
|
881
1017
|
imports: [
|
|
@@ -887,6 +1023,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
887
1023
|
NzDropDownModule,
|
|
888
1024
|
NzAvatarModule,
|
|
889
1025
|
NzIconModule,
|
|
1026
|
+
NzModalModule,
|
|
1027
|
+
NzSkeletonModule,
|
|
1028
|
+
NzDescriptionsModule,
|
|
890
1029
|
ThemeBtnModule,
|
|
891
1030
|
YunzaiWidgetsModule,
|
|
892
1031
|
YunzaiNavApplicationComponent,
|
|
@@ -898,8 +1037,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
898
1037
|
|
|
899
1038
|
const COMPONENTS = [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent];
|
|
900
1039
|
class YunzaiLayoutModule {
|
|
901
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
902
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.
|
|
1040
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1041
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutModule, imports: [I18nPipe,
|
|
903
1042
|
FormsModule,
|
|
904
1043
|
NzFormModule,
|
|
905
1044
|
NzInputModule,
|
|
@@ -908,7 +1047,7 @@ class YunzaiLayoutModule {
|
|
|
908
1047
|
NzIconModule,
|
|
909
1048
|
NzDropDownModule,
|
|
910
1049
|
NzTabsModule, YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent], exports: [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent] }); }
|
|
911
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.
|
|
1050
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutModule, imports: [FormsModule,
|
|
912
1051
|
NzFormModule,
|
|
913
1052
|
NzInputModule,
|
|
914
1053
|
CommonModule,
|
|
@@ -917,7 +1056,7 @@ class YunzaiLayoutModule {
|
|
|
917
1056
|
NzDropDownModule,
|
|
918
1057
|
NzTabsModule, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent] }); }
|
|
919
1058
|
}
|
|
920
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
1059
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: YunzaiLayoutModule, decorators: [{
|
|
921
1060
|
type: NgModule,
|
|
922
1061
|
args: [{
|
|
923
1062
|
imports: [
|