@yelon/bis 19.2.0 → 20.0.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/config/index.d.ts +6 -5
- package/fesm2022/bis.mjs +36 -51
- package/fesm2022/bis.mjs.map +1 -1
- package/fesm2022/config.mjs.map +1 -1
- package/fesm2022/layout.mjs +19 -19
- package/fesm2022/layout.mjs.map +1 -1
- package/fesm2022/yunzai-widgets.mjs +22 -22
- package/fesm2022/yunzai-widgets.mjs.map +1 -1
- package/index.d.ts +146 -5
- package/layout/index.d.ts +113 -5
- package/package.json +12 -12
- package/yunzai-widgets/index.d.ts +97 -5
- package/config/bis.config.d.ts +0 -3
- package/config/public_api.d.ts +0 -1
- package/layout/layout-basic.component.d.ts +0 -53
- package/layout/layout-nav-application.component.d.ts +0 -26
- package/layout/layout-nav-group.component.d.ts +0 -14
- package/layout/layout-nav-tile.component.d.ts +0 -5
- package/layout/layout.module.d.ts +0 -18
- package/layout/public_api.d.ts +0 -5
- package/public_api.d.ts +0 -10
- package/src/bis.module.d.ts +0 -8
- package/src/helper.d.ts +0 -11
- package/src/provide.d.ts +0 -2
- package/src/refresh-token.d.ts +0 -5
- package/src/startup.service.d.ts +0 -27
- package/src/website/layout-website-01.component.d.ts +0 -25
- package/src/website/layout-website-02.component.d.ts +0 -28
- package/src/yunzai-act.guard.d.ts +0 -20
- package/src/yunzai-analysis-addon.guard.d.ts +0 -25
- package/src/yunzai-default.interceptor.d.ts +0 -2
- package/yunzai-widgets/public_api.d.ts +0 -6
- package/yunzai-widgets/yunzai-clear-storage.component.d.ts +0 -8
- package/yunzai-widgets/yunzai-fullscreen.component.d.ts +0 -8
- package/yunzai-widgets/yunzai-i18n.component.d.ts +0 -19
- package/yunzai-widgets/yunzai-notify.component.d.ts +0 -25
- package/yunzai-widgets/yunzai-user.component.d.ts +0 -22
- package/yunzai-widgets/yunzai-widget.module.d.ts +0 -18
package/fesm2022/layout.mjs
CHANGED
|
@@ -181,8 +181,8 @@ class YunzaiNavApplicationComponent {
|
|
|
181
181
|
ngOnDestroy() {
|
|
182
182
|
this.destroy$.complete();
|
|
183
183
|
}
|
|
184
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
185
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
184
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiNavApplicationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
185
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: YunzaiNavApplicationComponent, isStandalone: true, selector: "yunzai-layout-nav-application", ngImport: i0, template: `
|
|
186
186
|
<ng-template #search>
|
|
187
187
|
<div nz-row class="yz-application-list-search">
|
|
188
188
|
<nz-input-group [nzPrefix]="prefixTemplate">
|
|
@@ -283,9 +283,9 @@ class YunzaiNavApplicationComponent {
|
|
|
283
283
|
}
|
|
284
284
|
</div>
|
|
285
285
|
</div>
|
|
286
|
-
`, isInline: true, dependencies: [{ kind: "
|
|
286
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i2.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i3.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i3.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch"], exportAs: ["nzInputGroup"] }, { kind: "directive", type: i3.NzInputGroupWhitSuffixOrPrefixDirective, selector: "nz-input-group[nzSuffix], nz-input-group[nzPrefix]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: NzGridModule }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i5.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }] });
|
|
287
287
|
}
|
|
288
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiNavApplicationComponent, decorators: [{
|
|
289
289
|
type: Component,
|
|
290
290
|
args: [{
|
|
291
291
|
selector: `yunzai-layout-nav-application`,
|
|
@@ -434,8 +434,8 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
434
434
|
ngOnDestroy() {
|
|
435
435
|
this.destroy$.complete();
|
|
436
436
|
}
|
|
437
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
438
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
437
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutNavGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
438
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: YunzaiLayoutNavGroupComponent, isStandalone: true, selector: "yunzai-layout-nav-group", ngImport: i0, template: `
|
|
439
439
|
<div class="yz-application-group">
|
|
440
440
|
<nz-tabset>
|
|
441
441
|
@for (menu of state.topics; track menu) {
|
|
@@ -485,9 +485,9 @@ class YunzaiLayoutNavGroupComponent {
|
|
|
485
485
|
}
|
|
486
486
|
</nz-tabset>
|
|
487
487
|
</div>
|
|
488
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i5.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i2$1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i2$1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i3$1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "directive", type: i3$1.NzDropDownADirective, selector: "a[nz-dropdown]" }, { kind: "component", type: i3$1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "
|
|
488
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i5.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i2$1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i2$1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i3$1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "directive", type: i3$1.NzDropDownADirective, selector: "a[nz-dropdown]" }, { kind: "component", type: i3$1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: NzTabsModule }, { kind: "component", type: i4$1.NzTabsComponent, selector: "nz-tabs,nz-tabset", inputs: ["nzSelectedIndex", "nzTabPosition", "nzTabBarExtraContent", "nzCanDeactivate", "nzAddIcon", "nzTabBarStyle", "nzType", "nzSize", "nzAnimated", "nzTabBarGutter", "nzHideAdd", "nzCentered", "nzHideAll", "nzLinkRouter", "nzLinkExact", "nzDestroyInactiveTabPane"], outputs: ["nzSelectChange", "nzSelectedIndexChange", "nzTabListScroll", "nzClose", "nzAdd"], exportAs: ["nzTabs"] }, { kind: "component", type: i4$1.NzTabComponent, selector: "nz-tab", inputs: ["nzTitle", "nzClosable", "nzCloseIcon", "nzDisabled", "nzForceRender"], outputs: ["nzSelect", "nzDeselect", "nzClick", "nzContextmenu"], exportAs: ["nzTab"] }, { kind: "pipe", type: I18nPipe, name: "i18n" }] });
|
|
489
489
|
}
|
|
490
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
490
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutNavGroupComponent, decorators: [{
|
|
491
491
|
type: Component,
|
|
492
492
|
args: [{
|
|
493
493
|
selector: `yunzai-layout-nav-group`,
|
|
@@ -547,10 +547,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImpor
|
|
|
547
547
|
}] });
|
|
548
548
|
|
|
549
549
|
class YunzaiLayoutNavTileComponent {
|
|
550
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
551
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
550
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutNavTileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
551
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: YunzaiLayoutNavTileComponent, isStandalone: true, selector: "yunzai-layout-nav-tile", ngImport: i0, template: `<ng-template />`, isInline: true });
|
|
552
552
|
}
|
|
553
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
553
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutNavTileComponent, decorators: [{
|
|
554
554
|
type: Component,
|
|
555
555
|
args: [{
|
|
556
556
|
selector: `yunzai-layout-nav-tile`,
|
|
@@ -713,8 +713,8 @@ class YunzaiLayoutBasicComponent {
|
|
|
713
713
|
});
|
|
714
714
|
}
|
|
715
715
|
}
|
|
716
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
717
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
716
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutBasicComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
717
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: YunzaiLayoutBasicComponent, isStandalone: true, selector: "yunzai-layout-basic", ngImport: i0, template: `
|
|
718
718
|
<layout-default [options]="options" [asideUser]="asideUserTpl" [content]="displayReusetab ? contentTpl : noneTpl">
|
|
719
719
|
<layout-default-header-item direction="left">
|
|
720
720
|
<ng-container [ngSwitch]="navType">
|
|
@@ -862,9 +862,9 @@ class YunzaiLayoutBasicComponent {
|
|
|
862
862
|
</nz-skeleton>
|
|
863
863
|
</ng-container>
|
|
864
864
|
</nz-modal>
|
|
865
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: LayoutDefaultModule }, { kind: "component", type: i1$1.LayoutDefaultComponent, selector: "layout-default", inputs: ["options", "asideUser", "asideBottom", "nav", "content", "customError", "fetchingStrictly", "fetching"], exportAs: ["layoutDefault"] }, { kind: "component", type: i1$1.LayoutDefaultHeaderItemComponent, selector: "layout-default-header-item", inputs: ["hidden", "direction"] }, { kind: "directive", type: i1$1.LayoutDefaultHeaderItemTriggerDirective, selector: "[layout-default-header-item-trigger]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ReuseTabModule }, { kind: "component", type: i3$2.ReuseTabComponent, selector: "reuse-tab, [reuse-tab]", inputs: ["mode", "i18n", "debug", "max", "tabMaxWidth", "excludes", "allowClose", "keepingScroll", "storageState", "keepingScrollContainer", "customContextMenu", "tabBarExtraContent", "tabBarGutter", "tabBarStyle", "tabType", "routeParamMatchMode", "disabled", "titleRender", "canClose"], outputs: ["change", "close"], exportAs: ["reuseTab"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "
|
|
865
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: LayoutDefaultModule }, { kind: "component", type: i1$1.LayoutDefaultComponent, selector: "layout-default", inputs: ["options", "asideUser", "asideBottom", "nav", "content", "customError", "fetchingStrictly", "fetching"], exportAs: ["layoutDefault"] }, { kind: "component", type: i1$1.LayoutDefaultHeaderItemComponent, selector: "layout-default-header-item", inputs: ["hidden", "direction"] }, { kind: "directive", type: i1$1.LayoutDefaultHeaderItemTriggerDirective, selector: "[layout-default-header-item-trigger]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ReuseTabModule }, { kind: "component", type: i3$2.ReuseTabComponent, selector: "reuse-tab, [reuse-tab]", inputs: ["mode", "i18n", "debug", "max", "tabMaxWidth", "excludes", "allowClose", "keepingScroll", "storageState", "keepingScrollContainer", "customContextMenu", "tabBarExtraContent", "tabBarGutter", "tabBarStyle", "tabType", "routeParamMatchMode", "disabled", "titleRender", "canClose"], outputs: ["change", "close"], exportAs: ["reuseTab"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i2$1.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i2$1.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "directive", type: i3$1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i3$1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: NzAvatarModule }, { kind: "component", type: i7.NzAvatarComponent, selector: "nz-avatar", inputs: ["nzShape", "nzSize", "nzGap", "nzText", "nzSrc", "nzSrcSet", "nzAlt", "nzIcon", "nzLoading", "nzFetchPriority"], outputs: ["nzError"], exportAs: ["nzAvatar"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i5.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzModalModule }, { kind: "component", type: i9.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzDraggable", "nzContent", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }, { kind: "directive", type: i9.NzModalContentDirective, selector: "[nzModalContent]", exportAs: ["nzModalContent"] }, { kind: "ngmodule", type: NzSkeletonModule }, { kind: "component", type: i10.NzSkeletonComponent, selector: "nz-skeleton", inputs: ["nzActive", "nzLoading", "nzRound", "nzTitle", "nzAvatar", "nzParagraph"], exportAs: ["nzSkeleton"] }, { kind: "ngmodule", type: NzDescriptionsModule }, { kind: "component", type: i11.NzDescriptionsComponent, selector: "nz-descriptions", inputs: ["nzBordered", "nzLayout", "nzColumn", "nzSize", "nzTitle", "nzExtra", "nzColon"], exportAs: ["nzDescriptions"] }, { kind: "component", type: i11.NzDescriptionsItemComponent, selector: "nz-descriptions-item", inputs: ["nzSpan", "nzTitle"], exportAs: ["nzDescriptionsItem"] }, { kind: "ngmodule", type: ThemeBtnModule }, { kind: "component", type: i12.ThemeBtnComponent, selector: "theme-btn", inputs: ["types", "devTips", "deployUrl"], outputs: ["themeChange"] }, { kind: "ngmodule", type: YunzaiWidgetsModule }, { kind: "component", type: i13.YunzaiHeaderClearStorageComponent, selector: "yunzai-header-clear-storage" }, { kind: "component", type: i13.YunzaiHeaderFullScreenComponent, selector: "yunzai-header-fullscreen" }, { kind: "component", type: i13.YunzaiHeaderNotifyComponent, selector: "yunzai-header-notify" }, { kind: "component", type: i13.YunzaiHeaderI18nComponent, selector: "yunzai-header-i18n", inputs: ["showLangText"] }, { kind: "component", type: i13.YunzaiHeaderUserComponent, selector: "yunzai-header-user" }, { kind: "component", type: YunzaiNavApplicationComponent, selector: "yunzai-layout-nav-application" }, { kind: "component", type: YunzaiLayoutNavGroupComponent, selector: "yunzai-layout-nav-group" }, { kind: "component", type: YunzaiLayoutNavTileComponent, selector: "yunzai-layout-nav-tile" }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: I18nPipe, name: "i18n" }] });
|
|
866
866
|
}
|
|
867
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
867
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutBasicComponent, decorators: [{
|
|
868
868
|
type: Component,
|
|
869
869
|
args: [{
|
|
870
870
|
selector: `yunzai-layout-basic`,
|
|
@@ -1040,8 +1040,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImpor
|
|
|
1040
1040
|
|
|
1041
1041
|
const COMPONENTS = [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent];
|
|
1042
1042
|
class YunzaiLayoutModule {
|
|
1043
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1044
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1043
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1044
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutModule, imports: [I18nPipe,
|
|
1045
1045
|
FormsModule,
|
|
1046
1046
|
NzFormModule,
|
|
1047
1047
|
NzInputModule,
|
|
@@ -1050,7 +1050,7 @@ class YunzaiLayoutModule {
|
|
|
1050
1050
|
NzIconModule,
|
|
1051
1051
|
NzDropDownModule,
|
|
1052
1052
|
NzTabsModule, YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent], exports: [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent] });
|
|
1053
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1053
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutModule, imports: [FormsModule,
|
|
1054
1054
|
NzFormModule,
|
|
1055
1055
|
NzInputModule,
|
|
1056
1056
|
CommonModule,
|
|
@@ -1059,7 +1059,7 @@ class YunzaiLayoutModule {
|
|
|
1059
1059
|
NzDropDownModule,
|
|
1060
1060
|
NzTabsModule, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent] });
|
|
1061
1061
|
}
|
|
1062
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1062
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: YunzaiLayoutModule, decorators: [{
|
|
1063
1063
|
type: NgModule,
|
|
1064
1064
|
args: [{
|
|
1065
1065
|
imports: [
|
package/fesm2022/layout.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.mjs","sources":["../../../../packages/bis/layout/layout-nav-application.component.ts","../../../../packages/bis/layout/layout-nav-group.component.ts","../../../../packages/bis/layout/layout-nav-tile.component.ts","../../../../packages/bis/layout/layout-basic.component.ts","../../../../packages/bis/layout/layout.module.ts","../../../../packages/bis/layout/layout.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { mergeBisConfig } from '@yelon/bis/config';\nimport { _HttpClient, I18nPipe, YunzaiHttpI18NService } from '@yelon/theme';\nimport {\n LayoutNavApplicationState,\n useLocalStorageHeader,\n WINDOW,\n YunzaiConfigService,\n YunzaiNavTopic\n} from '@yelon/util';\n\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\n\n@Component({\n selector: `yunzai-layout-nav-application`,\n template: `\n <ng-template #search>\n <div nz-row class=\"yz-application-list-search\">\n <nz-input-group [nzPrefix]=\"prefixTemplate\">\n <input\n data-event-id=\"_nav_search\"\n type=\"text\"\n nz-input\n placeholder=\"{{ 'application.search' | i18n }}\"\n [(ngModel)]=\"state.search\"\n (ngModelChange)=\"onSearch()\"\n />\n <ng-template #prefixTemplate>\n <nz-icon nzType=\"search\" nzTheme=\"outline\"></nz-icon>\n </ng-template>\n </nz-input-group>\n </div>\n </ng-template>\n\n <ng-template #ld>\n <div class=\"yz-application-list\">\n <ul>\n @for (topic of state.list; track topic) {\n <li>\n <h5>{{ topic.name | i18n }}</h5>\n @for (nav of topic.children; track nav) {\n <a\n data-event-id=\"_nav_item\"\n [attr.data-name]=\"nav.name | i18n\"\n href=\"javascript:;\"\n (click)=\"open(nav)\"\n >{{ nav.name | i18n }}</a\n >\n }\n </li>\n }\n </ul>\n </div>\n </ng-template>\n\n <div data-event-id=\"_nav_app\" id=\"navBtn\" class=\"yunzai-default__nav-item\" (click)=\"diffChange()\"\n >{{ 'mode.nav' | i18n }}\n </div>\n\n <div class=\"yz-application\" id=\"navDropdown\" nz-row *ngIf=\"state.active\">\n <div nz-col [nzSpan]=\"3\" class=\"yz-application-topic\">\n <div class=\"yz-application-topic-list\">\n @if (showAllMenu) {\n <div data-event-id=\"_nav_topic\" data-name=\"全部应用\" class=\"yz-application-text\" (click)=\"attachNav('all')\"\n >{{ 'mode.nav.all' | i18n }}\n </div>\n }\n @if (showMineMenu) {\n <div data-event-id=\"_nav_topic\" data-name=\"我的应用\" class=\"yz-application-text\" (click)=\"attachNav('mine')\"\n >{{ 'mode.nav.mine' | i18n }}\n </div>\n }\n @for (nav of state.topics; track nav) {\n <div\n data-event-id=\"_nav_topic\"\n [attr.data-name]=\"nav.name | i18n\"\n class=\"yz-application-text\"\n (click)=\"attachNav('other', nav)\"\n >{{ nav.name | i18n }}\n </div>\n }\n </div>\n </div>\n <div nz-col [nzSpan]=\"21\" class=\"yz-application-container\">\n @switch (state.type) {\n @case ('all') {\n <div>\n <ng-template [ngTemplateOutlet]=\"search\" />\n <ng-template [ngTemplateOutlet]=\"ld\" />\n </div>\n }\n @case ('mine') {\n <div>\n <ng-template [ngTemplateOutlet]=\"search\" />\n <ng-template [ngTemplateOutlet]=\"ld\" />\n </div>\n }\n @case ('other') {\n <div class=\"yz-application-list yz-application-list-other\">\n <div class=\"yz-application-list-item\">\n <ul>\n @for (nav of state.list; track nav) {\n <li data-event-id=\"_nav_item\" [attr.data-name]=\"nav.name | i18n\" (click)=\"open(nav)\">\n <a href=\"javascript:;\">\n <h4>{{ nav.name | i18n }}</h4>\n <p>{{ nav.intro | i18n }}</p>\n </a>\n </li>\n }\n </ul>\n </div>\n </div>\n }\n }\n </div>\n </div>\n `,\n imports: [I18nPipe, FormsModule, NzFormModule, NzInputModule, CommonModule, NzGridModule, NzIconModule]\n})\nexport class YunzaiNavApplicationComponent implements OnInit, OnDestroy {\n private readonly config = mergeBisConfig(inject(YunzaiConfigService));\n private readonly http = inject(_HttpClient);\n private readonly win = inject(WINDOW);\n private readonly i18n = inject(YunzaiHttpI18NService);\n private readonly destroy$ = new Subject();\n\n state: LayoutNavApplicationState = {\n active: false,\n type: 'all',\n topic: undefined,\n topics: [],\n list: [],\n search: null\n };\n\n get showAllMenu(): boolean {\n if (this.config.nav) return this.config.nav!.all!;\n return true;\n }\n\n get showMineMenu(): boolean {\n if (this.config.nav) return this.config.nav!.mine!;\n return true;\n }\n\n ngOnInit(): void {\n this.fetchAllTopic();\n this.attachNav('all');\n this.win.addEventListener('click', (event: any) => {\n const { target } = event;\n const btn = this.win.document.getElementById('navBtn');\n const dropdown = this.win.document.getElementById('navDropdown');\n if (btn && dropdown && !dropdown.contains(target) && !btn.contains(target)) {\n this.state.active = false;\n }\n });\n }\n\n fetchAllTopic(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topics = getTopics()!;\n }\n\n attachNav(type: 'all' | 'mine' | 'other', topic?: YunzaiNavTopic): void {\n this.state.type = type;\n this.clearSearch();\n if (type === 'all') {\n this.displayAllNav();\n }\n if (type === 'mine') {\n this.displayMineNav();\n }\n if (type === 'other' && topic) {\n this.displayOtherNav(topic);\n }\n }\n\n clearSearch(): void {\n this.state.search = null;\n }\n\n displayAllNav(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!;\n }\n\n displayMineNav(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!\n .filter((topic: YunzaiNavTopic) => {\n topic.children = topic.children.filter((child: YunzaiNavTopic) => {\n return child.auth;\n });\n return topic;\n })\n .filter((topic: YunzaiNavTopic) => {\n return topic.children.length > 0;\n });\n }\n\n displayOtherNav(topic: YunzaiNavTopic): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topic = topic;\n const temp: YunzaiNavTopic[] = getTopics()!;\n this.state.list = temp.filter(t => t.key === topic.key)[0].children;\n }\n\n diffChange(flag?: boolean): void {\n if (flag) {\n this.state.active = flag;\n } else {\n this.state.active = !this.state.active;\n }\n }\n\n open(topic: YunzaiNavTopic): void {\n if (topic.key) {\n this.http\n .post(`/app-manager/web-scan/save`, {\n appId: topic.key,\n createDate: new Date()\n })\n .pipe(takeUntil(this.destroy$))\n .subscribe();\n }\n switch (topic.target) {\n case 'href':\n this.win.location.href = topic.url;\n break;\n case 'blank':\n this.win.open(topic.url);\n break;\n case 'target':\n this.win.open(topic.url);\n break;\n default:\n this.win.location.href = topic.url;\n break;\n }\n }\n\n onSearch(): void {\n const [, getTopics] = useLocalStorageHeader();\n const temp: YunzaiNavTopic[] = getTopics()!;\n if (this.state.search) {\n this.state.list = temp\n .filter((topic: YunzaiNavTopic) => {\n if (this.i18n.fanyi(topic.name).includes(this.state.search!)) {\n return topic;\n } else {\n topic.children = topic.children.filter((child: YunzaiNavTopic) => {\n return this.i18n.fanyi(child.name).includes(this.state.search!);\n });\n return topic;\n }\n })\n .filter((topic: YunzaiNavTopic) => {\n return topic.children.length > 0;\n });\n } else {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.complete();\n }\n}\n","import { Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { _HttpClient, I18nPipe } from '@yelon/theme';\nimport { LayoutNavGroupState, useLocalStorageHeader, WINDOW, YunzaiNavTopic } from '@yelon/util';\n\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\n\n@Component({\n selector: `yunzai-layout-nav-group`,\n template: `\n <div class=\"yz-application-group\">\n <nz-tabset>\n @for (menu of state.topics; track menu) {\n <nz-tab [nzTitle]=\"groupTitleTpl\">\n <ng-template #groupTitleTpl>\n <a\n data-event-id=\"_nav_topic\"\n [attr.data-name]=\"menu.name | i18n\"\n nz-dropdown\n [nzDropdownMenu]=\"menuTpl\"\n [nzTrigger]=\"'click'\"\n [nzOverlayClassName]=\"'yz-application-dropdown'\"\n >\n @if (menu.icon) {\n <nz-icon [nzType]=\"menu.icon\" nzTheme=\"outline\"></nz-icon>\n }\n {{ menu.name | i18n }}\n @if (menu.children && menu.children.length > 0) {\n <nz-icon nzType=\"down\" nzTheme=\"outline\"></nz-icon>\n }\n </a>\n <nz-dropdown-menu #menuTpl=\"nzDropdownMenu\">\n @if (menu.children && menu.children.length > 0) {\n <ul nz-menu nzSelectable>\n @for (item of menu.children; track item) {\n <ng-container>\n @if (item.auth) {\n <li\n data-event-id=\"_nav_item\"\n [attr.data-name]=\"item.name | i18n\"\n nz-menu-item\n (click)=\"open(item)\"\n >\n @if (item.icon) {\n <nz-icon [nzType]=\"item.icon\" nzTheme=\"outline\"></nz-icon>\n }\n {{ item.name | i18n }}\n </li>\n }\n </ng-container>\n }\n </ul>\n }\n </nz-dropdown-menu>\n </ng-template>\n </nz-tab>\n }\n </nz-tabset>\n </div>\n `,\n\n imports: [NzIconModule, NzDropDownModule, I18nPipe, NzTabsModule]\n})\nexport class YunzaiLayoutNavGroupComponent implements OnInit, OnDestroy {\n private readonly http = inject(_HttpClient);\n private destroy$ = new Subject();\n private readonly win = inject(WINDOW);\n state: LayoutNavGroupState = {\n topics: []\n };\n\n ngOnInit(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topics = getTopics() || [];\n }\n\n open(topic: YunzaiNavTopic): void {\n if (topic.key) {\n this.http\n .post(`/app-manager/web-scan/save`, {\n appId: topic.key,\n createDate: new Date()\n })\n .pipe(takeUntil(this.destroy$))\n .subscribe();\n }\n switch (topic.target) {\n case 'href':\n this.win.location.href = topic.url;\n break;\n case 'blank':\n this.win.open(topic.url);\n break;\n case 'target':\n this.win.open(topic.url);\n break;\n default:\n this.win.location.href = topic.url;\n break;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.complete();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: `yunzai-layout-nav-tile`,\n template: `<ng-template />`\n})\nexport class YunzaiLayoutNavTileComponent {}\n","import { CommonModule } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Component, inject, OnInit } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { ReuseTabModule } from '@yelon/abc/reuse-tab';\nimport { YunzaiWidgetsModule } from '@yelon/bis/yunzai-widgets';\nimport { StompService } from '@yelon/socket';\nimport { I18nPipe } from '@yelon/theme';\nimport { LayoutDefaultModule, LayoutDefaultOptions, LayoutDisplayService } from '@yelon/theme/layout-default';\nimport { ThemeBtnModule } from '@yelon/theme/theme-btn';\nimport {\n hasFavicon,\n LayoutBasicAside,\n LayoutBasicDisplay,\n log,\n NavType,\n setFavicon,\n useLocalStorageCurrent,\n useLocalStorageDefaultRoute,\n useLocalStorageHeaderType,\n useLocalStorageProjectInfo,\n WINDOW,\n YUNZAI_CONFIG,\n YunzaiBusinessConfig,\n YunzaiConfig,\n YunzaiHeaderStyle,\n YunzaiProjectInfo\n} from '@yelon/util';\n\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzDescriptionsModule } from 'ng-zorro-antd/descriptions';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzModalModule } from 'ng-zorro-antd/modal';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { YunzaiNavApplicationComponent } from './layout-nav-application.component';\nimport { YunzaiLayoutNavGroupComponent } from './layout-nav-group.component';\nimport { YunzaiLayoutNavTileComponent } from './layout-nav-tile.component';\n\nexport interface LayoutBasicState {\n options: LayoutDefaultOptions;\n aside: LayoutBasicAside;\n display: LayoutBasicDisplay;\n navType: NavType;\n}\n\nexport interface ApplicationInfoInterface {\n id?: string;\n name?: string;\n showName?: string;\n lastVersion?: string;\n versionNum?: string;\n currentVersion?: string;\n firstDeploymentDate?: string;\n currentDeploymentDate?: string;\n lastPushDate?: string;\n}\n\n@Component({\n selector: `yunzai-layout-basic`,\n template: `\n <layout-default [options]=\"options\" [asideUser]=\"asideUserTpl\" [content]=\"displayReusetab ? contentTpl : noneTpl\">\n <layout-default-header-item direction=\"left\">\n <ng-container [ngSwitch]=\"navType\">\n <ng-container *ngSwitchCase=\"NavType.APPLICATION\">\n <yunzai-layout-nav-application />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.GROUP\">\n <yunzai-layout-nav-group />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TILE\">\n <yunzai-layout-nav-tile />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.BLANK\" />\n <ng-container *ngSwitchCase=\"NavType.TABS\" />\n <ng-container *ngSwitchDefault>\n <yunzai-layout-nav-application />\n </ng-container>\n </ng-container>\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <yunzai-header-notify />\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <theme-btn />\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <div\n data-event-id=\"_nav_settings\"\n layout-default-header-item-trigger\n nz-dropdown\n [nzDropdownMenu]=\"settingsMenu\"\n nzTrigger=\"click\"\n nzPlacement=\"bottomRight\"\n >\n <nz-icon nzType=\"setting\" nzTheme=\"outline\"></nz-icon>\n </div>\n <nz-dropdown-menu #settingsMenu=\"nzDropdownMenu\">\n <div nz-menu style=\"width: 200px;\">\n <div data-event-id=\"_nav_mode\" nz-menu-item>\n {{ 'mode.nav' | i18n }}\n </div>\n\n @if (headerStyleList.length > 1) {\n @for (i of headerStyleList; track $index) {\n <div\n data-event-id=\"_nav_mode\"\n nz-menu-item\n [attr.data-type]=\"i.value\"\n (click)=\"onNavTypeChange(i.value)\"\n >\n <ng-container [ngSwitch]=\"i.value\">\n <ng-container *ngSwitchCase=\"NavType.APPLICATION\">\n <nz-icon nzType=\"appstore\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.GROUP\">\n <nz-icon nzType=\"group\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TILE\">\n <nz-icon nzType=\"dash\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.BLANK\">\n <nz-icon nzType=\"border\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TABS\">\n <nz-icon nzType=\"insert-row-above\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchDefault>\n <nz-icon nzType=\"appstore\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n {{ 'mode.nav.' + i.value | i18n }}\n </ng-container>\n </div>\n }\n }\n\n <div data-event-id=\"_nav_fullscreen\" nz-menu-item>\n <yunzai-header-fullscreen />\n </div>\n <div data-event-id=\"_nav_clearstorage\" nz-menu-item>\n <yunzai-header-clear-storage />\n </div>\n <div data-event-id=\"_nav_i18n\" nz-menu-item>\n <yunzai-header-i18n />\n </div>\n </div>\n </nz-dropdown-menu>\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\">\n <yunzai-header-user />\n </layout-default-header-item>\n </layout-default>\n <ng-template #asideUserTpl>\n <div data-event-id=\"_route_user\" class=\"yunzai-default__aside-user\">\n <nz-avatar\n class=\"yunzai-default__aside-user-avatar\"\n [nzSize]=\"40\"\n [nzSrc]=\"aside.icon\"\n (click)=\"aboutApplication()\"\n />\n <div class=\"yunzai-default__aside-user-info\" nz-dropdown nzTrigger=\"click\" [nzDropdownMenu]=\"userMenu\">\n <strong>{{ aside.name | i18n }}</strong>\n <p>{{ aside.intro | i18n }}</p>\n </div>\n </div>\n <nz-dropdown-menu #userMenu=\"nzDropdownMenu\">\n <ul nz-menu>\n <li data-event-id=\"_route_backhome\" nz-menu-item routerLink=\"/\">{{ 'back.home' | i18n }}</li>\n </ul>\n </nz-dropdown-menu>\n </ng-template>\n <ng-template #contentTpl>\n <reuse-tab #reuseTab [style]=\"reusetabCSS\" />\n <router-outlet (activate)=\"reuseTab.activate($event)\" (attach)=\"reuseTab.activate($event)\" />\n </ng-template>\n <ng-template #noneTpl>\n <router-outlet />\n </ng-template>\n\n <nz-modal\n nzTitle=\"关于本应用\"\n [(nzVisible)]=\"applicationModal.isVisible\"\n [nzOkText]=\"null\"\n [nzCancelText]=\"'关闭'\"\n [nzWidth]=\"700\"\n (nzOnCancel)=\"applicationModal.isVisible = false\"\n >\n <ng-container *nzModalContent>\n <nz-skeleton [nzLoading]=\"applicationModal.loading\" [nzActive]=\"true\">\n <nz-descriptions nzBordered [nzSize]=\"'middle'\" [nzColumn]=\"{ xxl: 2, xl: 2, lg: 2, md: 2, sm: 2, xs: 1 }\">\n <nz-descriptions-item nzTitle=\"应用名称\">{{ applicationInfo?.showName }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"应用标识\">{{ applicationInfo?.name }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"版本总数\">{{ applicationInfo?.versionNum }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"应用首次部署时间\">{{\n applicationInfo?.firstDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"当前版本\">{{ applicationInfo?.currentVersion }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"当前版本部署时间\">{{\n applicationInfo?.currentDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"最新版本\">{{ applicationInfo?.lastVersion }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"最新版本发布时间\">{{\n applicationInfo?.lastPushDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n </nz-descriptions>\n </nz-skeleton>\n </ng-container>\n </nz-modal>\n `,\n imports: [\n LayoutDefaultModule,\n RouterModule,\n ReuseTabModule,\n CommonModule,\n I18nPipe,\n NzDropDownModule,\n NzAvatarModule,\n NzIconModule,\n NzModalModule,\n NzSkeletonModule,\n NzDescriptionsModule,\n ThemeBtnModule,\n YunzaiWidgetsModule,\n YunzaiNavApplicationComponent,\n YunzaiLayoutNavGroupComponent,\n YunzaiLayoutNavTileComponent\n ]\n})\nexport class YunzaiLayoutBasicComponent implements OnInit {\n private readonly stomp = inject(StompService);\n private readonly win = inject(WINDOW);\n private readonly layoutDisplayService = inject(LayoutDisplayService);\n private readonly conf: YunzaiConfig = inject(YUNZAI_CONFIG);\n\n public NavType = NavType;\n private state: LayoutBasicState = {\n options: {\n logoExpanded: `./assets/logo-full.svg`,\n logoCollapsed: `./assets/logo.svg`\n },\n aside: {\n name: '',\n intro: '',\n icon: ''\n },\n display: {\n nav: true,\n aside: true,\n reusetab: true\n },\n navType: NavType.APPLICATION\n };\n\n headerStyleList: YunzaiHeaderStyle[] = [];\n\n applicationInfo!: ApplicationInfoInterface;\n\n applicationModal = {\n isVisible: false,\n loading: false\n };\n\n private readonly httpClient = inject(HttpClient);\n private config!: YunzaiBusinessConfig;\n\n get options(): LayoutDefaultOptions {\n return this.state.options;\n }\n\n get navType(): NavType {\n return this.state.navType;\n }\n\n get aside(): LayoutBasicAside {\n return this.state.aside;\n }\n\n get displayReusetab(): boolean {\n return this.state.display.reusetab;\n }\n\n get reusetabCSS(): any {\n let cascadingStyleSheet = {};\n if (!this.state.display.nav) {\n cascadingStyleSheet = {\n ...cascadingStyleSheet,\n top: '0px'\n };\n }\n if (!this.state.display.aside) {\n cascadingStyleSheet = {\n ...cascadingStyleSheet,\n left: '0px'\n };\n }\n return cascadingStyleSheet;\n }\n\n ngOnInit(): void {\n this.config = this.conf.bis!;\n this.initLogo();\n this.initFavicon();\n this.initNavType();\n this.initAside();\n this.addLayoutDisplayListener();\n this.stomp.listen();\n this.toIndex();\n }\n\n initFavicon(): void {\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n if (projectInfo.faviconUrl) {\n hasFavicon(projectInfo.faviconUrl).then((has: boolean) => {\n if (has) {\n setFavicon(projectInfo.faviconUrl);\n } else {\n setFavicon('./assets/favicon.ico');\n }\n });\n }\n }\n\n initAside(): void {\n const [, getCurrent] = useLocalStorageCurrent();\n const aside: LayoutBasicAside = getCurrent()!;\n this.state.aside = { ...aside };\n }\n\n initLogo(): void {\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n this.state.options.logoExpanded = projectInfo.maxLogoUrl ? projectInfo.maxLogoUrl : `./assets/logo-full.svg`;\n this.state.options.logoCollapsed = projectInfo.miniLogoUrl ? projectInfo.miniLogoUrl : `./assets/logo.svg`;\n }\n\n initNavType(): void {\n const [, getHeaderType] = useLocalStorageHeaderType();\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const navType: NavType | null = getHeaderType();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n if (navType !== null) {\n this.state.navType = navType;\n } else {\n this.state.navType = NavType.APPLICATION;\n }\n if (projectInfo.headerStyle && projectInfo.headerStyle.length > 0) {\n this.headerStyleList = projectInfo.headerStyle;\n const hasThis = this.headerStyleList.some(item => item.value === this.state.navType);\n if (!hasThis) {\n this.state.navType = projectInfo.headerStyle[0].value as NavType;\n const [setHeaderType] = useLocalStorageHeaderType();\n setHeaderType(this.state.navType);\n }\n }\n }\n\n toIndex(): void {\n const [, getDefaultRoute] = useLocalStorageDefaultRoute();\n const defaultRoute = getDefaultRoute()!;\n log('YunzaiLayoutBasicComponent: ', `todo: the default route was ${defaultRoute}, 但是还没想好如何实现.`);\n }\n\n onNavTypeChange(type: NavType | string): void {\n const [setHeaderType] = useLocalStorageHeaderType();\n setHeaderType(type as NavType);\n this.win.location.reload();\n }\n\n addLayoutDisplayListener(): void {\n this.layoutDisplayService.listen('reuseTab', (display: boolean) => {\n this.state.display.reusetab = display;\n });\n this.layoutDisplayService.listen('nav', (display: boolean) => {\n this.state.display.nav = display;\n });\n\n this.layoutDisplayService.listen('aside', (display: boolean) => {\n this.state.display.aside = display;\n });\n }\n\n // 关于本应用\n aboutApplication(): void {\n const urlArr = window.location.pathname.split(`${this.config.baseUrl}/`);\n if (urlArr.length > 1) {\n // 应用标识,截取路径中 /backstage/后第一个字符串\n // 例: http://222.30.194.61/backstage/auth/page/oafportal/#/base/menu 中 auth\n const name = urlArr[1].split('/')[0];\n this.applicationModal.isVisible = true;\n this.applicationModal.loading = true;\n this.httpClient.get(`/basic/api/app/aboutApp?name=${name}`).subscribe(\n (response: any) => {\n this.applicationModal.loading = false;\n if (response.data) {\n this.applicationInfo = response.data;\n }\n },\n () => {\n this.applicationModal.loading = false;\n }\n );\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { I18nPipe } from '@yelon/theme';\n\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\n\nimport { YunzaiLayoutBasicComponent } from './layout-basic.component';\nimport { YunzaiLayoutNavGroupComponent } from './layout-nav-group.component';\nimport { YunzaiLayoutNavTileComponent } from './layout-nav-tile.component';\n\nconst COMPONENTS = [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent];\n\n@NgModule({\n imports: [\n I18nPipe,\n FormsModule,\n NzFormModule,\n NzInputModule,\n CommonModule,\n NzGridModule,\n NzIconModule,\n NzDropDownModule,\n NzTabsModule,\n ...COMPONENTS\n ],\n exports: COMPONENTS\n})\nexport class YunzaiLayoutModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i3","i4","i5","i6","i8"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"layout.mjs","sources":["../../../../packages/bis/layout/layout-nav-application.component.ts","../../../../packages/bis/layout/layout-nav-group.component.ts","../../../../packages/bis/layout/layout-nav-tile.component.ts","../../../../packages/bis/layout/layout-basic.component.ts","../../../../packages/bis/layout/layout.module.ts","../../../../packages/bis/layout/layout.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { mergeBisConfig } from '@yelon/bis/config';\nimport { _HttpClient, I18nPipe, YunzaiHttpI18NService } from '@yelon/theme';\nimport {\n LayoutNavApplicationState,\n useLocalStorageHeader,\n WINDOW,\n YunzaiConfigService,\n YunzaiNavTopic\n} from '@yelon/util';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\n\n@Component({\n selector: `yunzai-layout-nav-application`,\n template: `\n <ng-template #search>\n <div nz-row class=\"yz-application-list-search\">\n <nz-input-group [nzPrefix]=\"prefixTemplate\">\n <input\n data-event-id=\"_nav_search\"\n type=\"text\"\n nz-input\n placeholder=\"{{ 'application.search' | i18n }}\"\n [(ngModel)]=\"state.search\"\n (ngModelChange)=\"onSearch()\"\n />\n <ng-template #prefixTemplate>\n <nz-icon nzType=\"search\" nzTheme=\"outline\"></nz-icon>\n </ng-template>\n </nz-input-group>\n </div>\n </ng-template>\n\n <ng-template #ld>\n <div class=\"yz-application-list\">\n <ul>\n @for (topic of state.list; track topic) {\n <li>\n <h5>{{ topic.name | i18n }}</h5>\n @for (nav of topic.children; track nav) {\n <a\n data-event-id=\"_nav_item\"\n [attr.data-name]=\"nav.name | i18n\"\n href=\"javascript:;\"\n (click)=\"open(nav)\"\n >{{ nav.name | i18n }}</a\n >\n }\n </li>\n }\n </ul>\n </div>\n </ng-template>\n\n <div data-event-id=\"_nav_app\" id=\"navBtn\" class=\"yunzai-default__nav-item\" (click)=\"diffChange()\"\n >{{ 'mode.nav' | i18n }}\n </div>\n\n <div class=\"yz-application\" id=\"navDropdown\" nz-row *ngIf=\"state.active\">\n <div nz-col [nzSpan]=\"3\" class=\"yz-application-topic\">\n <div class=\"yz-application-topic-list\">\n @if (showAllMenu) {\n <div data-event-id=\"_nav_topic\" data-name=\"全部应用\" class=\"yz-application-text\" (click)=\"attachNav('all')\"\n >{{ 'mode.nav.all' | i18n }}\n </div>\n }\n @if (showMineMenu) {\n <div data-event-id=\"_nav_topic\" data-name=\"我的应用\" class=\"yz-application-text\" (click)=\"attachNav('mine')\"\n >{{ 'mode.nav.mine' | i18n }}\n </div>\n }\n @for (nav of state.topics; track nav) {\n <div\n data-event-id=\"_nav_topic\"\n [attr.data-name]=\"nav.name | i18n\"\n class=\"yz-application-text\"\n (click)=\"attachNav('other', nav)\"\n >{{ nav.name | i18n }}\n </div>\n }\n </div>\n </div>\n <div nz-col [nzSpan]=\"21\" class=\"yz-application-container\">\n @switch (state.type) {\n @case ('all') {\n <div>\n <ng-template [ngTemplateOutlet]=\"search\" />\n <ng-template [ngTemplateOutlet]=\"ld\" />\n </div>\n }\n @case ('mine') {\n <div>\n <ng-template [ngTemplateOutlet]=\"search\" />\n <ng-template [ngTemplateOutlet]=\"ld\" />\n </div>\n }\n @case ('other') {\n <div class=\"yz-application-list yz-application-list-other\">\n <div class=\"yz-application-list-item\">\n <ul>\n @for (nav of state.list; track nav) {\n <li data-event-id=\"_nav_item\" [attr.data-name]=\"nav.name | i18n\" (click)=\"open(nav)\">\n <a href=\"javascript:;\">\n <h4>{{ nav.name | i18n }}</h4>\n <p>{{ nav.intro | i18n }}</p>\n </a>\n </li>\n }\n </ul>\n </div>\n </div>\n }\n }\n </div>\n </div>\n `,\n imports: [I18nPipe, FormsModule, NzFormModule, NzInputModule, CommonModule, NzGridModule, NzIconModule]\n})\nexport class YunzaiNavApplicationComponent implements OnInit, OnDestroy {\n private readonly config = mergeBisConfig(inject(YunzaiConfigService));\n private readonly http = inject(_HttpClient);\n private readonly win = inject(WINDOW);\n private readonly i18n = inject(YunzaiHttpI18NService);\n private readonly destroy$ = new Subject();\n\n state: LayoutNavApplicationState = {\n active: false,\n type: 'all',\n topic: undefined,\n topics: [],\n list: [],\n search: null\n };\n\n get showAllMenu(): boolean {\n if (this.config.nav) return this.config.nav!.all!;\n return true;\n }\n\n get showMineMenu(): boolean {\n if (this.config.nav) return this.config.nav!.mine!;\n return true;\n }\n\n ngOnInit(): void {\n this.fetchAllTopic();\n this.attachNav('all');\n this.win.addEventListener('click', (event: any) => {\n const { target } = event;\n const btn = this.win.document.getElementById('navBtn');\n const dropdown = this.win.document.getElementById('navDropdown');\n if (btn && dropdown && !dropdown.contains(target) && !btn.contains(target)) {\n this.state.active = false;\n }\n });\n }\n\n fetchAllTopic(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topics = getTopics()!;\n }\n\n attachNav(type: 'all' | 'mine' | 'other', topic?: YunzaiNavTopic): void {\n this.state.type = type;\n this.clearSearch();\n if (type === 'all') {\n this.displayAllNav();\n }\n if (type === 'mine') {\n this.displayMineNav();\n }\n if (type === 'other' && topic) {\n this.displayOtherNav(topic);\n }\n }\n\n clearSearch(): void {\n this.state.search = null;\n }\n\n displayAllNav(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!;\n }\n\n displayMineNav(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!\n .filter((topic: YunzaiNavTopic) => {\n topic.children = topic.children.filter((child: YunzaiNavTopic) => {\n return child.auth;\n });\n return topic;\n })\n .filter((topic: YunzaiNavTopic) => {\n return topic.children.length > 0;\n });\n }\n\n displayOtherNav(topic: YunzaiNavTopic): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topic = topic;\n const temp: YunzaiNavTopic[] = getTopics()!;\n this.state.list = temp.filter(t => t.key === topic.key)[0].children;\n }\n\n diffChange(flag?: boolean): void {\n if (flag) {\n this.state.active = flag;\n } else {\n this.state.active = !this.state.active;\n }\n }\n\n open(topic: YunzaiNavTopic): void {\n if (topic.key) {\n this.http\n .post(`/app-manager/web-scan/save`, {\n appId: topic.key,\n createDate: new Date()\n })\n .pipe(takeUntil(this.destroy$))\n .subscribe();\n }\n switch (topic.target) {\n case 'href':\n this.win.location.href = topic.url;\n break;\n case 'blank':\n this.win.open(topic.url);\n break;\n case 'target':\n this.win.open(topic.url);\n break;\n default:\n this.win.location.href = topic.url;\n break;\n }\n }\n\n onSearch(): void {\n const [, getTopics] = useLocalStorageHeader();\n const temp: YunzaiNavTopic[] = getTopics()!;\n if (this.state.search) {\n this.state.list = temp\n .filter((topic: YunzaiNavTopic) => {\n if (this.i18n.fanyi(topic.name).includes(this.state.search!)) {\n return topic;\n } else {\n topic.children = topic.children.filter((child: YunzaiNavTopic) => {\n return this.i18n.fanyi(child.name).includes(this.state.search!);\n });\n return topic;\n }\n })\n .filter((topic: YunzaiNavTopic) => {\n return topic.children.length > 0;\n });\n } else {\n const [, getTopics] = useLocalStorageHeader();\n this.state.list = getTopics()!;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.complete();\n }\n}\n","import { Component, inject, OnDestroy, OnInit } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { _HttpClient, I18nPipe } from '@yelon/theme';\nimport { LayoutNavGroupState, useLocalStorageHeader, WINDOW, YunzaiNavTopic } from '@yelon/util';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\n\n@Component({\n selector: `yunzai-layout-nav-group`,\n template: `\n <div class=\"yz-application-group\">\n <nz-tabset>\n @for (menu of state.topics; track menu) {\n <nz-tab [nzTitle]=\"groupTitleTpl\">\n <ng-template #groupTitleTpl>\n <a\n data-event-id=\"_nav_topic\"\n [attr.data-name]=\"menu.name | i18n\"\n nz-dropdown\n [nzDropdownMenu]=\"menuTpl\"\n [nzTrigger]=\"'click'\"\n [nzOverlayClassName]=\"'yz-application-dropdown'\"\n >\n @if (menu.icon) {\n <nz-icon [nzType]=\"menu.icon\" nzTheme=\"outline\"></nz-icon>\n }\n {{ menu.name | i18n }}\n @if (menu.children && menu.children.length > 0) {\n <nz-icon nzType=\"down\" nzTheme=\"outline\"></nz-icon>\n }\n </a>\n <nz-dropdown-menu #menuTpl=\"nzDropdownMenu\">\n @if (menu.children && menu.children.length > 0) {\n <ul nz-menu nzSelectable>\n @for (item of menu.children; track item) {\n <ng-container>\n @if (item.auth) {\n <li\n data-event-id=\"_nav_item\"\n [attr.data-name]=\"item.name | i18n\"\n nz-menu-item\n (click)=\"open(item)\"\n >\n @if (item.icon) {\n <nz-icon [nzType]=\"item.icon\" nzTheme=\"outline\"></nz-icon>\n }\n {{ item.name | i18n }}\n </li>\n }\n </ng-container>\n }\n </ul>\n }\n </nz-dropdown-menu>\n </ng-template>\n </nz-tab>\n }\n </nz-tabset>\n </div>\n `,\n\n imports: [NzIconModule, NzDropDownModule, I18nPipe, NzTabsModule]\n})\nexport class YunzaiLayoutNavGroupComponent implements OnInit, OnDestroy {\n private readonly http = inject(_HttpClient);\n private destroy$ = new Subject();\n private readonly win = inject(WINDOW);\n state: LayoutNavGroupState = {\n topics: []\n };\n\n ngOnInit(): void {\n const [, getTopics] = useLocalStorageHeader();\n this.state.topics = getTopics() || [];\n }\n\n open(topic: YunzaiNavTopic): void {\n if (topic.key) {\n this.http\n .post(`/app-manager/web-scan/save`, {\n appId: topic.key,\n createDate: new Date()\n })\n .pipe(takeUntil(this.destroy$))\n .subscribe();\n }\n switch (topic.target) {\n case 'href':\n this.win.location.href = topic.url;\n break;\n case 'blank':\n this.win.open(topic.url);\n break;\n case 'target':\n this.win.open(topic.url);\n break;\n default:\n this.win.location.href = topic.url;\n break;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.complete();\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: `yunzai-layout-nav-tile`,\n template: `<ng-template />`\n})\nexport class YunzaiLayoutNavTileComponent {}\n","import { CommonModule } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Component, inject, OnInit } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { ReuseTabModule } from '@yelon/abc/reuse-tab';\nimport { YunzaiWidgetsModule } from '@yelon/bis/yunzai-widgets';\nimport { StompService } from '@yelon/socket';\nimport { I18nPipe } from '@yelon/theme';\nimport { LayoutDefaultModule, LayoutDefaultOptions, LayoutDisplayService } from '@yelon/theme/layout-default';\nimport { ThemeBtnModule } from '@yelon/theme/theme-btn';\nimport {\n hasFavicon,\n LayoutBasicAside,\n LayoutBasicDisplay,\n log,\n NavType,\n setFavicon,\n useLocalStorageCurrent,\n useLocalStorageDefaultRoute,\n useLocalStorageHeaderType,\n useLocalStorageProjectInfo,\n WINDOW,\n YUNZAI_CONFIG,\n YunzaiBusinessConfig,\n YunzaiConfig,\n YunzaiHeaderStyle,\n YunzaiProjectInfo\n} from '@yelon/util';\nimport { NzAvatarModule } from 'ng-zorro-antd/avatar';\nimport { NzDescriptionsModule } from 'ng-zorro-antd/descriptions';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzModalModule } from 'ng-zorro-antd/modal';\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { YunzaiNavApplicationComponent } from './layout-nav-application.component';\nimport { YunzaiLayoutNavGroupComponent } from './layout-nav-group.component';\nimport { YunzaiLayoutNavTileComponent } from './layout-nav-tile.component';\n\nexport interface LayoutBasicState {\n options: LayoutDefaultOptions;\n aside: LayoutBasicAside;\n display: LayoutBasicDisplay;\n navType: NavType;\n}\n\nexport interface ApplicationInfoInterface {\n id?: string;\n name?: string;\n showName?: string;\n lastVersion?: string;\n versionNum?: string;\n currentVersion?: string;\n firstDeploymentDate?: string;\n currentDeploymentDate?: string;\n lastPushDate?: string;\n}\n\n@Component({\n selector: `yunzai-layout-basic`,\n template: `\n <layout-default [options]=\"options\" [asideUser]=\"asideUserTpl\" [content]=\"displayReusetab ? contentTpl : noneTpl\">\n <layout-default-header-item direction=\"left\">\n <ng-container [ngSwitch]=\"navType\">\n <ng-container *ngSwitchCase=\"NavType.APPLICATION\">\n <yunzai-layout-nav-application />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.GROUP\">\n <yunzai-layout-nav-group />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TILE\">\n <yunzai-layout-nav-tile />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.BLANK\" />\n <ng-container *ngSwitchCase=\"NavType.TABS\" />\n <ng-container *ngSwitchDefault>\n <yunzai-layout-nav-application />\n </ng-container>\n </ng-container>\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <yunzai-header-notify />\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <theme-btn />\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\" hidden=\"mobile\">\n <div\n data-event-id=\"_nav_settings\"\n layout-default-header-item-trigger\n nz-dropdown\n [nzDropdownMenu]=\"settingsMenu\"\n nzTrigger=\"click\"\n nzPlacement=\"bottomRight\"\n >\n <nz-icon nzType=\"setting\" nzTheme=\"outline\"></nz-icon>\n </div>\n <nz-dropdown-menu #settingsMenu=\"nzDropdownMenu\">\n <div nz-menu style=\"width: 200px;\">\n <div data-event-id=\"_nav_mode\" nz-menu-item>\n {{ 'mode.nav' | i18n }}\n </div>\n\n @if (headerStyleList.length > 1) {\n @for (i of headerStyleList; track $index) {\n <div\n data-event-id=\"_nav_mode\"\n nz-menu-item\n [attr.data-type]=\"i.value\"\n (click)=\"onNavTypeChange(i.value)\"\n >\n <ng-container [ngSwitch]=\"i.value\">\n <ng-container *ngSwitchCase=\"NavType.APPLICATION\">\n <nz-icon nzType=\"appstore\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.GROUP\">\n <nz-icon nzType=\"group\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TILE\">\n <nz-icon nzType=\"dash\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.BLANK\">\n <nz-icon nzType=\"border\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchCase=\"NavType.TABS\">\n <nz-icon nzType=\"insert-row-above\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n <ng-container *ngSwitchDefault>\n <nz-icon nzType=\"appstore\" nzTheme=\"outline\" class=\"mr-sm\" />\n </ng-container>\n {{ 'mode.nav.' + i.value | i18n }}\n </ng-container>\n </div>\n }\n }\n\n <div data-event-id=\"_nav_fullscreen\" nz-menu-item>\n <yunzai-header-fullscreen />\n </div>\n <div data-event-id=\"_nav_clearstorage\" nz-menu-item>\n <yunzai-header-clear-storage />\n </div>\n <div data-event-id=\"_nav_i18n\" nz-menu-item>\n <yunzai-header-i18n />\n </div>\n </div>\n </nz-dropdown-menu>\n </layout-default-header-item>\n <layout-default-header-item direction=\"right\">\n <yunzai-header-user />\n </layout-default-header-item>\n </layout-default>\n <ng-template #asideUserTpl>\n <div data-event-id=\"_route_user\" class=\"yunzai-default__aside-user\">\n <nz-avatar\n class=\"yunzai-default__aside-user-avatar\"\n [nzSize]=\"40\"\n [nzSrc]=\"aside.icon\"\n (click)=\"aboutApplication()\"\n />\n <div class=\"yunzai-default__aside-user-info\" nz-dropdown nzTrigger=\"click\" [nzDropdownMenu]=\"userMenu\">\n <strong>{{ aside.name | i18n }}</strong>\n <p>{{ aside.intro | i18n }}</p>\n </div>\n </div>\n <nz-dropdown-menu #userMenu=\"nzDropdownMenu\">\n <ul nz-menu>\n <li data-event-id=\"_route_backhome\" nz-menu-item routerLink=\"/\">{{ 'back.home' | i18n }}</li>\n </ul>\n </nz-dropdown-menu>\n </ng-template>\n <ng-template #contentTpl>\n <reuse-tab #reuseTab [style]=\"reusetabCSS\" />\n <router-outlet (activate)=\"reuseTab.activate($event)\" (attach)=\"reuseTab.activate($event)\" />\n </ng-template>\n <ng-template #noneTpl>\n <router-outlet />\n </ng-template>\n\n <nz-modal\n nzTitle=\"关于本应用\"\n [(nzVisible)]=\"applicationModal.isVisible\"\n [nzOkText]=\"null\"\n [nzCancelText]=\"'关闭'\"\n [nzWidth]=\"700\"\n (nzOnCancel)=\"applicationModal.isVisible = false\"\n >\n <ng-container *nzModalContent>\n <nz-skeleton [nzLoading]=\"applicationModal.loading\" [nzActive]=\"true\">\n <nz-descriptions nzBordered [nzSize]=\"'middle'\" [nzColumn]=\"{ xxl: 2, xl: 2, lg: 2, md: 2, sm: 2, xs: 1 }\">\n <nz-descriptions-item nzTitle=\"应用名称\">{{ applicationInfo?.showName }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"应用标识\">{{ applicationInfo?.name }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"版本总数\">{{ applicationInfo?.versionNum }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"应用首次部署时间\">{{\n applicationInfo?.firstDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"当前版本\">{{ applicationInfo?.currentVersion }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"当前版本部署时间\">{{\n applicationInfo?.currentDeploymentDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"最新版本\">{{ applicationInfo?.lastVersion }}</nz-descriptions-item>\n <nz-descriptions-item nzTitle=\"最新版本发布时间\">{{\n applicationInfo?.lastPushDate | date: 'yyyy-MM-dd HH:mm:ss'\n }}</nz-descriptions-item>\n </nz-descriptions>\n </nz-skeleton>\n </ng-container>\n </nz-modal>\n `,\n imports: [\n LayoutDefaultModule,\n RouterModule,\n ReuseTabModule,\n CommonModule,\n I18nPipe,\n NzDropDownModule,\n NzAvatarModule,\n NzIconModule,\n NzModalModule,\n NzSkeletonModule,\n NzDescriptionsModule,\n ThemeBtnModule,\n YunzaiWidgetsModule,\n YunzaiNavApplicationComponent,\n YunzaiLayoutNavGroupComponent,\n YunzaiLayoutNavTileComponent\n ]\n})\nexport class YunzaiLayoutBasicComponent implements OnInit {\n private readonly stomp = inject(StompService);\n private readonly win = inject(WINDOW);\n private readonly layoutDisplayService = inject(LayoutDisplayService);\n private readonly conf: YunzaiConfig = inject(YUNZAI_CONFIG);\n\n public NavType = NavType;\n private state: LayoutBasicState = {\n options: {\n logoExpanded: `./assets/logo-full.svg`,\n logoCollapsed: `./assets/logo.svg`\n },\n aside: {\n name: '',\n intro: '',\n icon: ''\n },\n display: {\n nav: true,\n aside: true,\n reusetab: true\n },\n navType: NavType.APPLICATION\n };\n\n headerStyleList: YunzaiHeaderStyle[] = [];\n\n applicationInfo!: ApplicationInfoInterface;\n\n applicationModal = {\n isVisible: false,\n loading: false\n };\n\n private readonly httpClient = inject(HttpClient);\n private config!: YunzaiBusinessConfig;\n\n get options(): LayoutDefaultOptions {\n return this.state.options;\n }\n\n get navType(): NavType {\n return this.state.navType;\n }\n\n get aside(): LayoutBasicAside {\n return this.state.aside;\n }\n\n get displayReusetab(): boolean {\n return this.state.display.reusetab;\n }\n\n get reusetabCSS(): any {\n let cascadingStyleSheet = {};\n if (!this.state.display.nav) {\n cascadingStyleSheet = {\n ...cascadingStyleSheet,\n top: '0px'\n };\n }\n if (!this.state.display.aside) {\n cascadingStyleSheet = {\n ...cascadingStyleSheet,\n left: '0px'\n };\n }\n return cascadingStyleSheet;\n }\n\n ngOnInit(): void {\n this.config = this.conf.bis!;\n this.initLogo();\n this.initFavicon();\n this.initNavType();\n this.initAside();\n this.addLayoutDisplayListener();\n this.stomp.listen();\n this.toIndex();\n }\n\n initFavicon(): void {\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n if (projectInfo.faviconUrl) {\n hasFavicon(projectInfo.faviconUrl).then((has: boolean) => {\n if (has) {\n setFavicon(projectInfo.faviconUrl);\n } else {\n setFavicon('./assets/favicon.ico');\n }\n });\n }\n }\n\n initAside(): void {\n const [, getCurrent] = useLocalStorageCurrent();\n const aside: LayoutBasicAside = getCurrent()!;\n this.state.aside = { ...aside };\n }\n\n initLogo(): void {\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n this.state.options.logoExpanded = projectInfo.maxLogoUrl ? projectInfo.maxLogoUrl : `./assets/logo-full.svg`;\n this.state.options.logoCollapsed = projectInfo.miniLogoUrl ? projectInfo.miniLogoUrl : `./assets/logo.svg`;\n }\n\n initNavType(): void {\n const [, getHeaderType] = useLocalStorageHeaderType();\n const [, getProjectInfo] = useLocalStorageProjectInfo();\n const navType: NavType | null = getHeaderType();\n const projectInfo: YunzaiProjectInfo = getProjectInfo()!;\n if (navType !== null) {\n this.state.navType = navType;\n } else {\n this.state.navType = NavType.APPLICATION;\n }\n if (projectInfo.headerStyle && projectInfo.headerStyle.length > 0) {\n this.headerStyleList = projectInfo.headerStyle;\n const hasThis = this.headerStyleList.some(item => item.value === this.state.navType);\n if (!hasThis) {\n this.state.navType = projectInfo.headerStyle[0].value as NavType;\n const [setHeaderType] = useLocalStorageHeaderType();\n setHeaderType(this.state.navType);\n }\n }\n }\n\n toIndex(): void {\n const [, getDefaultRoute] = useLocalStorageDefaultRoute();\n const defaultRoute = getDefaultRoute()!;\n log('YunzaiLayoutBasicComponent: ', `todo: the default route was ${defaultRoute}, 但是还没想好如何实现.`);\n }\n\n onNavTypeChange(type: NavType | string): void {\n const [setHeaderType] = useLocalStorageHeaderType();\n setHeaderType(type as NavType);\n this.win.location.reload();\n }\n\n addLayoutDisplayListener(): void {\n this.layoutDisplayService.listen('reuseTab', (display: boolean) => {\n this.state.display.reusetab = display;\n });\n this.layoutDisplayService.listen('nav', (display: boolean) => {\n this.state.display.nav = display;\n });\n\n this.layoutDisplayService.listen('aside', (display: boolean) => {\n this.state.display.aside = display;\n });\n }\n\n // 关于本应用\n aboutApplication(): void {\n const urlArr = window.location.pathname.split(`${this.config.baseUrl}/`);\n if (urlArr.length > 1) {\n // 应用标识,截取路径中 /backstage/后第一个字符串\n // 例: http://222.30.194.61/backstage/auth/page/oafportal/#/base/menu 中 auth\n const name = urlArr[1].split('/')[0];\n this.applicationModal.isVisible = true;\n this.applicationModal.loading = true;\n this.httpClient.get(`/basic/api/app/aboutApp?name=${name}`).subscribe(\n (response: any) => {\n this.applicationModal.loading = false;\n if (response.data) {\n this.applicationInfo = response.data;\n }\n },\n () => {\n this.applicationModal.loading = false;\n }\n );\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { I18nPipe } from '@yelon/theme';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\n\nimport { YunzaiLayoutBasicComponent } from './layout-basic.component';\nimport { YunzaiLayoutNavGroupComponent } from './layout-nav-group.component';\nimport { YunzaiLayoutNavTileComponent } from './layout-nav-tile.component';\n\nconst COMPONENTS = [YunzaiLayoutNavTileComponent, YunzaiLayoutNavGroupComponent, YunzaiLayoutBasicComponent];\n\n@NgModule({\n imports: [\n I18nPipe,\n FormsModule,\n NzFormModule,\n NzInputModule,\n CommonModule,\n NzGridModule,\n NzIconModule,\n NzDropDownModule,\n NzTabsModule,\n ...COMPONENTS\n ],\n exports: COMPONENTS\n})\nexport class YunzaiLayoutModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i3","i5","i6","i8"],"mappings":"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"}
|