@delon/theme 16.1.1 → 16.2.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.
Files changed (59) hide show
  1. package/compact.css +37 -7
  2. package/compact.min.css +1 -1
  3. package/dark.css +37 -7
  4. package/dark.min.css +1 -1
  5. package/default.css +37 -7
  6. package/default.min.css +1 -1
  7. package/esm2022/layout-default/layout-header-item-trigger.directive.mjs +5 -6
  8. package/esm2022/layout-default/layout-header-item.component.mjs +7 -8
  9. package/esm2022/layout-default/layout-header.component.mjs +18 -23
  10. package/esm2022/layout-default/layout-nav.component.mjs +16 -17
  11. package/esm2022/layout-default/layout-top-menu-item.mjs +6 -7
  12. package/esm2022/layout-default/layout.component.mjs +45 -30
  13. package/esm2022/layout-default/layout.module.mjs +6 -7
  14. package/esm2022/layout-default/layout.service.mjs +5 -6
  15. package/esm2022/setting-drawer/setting-drawer-item.component.mjs +6 -7
  16. package/esm2022/setting-drawer/setting-drawer.component.mjs +10 -14
  17. package/esm2022/setting-drawer/setting-drawer.module.mjs +6 -7
  18. package/esm2022/src/locale/locale.module.mjs +6 -7
  19. package/esm2022/src/locale/locale.service.mjs +5 -6
  20. package/esm2022/src/pipes/date/date.pipe.mjs +5 -6
  21. package/esm2022/src/pipes/keys/keys.pipe.mjs +5 -6
  22. package/esm2022/src/pipes/safe/html.pipe.mjs +5 -6
  23. package/esm2022/src/pipes/safe/url.pipe.mjs +5 -6
  24. package/esm2022/src/pipes/yn/yn.pipe.mjs +5 -6
  25. package/esm2022/src/services/drawer/drawer.helper.mjs +5 -6
  26. package/esm2022/src/services/http/http.client.mjs +5 -6
  27. package/esm2022/src/services/http/http.decorator.mjs +5 -6
  28. package/esm2022/src/services/i18n/i18n-url.guard.mjs +29 -14
  29. package/esm2022/src/services/i18n/i18n.mjs +9 -11
  30. package/esm2022/src/services/i18n/i18n.pipe.mjs +5 -6
  31. package/esm2022/src/services/menu/menu.service.mjs +5 -6
  32. package/esm2022/src/services/modal/modal.helper.mjs +11 -8
  33. package/esm2022/src/services/responsive/responsive.mjs +20 -14
  34. package/esm2022/src/services/rtl/rtl.service.mjs +5 -6
  35. package/esm2022/src/services/settings/settings.service.mjs +5 -6
  36. package/esm2022/src/services/title/title.service.mjs +12 -14
  37. package/esm2022/src/theme.module.mjs +6 -7
  38. package/esm2022/src/version.mjs +1 -1
  39. package/esm2022/theme-btn/theme-btn.component.mjs +13 -14
  40. package/esm2022/theme-btn/theme-btn.module.mjs +6 -7
  41. package/fesm2022/layout-default.mjs +88 -79
  42. package/fesm2022/layout-default.mjs.map +1 -1
  43. package/fesm2022/setting-drawer.mjs +16 -19
  44. package/fesm2022/setting-drawer.mjs.map +1 -1
  45. package/fesm2022/theme-btn.mjs +15 -15
  46. package/fesm2022/theme-btn.mjs.map +1 -1
  47. package/fesm2022/theme.mjs +119 -93
  48. package/fesm2022/theme.mjs.map +1 -1
  49. package/layout-default/layout-header.component.d.ts +2 -3
  50. package/layout-default/layout.component.d.ts +10 -6
  51. package/package.json +4 -4
  52. package/setting-drawer/setting-drawer.component.d.ts +3 -4
  53. package/src/services/i18n/i18n-url.guard.d.ts +27 -7
  54. package/src/services/menu/menu.service.d.ts +1 -1
  55. package/src/services/modal/modal.helper.d.ts +4 -0
  56. package/src/services/responsive/responsive.d.ts +2 -1
  57. package/src/services/title/title.service.d.ts +1 -1
  58. package/system/antd/_table.less +4 -1
  59. package/theme-btn/theme-btn.component.d.ts +5 -4
@@ -1,18 +1,19 @@
1
+ import { __decorate } from 'tslib';
1
2
  import * as i5 from '@angular/common';
2
3
  import { DOCUMENT, CommonModule } from '@angular/common';
3
4
  import * as i0 from '@angular/core';
4
- import { Component, ViewChild, Input, Injectable, EventEmitter, ChangeDetectionStrategy, ViewEncapsulation, Inject, Optional, Output, ContentChildren, Directive, NgModule } from '@angular/core';
5
+ import { Component, ViewChild, Input, Injectable, inject, DestroyRef, EventEmitter, ChangeDetectionStrategy, ViewEncapsulation, Inject, Optional, Output, ContentChildren, Directive, NgModule } from '@angular/core';
6
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
7
  import * as i2 from '@angular/router';
6
8
  import { NavigationEnd, RouteConfigLoadStart, NavigationError, NavigationCancel, RouteConfigLoadEnd, RouterModule } from '@angular/router';
7
- import { BehaviorSubject, Subject, takeUntil, filter } from 'rxjs';
9
+ import { BehaviorSubject, filter } from 'rxjs';
8
10
  import { updateHostClass } from '@delon/util/browser';
11
+ import { InputBoolean, InputNumber, ZoneOutside } from '@delon/util/decorator';
9
12
  import * as i2$1 from 'ng-zorro-antd/message';
10
13
  import { NzMessageModule } from 'ng-zorro-antd/message';
11
14
  import * as i1 from '@delon/theme';
12
15
  import * as i7 from 'ng-zorro-antd/icon';
13
16
  import { NzIconModule } from 'ng-zorro-antd/icon';
14
- import { __decorate } from 'tslib';
15
- import { InputBoolean, InputNumber, ZoneOutside } from '@delon/util/decorator';
16
17
  import { WINDOW } from '@delon/util/token';
17
18
  import * as i3 from '@angular/platform-browser';
18
19
  import * as i4 from '@angular/cdk/bidi';
@@ -28,20 +29,20 @@ class LayoutDefaultHeaderItemComponent {
28
29
  this.hidden = 'none';
29
30
  this.direction = 'right';
30
31
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultHeaderItemComponent, selector: "layout-default-header-item", inputs: { hidden: "hidden", direction: "direction" }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }], ngImport: i0, template: `
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultHeaderItemComponent, selector: "layout-default-header-item", inputs: { hidden: "hidden", direction: "direction" }, viewQueries: [{ propertyName: "host", first: true, predicate: ["host"], descendants: true, static: true }], ngImport: i0, template: `
33
34
  <ng-template #host>
34
- <ng-content></ng-content>
35
+ <ng-content />
35
36
  </ng-template>
36
37
  `, isInline: true }); }
37
38
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderItemComponent, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderItemComponent, decorators: [{
39
40
  type: Component,
40
41
  args: [{
41
42
  selector: 'layout-default-header-item',
42
43
  template: `
43
44
  <ng-template #host>
44
- <ng-content></ng-content>
45
+ <ng-content />
45
46
  </ng-template>
46
47
  `
47
48
  }]
@@ -107,10 +108,10 @@ class LayoutDefaultService {
107
108
  this.settings.setLayout('collapsed', status != null ? status : !this.settings.layout.collapsed);
108
109
  this.notify();
109
110
  }
110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultService, deps: [{ token: i1.SettingsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
111
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultService, providedIn: 'root' }); }
111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultService, deps: [{ token: i1.SettingsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
112
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultService, providedIn: 'root' }); }
112
113
  }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultService, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultService, decorators: [{
114
115
  type: Injectable,
115
116
  args: [{ providedIn: 'root' }]
116
117
  }], ctorParameters: function () { return [{ type: i1.SettingsService }]; } });
@@ -135,7 +136,7 @@ class LayoutDefaultNavComponent {
135
136
  this.doc = doc;
136
137
  this.win = win;
137
138
  this.directionality = directionality;
138
- this.destroy$ = new Subject();
139
+ this.destroy$ = inject(DestroyRef);
139
140
  this.dir = 'ltr';
140
141
  this.list = [];
141
142
  this.disabledAcl = false;
@@ -272,9 +273,9 @@ class LayoutDefaultNavComponent {
272
273
  this.menuSrv.open(menuSrv.find({ url, recursive: recursivePath }));
273
274
  }
274
275
  ngOnInit() {
275
- const { doc, router, destroy$, menuSrv, settings, cdr } = this;
276
+ const { doc, router, menuSrv, settings, cdr } = this;
276
277
  this.bodyEl = doc.querySelector('body');
277
- menuSrv.change.pipe(takeUntil(destroy$)).subscribe(data => {
278
+ menuSrv.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(data => {
278
279
  menuSrv.visit(data, (i, _p, depth) => {
279
280
  i._text = this.sanitizer.bypassSecurityTrustHtml(i.text);
280
281
  i._needIcon = depth <= this.maxLevelIcon && !!i.icon;
@@ -295,7 +296,7 @@ class LayoutDefaultNavComponent {
295
296
  this.list = data.filter((w) => w._hidden !== true);
296
297
  cdr.detectChanges();
297
298
  });
298
- router.events.pipe(takeUntil(destroy$)).subscribe(e => {
299
+ router.events.pipe(takeUntilDestroyed(this.destroy$)).subscribe(e => {
299
300
  if (e instanceof NavigationEnd) {
300
301
  this.openByUrl(e.urlAfterRedirects);
301
302
  this.underPad();
@@ -303,12 +304,13 @@ class LayoutDefaultNavComponent {
303
304
  }
304
305
  });
305
306
  settings.notify
306
- .pipe(takeUntil(destroy$), filter(t => t.type === 'layout' && t.name === 'collapsed'))
307
+ .pipe(takeUntilDestroyed(this.destroy$), filter(t => t.type === 'layout' && t.name === 'collapsed'))
307
308
  .subscribe(() => this.clearFloating());
308
309
  this.underPad();
309
310
  this.dir = this.directionality.value;
310
- this.directionality.change?.pipe(takeUntil(destroy$)).subscribe((direction) => {
311
+ this.directionality.change?.pipe(takeUntilDestroyed(this.destroy$)).subscribe((direction) => {
311
312
  this.dir = direction;
313
+ this.cdr.detectChanges();
312
314
  });
313
315
  this.openByUrl(router.url);
314
316
  this.ngZone.runOutsideAngular(() => this.genFloating());
@@ -327,8 +329,6 @@ class LayoutDefaultNavComponent {
327
329
  inFn(ls);
328
330
  }
329
331
  ngOnDestroy() {
330
- this.destroy$.next();
331
- this.destroy$.complete();
332
332
  this.clearFloating();
333
333
  }
334
334
  // #region Under pad
@@ -343,8 +343,8 @@ class LayoutDefaultNavComponent {
343
343
  openAside(status) {
344
344
  this.settings.setLayout('collapsed', status);
345
345
  }
346
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultNavComponent, deps: [{ token: i1.MenuService }, { token: i1.SettingsService }, { token: i2.Router }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.DomSanitizer }, { token: DOCUMENT }, { token: WINDOW }, { token: i4.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
347
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultNavComponent, selector: "layout-default-nav", inputs: { disabledAcl: "disabledAcl", autoCloseUnderPad: "autoCloseUnderPad", recursivePath: "recursivePath", openStrictly: "openStrictly", maxLevelIcon: "maxLevelIcon" }, outputs: { select: "select" }, host: { listeners: { "click": "_click()", "document:click": "closeSubMenu()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: "<ng-template #icon let-i>\n <ng-container *ngIf=\"i\" [ngSwitch]=\"i.type\">\n <i\n *ngSwitchCase=\"'icon'\"\n class=\"sidebar-nav__item-icon\"\n nz-icon\n [nzType]=\"i.value\"\n [nzTheme]=\"i.theme\"\n [nzSpin]=\"i.spin\"\n [nzTwotoneColor]=\"i.twoToneColor\"\n [nzIconfont]=\"i.iconfont\"\n [nzRotate]=\"i.rotate\"\n ></i>\n <i *ngSwitchCase=\"'iconfont'\" class=\"sidebar-nav__item-icon\" nz-icon [nzIconfont]=\"i.iconfont\"></i>\n <img *ngSwitchCase=\"'img'\" [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n <span *ngSwitchCase=\"'svg'\" class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n <i *ngSwitchDefault class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n </ng-container>\n</ng-template>\n<ng-template #tree let-ls>\n <ng-container *ngFor=\"let i of ls\">\n <li\n *ngIf=\"i._hidden !== true\"\n class=\"sidebar-nav__item\"\n [class.sidebar-nav__selected]=\"i._selected\"\n [class.sidebar-nav__open]=\"i.open\"\n >\n <!-- link -->\n <a\n *ngIf=\"i.children.length === 0\"\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [ngClass]=\"{ 'sidebar-nav__item-disabled': i.disabled }\"\n (mouseenter)=\"closeSubMenu()\"\n >\n <ng-container *ngIf=\"i._needIcon\">\n <ng-container *ngIf=\"!collapsed\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n </ng-container>\n <span *ngIf=\"collapsed\" nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n </span>\n </ng-container>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n <!-- has children link -->\n <a\n *ngIf=\"i.children.length > 0\"\n (click)=\"toggleOpen(i)\"\n (mouseenter)=\"showSubMenu($event, i)\"\n class=\"sidebar-nav__item-link\"\n >\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n <i class=\"sidebar-nav__sub-arrow\"></i>\n </a>\n <!-- badge -->\n <nz-badge *ngIf=\"i.badge\" [nzCount]=\"i.badge\" [nzDot]=\"i.badgeDot\" nzStandalone [nzOverflowCount]=\"9\"></nz-badge>\n <ul *ngIf=\"i.children.length > 0\" class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\"></ng-template>\n </ul>\n </li>\n </ng-container>\n</ng-template>\n<ul class=\"sidebar-nav\">\n <ng-container *ngFor=\"let group of list\">\n <li class=\"sidebar-nav__item sidebar-nav__group-title\" *ngIf=\"group.group\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\"></ng-template>\n </ng-container>\n</ul>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i5.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i6.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { kind: "directive", type: i7.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: i8.NzBadgeComponent, selector: "nz-badge", inputs: ["nzShowZero", "nzShowDot", "nzStandalone", "nzDot", "nzOverflowCount", "nzColor", "nzStyle", "nzText", "nzTitle", "nzStatus", "nzCount", "nzOffset", "nzSize"], exportAs: ["nzBadge"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
346
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultNavComponent, deps: [{ token: i1.MenuService }, { token: i1.SettingsService }, { token: i2.Router }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i3.DomSanitizer }, { token: DOCUMENT }, { token: WINDOW }, { token: i4.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
347
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultNavComponent, selector: "layout-default-nav", inputs: { disabledAcl: "disabledAcl", autoCloseUnderPad: "autoCloseUnderPad", recursivePath: "recursivePath", openStrictly: "openStrictly", maxLevelIcon: "maxLevelIcon" }, outputs: { select: "select" }, host: { listeners: { "click": "_click()", "document:click": "closeSubMenu()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: "<ng-template #icon let-i>\n <ng-container *ngIf=\"i\" [ngSwitch]=\"i.type\">\n <i\n *ngSwitchCase=\"'icon'\"\n class=\"sidebar-nav__item-icon\"\n nz-icon\n [nzType]=\"i.value\"\n [nzTheme]=\"i.theme\"\n [nzSpin]=\"i.spin\"\n [nzTwotoneColor]=\"i.twoToneColor\"\n [nzIconfont]=\"i.iconfont\"\n [nzRotate]=\"i.rotate\"\n ></i>\n <i *ngSwitchCase=\"'iconfont'\" class=\"sidebar-nav__item-icon\" nz-icon [nzIconfont]=\"i.iconfont\"></i>\n <img *ngSwitchCase=\"'img'\" [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n <span *ngSwitchCase=\"'svg'\" class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n <i *ngSwitchDefault class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n </ng-container>\n</ng-template>\n<ng-template #tree let-ls>\n <ng-container *ngFor=\"let i of ls\">\n <li\n *ngIf=\"i._hidden !== true\"\n class=\"sidebar-nav__item\"\n [class.sidebar-nav__selected]=\"i._selected\"\n [class.sidebar-nav__open]=\"i.open\"\n >\n <!-- link -->\n <a\n *ngIf=\"i.children.length === 0\"\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [ngClass]=\"{ 'sidebar-nav__item-disabled': i.disabled }\"\n (mouseenter)=\"closeSubMenu()\"\n >\n <ng-container *ngIf=\"i._needIcon\">\n <ng-container *ngIf=\"!collapsed\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </ng-container>\n <span *ngIf=\"collapsed\" nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n </ng-container>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n <!-- has children link -->\n <a\n *ngIf=\"i.children.length > 0\"\n (click)=\"toggleOpen(i)\"\n (mouseenter)=\"showSubMenu($event, i)\"\n class=\"sidebar-nav__item-link\"\n >\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n <i class=\"sidebar-nav__sub-arrow\"></i>\n </a>\n <!-- badge -->\n <nz-badge *ngIf=\"i.badge\" [nzCount]=\"i.badge\" [nzDot]=\"i.badgeDot\" nzStandalone [nzOverflowCount]=\"9\" />\n <ul *ngIf=\"i.children.length > 0\" class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n </li>\n </ng-container>\n</ng-template>\n<ul class=\"sidebar-nav\">\n <ng-container *ngFor=\"let group of list\">\n <li class=\"sidebar-nav__item sidebar-nav__group-title\" *ngIf=\"group.group\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n </ng-container>\n</ul>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i5.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i6.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { kind: "directive", type: i7.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: i8.NzBadgeComponent, selector: "nz-badge", inputs: ["nzShowZero", "nzShowDot", "nzStandalone", "nzDot", "nzOverflowCount", "nzColor", "nzStyle", "nzText", "nzTitle", "nzStatus", "nzCount", "nzOffset", "nzSize"], exportAs: ["nzBadge"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
348
348
  }
349
349
  __decorate([
350
350
  InputBoolean()
@@ -364,13 +364,13 @@ __decorate([
364
364
  __decorate([
365
365
  ZoneOutside()
366
366
  ], LayoutDefaultNavComponent.prototype, "showSubMenu", null);
367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultNavComponent, decorators: [{
367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultNavComponent, decorators: [{
368
368
  type: Component,
369
369
  args: [{ selector: 'layout-default-nav', host: {
370
370
  '(click)': '_click()',
371
371
  '(document:click)': 'closeSubMenu()',
372
372
  '[class.d-block]': `true`
373
- }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-template #icon let-i>\n <ng-container *ngIf=\"i\" [ngSwitch]=\"i.type\">\n <i\n *ngSwitchCase=\"'icon'\"\n class=\"sidebar-nav__item-icon\"\n nz-icon\n [nzType]=\"i.value\"\n [nzTheme]=\"i.theme\"\n [nzSpin]=\"i.spin\"\n [nzTwotoneColor]=\"i.twoToneColor\"\n [nzIconfont]=\"i.iconfont\"\n [nzRotate]=\"i.rotate\"\n ></i>\n <i *ngSwitchCase=\"'iconfont'\" class=\"sidebar-nav__item-icon\" nz-icon [nzIconfont]=\"i.iconfont\"></i>\n <img *ngSwitchCase=\"'img'\" [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n <span *ngSwitchCase=\"'svg'\" class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n <i *ngSwitchDefault class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n </ng-container>\n</ng-template>\n<ng-template #tree let-ls>\n <ng-container *ngFor=\"let i of ls\">\n <li\n *ngIf=\"i._hidden !== true\"\n class=\"sidebar-nav__item\"\n [class.sidebar-nav__selected]=\"i._selected\"\n [class.sidebar-nav__open]=\"i.open\"\n >\n <!-- link -->\n <a\n *ngIf=\"i.children.length === 0\"\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [ngClass]=\"{ 'sidebar-nav__item-disabled': i.disabled }\"\n (mouseenter)=\"closeSubMenu()\"\n >\n <ng-container *ngIf=\"i._needIcon\">\n <ng-container *ngIf=\"!collapsed\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n </ng-container>\n <span *ngIf=\"collapsed\" nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n </span>\n </ng-container>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n <!-- has children link -->\n <a\n *ngIf=\"i.children.length > 0\"\n (click)=\"toggleOpen(i)\"\n (mouseenter)=\"showSubMenu($event, i)\"\n class=\"sidebar-nav__item-link\"\n >\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\"></ng-template>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n <i class=\"sidebar-nav__sub-arrow\"></i>\n </a>\n <!-- badge -->\n <nz-badge *ngIf=\"i.badge\" [nzCount]=\"i.badge\" [nzDot]=\"i.badgeDot\" nzStandalone [nzOverflowCount]=\"9\"></nz-badge>\n <ul *ngIf=\"i.children.length > 0\" class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\"></ng-template>\n </ul>\n </li>\n </ng-container>\n</ng-template>\n<ul class=\"sidebar-nav\">\n <ng-container *ngFor=\"let group of list\">\n <li class=\"sidebar-nav__item sidebar-nav__group-title\" *ngIf=\"group.group\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\"></ng-template>\n </ng-container>\n</ul>\n" }]
373
+ }, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-template #icon let-i>\n <ng-container *ngIf=\"i\" [ngSwitch]=\"i.type\">\n <i\n *ngSwitchCase=\"'icon'\"\n class=\"sidebar-nav__item-icon\"\n nz-icon\n [nzType]=\"i.value\"\n [nzTheme]=\"i.theme\"\n [nzSpin]=\"i.spin\"\n [nzTwotoneColor]=\"i.twoToneColor\"\n [nzIconfont]=\"i.iconfont\"\n [nzRotate]=\"i.rotate\"\n ></i>\n <i *ngSwitchCase=\"'iconfont'\" class=\"sidebar-nav__item-icon\" nz-icon [nzIconfont]=\"i.iconfont\"></i>\n <img *ngSwitchCase=\"'img'\" [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n <span *ngSwitchCase=\"'svg'\" class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n <i *ngSwitchDefault class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n </ng-container>\n</ng-template>\n<ng-template #tree let-ls>\n <ng-container *ngFor=\"let i of ls\">\n <li\n *ngIf=\"i._hidden !== true\"\n class=\"sidebar-nav__item\"\n [class.sidebar-nav__selected]=\"i._selected\"\n [class.sidebar-nav__open]=\"i.open\"\n >\n <!-- link -->\n <a\n *ngIf=\"i.children.length === 0\"\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [ngClass]=\"{ 'sidebar-nav__item-disabled': i.disabled }\"\n (mouseenter)=\"closeSubMenu()\"\n >\n <ng-container *ngIf=\"i._needIcon\">\n <ng-container *ngIf=\"!collapsed\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </ng-container>\n <span *ngIf=\"collapsed\" nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n </ng-container>\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n <!-- has children link -->\n <a\n *ngIf=\"i.children.length > 0\"\n (click)=\"toggleOpen(i)\"\n (mouseenter)=\"showSubMenu($event, i)\"\n class=\"sidebar-nav__item-link\"\n >\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n <i class=\"sidebar-nav__sub-arrow\"></i>\n </a>\n <!-- badge -->\n <nz-badge *ngIf=\"i.badge\" [nzCount]=\"i.badge\" [nzDot]=\"i.badgeDot\" nzStandalone [nzOverflowCount]=\"9\" />\n <ul *ngIf=\"i.children.length > 0\" class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n </li>\n </ng-container>\n</ng-template>\n<ul class=\"sidebar-nav\">\n <ng-container *ngFor=\"let group of list\">\n <li class=\"sidebar-nav__item sidebar-nav__group-title\" *ngIf=\"group.group\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n </ng-container>\n</ul>\n" }]
374
374
  }], ctorParameters: function () { return [{ type: i1.MenuService }, { type: i1.SettingsService }, { type: i2.Router }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i3.DomSanitizer }, { type: undefined, decorators: [{
375
375
  type: Inject,
376
376
  args: [DOCUMENT]
@@ -410,7 +410,7 @@ class LayoutDefaultHeaderComponent {
410
410
  this.srv = srv;
411
411
  this.settings = settings;
412
412
  this.cdr = cdr;
413
- this.destroy$ = new Subject();
413
+ this.destroy$ = inject(DestroyRef);
414
414
  this.left = [];
415
415
  this.middle = [];
416
416
  this.right = [];
@@ -423,22 +423,18 @@ class LayoutDefaultHeaderComponent {
423
423
  this.cdr.detectChanges();
424
424
  }
425
425
  ngAfterViewInit() {
426
- this.items.changes.pipe(takeUntil(this.destroy$)).subscribe(() => this.refresh());
427
- this.srv.options$.pipe(takeUntil(this.destroy$)).subscribe(() => this.cdr.detectChanges());
426
+ this.items.changes.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.refresh());
427
+ this.srv.options$.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.cdr.detectChanges());
428
428
  this.refresh();
429
429
  }
430
430
  toggleCollapsed() {
431
431
  this.srv.toggleCollapsed();
432
432
  }
433
- ngOnDestroy() {
434
- this.destroy$.next();
435
- this.destroy$.complete();
436
- }
437
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderComponent, deps: [{ token: LayoutDefaultService }, { token: i1.SettingsService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
438
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultHeaderComponent, selector: "layout-default-header", inputs: { items: "items" }, host: { properties: { "class.alain-default__header": "true" } }, ngImport: i0, template: `
433
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderComponent, deps: [{ token: LayoutDefaultService }, { token: i1.SettingsService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
434
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultHeaderComponent, selector: "layout-default-header", inputs: { items: "items" }, host: { properties: { "class.alain-default__header": "true" } }, ngImport: i0, template: `
439
435
  <ng-template #render let-ls>
440
436
  <li *ngFor="let i of ls" [class.hidden-mobile]="i.hidden === 'mobile'" [class.hidden-pc]="i.hidden === 'pc'">
441
- <ng-container *ngTemplateOutlet="i.host"></ng-container>
437
+ <ng-container *ngTemplateOutlet="i.host" />
442
438
  </li>
443
439
  </ng-template>
444
440
  <div class="alain-default__header-logo" [style.width.px]="opt.logoFixWidth">
@@ -456,25 +452,25 @@ class LayoutDefaultHeaderComponent {
456
452
  <span nz-icon [nzType]="collapsedIcon"></span>
457
453
  </div>
458
454
  </li>
459
- <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: left }"></ng-template>
455
+ <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: left }" />
460
456
  </ul>
461
457
  <div *ngIf="middle.length > 0" class="alain-default__nav alain-default__nav-middle">
462
- <ng-container *ngTemplateOutlet="middle[0].host"></ng-container>
458
+ <ng-container *ngTemplateOutlet="middle[0].host" />
463
459
  </div>
464
460
  <ul class="alain-default__nav">
465
- <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: right }"></ng-template>
461
+ <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: right }" />
466
462
  </ul>
467
463
  </div>
468
464
  `, isInline: true, dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i7.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
469
465
  }
470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderComponent, decorators: [{
466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderComponent, decorators: [{
471
467
  type: Component,
472
468
  args: [{
473
469
  selector: 'layout-default-header',
474
470
  template: `
475
471
  <ng-template #render let-ls>
476
472
  <li *ngFor="let i of ls" [class.hidden-mobile]="i.hidden === 'mobile'" [class.hidden-pc]="i.hidden === 'pc'">
477
- <ng-container *ngTemplateOutlet="i.host"></ng-container>
473
+ <ng-container *ngTemplateOutlet="i.host" />
478
474
  </li>
479
475
  </ng-template>
480
476
  <div class="alain-default__header-logo" [style.width.px]="opt.logoFixWidth">
@@ -492,13 +488,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
492
488
  <span nz-icon [nzType]="collapsedIcon"></span>
493
489
  </div>
494
490
  </li>
495
- <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: left }"></ng-template>
491
+ <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: left }" />
496
492
  </ul>
497
493
  <div *ngIf="middle.length > 0" class="alain-default__nav alain-default__nav-middle">
498
- <ng-container *ngTemplateOutlet="middle[0].host"></ng-container>
494
+ <ng-container *ngTemplateOutlet="middle[0].host" />
499
495
  </div>
500
496
  <ul class="alain-default__nav">
501
- <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: right }"></ng-template>
497
+ <ng-template [ngTemplateOutlet]="render" [ngTemplateOutletContext]="{ $implicit: right }" />
502
498
  </ul>
503
499
  </div>
504
500
  `,
@@ -518,6 +514,11 @@ class LayoutDefaultComponent {
518
514
  set options(value) {
519
515
  this.srv.setOptions(value);
520
516
  }
517
+ get showFetching() {
518
+ if (this.fetchingStrictly)
519
+ return this.fetching;
520
+ return this.isFetching;
521
+ }
521
522
  get collapsed() {
522
523
  return this.settings.layout.collapsed;
523
524
  }
@@ -538,12 +539,14 @@ class LayoutDefaultComponent {
538
539
  this.asideBottom = null;
539
540
  this.nav = null;
540
541
  this.content = null;
541
- this.destroy$ = new Subject();
542
+ this.fetchingStrictly = false;
543
+ this.fetching = false;
542
544
  this.isFetching = false;
543
- router.events.pipe(takeUntil(this.destroy$)).subscribe(ev => this.processEv(ev));
544
- const { destroy$ } = this;
545
- this.srv.options$.pipe(takeUntil(destroy$)).subscribe(() => this.setClass());
546
- this.settings.notify.pipe(takeUntil(destroy$)).subscribe(() => this.setClass());
545
+ router.events
546
+ .pipe(takeUntilDestroyed(), filter(() => !this.fetchingStrictly))
547
+ .subscribe(ev => this.processEv(ev));
548
+ this.srv.options$.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());
549
+ this.settings.notify.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());
547
550
  }
548
551
  processEv(ev) {
549
552
  if (!this.isFetching && ev instanceof RouteConfigLoadStart) {
@@ -578,20 +581,16 @@ class LayoutDefaultComponent {
578
581
  });
579
582
  doc.body.classList[layout.colorWeak ? 'add' : 'remove']('color-weak');
580
583
  }
581
- ngOnDestroy() {
582
- this.destroy$.next();
583
- this.destroy$.complete();
584
- }
585
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultComponent, deps: [{ token: i2.Router }, { token: i2$1.NzMessageService }, { token: i1.SettingsService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: LayoutDefaultService }], target: i0.ɵɵFactoryTarget.Component }); }
586
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultComponent, selector: "layout-default", inputs: { options: "options", asideUser: "asideUser", asideBottom: "asideBottom", nav: "nav", content: "content", customError: "customError" }, queries: [{ propertyName: "headerItems", predicate: LayoutDefaultHeaderItemComponent }], exportAs: ["layoutDefault"], ngImport: i0, template: `
587
- <div class="alain-default__progress-bar" *ngIf="isFetching"></div>
588
- <layout-default-header *ngIf="!opt.hideHeader" [items]="headerItems"></layout-default-header>
584
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultComponent, deps: [{ token: i2.Router }, { token: i2$1.NzMessageService }, { token: i1.SettingsService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: LayoutDefaultService }], target: i0.ɵɵFactoryTarget.Component }); }
585
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultComponent, selector: "layout-default", inputs: { options: "options", asideUser: "asideUser", asideBottom: "asideBottom", nav: "nav", content: "content", customError: "customError", fetchingStrictly: "fetchingStrictly", fetching: "fetching" }, queries: [{ propertyName: "headerItems", predicate: LayoutDefaultHeaderItemComponent }], exportAs: ["layoutDefault"], ngImport: i0, template: `
586
+ <div class="alain-default__progress-bar" *ngIf="showFetching"></div>
587
+ <layout-default-header *ngIf="!opt.hideHeader" [items]="headerItems" />
589
588
  <div *ngIf="!opt.hideAside" class="alain-default__aside">
590
589
  <div class="alain-default__aside-wrap">
591
590
  <div class="alain-default__aside-inner">
592
- <ng-container *ngTemplateOutlet="asideUser"></ng-container>
593
- <ng-container *ngTemplateOutlet="nav"></ng-container>
594
- <layout-default-nav *ngIf="!nav"></layout-default-nav>
591
+ <ng-container *ngTemplateOutlet="asideUser" />
592
+ <ng-container *ngTemplateOutlet="nav" />
593
+ <layout-default-nav *ngIf="!nav" />
595
594
  </div>
596
595
  <div *ngIf="opt.showSiderCollapse" class="alain-default__aside-link">
597
596
  <ng-container *ngIf="asideBottom === null; else asideBottom">
@@ -603,25 +602,31 @@ class LayoutDefaultComponent {
603
602
  </div>
604
603
  </div>
605
604
  <section class="alain-default__content">
606
- <ng-container *ngTemplateOutlet="content"></ng-container>
607
- <ng-content></ng-content>
605
+ <ng-container *ngTemplateOutlet="content" />
606
+ <ng-content />
608
607
  </section>
609
608
  `, isInline: true, dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i7.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: LayoutDefaultNavComponent, selector: "layout-default-nav", inputs: ["disabledAcl", "autoCloseUnderPad", "recursivePath", "openStrictly", "maxLevelIcon"], outputs: ["select"] }, { kind: "component", type: LayoutDefaultHeaderComponent, selector: "layout-default-header", inputs: ["items"] }] }); }
610
609
  }
611
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultComponent, decorators: [{
610
+ __decorate([
611
+ InputBoolean()
612
+ ], LayoutDefaultComponent.prototype, "fetchingStrictly", void 0);
613
+ __decorate([
614
+ InputBoolean()
615
+ ], LayoutDefaultComponent.prototype, "fetching", void 0);
616
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultComponent, decorators: [{
612
617
  type: Component,
613
618
  args: [{
614
619
  selector: 'layout-default',
615
620
  exportAs: 'layoutDefault',
616
621
  template: `
617
- <div class="alain-default__progress-bar" *ngIf="isFetching"></div>
618
- <layout-default-header *ngIf="!opt.hideHeader" [items]="headerItems"></layout-default-header>
622
+ <div class="alain-default__progress-bar" *ngIf="showFetching"></div>
623
+ <layout-default-header *ngIf="!opt.hideHeader" [items]="headerItems" />
619
624
  <div *ngIf="!opt.hideAside" class="alain-default__aside">
620
625
  <div class="alain-default__aside-wrap">
621
626
  <div class="alain-default__aside-inner">
622
- <ng-container *ngTemplateOutlet="asideUser"></ng-container>
623
- <ng-container *ngTemplateOutlet="nav"></ng-container>
624
- <layout-default-nav *ngIf="!nav"></layout-default-nav>
627
+ <ng-container *ngTemplateOutlet="asideUser" />
628
+ <ng-container *ngTemplateOutlet="nav" />
629
+ <layout-default-nav *ngIf="!nav" />
625
630
  </div>
626
631
  <div *ngIf="opt.showSiderCollapse" class="alain-default__aside-link">
627
632
  <ng-container *ngIf="asideBottom === null; else asideBottom">
@@ -633,8 +638,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
633
638
  </div>
634
639
  </div>
635
640
  <section class="alain-default__content">
636
- <ng-container *ngTemplateOutlet="content"></ng-container>
637
- <ng-content></ng-content>
641
+ <ng-container *ngTemplateOutlet="content" />
642
+ <ng-content />
638
643
  </section>
639
644
  `
640
645
  }]
@@ -656,13 +661,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
656
661
  type: Input
657
662
  }], customError: [{
658
663
  type: Input
664
+ }], fetchingStrictly: [{
665
+ type: Input
666
+ }], fetching: [{
667
+ type: Input
659
668
  }] } });
660
669
 
661
670
  class LayoutDefaultHeaderItemTriggerDirective {
662
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderItemTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
663
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultHeaderItemTriggerDirective, selector: "[layout-default-header-item-trigger]", host: { properties: { "class.alain-default__nav-item": "true" } }, ngImport: i0 }); }
671
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderItemTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
672
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultHeaderItemTriggerDirective, selector: "[layout-default-header-item-trigger]", host: { properties: { "class.alain-default__nav-item": "true" } }, ngImport: i0 }); }
664
673
  }
665
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultHeaderItemTriggerDirective, decorators: [{
674
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultHeaderItemTriggerDirective, decorators: [{
666
675
  type: Directive,
667
676
  args: [{
668
677
  selector: '[layout-default-header-item-trigger]',
@@ -677,8 +686,8 @@ class LayoutDefaultTopMenuItemComponent {
677
686
  this.selected = false;
678
687
  this.disabled = false;
679
688
  }
680
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultTopMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
681
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: LayoutDefaultTopMenuItemComponent, selector: "layout-default-top-menu-item", inputs: { selected: "selected", disabled: "disabled" }, host: { properties: { "class.alain-default__nav-item": "true", "class.alain-default__top-menu-item": "true", "class.alain-default__top-menu-item-selected": "selected", "class.alain-default__top-menu-item-disabled": "disabled" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
689
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultTopMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: LayoutDefaultTopMenuItemComponent, selector: "layout-default-top-menu-item", inputs: { selected: "selected", disabled: "disabled" }, host: { properties: { "class.alain-default__nav-item": "true", "class.alain-default__top-menu-item": "true", "class.alain-default__top-menu-item-selected": "selected", "class.alain-default__top-menu-item-disabled": "disabled" } }, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
682
691
  }
683
692
  __decorate([
684
693
  InputBoolean()
@@ -686,11 +695,11 @@ __decorate([
686
695
  __decorate([
687
696
  InputBoolean()
688
697
  ], LayoutDefaultTopMenuItemComponent.prototype, "disabled", void 0);
689
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultTopMenuItemComponent, decorators: [{
698
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultTopMenuItemComponent, decorators: [{
690
699
  type: Component,
691
700
  args: [{
692
701
  selector: 'layout-default-top-menu-item',
693
- template: `<ng-content></ng-content>`,
702
+ template: `<ng-content />`,
694
703
  host: {
695
704
  '[class.alain-default__nav-item]': `true`,
696
705
  '[class.alain-default__top-menu-item]': `true`,
@@ -716,8 +725,8 @@ const COMPONENTS = [
716
725
  LayoutDefaultTopMenuItemComponent
717
726
  ];
718
727
  class LayoutDefaultModule {
719
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
720
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultModule, declarations: [LayoutDefaultComponent,
728
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
729
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultModule, declarations: [LayoutDefaultComponent,
721
730
  LayoutDefaultNavComponent,
722
731
  LayoutDefaultHeaderComponent,
723
732
  LayoutDefaultHeaderItemComponent,
@@ -735,7 +744,7 @@ class LayoutDefaultModule {
735
744
  LayoutDefaultHeaderItemComponent,
736
745
  LayoutDefaultHeaderItemTriggerDirective,
737
746
  LayoutDefaultTopMenuItemComponent] }); }
738
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultModule, imports: [CommonModule,
747
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultModule, imports: [CommonModule,
739
748
  RouterModule,
740
749
  NzToolTipModule,
741
750
  NzIconModule,
@@ -744,7 +753,7 @@ class LayoutDefaultModule {
744
753
  NzMessageModule,
745
754
  NzBadgeModule] }); }
746
755
  }
747
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: LayoutDefaultModule, decorators: [{
756
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: LayoutDefaultModule, decorators: [{
748
757
  type: NgModule,
749
758
  args: [{
750
759
  imports: [