@delon/theme 19.0.1 → 19.1.0
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/compact.css +3 -0
- package/compact.min.css +1 -1
- package/dark.css +3 -0
- package/dark.min.css +1 -1
- package/default.css +3 -0
- package/default.min.css +1 -1
- package/fesm2022/layout-default.mjs +4 -12
- package/fesm2022/layout-default.mjs.map +1 -1
- package/fesm2022/setting-drawer.mjs.map +1 -1
- package/fesm2022/theme.mjs +4 -3
- package/fesm2022/theme.mjs.map +1 -1
- package/package.json +5 -5
- package/setting-drawer/setting-drawer.types.d.ts +1 -3
- package/src/locale/locale.types.d.ts +1 -3
- package/src/services/http/http.client.d.ts +1 -3
- package/src/services/http/http.decorator.d.ts +1 -3
- package/src/services/menu/interface.d.ts +2 -0
- package/variable.css +3 -0
- package/variable.min.css +1 -1
|
@@ -186,13 +186,7 @@ class LayoutDefaultNavComponent {
|
|
|
186
186
|
if (!this.floatingEl)
|
|
187
187
|
return;
|
|
188
188
|
this.floatingEl.removeEventListener('click', this.floatingClickHandle.bind(this));
|
|
189
|
-
|
|
190
|
-
if (this.floatingEl.hasOwnProperty('remove')) {
|
|
191
|
-
this.floatingEl.remove();
|
|
192
|
-
}
|
|
193
|
-
else if (this.floatingEl.parentNode) {
|
|
194
|
-
this.floatingEl.parentNode.removeChild(this.floatingEl);
|
|
195
|
-
}
|
|
189
|
+
this.floatingEl.parentNode?.removeChild(this.floatingEl);
|
|
196
190
|
}
|
|
197
191
|
genFloating() {
|
|
198
192
|
this.clearFloating();
|
|
@@ -215,9 +209,7 @@ class LayoutDefaultNavComponent {
|
|
|
215
209
|
}
|
|
216
210
|
hideAll() {
|
|
217
211
|
const allNode = this.floatingEl.querySelectorAll(`.${FLOATINGCLS}`);
|
|
218
|
-
|
|
219
|
-
allNode[i].classList.remove(SHOWCLS);
|
|
220
|
-
}
|
|
212
|
+
allNode.forEach(node => node.classList.remove(SHOWCLS));
|
|
221
213
|
}
|
|
222
214
|
// calculate the node position values.
|
|
223
215
|
calPos(linkNode, node) {
|
|
@@ -356,7 +348,7 @@ class LayoutDefaultNavComponent {
|
|
|
356
348
|
this.settings.setLayout('collapsed', status);
|
|
357
349
|
}
|
|
358
350
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.1", ngImport: i0, type: LayoutDefaultNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
359
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.1", type: LayoutDefaultNavComponent, isStandalone: false, selector: "layout-default-nav", inputs: { disabledAcl: ["disabledAcl", "disabledAcl", booleanAttribute], autoCloseUnderPad: ["autoCloseUnderPad", "autoCloseUnderPad", booleanAttribute], recursivePath: ["recursivePath", "recursivePath", booleanAttribute], hideEmptyChildren: ["hideEmptyChildren", "hideEmptyChildren", booleanAttribute], openStrictly: ["openStrictly", "openStrictly", booleanAttribute], maxLevelIcon: ["maxLevelIcon", "maxLevelIcon", numberAttribute] }, outputs: { select: "select" }, host: { listeners: { "click": "_click()", "document:click": "closeSubMenu()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: "<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge
|
|
351
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.1", type: LayoutDefaultNavComponent, isStandalone: false, selector: "layout-default-nav", inputs: { disabledAcl: ["disabledAcl", "disabledAcl", booleanAttribute], autoCloseUnderPad: ["autoCloseUnderPad", "autoCloseUnderPad", booleanAttribute], recursivePath: ["recursivePath", "recursivePath", booleanAttribute], hideEmptyChildren: ["hideEmptyChildren", "hideEmptyChildren", booleanAttribute], openStrictly: ["openStrictly", "openStrictly", booleanAttribute], maxLevelIcon: ["maxLevelIcon", "maxLevelIcon", numberAttribute] }, outputs: { select: "select" }, host: { listeners: { "click": "_click()", "document:click": "closeSubMenu()" }, properties: { "class.d-block": "true" } }, ngImport: i0, template: "<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge\n [nzCount]=\"i.badge\"\n [nzDot]=\"i.badgeDot\"\n nzStandalone\n [nzOverflowCount]=\"i.badgeOverflowCount ? i.badgeOverflowCount : 9\"\n />\n }\n @if (i.children.length > 0) {\n <ul class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n }\n </li>\n }\n }\n</ng-template>\n<ul class=\"sidebar-nav\">\n @for (group of list; track $index) {\n @if (group.group) {\n <li class=\"sidebar-nav__item sidebar-nav__group-title\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n }\n</ul>\n", dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "cdkConnectedOverlayPush", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { kind: "directive", type: i3.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: i4.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 });
|
|
360
352
|
}
|
|
361
353
|
__decorate([
|
|
362
354
|
ZoneOutside()
|
|
@@ -367,7 +359,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImpor
|
|
|
367
359
|
'(click)': '_click()',
|
|
368
360
|
'(document:click)': 'closeSubMenu()',
|
|
369
361
|
'[class.d-block]': `true`
|
|
370
|
-
}, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge
|
|
362
|
+
}, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge\n [nzCount]=\"i.badge\"\n [nzDot]=\"i.badgeDot\"\n nzStandalone\n [nzOverflowCount]=\"i.badgeOverflowCount ? i.badgeOverflowCount : 9\"\n />\n }\n @if (i.children.length > 0) {\n <ul class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n }\n </li>\n }\n }\n</ng-template>\n<ul class=\"sidebar-nav\">\n @for (group of list; track $index) {\n @if (group.group) {\n <li class=\"sidebar-nav__item sidebar-nav__group-title\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n }\n</ul>\n" }]
|
|
371
363
|
}], propDecorators: { disabledAcl: [{
|
|
372
364
|
type: Input,
|
|
373
365
|
args: [{ transform: booleanAttribute }]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-default.mjs","sources":["../../../../packages/theme/layout-default/layout-header-item.component.ts","../../../../packages/theme/layout-default/layout.service.ts","../../../../packages/theme/layout-default/layout-nav.component.ts","../../../../packages/theme/layout-default/layout-nav.component.html","../../../../packages/theme/layout-default/layout-header.component.ts","../../../../packages/theme/layout-default/layout.component.ts","../../../../packages/theme/layout-default/layout-header-item-trigger.directive.ts","../../../../packages/theme/layout-default/layout-top-menu-item.ts","../../../../packages/theme/layout-default/layout.module.ts","../../../../packages/theme/layout-default/layout-default.ts"],"sourcesContent":["import { Component, Input, TemplateRef, ViewChild } from '@angular/core';\n\nimport { LayoutDefaultHeaderItemDirection, LayoutDefaultHeaderItemHidden } from './types';\n\n@Component({\n selector: 'layout-default-header-item',\n template: `\n <ng-template #host>\n <ng-content />\n </ng-template>\n `,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderItemComponent {\n @ViewChild('host', { static: true }) host!: TemplateRef<void>;\n\n @Input() hidden: LayoutDefaultHeaderItemHidden = 'none';\n @Input() direction: LayoutDefaultHeaderItemDirection = 'right';\n}\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport { Injectable, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\nimport { SettingsService } from '@delon/theme';\n\nimport { LayoutDefaultOptions } from './types';\n\nconst DEFAULT: LayoutDefaultOptions = {\n logoExpanded: `./assets/logo-full.svg`,\n logoCollapsed: `./assets/logo.svg`,\n logoLink: `/`,\n showHeaderCollapse: true,\n showSiderCollapse: false,\n hideAside: false,\n hideHeader: false\n};\n\n@Injectable({ providedIn: 'root' })\nexport class LayoutDefaultService {\n private readonly settings = inject(SettingsService);\n private _options$ = new BehaviorSubject<LayoutDefaultOptions>(DEFAULT);\n private _options: LayoutDefaultOptions = DEFAULT;\n\n get options(): LayoutDefaultOptions {\n return this._options;\n }\n\n get options$(): Observable<LayoutDefaultOptions> {\n return this._options$.asObservable();\n }\n\n get collapsedIcon(): string {\n const collapsed = this.settings.layout.collapsed;\n let type = collapsed ? 'unfold' : 'fold';\n if (this.settings.layout.direction === 'rtl') {\n type = collapsed ? 'fold' : 'unfold';\n }\n return `menu-${type}`;\n }\n\n constructor(bm: BreakpointObserver) {\n const mobileMedia = 'only screen and (max-width: 767.99px)';\n bm.observe(mobileMedia)\n .pipe(takeUntilDestroyed())\n .subscribe(state => this.checkMedia(state.matches));\n this.checkMedia(bm.isMatched(mobileMedia));\n }\n\n private checkMedia(value: boolean): void {\n this.settings.setLayout('collapsed', value);\n }\n\n private notify(): void {\n this._options$.next(this._options);\n }\n\n /**\n * Set layout configuration\n *\n * 设置布局配置\n */\n setOptions(options?: LayoutDefaultOptions | null): void {\n this._options = {\n ...DEFAULT,\n ...options\n };\n this.notify();\n }\n\n /**\n * Toggle the collapsed state of the sidebar menu bar\n *\n * 切换侧边栏菜单栏折叠状态\n */\n toggleCollapsed(status?: boolean): void {\n this.settings.setLayout('collapsed', status != null ? status : !this.settings.layout.collapsed);\n this.notify();\n }\n}\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n EventEmitter,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n Renderer2,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\n\nimport { Menu, MenuIcon, MenuInner, MenuService, SettingsService } from '@delon/theme';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { WINDOW } from '@delon/util/token';\n\nexport interface Nav extends MenuInner {\n _needIcon?: boolean;\n _text?: SafeHtml;\n}\n\nconst SHOWCLS = 'sidebar-nav__floating-show';\nconst FLOATINGCLS = 'sidebar-nav__floating';\n\n@Component({\n selector: 'layout-default-nav',\n templateUrl: './layout-nav.component.html',\n host: {\n '(click)': '_click()',\n '(document:click)': 'closeSubMenu()',\n '[class.d-block]': `true`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultNavComponent implements OnInit, OnDestroy {\n private readonly doc = inject(DOCUMENT);\n private readonly win = inject(WINDOW);\n private readonly router = inject(Router);\n private readonly render = inject(Renderer2);\n private readonly menuSrv = inject(MenuService);\n private readonly settings = inject(SettingsService);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly ngZone = inject(NgZone);\n private readonly sanitizer = inject(DomSanitizer);\n private readonly directionality = inject(Directionality);\n\n private bodyEl!: HTMLBodyElement;\n private destroy$ = inject(DestroyRef);\n private floatingEl!: HTMLDivElement;\n dir?: Direction = 'ltr';\n list: Nav[] = [];\n\n @Input({ transform: booleanAttribute }) disabledAcl = false;\n @Input({ transform: booleanAttribute }) autoCloseUnderPad = true;\n @Input({ transform: booleanAttribute }) recursivePath = true;\n @Input({ transform: booleanAttribute }) hideEmptyChildren = true;\n @Input({ transform: booleanAttribute })\n set openStrictly(value: boolean) {\n this.menuSrv.openStrictly = value;\n }\n @Input({ transform: numberAttribute }) maxLevelIcon = 3;\n @Output() readonly select = new EventEmitter<Menu>();\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n private getLinkNode(node: HTMLElement): HTMLElement | null {\n node = node.nodeName === 'A' ? node : (node.parentNode as HTMLElement);\n return node.nodeName !== 'A' ? null : node;\n }\n\n private floatingClickHandle(e: MouseEvent): boolean {\n e.stopPropagation();\n const linkNode = this.getLinkNode(e.target as HTMLElement);\n if (linkNode == null) {\n return false;\n }\n const id = +linkNode.dataset!.id!;\n // Should be ingore children title trigger event\n if (isNaN(id)) {\n return false;\n }\n\n let item: Nav;\n this.menuSrv.visit(this.list, (i: Nav) => {\n if (!item && i._id === id) {\n item = i;\n }\n });\n this.to(item!);\n this.hideAll();\n e.preventDefault();\n return false;\n }\n\n private clearFloating(): void {\n if (!this.floatingEl) return;\n this.floatingEl.removeEventListener('click', this.floatingClickHandle.bind(this));\n // fix ie: https://github.com/ng-alain/delon/issues/52\n if (this.floatingEl.hasOwnProperty('remove')) {\n this.floatingEl.remove();\n } else if (this.floatingEl.parentNode) {\n this.floatingEl.parentNode.removeChild(this.floatingEl);\n }\n }\n\n private genFloating(): void {\n this.clearFloating();\n this.floatingEl = this.render.createElement('div');\n this.floatingEl.classList.add(`${FLOATINGCLS}-container`);\n this.floatingEl.addEventListener('click', this.floatingClickHandle.bind(this), false);\n this.bodyEl.appendChild(this.floatingEl);\n }\n\n private genSubNode(linkNode: HTMLLinkElement, item: Nav): HTMLUListElement {\n const id = `_sidebar-nav-${item._id}`;\n const childNode = item.badge ? linkNode.nextElementSibling!.nextElementSibling! : linkNode.nextElementSibling!;\n const node = childNode.cloneNode(true) as HTMLUListElement;\n node.id = id;\n node.classList.add(FLOATINGCLS);\n node.addEventListener(\n 'mouseleave',\n () => {\n node.classList.remove(SHOWCLS);\n },\n false\n );\n this.floatingEl.appendChild(node);\n return node;\n }\n\n private hideAll(): void {\n const allNode = this.floatingEl.querySelectorAll(`.${FLOATINGCLS}`);\n for (let i = 0; i < allNode.length; i++) {\n allNode[i].classList.remove(SHOWCLS);\n }\n }\n\n // calculate the node position values.\n private calPos(linkNode: HTMLLinkElement, node: HTMLUListElement): void {\n const rect = linkNode.getBoundingClientRect();\n // bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14721015/\n const scrollTop = Math.max(this.doc.documentElement.scrollTop, this.bodyEl.scrollTop);\n const docHeight = Math.max(this.doc.documentElement.clientHeight, this.bodyEl.clientHeight);\n const spacing = 5;\n let offsetHeight = -spacing;\n if (docHeight < rect.top + node.clientHeight) {\n offsetHeight = rect.top + node.clientHeight - docHeight + spacing;\n }\n node.style.top = `${rect.top + scrollTop - offsetHeight}px`;\n if (this.dir === 'rtl') {\n node.style.right = `${rect.width + spacing}px`;\n } else {\n node.style.left = `${rect.right + spacing}px`;\n }\n }\n\n @ZoneOutside()\n showSubMenu(e: MouseEvent, item: Nav): void {\n if (this.collapsed !== true) {\n return;\n }\n e.preventDefault();\n const linkNode = e.target as Element;\n this.genFloating();\n const subNode = this.genSubNode(linkNode as HTMLLinkElement, item);\n this.hideAll();\n subNode.classList.add(SHOWCLS);\n this.calPos(linkNode as HTMLLinkElement, subNode);\n }\n\n to(item: Menu): void {\n this.select.emit(item);\n if (item.disabled) return;\n\n if (item.externalLink) {\n if (item.target === '_blank') {\n this.win.open(item.externalLink);\n } else {\n this.win.location.href = item.externalLink;\n }\n return;\n }\n this.ngZone.run(() => this.router.navigateByUrl(item.link!));\n }\n\n toggleOpen(item: Nav): void {\n this.menuSrv.toggleOpen(item);\n }\n\n _click(): void {\n if (this.isPad && this.collapsed) {\n this.openAside(false);\n this.hideAll();\n }\n }\n\n closeSubMenu(): void {\n if (this.collapsed) {\n this.hideAll();\n }\n }\n\n private openByUrl(url: string | null): void {\n const { menuSrv, recursivePath } = this;\n this.menuSrv.open(menuSrv.find({ url, recursive: recursivePath }));\n }\n\n ngOnInit(): void {\n const { doc, router, menuSrv, settings, cdr } = this;\n this.bodyEl = doc.querySelector<HTMLBodyElement>('body')!;\n menuSrv.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(data => {\n menuSrv.visit(data, (i: Nav, _p, depth) => {\n i._text = this.sanitizer.bypassSecurityTrustHtml(i.text!);\n i._needIcon = depth! <= this.maxLevelIcon && !!i.icon;\n if (!i._aclResult) {\n if (this.disabledAcl) {\n i.disabled = true;\n } else {\n i._hidden = true;\n }\n }\n const icon = i.icon as MenuIcon;\n if (icon && icon.type === 'svg' && typeof icon.value === 'string') {\n icon.value = this.sanitizer.bypassSecurityTrustHtml(icon.value!!);\n }\n });\n if (this.hideEmptyChildren) this.fixHide(data);\n this.list = data.filter((w: Nav) => w._hidden !== true);\n cdr.detectChanges();\n });\n router.events.pipe(takeUntilDestroyed(this.destroy$)).subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.openByUrl(e.urlAfterRedirects);\n this.underPad();\n this.cdr.detectChanges();\n }\n });\n settings.notify\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter(t => t.type === 'layout' && t.name === 'collapsed')\n )\n .subscribe(() => this.clearFloating());\n this.underPad();\n\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n this.openByUrl(router.url);\n this.ngZone.runOutsideAngular(() => this.genFloating());\n }\n\n private fixHide(ls: Nav[]): void {\n const inFn = (list: Nav[]): void => {\n for (const item of list) {\n if (item.children && item.children.length > 0) {\n inFn(item.children);\n if (!item._hidden) {\n item._hidden = item.children.every((v: Nav) => v._hidden);\n }\n }\n }\n };\n\n inFn(ls);\n }\n\n ngOnDestroy(): void {\n this.clearFloating();\n }\n\n // #region Under pad\n\n private get isPad(): boolean {\n return this.doc.defaultView!.innerWidth < 768;\n }\n\n private underPad(): void {\n if (this.autoCloseUnderPad && this.isPad && !this.collapsed) {\n setTimeout(() => this.openAside(true));\n }\n }\n\n private openAside(status: boolean): void {\n this.settings.setLayout('collapsed', status);\n }\n\n // #endregion\n}\n","<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge [nzCount]=\"i.badge\" [nzDot]=\"i.badgeDot\" nzStandalone [nzOverflowCount]=\"9\" />\n }\n @if (i.children.length > 0) {\n <ul class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n }\n </li>\n }\n }\n</ng-template>\n<ul class=\"sidebar-nav\">\n @for (group of list; track $index) {\n @if (group.group) {\n <li class=\"sidebar-nav__item sidebar-nav__group-title\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n }\n</ul>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n Input,\n QueryList,\n TemplateRef,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { App, SettingsService } from '@delon/theme';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultService } from './layout.service';\nimport { LayoutDefaultHeaderItemDirection, LayoutDefaultHeaderItemHidden, LayoutDefaultOptions } from './types';\n\ninterface LayoutDefaultHeaderItem {\n host: TemplateRef<NzSafeAny>;\n hidden?: LayoutDefaultHeaderItemHidden;\n direction?: LayoutDefaultHeaderItemDirection;\n}\n\n@Component({\n selector: 'layout-default-header',\n template: `\n <ng-template #render let-ls>\n @for (i of ls; track $index) {\n <li [class.hidden-mobile]=\"i.hidden === 'mobile'\" [class.hidden-pc]=\"i.hidden === 'pc'\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </li>\n }\n </ng-template>\n <div class=\"alain-default__header-logo\" [style.width.px]=\"opt.logoFixWidth\">\n @if (opt.logo) {\n <ng-container *ngTemplateOutlet=\"opt.logo\" />\n } @else {\n <a [routerLink]=\"opt.logoLink\" class=\"alain-default__header-logo-link\">\n <img class=\"alain-default__header-logo-expanded\" [attr.src]=\"opt.logoExpanded\" [attr.alt]=\"app.name\" />\n <img class=\"alain-default__header-logo-collapsed\" [attr.src]=\"opt.logoCollapsed\" [attr.alt]=\"app.name\" />\n </a>\n }\n </div>\n <div class=\"alain-default__nav-wrap\">\n <ul class=\"alain-default__nav\">\n @if (!opt.hideAside && opt.showHeaderCollapse) {\n <li>\n <div class=\"alain-default__nav-item alain-default__nav-item--collapse\" (click)=\"toggleCollapsed()\">\n <nz-icon [nzType]=\"collapsedIcon\" />\n </div>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"render\" [ngTemplateOutletContext]=\"{ $implicit: left }\" />\n </ul>\n @if (middle.length > 0) {\n <div class=\"alain-default__nav alain-default__nav-middle\">\n <ng-container *ngTemplateOutlet=\"middle[0].host\" />\n </div>\n }\n <ul class=\"alain-default__nav\">\n <ng-template [ngTemplateOutlet]=\"render\" [ngTemplateOutletContext]=\"{ $implicit: right }\" />\n </ul>\n </div>\n `,\n host: {\n '[class.alain-default__header]': `true`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderComponent implements AfterViewInit {\n private readonly settings = inject(SettingsService);\n private readonly srv = inject(LayoutDefaultService);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly destroy$ = inject(DestroyRef);\n\n @Input() items!: QueryList<LayoutDefaultHeaderItemComponent>;\n\n left: LayoutDefaultHeaderItem[] = [];\n middle: LayoutDefaultHeaderItem[] = [];\n right: LayoutDefaultHeaderItem[] = [];\n\n get opt(): LayoutDefaultOptions {\n return this.srv.options;\n }\n\n get app(): App {\n return this.settings.app;\n }\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n get collapsedIcon(): string {\n return this.srv.collapsedIcon;\n }\n\n private refresh(): void {\n const arr = this.items.toArray();\n this.left = arr.filter(i => i.direction === 'left');\n this.middle = arr.filter(i => i.direction === 'middle');\n this.right = arr.filter(i => i.direction === 'right');\n this.cdr.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.items.changes.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.refresh());\n this.srv.options$.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.cdr.detectChanges());\n this.refresh();\n }\n\n toggleCollapsed(): void {\n this.srv.toggleCollapsed();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n Component,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n QueryList,\n Renderer2,\n TemplateRef,\n booleanAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n NavigationCancel,\n NavigationEnd,\n NavigationError,\n RouteConfigLoadEnd,\n RouteConfigLoadStart,\n Router,\n Event\n} from '@angular/router';\nimport { filter } from 'rxjs';\n\nimport { SettingsService } from '@delon/theme';\nimport { updateHostClass } from '@delon/util/browser';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultService } from './layout.service';\nimport { LayoutDefaultOptions } from './types';\n\n@Component({\n selector: 'layout-default',\n exportAs: 'layoutDefault',\n template: `\n @if (showFetching) {\n <div class=\"alain-default__progress-bar\"></div>\n }\n @if (!opt.hideHeader) {\n <layout-default-header [items]=\"headerItems\" />\n }\n @if (!opt.hideAside) {\n <div class=\"alain-default__aside\">\n <div class=\"alain-default__aside-wrap\">\n <div class=\"alain-default__aside-inner\">\n <ng-container *ngTemplateOutlet=\"asideUser\" />\n <ng-container *ngTemplateOutlet=\"nav\" />\n @if (!nav) {\n <layout-default-nav />\n }\n </div>\n @if (opt.showSiderCollapse) {\n <div class=\"alain-default__aside-link\">\n @if (asideBottom) {\n <ng-container *ngTemplateOutlet=\"asideBottom\" />\n } @else {\n <div class=\"alain-default__aside-link-collapsed\" (click)=\"toggleCollapsed()\">\n <nz-icon [nzType]=\"collapsedIcon\" />\n </div>\n }\n </div>\n }\n </div>\n </div>\n }\n <section class=\"alain-default__content\">\n <ng-container *ngTemplateOutlet=\"content\" />\n <ng-content />\n </section>\n `,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultComponent {\n @ContentChildren(LayoutDefaultHeaderItemComponent, { descendants: false })\n headerItems!: QueryList<LayoutDefaultHeaderItemComponent>;\n\n get opt(): LayoutDefaultOptions {\n return this.srv.options;\n }\n\n @Input()\n set options(value: LayoutDefaultOptions | null | undefined) {\n this.srv.setOptions(value);\n }\n @Input() asideUser: TemplateRef<void> | null = null;\n @Input() asideBottom: TemplateRef<NzSafeAny> | null = null;\n @Input() nav: TemplateRef<void> | null = null;\n @Input() content: TemplateRef<void> | null = null;\n @Input() customError?: string | null;\n @Input({ transform: booleanAttribute }) fetchingStrictly = false;\n @Input({ transform: booleanAttribute }) fetching = false;\n\n private isFetching = false;\n\n get showFetching(): boolean {\n if (this.fetchingStrictly) return this.fetching;\n return this.isFetching;\n }\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n get collapsedIcon(): string {\n return this.srv.collapsedIcon;\n }\n\n toggleCollapsed(): void {\n this.srv.toggleCollapsed();\n }\n\n constructor(\n router: Router,\n private msgSrv: NzMessageService,\n private settings: SettingsService,\n private el: ElementRef,\n private renderer: Renderer2,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n private srv: LayoutDefaultService\n ) {\n router.events\n .pipe(\n takeUntilDestroyed(),\n filter(() => !this.fetchingStrictly)\n )\n .subscribe(ev => this.processEv(ev));\n this.srv.options$.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());\n this.settings.notify.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());\n }\n\n processEv(ev: Event): void {\n if (!this.isFetching && ev instanceof RouteConfigLoadStart) {\n this.isFetching = true;\n }\n if (ev instanceof NavigationError || ev instanceof NavigationCancel) {\n this.isFetching = false;\n const err = this.customError === null ? null : (this.customError ?? `Could not load ${ev.url} route`);\n if (err && ev instanceof NavigationError) {\n this.msgSrv.error(err, { nzDuration: 1000 * 3 });\n }\n return;\n }\n if (!(ev instanceof NavigationEnd || ev instanceof RouteConfigLoadEnd)) {\n return;\n }\n if (this.isFetching) {\n setTimeout(() => {\n this.isFetching = false;\n }, 100);\n }\n }\n\n private setClass(): void {\n const { el, doc, renderer, settings } = this;\n const layout = settings.layout;\n updateHostClass(el.nativeElement, renderer, {\n ['alain-default']: true,\n [`alain-default__fixed`]: layout.fixed,\n [`alain-default__collapsed`]: layout.collapsed,\n [`alain-default__hide-aside`]: this.opt.hideAside,\n [`alain-default__hide-header`]: this.opt.hideHeader\n });\n\n doc.body.classList[layout.colorWeak ? 'add' : 'remove']('color-weak');\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[layout-default-header-item-trigger]',\n host: {\n '[class.alain-default__nav-item]': `true`\n },\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderItemTriggerDirective {}\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\n\n@Component({\n selector: 'layout-default-top-menu-item',\n template: `<ng-content />`,\n host: {\n '[class.alain-default__nav-item]': `true`,\n '[class.alain-default__top-menu-item]': `true`,\n '[class.alain-default__top-menu-item-selected]': `selected`,\n '[class.alain-default__top-menu-item-disabled]': `disabled`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultTopMenuItemComponent {\n @Input({ transform: booleanAttribute }) selected = false;\n @Input({ transform: booleanAttribute }) disabled = false;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { LayoutDefaultHeaderItemTriggerDirective } from './layout-header-item-trigger.directive';\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultHeaderComponent } from './layout-header.component';\nimport { LayoutDefaultNavComponent } from './layout-nav.component';\nimport { LayoutDefaultTopMenuItemComponent } from './layout-top-menu-item';\nimport { LayoutDefaultComponent } from './layout.component';\n\nconst COMPONENTS = [\n LayoutDefaultComponent,\n LayoutDefaultNavComponent,\n LayoutDefaultHeaderComponent,\n LayoutDefaultHeaderItemComponent,\n LayoutDefaultHeaderItemTriggerDirective,\n LayoutDefaultTopMenuItemComponent\n];\n\n@NgModule({\n imports: [CommonModule, RouterModule, NzToolTipModule, NzIconModule, NzAvatarModule, NzDropDownModule, NzBadgeModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class LayoutDefaultModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i4.LayoutDefaultService","i5","i6","i7.LayoutDefaultNavComponent","i8.LayoutDefaultHeaderComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"layout-default.mjs","sources":["../../../../packages/theme/layout-default/layout-header-item.component.ts","../../../../packages/theme/layout-default/layout.service.ts","../../../../packages/theme/layout-default/layout-nav.component.ts","../../../../packages/theme/layout-default/layout-nav.component.html","../../../../packages/theme/layout-default/layout-header.component.ts","../../../../packages/theme/layout-default/layout.component.ts","../../../../packages/theme/layout-default/layout-header-item-trigger.directive.ts","../../../../packages/theme/layout-default/layout-top-menu-item.ts","../../../../packages/theme/layout-default/layout.module.ts","../../../../packages/theme/layout-default/layout-default.ts"],"sourcesContent":["import { Component, Input, TemplateRef, ViewChild } from '@angular/core';\n\nimport { LayoutDefaultHeaderItemDirection, LayoutDefaultHeaderItemHidden } from './types';\n\n@Component({\n selector: 'layout-default-header-item',\n template: `\n <ng-template #host>\n <ng-content />\n </ng-template>\n `,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderItemComponent {\n @ViewChild('host', { static: true }) host!: TemplateRef<void>;\n\n @Input() hidden: LayoutDefaultHeaderItemHidden = 'none';\n @Input() direction: LayoutDefaultHeaderItemDirection = 'right';\n}\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport { Injectable, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\nimport { SettingsService } from '@delon/theme';\n\nimport { LayoutDefaultOptions } from './types';\n\nconst DEFAULT: LayoutDefaultOptions = {\n logoExpanded: `./assets/logo-full.svg`,\n logoCollapsed: `./assets/logo.svg`,\n logoLink: `/`,\n showHeaderCollapse: true,\n showSiderCollapse: false,\n hideAside: false,\n hideHeader: false\n};\n\n@Injectable({ providedIn: 'root' })\nexport class LayoutDefaultService {\n private readonly settings = inject(SettingsService);\n private _options$ = new BehaviorSubject<LayoutDefaultOptions>(DEFAULT);\n private _options: LayoutDefaultOptions = DEFAULT;\n\n get options(): LayoutDefaultOptions {\n return this._options;\n }\n\n get options$(): Observable<LayoutDefaultOptions> {\n return this._options$.asObservable();\n }\n\n get collapsedIcon(): string {\n const collapsed = this.settings.layout.collapsed;\n let type = collapsed ? 'unfold' : 'fold';\n if (this.settings.layout.direction === 'rtl') {\n type = collapsed ? 'fold' : 'unfold';\n }\n return `menu-${type}`;\n }\n\n constructor(bm: BreakpointObserver) {\n const mobileMedia = 'only screen and (max-width: 767.99px)';\n bm.observe(mobileMedia)\n .pipe(takeUntilDestroyed())\n .subscribe(state => this.checkMedia(state.matches));\n this.checkMedia(bm.isMatched(mobileMedia));\n }\n\n private checkMedia(value: boolean): void {\n this.settings.setLayout('collapsed', value);\n }\n\n private notify(): void {\n this._options$.next(this._options);\n }\n\n /**\n * Set layout configuration\n *\n * 设置布局配置\n */\n setOptions(options?: LayoutDefaultOptions | null): void {\n this._options = {\n ...DEFAULT,\n ...options\n };\n this.notify();\n }\n\n /**\n * Toggle the collapsed state of the sidebar menu bar\n *\n * 切换侧边栏菜单栏折叠状态\n */\n toggleCollapsed(status?: boolean): void {\n this.settings.setLayout('collapsed', status != null ? status : !this.settings.layout.collapsed);\n this.notify();\n }\n}\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n EventEmitter,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n Renderer2,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\n\nimport { Menu, MenuIcon, MenuInner, MenuService, SettingsService } from '@delon/theme';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { WINDOW } from '@delon/util/token';\n\nexport interface Nav extends MenuInner {\n _needIcon?: boolean;\n _text?: SafeHtml;\n}\n\nconst SHOWCLS = 'sidebar-nav__floating-show';\nconst FLOATINGCLS = 'sidebar-nav__floating';\n\n@Component({\n selector: 'layout-default-nav',\n templateUrl: './layout-nav.component.html',\n host: {\n '(click)': '_click()',\n '(document:click)': 'closeSubMenu()',\n '[class.d-block]': `true`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultNavComponent implements OnInit, OnDestroy {\n private readonly doc = inject(DOCUMENT);\n private readonly win = inject(WINDOW);\n private readonly router = inject(Router);\n private readonly render = inject(Renderer2);\n private readonly menuSrv = inject(MenuService);\n private readonly settings = inject(SettingsService);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly ngZone = inject(NgZone);\n private readonly sanitizer = inject(DomSanitizer);\n private readonly directionality = inject(Directionality);\n\n private bodyEl!: HTMLBodyElement;\n private destroy$ = inject(DestroyRef);\n private floatingEl!: HTMLDivElement;\n dir?: Direction = 'ltr';\n list: Nav[] = [];\n\n @Input({ transform: booleanAttribute }) disabledAcl = false;\n @Input({ transform: booleanAttribute }) autoCloseUnderPad = true;\n @Input({ transform: booleanAttribute }) recursivePath = true;\n @Input({ transform: booleanAttribute }) hideEmptyChildren = true;\n @Input({ transform: booleanAttribute })\n set openStrictly(value: boolean) {\n this.menuSrv.openStrictly = value;\n }\n @Input({ transform: numberAttribute }) maxLevelIcon = 3;\n @Output() readonly select = new EventEmitter<Menu>();\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n private getLinkNode(node: HTMLElement): HTMLElement | null {\n node = node.nodeName === 'A' ? node : (node.parentNode as HTMLElement);\n return node.nodeName !== 'A' ? null : node;\n }\n\n private floatingClickHandle(e: MouseEvent): boolean {\n e.stopPropagation();\n const linkNode = this.getLinkNode(e.target as HTMLElement);\n if (linkNode == null) {\n return false;\n }\n const id = +linkNode.dataset!.id!;\n // Should be ingore children title trigger event\n if (isNaN(id)) {\n return false;\n }\n\n let item: Nav;\n this.menuSrv.visit(this.list, (i: Nav) => {\n if (!item && i._id === id) {\n item = i;\n }\n });\n this.to(item!);\n this.hideAll();\n e.preventDefault();\n return false;\n }\n\n private clearFloating(): void {\n if (!this.floatingEl) return;\n this.floatingEl.removeEventListener('click', this.floatingClickHandle.bind(this));\n this.floatingEl.parentNode?.removeChild(this.floatingEl);\n }\n\n private genFloating(): void {\n this.clearFloating();\n this.floatingEl = this.render.createElement('div');\n this.floatingEl.classList.add(`${FLOATINGCLS}-container`);\n this.floatingEl.addEventListener('click', this.floatingClickHandle.bind(this), false);\n this.bodyEl.appendChild(this.floatingEl);\n }\n\n private genSubNode(linkNode: HTMLLinkElement, item: Nav): HTMLUListElement {\n const id = `_sidebar-nav-${item._id}`;\n const childNode = item.badge ? linkNode.nextElementSibling!.nextElementSibling! : linkNode.nextElementSibling!;\n const node = childNode.cloneNode(true) as HTMLUListElement;\n node.id = id;\n node.classList.add(FLOATINGCLS);\n node.addEventListener(\n 'mouseleave',\n () => {\n node.classList.remove(SHOWCLS);\n },\n false\n );\n this.floatingEl.appendChild(node);\n return node;\n }\n\n private hideAll(): void {\n const allNode = this.floatingEl.querySelectorAll(`.${FLOATINGCLS}`);\n allNode.forEach(node => node.classList.remove(SHOWCLS));\n }\n\n // calculate the node position values.\n private calPos(linkNode: HTMLLinkElement, node: HTMLUListElement): void {\n const rect = linkNode.getBoundingClientRect();\n // bug: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/14721015/\n const scrollTop = Math.max(this.doc.documentElement.scrollTop, this.bodyEl.scrollTop);\n const docHeight = Math.max(this.doc.documentElement.clientHeight, this.bodyEl.clientHeight);\n const spacing = 5;\n let offsetHeight = -spacing;\n if (docHeight < rect.top + node.clientHeight) {\n offsetHeight = rect.top + node.clientHeight - docHeight + spacing;\n }\n node.style.top = `${rect.top + scrollTop - offsetHeight}px`;\n if (this.dir === 'rtl') {\n node.style.right = `${rect.width + spacing}px`;\n } else {\n node.style.left = `${rect.right + spacing}px`;\n }\n }\n\n @ZoneOutside()\n showSubMenu(e: MouseEvent, item: Nav): void {\n if (this.collapsed !== true) {\n return;\n }\n e.preventDefault();\n const linkNode = e.target as Element;\n this.genFloating();\n const subNode = this.genSubNode(linkNode as HTMLLinkElement, item);\n this.hideAll();\n subNode.classList.add(SHOWCLS);\n this.calPos(linkNode as HTMLLinkElement, subNode);\n }\n\n to(item: Menu): void {\n this.select.emit(item);\n if (item.disabled) return;\n\n if (item.externalLink) {\n if (item.target === '_blank') {\n this.win.open(item.externalLink);\n } else {\n this.win.location.href = item.externalLink;\n }\n return;\n }\n this.ngZone.run(() => this.router.navigateByUrl(item.link!));\n }\n\n toggleOpen(item: Nav): void {\n this.menuSrv.toggleOpen(item);\n }\n\n _click(): void {\n if (this.isPad && this.collapsed) {\n this.openAside(false);\n this.hideAll();\n }\n }\n\n closeSubMenu(): void {\n if (this.collapsed) {\n this.hideAll();\n }\n }\n\n private openByUrl(url: string | null): void {\n const { menuSrv, recursivePath } = this;\n this.menuSrv.open(menuSrv.find({ url, recursive: recursivePath }));\n }\n\n ngOnInit(): void {\n const { doc, router, menuSrv, settings, cdr } = this;\n this.bodyEl = doc.querySelector<HTMLBodyElement>('body')!;\n menuSrv.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(data => {\n menuSrv.visit(data, (i: Nav, _p, depth) => {\n i._text = this.sanitizer.bypassSecurityTrustHtml(i.text!);\n i._needIcon = depth! <= this.maxLevelIcon && !!i.icon;\n if (!i._aclResult) {\n if (this.disabledAcl) {\n i.disabled = true;\n } else {\n i._hidden = true;\n }\n }\n const icon = i.icon as MenuIcon;\n if (icon && icon.type === 'svg' && typeof icon.value === 'string') {\n icon.value = this.sanitizer.bypassSecurityTrustHtml(icon.value!);\n }\n });\n if (this.hideEmptyChildren) this.fixHide(data);\n this.list = data.filter((w: Nav) => w._hidden !== true);\n cdr.detectChanges();\n });\n router.events.pipe(takeUntilDestroyed(this.destroy$)).subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.openByUrl(e.urlAfterRedirects);\n this.underPad();\n this.cdr.detectChanges();\n }\n });\n settings.notify\n .pipe(\n takeUntilDestroyed(this.destroy$),\n filter(t => t.type === 'layout' && t.name === 'collapsed')\n )\n .subscribe(() => this.clearFloating());\n this.underPad();\n\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n this.openByUrl(router.url);\n this.ngZone.runOutsideAngular(() => this.genFloating());\n }\n\n private fixHide(ls: Nav[]): void {\n const inFn = (list: Nav[]): void => {\n for (const item of list) {\n if (item.children && item.children.length > 0) {\n inFn(item.children);\n if (!item._hidden) {\n item._hidden = item.children.every((v: Nav) => v._hidden);\n }\n }\n }\n };\n\n inFn(ls);\n }\n\n ngOnDestroy(): void {\n this.clearFloating();\n }\n\n // #region Under pad\n\n private get isPad(): boolean {\n return this.doc.defaultView!.innerWidth < 768;\n }\n\n private underPad(): void {\n if (this.autoCloseUnderPad && this.isPad && !this.collapsed) {\n setTimeout(() => this.openAside(true));\n }\n }\n\n private openAside(status: boolean): void {\n this.settings.setLayout('collapsed', status);\n }\n\n // #endregion\n}\n","<ng-template #icon let-i>\n @if (i) {\n @switch (i.type) {\n @case ('icon') {\n <nz-icon\n class=\"sidebar-nav__item-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 />\n }\n @case ('iconfont') {\n <nz-icon class=\"sidebar-nav__item-icon\" [nzIconfont]=\"i.iconfont\" />\n }\n @case ('img') {\n <img [src]=\"i.value\" class=\"sidebar-nav__item-icon sidebar-nav__item-img\" />\n }\n @case ('svg') {\n <span class=\"sidebar-nav__item-icon sidebar-nav__item-svg\" [innerHTML]=\"i.value\"></span>\n }\n @default {\n <i class=\"sidebar-nav__item-icon {{ i.value }}\"></i>\n }\n }\n }\n</ng-template>\n<ng-template #tree let-ls>\n @for (i of ls; track $index) {\n @if (i._hidden !== true) {\n <li class=\"sidebar-nav__item\" [class.sidebar-nav__selected]=\"i._selected\" [class.sidebar-nav__open]=\"i.open\">\n <!-- link -->\n @if (i.children.length === 0) {\n <a\n (click)=\"to(i)\"\n [attr.data-id]=\"i._id\"\n class=\"sidebar-nav__item-link\"\n [class.sidebar-nav__item-disabled]=\"i.disabled\"\n (mouseenter)=\"closeSubMenu()\"\n >\n @if (i._needIcon) {\n @if (collapsed) {\n <span nz-tooltip nzTooltipPlacement=\"right\" [nzTooltipTitle]=\"i.text\">\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"icon\" [ngTemplateOutletContext]=\"{ $implicit: i.icon }\" />\n }\n }\n <span class=\"sidebar-nav__item-text\" [innerHTML]=\"i._text\" [attr.title]=\"i.text\"></span>\n </a>\n }\n <!-- has children link -->\n @if (i.children.length > 0) {\n <a (click)=\"toggleOpen(i)\" (mouseenter)=\"showSubMenu($event, i)\" class=\"sidebar-nav__item-link\">\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 }\n <!-- badge -->\n @if (i.badge) {\n <nz-badge\n [nzCount]=\"i.badge\"\n [nzDot]=\"i.badgeDot\"\n nzStandalone\n [nzOverflowCount]=\"i.badgeOverflowCount ? i.badgeOverflowCount : 9\"\n />\n }\n @if (i.children.length > 0) {\n <ul class=\"sidebar-nav sidebar-nav__sub sidebar-nav__depth{{ i._depth }}\">\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: i.children }\" />\n </ul>\n }\n </li>\n }\n }\n</ng-template>\n<ul class=\"sidebar-nav\">\n @for (group of list; track $index) {\n @if (group.group) {\n <li class=\"sidebar-nav__item sidebar-nav__group-title\">\n <span [innerHTML]=\"group._text\"></span>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"tree\" [ngTemplateOutletContext]=\"{ $implicit: group.children }\" />\n }\n</ul>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n Input,\n QueryList,\n TemplateRef,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { App, SettingsService } from '@delon/theme';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultService } from './layout.service';\nimport { LayoutDefaultHeaderItemDirection, LayoutDefaultHeaderItemHidden, LayoutDefaultOptions } from './types';\n\ninterface LayoutDefaultHeaderItem {\n host: TemplateRef<NzSafeAny>;\n hidden?: LayoutDefaultHeaderItemHidden;\n direction?: LayoutDefaultHeaderItemDirection;\n}\n\n@Component({\n selector: 'layout-default-header',\n template: `\n <ng-template #render let-ls>\n @for (i of ls; track $index) {\n <li [class.hidden-mobile]=\"i.hidden === 'mobile'\" [class.hidden-pc]=\"i.hidden === 'pc'\">\n <ng-container *ngTemplateOutlet=\"i.host\" />\n </li>\n }\n </ng-template>\n <div class=\"alain-default__header-logo\" [style.width.px]=\"opt.logoFixWidth\">\n @if (opt.logo) {\n <ng-container *ngTemplateOutlet=\"opt.logo\" />\n } @else {\n <a [routerLink]=\"opt.logoLink\" class=\"alain-default__header-logo-link\">\n <img class=\"alain-default__header-logo-expanded\" [attr.src]=\"opt.logoExpanded\" [attr.alt]=\"app.name\" />\n <img class=\"alain-default__header-logo-collapsed\" [attr.src]=\"opt.logoCollapsed\" [attr.alt]=\"app.name\" />\n </a>\n }\n </div>\n <div class=\"alain-default__nav-wrap\">\n <ul class=\"alain-default__nav\">\n @if (!opt.hideAside && opt.showHeaderCollapse) {\n <li>\n <div class=\"alain-default__nav-item alain-default__nav-item--collapse\" (click)=\"toggleCollapsed()\">\n <nz-icon [nzType]=\"collapsedIcon\" />\n </div>\n </li>\n }\n <ng-template [ngTemplateOutlet]=\"render\" [ngTemplateOutletContext]=\"{ $implicit: left }\" />\n </ul>\n @if (middle.length > 0) {\n <div class=\"alain-default__nav alain-default__nav-middle\">\n <ng-container *ngTemplateOutlet=\"middle[0].host\" />\n </div>\n }\n <ul class=\"alain-default__nav\">\n <ng-template [ngTemplateOutlet]=\"render\" [ngTemplateOutletContext]=\"{ $implicit: right }\" />\n </ul>\n </div>\n `,\n host: {\n '[class.alain-default__header]': `true`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderComponent implements AfterViewInit {\n private readonly settings = inject(SettingsService);\n private readonly srv = inject(LayoutDefaultService);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly destroy$ = inject(DestroyRef);\n\n @Input() items!: QueryList<LayoutDefaultHeaderItemComponent>;\n\n left: LayoutDefaultHeaderItem[] = [];\n middle: LayoutDefaultHeaderItem[] = [];\n right: LayoutDefaultHeaderItem[] = [];\n\n get opt(): LayoutDefaultOptions {\n return this.srv.options;\n }\n\n get app(): App {\n return this.settings.app;\n }\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n get collapsedIcon(): string {\n return this.srv.collapsedIcon;\n }\n\n private refresh(): void {\n const arr = this.items.toArray();\n this.left = arr.filter(i => i.direction === 'left');\n this.middle = arr.filter(i => i.direction === 'middle');\n this.right = arr.filter(i => i.direction === 'right');\n this.cdr.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.items.changes.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.refresh());\n this.srv.options$.pipe(takeUntilDestroyed(this.destroy$)).subscribe(() => this.cdr.detectChanges());\n this.refresh();\n }\n\n toggleCollapsed(): void {\n this.srv.toggleCollapsed();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n Component,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n QueryList,\n Renderer2,\n TemplateRef,\n booleanAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n NavigationCancel,\n NavigationEnd,\n NavigationError,\n RouteConfigLoadEnd,\n RouteConfigLoadStart,\n Router,\n Event\n} from '@angular/router';\nimport { filter } from 'rxjs';\n\nimport { SettingsService } from '@delon/theme';\nimport { updateHostClass } from '@delon/util/browser';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzMessageService } from 'ng-zorro-antd/message';\n\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultService } from './layout.service';\nimport { LayoutDefaultOptions } from './types';\n\n@Component({\n selector: 'layout-default',\n exportAs: 'layoutDefault',\n template: `\n @if (showFetching) {\n <div class=\"alain-default__progress-bar\"></div>\n }\n @if (!opt.hideHeader) {\n <layout-default-header [items]=\"headerItems\" />\n }\n @if (!opt.hideAside) {\n <div class=\"alain-default__aside\">\n <div class=\"alain-default__aside-wrap\">\n <div class=\"alain-default__aside-inner\">\n <ng-container *ngTemplateOutlet=\"asideUser\" />\n <ng-container *ngTemplateOutlet=\"nav\" />\n @if (!nav) {\n <layout-default-nav />\n }\n </div>\n @if (opt.showSiderCollapse) {\n <div class=\"alain-default__aside-link\">\n @if (asideBottom) {\n <ng-container *ngTemplateOutlet=\"asideBottom\" />\n } @else {\n <div class=\"alain-default__aside-link-collapsed\" (click)=\"toggleCollapsed()\">\n <nz-icon [nzType]=\"collapsedIcon\" />\n </div>\n }\n </div>\n }\n </div>\n </div>\n }\n <section class=\"alain-default__content\">\n <ng-container *ngTemplateOutlet=\"content\" />\n <ng-content />\n </section>\n `,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultComponent {\n @ContentChildren(LayoutDefaultHeaderItemComponent, { descendants: false })\n headerItems!: QueryList<LayoutDefaultHeaderItemComponent>;\n\n get opt(): LayoutDefaultOptions {\n return this.srv.options;\n }\n\n @Input()\n set options(value: LayoutDefaultOptions | null | undefined) {\n this.srv.setOptions(value);\n }\n @Input() asideUser: TemplateRef<void> | null = null;\n @Input() asideBottom: TemplateRef<NzSafeAny> | null = null;\n @Input() nav: TemplateRef<void> | null = null;\n @Input() content: TemplateRef<void> | null = null;\n @Input() customError?: string | null;\n @Input({ transform: booleanAttribute }) fetchingStrictly = false;\n @Input({ transform: booleanAttribute }) fetching = false;\n\n private isFetching = false;\n\n get showFetching(): boolean {\n if (this.fetchingStrictly) return this.fetching;\n return this.isFetching;\n }\n\n get collapsed(): boolean {\n return this.settings.layout.collapsed;\n }\n\n get collapsedIcon(): string {\n return this.srv.collapsedIcon;\n }\n\n toggleCollapsed(): void {\n this.srv.toggleCollapsed();\n }\n\n constructor(\n router: Router,\n private msgSrv: NzMessageService,\n private settings: SettingsService,\n private el: ElementRef,\n private renderer: Renderer2,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n private srv: LayoutDefaultService\n ) {\n router.events\n .pipe(\n takeUntilDestroyed(),\n filter(() => !this.fetchingStrictly)\n )\n .subscribe(ev => this.processEv(ev));\n this.srv.options$.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());\n this.settings.notify.pipe(takeUntilDestroyed()).subscribe(() => this.setClass());\n }\n\n processEv(ev: Event): void {\n if (!this.isFetching && ev instanceof RouteConfigLoadStart) {\n this.isFetching = true;\n }\n if (ev instanceof NavigationError || ev instanceof NavigationCancel) {\n this.isFetching = false;\n const err = this.customError === null ? null : (this.customError ?? `Could not load ${ev.url} route`);\n if (err && ev instanceof NavigationError) {\n this.msgSrv.error(err, { nzDuration: 1000 * 3 });\n }\n return;\n }\n if (!(ev instanceof NavigationEnd || ev instanceof RouteConfigLoadEnd)) {\n return;\n }\n if (this.isFetching) {\n setTimeout(() => {\n this.isFetching = false;\n }, 100);\n }\n }\n\n private setClass(): void {\n const { el, doc, renderer, settings } = this;\n const layout = settings.layout;\n updateHostClass(el.nativeElement, renderer, {\n ['alain-default']: true,\n [`alain-default__fixed`]: layout.fixed,\n [`alain-default__collapsed`]: layout.collapsed,\n [`alain-default__hide-aside`]: this.opt.hideAside,\n [`alain-default__hide-header`]: this.opt.hideHeader\n });\n\n doc.body.classList[layout.colorWeak ? 'add' : 'remove']('color-weak');\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[layout-default-header-item-trigger]',\n host: {\n '[class.alain-default__nav-item]': `true`\n },\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultHeaderItemTriggerDirective {}\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\n\n@Component({\n selector: 'layout-default-top-menu-item',\n template: `<ng-content />`,\n host: {\n '[class.alain-default__nav-item]': `true`,\n '[class.alain-default__top-menu-item]': `true`,\n '[class.alain-default__top-menu-item-selected]': `selected`,\n '[class.alain-default__top-menu-item-disabled]': `disabled`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-standalone\n standalone: false\n})\nexport class LayoutDefaultTopMenuItemComponent {\n @Input({ transform: booleanAttribute }) selected = false;\n @Input({ transform: booleanAttribute }) disabled = false;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { LayoutDefaultHeaderItemTriggerDirective } from './layout-header-item-trigger.directive';\nimport { LayoutDefaultHeaderItemComponent } from './layout-header-item.component';\nimport { LayoutDefaultHeaderComponent } from './layout-header.component';\nimport { LayoutDefaultNavComponent } from './layout-nav.component';\nimport { LayoutDefaultTopMenuItemComponent } from './layout-top-menu-item';\nimport { LayoutDefaultComponent } from './layout.component';\n\nconst COMPONENTS = [\n LayoutDefaultComponent,\n LayoutDefaultNavComponent,\n LayoutDefaultHeaderComponent,\n LayoutDefaultHeaderItemComponent,\n LayoutDefaultHeaderItemTriggerDirective,\n LayoutDefaultTopMenuItemComponent\n];\n\n@NgModule({\n imports: [CommonModule, RouterModule, NzToolTipModule, NzIconModule, NzAvatarModule, NzDropDownModule, NzBadgeModule],\n declarations: COMPONENTS,\n exports: COMPONENTS\n})\nexport class LayoutDefaultModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i4.LayoutDefaultService","i5","i6","i7.LayoutDefaultNavComponent","i8.LayoutDefaultHeaderComponent"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setting-drawer.mjs","sources":["../../../../packages/theme/setting-drawer/setting-drawer-item.component.ts","../../../../packages/theme/setting-drawer/setting-drawer-item.component.html","../../../../packages/theme/setting-drawer/setting-drawer.types.ts","../../../../packages/theme/setting-drawer/setting-drawer.component.ts","../../../../packages/theme/setting-drawer/setting-drawer.component.html","../../../../packages/theme/setting-drawer/setting-drawer.module.ts","../../../../packages/theme/setting-drawer/setting-drawer.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzInputDirective } from 'ng-zorro-antd/input';\nimport { NzInputNumberComponent } from 'ng-zorro-antd/input-number';\nimport { NzSwitchComponent } from 'ng-zorro-antd/switch';\n\n@Component({\n selector: 'setting-drawer-item',\n templateUrl: './setting-drawer-item.component.html',\n host: {\n '[class.setting-drawer__body-item]': 'true'\n },\n imports: [FormsModule, NzInputDirective, NzInputNumberComponent, NzSwitchComponent, NzDrawerModule]\n})\nexport class SettingDrawerItemComponent {\n i: NzSafeAny = {};\n\n @Input()\n set data(val: NzSafeAny) {\n this.i = val;\n if (val.type === 'px') {\n this.pxVal = +val.value.replace('px', '');\n }\n }\n\n pxVal = 0;\n\n pxChange(val: number): void {\n this.i.value = `${val}px`;\n }\n\n format = (value: number): string => `${value} px`;\n}\n","<span>\n {{ i.label }}\n <span class=\"pl-sm text-grey\">{{ i.tip }}</span>\n</span>\n@switch (i.type) {\n @case ('color') {\n <input nz-input type=\"color\" style=\"width: 88px\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @case ('input') {\n <input nz-input style=\"width: 88px\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @case ('px') {\n <nz-input-number\n [(ngModel)]=\"pxVal\"\n (ngModelChange)=\"pxChange($event)\"\n [nzMin]=\"i.min\"\n [nzMax]=\"i.max\"\n [nzStep]=\"i.step || 2\"\n [nzFormatter]=\"format\"\n />\n }\n @case ('switch') {\n <nz-switch nzSize=\"small\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @default {\n <ng-template nzDrawerContent />\n }\n}\n","import type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport const ALAINDEFAULTVAR = 'alain-default-vars';\nexport const DEFAULT_COLORS = [\n {\n key: 'dust',\n color: '#F5222D'\n },\n {\n key: 'volcano',\n color: '#FA541C'\n },\n {\n key: 'sunset',\n color: '#FAAD14'\n },\n {\n key: 'cyan',\n color: '#13C2C2'\n },\n {\n key: 'green',\n color: '#52C41A'\n },\n {\n key: 'daybreak',\n color: '#1890ff'\n },\n {\n key: 'geekblue',\n color: '#2F54EB'\n },\n {\n key: 'purple',\n color: '#722ED1'\n },\n {\n key: 'black',\n color: '#001529'\n }\n];\nexport const DEFAULT_VARS: { [key: string]: NzSafeAny } = {\n 'primary-color': { label: '主颜色', type: 'color', default: '#1890ff' },\n 'alain-default-header-hg': {\n label: '高',\n type: 'px',\n default: '64px',\n max: 300,\n min: 24\n },\n 'alain-default-header-bg': {\n label: '背景色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-header-padding': {\n label: '顶部左右内边距',\n type: 'px',\n default: '16px'\n },\n // 侧边栏\n 'alain-default-aside-wd': { label: '宽度', type: 'px', default: '200px' },\n 'alain-default-aside-bg': {\n label: '背景',\n type: 'color',\n default: '#ffffff'\n },\n 'alain-default-aside-collapsed-wd': {\n label: '收缩宽度',\n type: 'px',\n default: '64px'\n },\n 'alain-default-aside-nav-padding-top-bottom': {\n label: '项上下内边距',\n type: 'px',\n default: '8px',\n step: 8\n },\n // 主菜单\n 'alain-default-aside-nav-fs': {\n label: '菜单字号',\n type: 'px',\n default: '14px',\n min: 14,\n max: 30\n },\n 'alain-default-aside-collapsed-nav-fs': {\n label: '收缩菜单字号',\n type: 'px',\n default: '24px',\n min: 24,\n max: 32\n },\n 'alain-default-aside-nav-item-height': {\n label: '菜单项高度',\n type: 'px',\n default: '38px',\n min: 24,\n max: 64\n },\n 'alain-default-aside-nav-text-color': {\n label: '菜单文本颜色',\n type: 'color',\n default: 'rgba(0, 0, 0, 0.65)',\n rgba: true\n },\n 'alain-default-aside-nav-text-hover-color': {\n label: '菜单文本悬停颜色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-aside-nav-group-text-color': {\n label: '菜单分组文本颜色',\n type: 'color',\n default: 'rgba(0, 0, 0, 0.43)',\n rgba: true\n },\n 'alain-default-aside-nav-selected-text-color': {\n label: '菜单激活时文本颜色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-aside-nav-selected-bg': {\n label: '菜单激活时背景颜色',\n type: 'color',\n default: '#fcfcfc'\n },\n // 内容\n 'alain-default-content-bg': {\n label: '背景色',\n type: 'color',\n default: '#f5f7fa'\n },\n 'alain-default-content-heading-bg': {\n label: '标题背景色',\n type: 'color',\n default: '#fafbfc'\n },\n 'alain-default-content-heading-border': {\n label: '标题底部边框色',\n type: 'color',\n default: '#efe3e5'\n },\n 'alain-default-content-padding': {\n label: '内边距',\n type: 'px',\n default: '24px',\n min: 0,\n max: 128,\n step: 8\n },\n // zorro组件修正\n 'form-state-visual-feedback-enabled': {\n label: '开启表单元素的视觉反馈',\n type: 'switch',\n default: true\n },\n 'preserve-white-spaces-enabled': {\n label: '开启 preserveWhitespaces',\n type: 'switch',\n default: true\n },\n 'nz-table-img-radius': {\n label: '表格中:图片圆角',\n type: 'px',\n default: '4px',\n min: 0,\n max: 128\n },\n 'nz-table-img-margin-right': {\n label: '表格中:图片右外边距',\n type: 'px',\n default: '4px',\n min: 0,\n max: 128\n },\n 'nz-table-img-max-width': {\n label: '表格中:图片最大宽度',\n type: 'px',\n default: '32px',\n min: 8,\n max: 128\n },\n 'nz-table-img-max-height': {\n label: '表格中:图片最大高度',\n type: 'px',\n default: '32px',\n min: 8,\n max: 128\n }\n};\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n inject,\n Input,\n isDevMode,\n NgZone,\n OnInit\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\n\nimport { Layout, SettingsService } from '@delon/theme';\nimport { copy } from '@delon/util/browser';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { deepCopy, LazyService } from '@delon/util/other';\nimport { NzAlertComponent } from 'ng-zorro-antd/alert';\nimport { NzButtonComponent } from 'ng-zorro-antd/button';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\nimport { NzTooltipDirective } from 'ng-zorro-antd/tooltip';\n\nimport { SettingDrawerItemComponent } from './setting-drawer-item.component';\nimport { ALAINDEFAULTVAR, DEFAULT_COLORS, DEFAULT_VARS } from './setting-drawer.types';\n\n@Component({\n selector: 'setting-drawer',\n templateUrl: './setting-drawer.component.html',\n host: {\n '[class.setting-drawer]': 'true',\n '[class.setting-drawer-rtl]': `dir === 'rtl'`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n NzDrawerModule,\n NzTooltipDirective,\n NzIconDirective,\n NzDividerModule,\n NzTabsModule,\n SettingDrawerItemComponent,\n NzSwitchModule,\n NzButtonComponent,\n NzAlertComponent\n ]\n})\nexport class SettingDrawerComponent implements OnInit {\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly msg = inject(NzMessageService);\n private readonly settingSrv = inject(SettingsService);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n private readonly doc = inject(DOCUMENT);\n private readonly directionality = inject(Directionality);\n private readonly destroy$ = inject(DestroyRef);\n\n @Input({ transform: booleanAttribute }) autoApplyColor = true;\n @Input() compilingText = 'Compiling...';\n @Input() devTips = `When the color can't be switched, you need to run it once: npm run color-less`;\n @Input() lessJs = 'https://cdn.jsdelivr.net/npm/less';\n\n private loadedLess = false;\n dir?: Direction = 'ltr';\n isDev = isDevMode();\n collapse = false;\n get layout(): Layout {\n return this.settingSrv.layout;\n }\n data: NzSafeAny = {};\n color: string;\n colors = DEFAULT_COLORS;\n\n constructor() {\n this.color = this.cachedData['@primary-color'] || this.DEFAULT_PRIMARY;\n this.resetData(this.cachedData, false);\n }\n\n private get cachedData(): { [key: string]: NzSafeAny } {\n return this.settingSrv.layout[ALAINDEFAULTVAR] || {};\n }\n\n private get DEFAULT_PRIMARY(): string {\n return DEFAULT_VARS['primary-color'].default;\n }\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n if (this.autoApplyColor && this.color !== this.DEFAULT_PRIMARY) {\n this.changeColor(this.color);\n this.runLess();\n }\n }\n\n @ZoneOutside()\n private async loadLess(): Promise<void> {\n if (this.loadedLess) {\n return Promise.resolve();\n }\n return this.lazy\n .loadStyle('./assets/color.less', { rel: 'stylesheet/less' })\n .then(() => {\n const lessConfigNode = this.doc.createElement('script');\n lessConfigNode.innerHTML = `\n window.less = {\n async: true,\n env: 'production',\n javascriptEnabled: true\n };\n `;\n this.doc.body.appendChild(lessConfigNode);\n })\n .then(() => this.lazy.loadScript(this.lessJs))\n .then(() => {\n this.loadedLess = true;\n });\n }\n\n private genVars(): NzSafeAny {\n const { data, color, validKeys } = this;\n const vars: { [key: string]: string } = {\n [`@primary-color`]: color\n };\n validKeys.filter(key => key !== 'primary-color').forEach(key => (vars[`@${key}`] = data[key].value));\n this.setLayout(ALAINDEFAULTVAR, vars);\n return vars;\n }\n\n @ZoneOutside()\n private runLess(): void {\n const { ngZone, msg, cdr } = this;\n const msgId = msg.loading(this.compilingText, { nzDuration: 0 }).messageId;\n setTimeout(() => {\n this.loadLess().then(() => {\n (window as NzSafeAny).less.modifyVars(this.genVars()).then(() => {\n msg.success('成功');\n msg.remove(msgId);\n ngZone.run(() => cdr.detectChanges());\n });\n });\n }, 200);\n }\n\n toggle(): void {\n this.collapse = !this.collapse;\n }\n\n changeColor(color: string): void {\n this.color = color;\n Object.keys(DEFAULT_VARS)\n .filter(key => DEFAULT_VARS[key].default === '@primary-color')\n .forEach(key => delete this.cachedData[`@${key}`]);\n this.resetData(this.cachedData, false);\n }\n\n setLayout(name: string, value: NzSafeAny): void {\n this.settingSrv.setLayout(name, value);\n }\n\n private resetData(nowData?: { [key: string]: NzSafeAny }, run: boolean = true): void {\n nowData = nowData || {};\n const data = deepCopy(DEFAULT_VARS);\n Object.keys(data).forEach(key => {\n const value = nowData![`@${key}`] || data[key].default || '';\n data[key].value = value === `@primary-color` ? this.color : value;\n });\n this.data = data;\n if (run) {\n this.cdr.detectChanges();\n this.runLess();\n }\n }\n\n private get validKeys(): string[] {\n return Object.keys(this.data).filter(key => this.data[key].value !== this.data[key].default);\n }\n\n apply(): void {\n this.runLess();\n }\n\n reset(): void {\n this.color = this.DEFAULT_PRIMARY;\n this.settingSrv.setLayout(ALAINDEFAULTVAR, {});\n this.resetData({});\n }\n\n copyVar(): void {\n const vars = this.genVars();\n const copyContent = Object.keys(vars)\n .map(key => `${key}: ${vars[key]};`)\n .join('\\n');\n copy(copyContent);\n this.msg.success('Copy success');\n }\n}\n","<nz-drawer\n [nzVisible]=\"collapse\"\n [nzPlacement]=\"dir === 'rtl' ? 'left' : 'right'\"\n [nzWidth]=\"500\"\n (nzOnClose)=\"toggle()\"\n>\n <div *nzDrawerContent class=\"setting-drawer__content\">\n <div class=\"setting-drawer__body setting-drawer__theme\">\n <h3 class=\"setting-drawer__title\">主题色</h3>\n @for (c of colors; track $index) {\n <span\n [style]=\"{ 'background-color': c.color }\"\n (click)=\"changeColor(c.color)\"\n nz-tooltip\n [nzTooltipTitle]=\"c.key\"\n class=\"setting-drawer__theme-tag\"\n >\n @if (color === c.color) {\n <nz-icon nzType=\"check\" />\n }\n </span>\n }\n </div>\n <nz-divider />\n <div class=\"setting-drawer__body\">\n <h3 class=\"setting-drawer__title\">设置</h3>\n <nz-tabset>\n <nz-tab nzTitle=\"顶部\">\n <div class=\"setting-drawer__body\">\n <setting-drawer-item [data]=\"data['alain-default-header-hg']\" />\n <setting-drawer-item [data]=\"data['alain-default-header-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-header-padding']\" />\n </div>\n </nz-tab>\n <nz-tab nzTitle=\"侧边栏\">\n <setting-drawer-item [data]=\"data['alain-default-aside-wd']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-collapsed-wd']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-nav-padding-top-bottom']\" />\n </nz-tab>\n <nz-tab nzTitle=\"内容\">\n <setting-drawer-item [data]=\"data['alain-default-content-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-heading-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-heading-border']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-padding']\" />\n </nz-tab>\n <nz-tab nzTitle=\"其它\">\n <setting-drawer-item [data]=\"data['form-state-visual-feedback-enabled']\" />\n <setting-drawer-item [data]=\"data['preserve-white-spaces-enabled']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-radius']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-margin-right']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-max-width']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-max-height']\" />\n </nz-tab>\n </nz-tabset>\n </div>\n <nz-divider />\n <div class=\"setting-drawer__body\">\n <div class=\"setting-drawer__body-item\">\n 固定头和侧边栏\n <nz-switch nzSize=\"small\" [(ngModel)]=\"layout.fixed\" (ngModelChange)=\"setLayout('fixed', layout.fixed)\" />\n </div>\n <div class=\"setting-drawer__body-item\">\n 色弱模式\n <nz-switch\n nzSize=\"small\"\n [(ngModel)]=\"layout.colorWeak\"\n (ngModelChange)=\"setLayout('colorWeak', layout.colorWeak)\"\n />\n </div>\n </div>\n <nz-divider />\n <button (click)=\"apply()\" type=\"button\" nz-button nzType=\"primary\">预览</button>\n <button (click)=\"reset()\" type=\"button\" nz-button>重置</button>\n <button (click)=\"copyVar()\" type=\"button\" nz-button>拷贝</button>\n <nz-alert\n class=\"mt-md\"\n nzType=\"warning\"\n nzMessage=\"配置栏只在开发环境用于预览,生产环境不会展现,请拷贝后手动修改参数配置文件 src/styles/theme.less\"\n />\n </div>\n</nz-drawer>\n<div\n class=\"setting-drawer__handle\"\n [class.setting-drawer__handle-opened]=\"collapse\"\n (click)=\"toggle()\"\n nz-tooltip\n [nzTooltipTitle]=\"isDev ? devTips : null\"\n>\n <nz-icon [nzType]=\"!collapse ? 'setting' : 'close'\" class=\"setting-drawer__handle-icon\" />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SettingDrawerItemComponent } from './setting-drawer-item.component';\nimport { SettingDrawerComponent } from './setting-drawer.component';\n\nconst COMPONENTS = [SettingDrawerItemComponent, SettingDrawerComponent];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class SettingDrawerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setting-drawer.mjs","sources":["../../../../packages/theme/setting-drawer/setting-drawer-item.component.ts","../../../../packages/theme/setting-drawer/setting-drawer-item.component.html","../../../../packages/theme/setting-drawer/setting-drawer.types.ts","../../../../packages/theme/setting-drawer/setting-drawer.component.ts","../../../../packages/theme/setting-drawer/setting-drawer.component.html","../../../../packages/theme/setting-drawer/setting-drawer.module.ts","../../../../packages/theme/setting-drawer/setting-drawer.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzInputDirective } from 'ng-zorro-antd/input';\nimport { NzInputNumberComponent } from 'ng-zorro-antd/input-number';\nimport { NzSwitchComponent } from 'ng-zorro-antd/switch';\n\n@Component({\n selector: 'setting-drawer-item',\n templateUrl: './setting-drawer-item.component.html',\n host: {\n '[class.setting-drawer__body-item]': 'true'\n },\n imports: [FormsModule, NzInputDirective, NzInputNumberComponent, NzSwitchComponent, NzDrawerModule]\n})\nexport class SettingDrawerItemComponent {\n i: NzSafeAny = {};\n\n @Input()\n set data(val: NzSafeAny) {\n this.i = val;\n if (val.type === 'px') {\n this.pxVal = +val.value.replace('px', '');\n }\n }\n\n pxVal = 0;\n\n pxChange(val: number): void {\n this.i.value = `${val}px`;\n }\n\n format = (value: number): string => `${value} px`;\n}\n","<span>\n {{ i.label }}\n <span class=\"pl-sm text-grey\">{{ i.tip }}</span>\n</span>\n@switch (i.type) {\n @case ('color') {\n <input nz-input type=\"color\" style=\"width: 88px\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @case ('input') {\n <input nz-input style=\"width: 88px\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @case ('px') {\n <nz-input-number\n [(ngModel)]=\"pxVal\"\n (ngModelChange)=\"pxChange($event)\"\n [nzMin]=\"i.min\"\n [nzMax]=\"i.max\"\n [nzStep]=\"i.step || 2\"\n [nzFormatter]=\"format\"\n />\n }\n @case ('switch') {\n <nz-switch nzSize=\"small\" [(ngModel)]=\"i.value\" [ngModelOptions]=\"{ standalone: true }\" />\n }\n @default {\n <ng-template nzDrawerContent />\n }\n}\n","import type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport const ALAINDEFAULTVAR = 'alain-default-vars';\nexport const DEFAULT_COLORS = [\n {\n key: 'dust',\n color: '#F5222D'\n },\n {\n key: 'volcano',\n color: '#FA541C'\n },\n {\n key: 'sunset',\n color: '#FAAD14'\n },\n {\n key: 'cyan',\n color: '#13C2C2'\n },\n {\n key: 'green',\n color: '#52C41A'\n },\n {\n key: 'daybreak',\n color: '#1890ff'\n },\n {\n key: 'geekblue',\n color: '#2F54EB'\n },\n {\n key: 'purple',\n color: '#722ED1'\n },\n {\n key: 'black',\n color: '#001529'\n }\n];\nexport const DEFAULT_VARS: Record<string, NzSafeAny> = {\n 'primary-color': { label: '主颜色', type: 'color', default: '#1890ff' },\n 'alain-default-header-hg': {\n label: '高',\n type: 'px',\n default: '64px',\n max: 300,\n min: 24\n },\n 'alain-default-header-bg': {\n label: '背景色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-header-padding': {\n label: '顶部左右内边距',\n type: 'px',\n default: '16px'\n },\n // 侧边栏\n 'alain-default-aside-wd': { label: '宽度', type: 'px', default: '200px' },\n 'alain-default-aside-bg': {\n label: '背景',\n type: 'color',\n default: '#ffffff'\n },\n 'alain-default-aside-collapsed-wd': {\n label: '收缩宽度',\n type: 'px',\n default: '64px'\n },\n 'alain-default-aside-nav-padding-top-bottom': {\n label: '项上下内边距',\n type: 'px',\n default: '8px',\n step: 8\n },\n // 主菜单\n 'alain-default-aside-nav-fs': {\n label: '菜单字号',\n type: 'px',\n default: '14px',\n min: 14,\n max: 30\n },\n 'alain-default-aside-collapsed-nav-fs': {\n label: '收缩菜单字号',\n type: 'px',\n default: '24px',\n min: 24,\n max: 32\n },\n 'alain-default-aside-nav-item-height': {\n label: '菜单项高度',\n type: 'px',\n default: '38px',\n min: 24,\n max: 64\n },\n 'alain-default-aside-nav-text-color': {\n label: '菜单文本颜色',\n type: 'color',\n default: 'rgba(0, 0, 0, 0.65)',\n rgba: true\n },\n 'alain-default-aside-nav-text-hover-color': {\n label: '菜单文本悬停颜色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-aside-nav-group-text-color': {\n label: '菜单分组文本颜色',\n type: 'color',\n default: 'rgba(0, 0, 0, 0.43)',\n rgba: true\n },\n 'alain-default-aside-nav-selected-text-color': {\n label: '菜单激活时文本颜色',\n type: 'color',\n default: '@primary-color',\n tip: '默认同主色系'\n },\n 'alain-default-aside-nav-selected-bg': {\n label: '菜单激活时背景颜色',\n type: 'color',\n default: '#fcfcfc'\n },\n // 内容\n 'alain-default-content-bg': {\n label: '背景色',\n type: 'color',\n default: '#f5f7fa'\n },\n 'alain-default-content-heading-bg': {\n label: '标题背景色',\n type: 'color',\n default: '#fafbfc'\n },\n 'alain-default-content-heading-border': {\n label: '标题底部边框色',\n type: 'color',\n default: '#efe3e5'\n },\n 'alain-default-content-padding': {\n label: '内边距',\n type: 'px',\n default: '24px',\n min: 0,\n max: 128,\n step: 8\n },\n // zorro组件修正\n 'form-state-visual-feedback-enabled': {\n label: '开启表单元素的视觉反馈',\n type: 'switch',\n default: true\n },\n 'preserve-white-spaces-enabled': {\n label: '开启 preserveWhitespaces',\n type: 'switch',\n default: true\n },\n 'nz-table-img-radius': {\n label: '表格中:图片圆角',\n type: 'px',\n default: '4px',\n min: 0,\n max: 128\n },\n 'nz-table-img-margin-right': {\n label: '表格中:图片右外边距',\n type: 'px',\n default: '4px',\n min: 0,\n max: 128\n },\n 'nz-table-img-max-width': {\n label: '表格中:图片最大宽度',\n type: 'px',\n default: '32px',\n min: 8,\n max: 128\n },\n 'nz-table-img-max-height': {\n label: '表格中:图片最大高度',\n type: 'px',\n default: '32px',\n min: 8,\n max: 128\n }\n};\n","import { Direction, Directionality } from '@angular/cdk/bidi';\nimport { DOCUMENT } from '@angular/common';\nimport {\n booleanAttribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n inject,\n Input,\n isDevMode,\n NgZone,\n OnInit\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\n\nimport { Layout, SettingsService } from '@delon/theme';\nimport { copy } from '@delon/util/browser';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { deepCopy, LazyService } from '@delon/util/other';\nimport { NzAlertComponent } from 'ng-zorro-antd/alert';\nimport { NzButtonComponent } from 'ng-zorro-antd/button';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDrawerModule } from 'ng-zorro-antd/drawer';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\nimport { NzTooltipDirective } from 'ng-zorro-antd/tooltip';\n\nimport { SettingDrawerItemComponent } from './setting-drawer-item.component';\nimport { ALAINDEFAULTVAR, DEFAULT_COLORS, DEFAULT_VARS } from './setting-drawer.types';\n\n@Component({\n selector: 'setting-drawer',\n templateUrl: './setting-drawer.component.html',\n host: {\n '[class.setting-drawer]': 'true',\n '[class.setting-drawer-rtl]': `dir === 'rtl'`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n NzDrawerModule,\n NzTooltipDirective,\n NzIconDirective,\n NzDividerModule,\n NzTabsModule,\n SettingDrawerItemComponent,\n NzSwitchModule,\n NzButtonComponent,\n NzAlertComponent\n ]\n})\nexport class SettingDrawerComponent implements OnInit {\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly msg = inject(NzMessageService);\n private readonly settingSrv = inject(SettingsService);\n private readonly lazy = inject(LazyService);\n private readonly ngZone = inject(NgZone);\n private readonly doc = inject(DOCUMENT);\n private readonly directionality = inject(Directionality);\n private readonly destroy$ = inject(DestroyRef);\n\n @Input({ transform: booleanAttribute }) autoApplyColor = true;\n @Input() compilingText = 'Compiling...';\n @Input() devTips = `When the color can't be switched, you need to run it once: npm run color-less`;\n @Input() lessJs = 'https://cdn.jsdelivr.net/npm/less';\n\n private loadedLess = false;\n dir?: Direction = 'ltr';\n isDev = isDevMode();\n collapse = false;\n get layout(): Layout {\n return this.settingSrv.layout;\n }\n data: NzSafeAny = {};\n color: string;\n colors = DEFAULT_COLORS;\n\n constructor() {\n this.color = this.cachedData['@primary-color'] || this.DEFAULT_PRIMARY;\n this.resetData(this.cachedData, false);\n }\n\n private get cachedData(): Record<string, NzSafeAny> {\n return this.settingSrv.layout[ALAINDEFAULTVAR] || {};\n }\n\n private get DEFAULT_PRIMARY(): string {\n return DEFAULT_VARS['primary-color'].default;\n }\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change.pipe(takeUntilDestroyed(this.destroy$)).subscribe(direction => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n if (this.autoApplyColor && this.color !== this.DEFAULT_PRIMARY) {\n this.changeColor(this.color);\n this.runLess();\n }\n }\n\n @ZoneOutside()\n private async loadLess(): Promise<void> {\n if (this.loadedLess) {\n return Promise.resolve();\n }\n return this.lazy\n .loadStyle('./assets/color.less', { rel: 'stylesheet/less' })\n .then(() => {\n const lessConfigNode = this.doc.createElement('script');\n lessConfigNode.innerHTML = `\n window.less = {\n async: true,\n env: 'production',\n javascriptEnabled: true\n };\n `;\n this.doc.body.appendChild(lessConfigNode);\n })\n .then(() => this.lazy.loadScript(this.lessJs))\n .then(() => {\n this.loadedLess = true;\n });\n }\n\n private genVars(): NzSafeAny {\n const { data, color, validKeys } = this;\n const vars: Record<string, string> = {\n [`@primary-color`]: color\n };\n validKeys.filter(key => key !== 'primary-color').forEach(key => (vars[`@${key}`] = data[key].value));\n this.setLayout(ALAINDEFAULTVAR, vars);\n return vars;\n }\n\n @ZoneOutside()\n private runLess(): void {\n const { ngZone, msg, cdr } = this;\n const msgId = msg.loading(this.compilingText, { nzDuration: 0 }).messageId;\n setTimeout(() => {\n this.loadLess().then(() => {\n (window as NzSafeAny).less.modifyVars(this.genVars()).then(() => {\n msg.success('成功');\n msg.remove(msgId);\n ngZone.run(() => cdr.detectChanges());\n });\n });\n }, 200);\n }\n\n toggle(): void {\n this.collapse = !this.collapse;\n }\n\n changeColor(color: string): void {\n this.color = color;\n Object.keys(DEFAULT_VARS)\n .filter(key => DEFAULT_VARS[key].default === '@primary-color')\n .forEach(key => delete this.cachedData[`@${key}`]);\n this.resetData(this.cachedData, false);\n }\n\n setLayout(name: string, value: NzSafeAny): void {\n this.settingSrv.setLayout(name, value);\n }\n\n private resetData(nowData?: Record<string, NzSafeAny>, run: boolean = true): void {\n nowData = nowData || {};\n const data = deepCopy(DEFAULT_VARS);\n Object.keys(data).forEach(key => {\n const value = nowData![`@${key}`] || data[key].default || '';\n data[key].value = value === `@primary-color` ? this.color : value;\n });\n this.data = data;\n if (run) {\n this.cdr.detectChanges();\n this.runLess();\n }\n }\n\n private get validKeys(): string[] {\n return Object.keys(this.data).filter(key => this.data[key].value !== this.data[key].default);\n }\n\n apply(): void {\n this.runLess();\n }\n\n reset(): void {\n this.color = this.DEFAULT_PRIMARY;\n this.settingSrv.setLayout(ALAINDEFAULTVAR, {});\n this.resetData({});\n }\n\n copyVar(): void {\n const vars = this.genVars();\n const copyContent = Object.keys(vars)\n .map(key => `${key}: ${vars[key]};`)\n .join('\\n');\n copy(copyContent);\n this.msg.success('Copy success');\n }\n}\n","<nz-drawer\n [nzVisible]=\"collapse\"\n [nzPlacement]=\"dir === 'rtl' ? 'left' : 'right'\"\n [nzWidth]=\"500\"\n (nzOnClose)=\"toggle()\"\n>\n <div *nzDrawerContent class=\"setting-drawer__content\">\n <div class=\"setting-drawer__body setting-drawer__theme\">\n <h3 class=\"setting-drawer__title\">主题色</h3>\n @for (c of colors; track $index) {\n <span\n [style]=\"{ 'background-color': c.color }\"\n (click)=\"changeColor(c.color)\"\n nz-tooltip\n [nzTooltipTitle]=\"c.key\"\n class=\"setting-drawer__theme-tag\"\n >\n @if (color === c.color) {\n <nz-icon nzType=\"check\" />\n }\n </span>\n }\n </div>\n <nz-divider />\n <div class=\"setting-drawer__body\">\n <h3 class=\"setting-drawer__title\">设置</h3>\n <nz-tabset>\n <nz-tab nzTitle=\"顶部\">\n <div class=\"setting-drawer__body\">\n <setting-drawer-item [data]=\"data['alain-default-header-hg']\" />\n <setting-drawer-item [data]=\"data['alain-default-header-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-header-padding']\" />\n </div>\n </nz-tab>\n <nz-tab nzTitle=\"侧边栏\">\n <setting-drawer-item [data]=\"data['alain-default-aside-wd']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-collapsed-wd']\" />\n <setting-drawer-item [data]=\"data['alain-default-aside-nav-padding-top-bottom']\" />\n </nz-tab>\n <nz-tab nzTitle=\"内容\">\n <setting-drawer-item [data]=\"data['alain-default-content-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-heading-bg']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-heading-border']\" />\n <setting-drawer-item [data]=\"data['alain-default-content-padding']\" />\n </nz-tab>\n <nz-tab nzTitle=\"其它\">\n <setting-drawer-item [data]=\"data['form-state-visual-feedback-enabled']\" />\n <setting-drawer-item [data]=\"data['preserve-white-spaces-enabled']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-radius']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-margin-right']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-max-width']\" />\n <setting-drawer-item [data]=\"data['nz-table-img-max-height']\" />\n </nz-tab>\n </nz-tabset>\n </div>\n <nz-divider />\n <div class=\"setting-drawer__body\">\n <div class=\"setting-drawer__body-item\">\n 固定头和侧边栏\n <nz-switch nzSize=\"small\" [(ngModel)]=\"layout.fixed\" (ngModelChange)=\"setLayout('fixed', layout.fixed)\" />\n </div>\n <div class=\"setting-drawer__body-item\">\n 色弱模式\n <nz-switch\n nzSize=\"small\"\n [(ngModel)]=\"layout.colorWeak\"\n (ngModelChange)=\"setLayout('colorWeak', layout.colorWeak)\"\n />\n </div>\n </div>\n <nz-divider />\n <button (click)=\"apply()\" type=\"button\" nz-button nzType=\"primary\">预览</button>\n <button (click)=\"reset()\" type=\"button\" nz-button>重置</button>\n <button (click)=\"copyVar()\" type=\"button\" nz-button>拷贝</button>\n <nz-alert\n class=\"mt-md\"\n nzType=\"warning\"\n nzMessage=\"配置栏只在开发环境用于预览,生产环境不会展现,请拷贝后手动修改参数配置文件 src/styles/theme.less\"\n />\n </div>\n</nz-drawer>\n<div\n class=\"setting-drawer__handle\"\n [class.setting-drawer__handle-opened]=\"collapse\"\n (click)=\"toggle()\"\n nz-tooltip\n [nzTooltipTitle]=\"isDev ? devTips : null\"\n>\n <nz-icon [nzType]=\"!collapse ? 'setting' : 'close'\" class=\"setting-drawer__handle-icon\" />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SettingDrawerItemComponent } from './setting-drawer-item.component';\nimport { SettingDrawerComponent } from './setting-drawer.component';\n\nconst COMPONENTS = [SettingDrawerItemComponent, SettingDrawerComponent];\n\n@NgModule({\n imports: COMPONENTS,\n exports: COMPONENTS\n})\nexport class SettingDrawerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/theme.mjs
CHANGED
|
@@ -116,7 +116,9 @@ class AlainI18nBaseService {
|
|
|
116
116
|
if (typeof params === 'object') {
|
|
117
117
|
const interpolation = this.cog.interpolation;
|
|
118
118
|
const objParams = params;
|
|
119
|
-
Object.keys(objParams).forEach(key =>
|
|
119
|
+
Object.keys(objParams).forEach(key => {
|
|
120
|
+
content = content.replace(new RegExp(`${interpolation[0]}\\s?${key}\\s?${interpolation[1]}`, 'g'), `${objParams[key]}`);
|
|
121
|
+
});
|
|
120
122
|
}
|
|
121
123
|
(Array.isArray(params) ? params : [params]).forEach((item, index) => (content = content.replace(new RegExp(`\\{\\s?${index}\\s?\\}`, 'g'), `${item}`)));
|
|
122
124
|
return content;
|
|
@@ -1147,7 +1149,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.1", ngImpor
|
|
|
1147
1149
|
args: [{ providedIn: 'root' }]
|
|
1148
1150
|
}] });
|
|
1149
1151
|
|
|
1150
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
1151
1152
|
/**
|
|
1152
1153
|
* 封装HttpClient,主要解决:
|
|
1153
1154
|
* + 优化HttpClient在参数上便利性
|
|
@@ -2992,7 +2993,7 @@ class PreloadOptionalModules {
|
|
|
2992
2993
|
}
|
|
2993
2994
|
}
|
|
2994
2995
|
|
|
2995
|
-
const VERSION = new Version('19.0
|
|
2996
|
+
const VERSION = new Version('19.1.0');
|
|
2996
2997
|
|
|
2997
2998
|
/**
|
|
2998
2999
|
* Generated bundle index. Do not edit.
|