{"version":3,"file":"tethys-pro-layout.mjs","sources":["../../../../packages/components/layout/header/header.component.ts","../../../../packages/components/layout/header/header.component.html","../../../../packages/components/layout/sidebar/sidebar.component.ts","../../../../packages/components/layout/sidebar/sidebar.component.html","../../../../packages/components/layout/layout.component.ts","../../../../packages/components/layout/layout.component.html","../../../../packages/components/layout/content-main/content-main.ts","../../../../packages/components/layout/module.ts","../../../../packages/components/layout/empty-router-outlet.ts","../../../../packages/components/layout/tethys-pro-layout.ts"],"sourcesContent":["import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, TemplateRef, inject, input, model } from '@angular/core';\nimport { ThyGlobalStore } from '@tethys/pro/core';\nimport { injectLocale } from '@tethys/pro/i18n';\nimport { ThyActionModule } from 'ngx-tethys/action';\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { ThyLayoutModule } from 'ngx-tethys/layout';\nimport { ThyTooltipModule } from 'ngx-tethys/tooltip';\n\n@Component({\n    selector: 'thy-pro-header',\n    templateUrl: './header.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        class: 'thy-pro-header'\n    },\n    imports: [ThyLayoutModule, ThyActionModule, ThyTooltipModule, NgTemplateOutlet, ThyIcon]\n})\nexport class ThyProHeaderComponent implements OnInit {\n    locale = injectLocale();\n\n    public readonly headerRightContentTemplate = input<TemplateRef<HTMLElement>>();\n\n    public isCollapsed = model<boolean>();\n\n    protected globalStore = inject(ThyGlobalStore);\n\n    protected activeMenu = this.globalStore.select((state) => state.activeMenu);\n\n    constructor() {}\n\n    ngOnInit(): void {}\n\n    changeCollapse() {\n        this.isCollapsed.set(!this.isCollapsed());\n    }\n}\n","<thy-header thyDivided=\"true\">\n  <ng-template #headerTitle>\n    <a\n      class=\"ml-n2\"\n      thyAction\n      href=\"javascript:;\"\n      [thyTooltip]=\"isCollapsed() ? locale().expand : locale().foldUp\"\n      [thyIcon]=\"isCollapsed() ? 'float-left' : 'float-right'\"\n      (click)=\"changeCollapse()\"\n    ></a>\n    <span class=\"title-name ml-1\">{{ activeMenu()?.title }}</span>\n  </ng-template>\n  <ng-template #headerOperation>\n    @if (headerRightContentTemplate()) {\n      <ng-container [ngTemplateOutlet]=\"headerRightContentTemplate()\"></ng-container>\n    }\n    @if (!headerRightContentTemplate()) {\n      <thy-actions thySize=\"xs\">\n        <a href=\"javascript:;\" [thyTooltip]=\"locale().notify\" thyAction thyIcon=\"bell\"></a>\n        <a href=\"javascript:;\" [thyTooltip]=\"locale().help\" thyAction>\n          <thy-icon thyIconName=\"question-circle\"></thy-icon>\n        </a>\n        <a href=\"javascript:;\" [thyTooltip]=\"locale().setting\" thyAction>\n          <thy-icon thyIconName=\"settings\"></thy-icon>\n        </a>\n      </thy-actions>\n      <!-- <thy-avatar class=\"current-user\" [thyName]=\"globalStore.user.name\" thySize=\"sm\" [thySrc]=\"globalStore.user.name\"> </thy-avatar> -->\n    }\n  </ng-template>\n</thy-header>\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n    booleanAttribute,\n    ChangeDetectionStrategy,\n    Component,\n    effect,\n    inject,\n    input,\n    OnInit,\n    TemplateRef,\n    viewChildren\n} from '@angular/core';\nimport { RouterLink, RouterLinkActive } from '@angular/router';\nimport { ThyGlobalStore, ThyMenuRoute } from '@tethys/pro/core';\nimport { ThyLayoutModule } from 'ngx-tethys/layout';\nimport { ThyMenuModule } from 'ngx-tethys/menu';\nimport { ThyPopoverDirective, ThyPopoverModule } from 'ngx-tethys/popover';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { ThyProLayoutMenu, ThyProLayoutMenus } from '../layout.entity';\n\n@Component({\n    selector: 'thy-pro-sidebar',\n    templateUrl: './sidebar.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        class: 'thy-layout thy-pro-sidebar'\n    },\n    imports: [ThyLayoutModule, NgClass, NgTemplateOutlet, ThyMenuModule, ThyPopoverModule, RouterLinkActive, RouterLink]\n})\nexport class ThyProSidebarComponent implements OnInit {\n    readonly menus = input.required<ThyProLayoutMenus>();\n\n    readonly logo = input.required<string>();\n\n    readonly title = input.required<string>();\n\n    readonly isCollapsed = input<boolean, unknown>(false, { transform: booleanAttribute });\n\n    public readonly headerTemplate = input<TemplateRef<SafeAny>>();\n\n    public readonly menuTemplate = input<TemplateRef<SafeAny>>();\n\n    public readonly footerTemplate = input<TemplateRef<SafeAny>>();\n\n    public currentRootMenuGroup!: ThyProLayoutMenu;\n\n    public menuGroupElement!: HTMLElement;\n\n    readonly menuPopovers = viewChildren(ThyPopoverDirective);\n\n    protected globalStore = inject(ThyGlobalStore);\n\n    activeMenu = this.globalStore.select((state) => state.activeMenu);\n\n    constructor() {\n        effect(() => {\n            if (this.currentRootMenuGroup) {\n                this.changeMenuGroupCollapsed(this.currentRootMenuGroup, false);\n            }\n        });\n    }\n\n    ngOnInit(): void {\n        this.initCurrentMenuGroup();\n    }\n\n    getMenuGroupElement(event: MouseEvent) {\n        if (this.isCollapsed()) {\n            this.menuGroupElement = event.target as HTMLElement;\n        }\n    }\n\n    initCurrentMenuGroup() {}\n\n    setActiveMenu(menuGroup: ThyProLayoutMenu, activeLinkMenu: ThyMenuRoute) {\n        this.menuPopovers()?.forEach((item) => {\n            item.popoverOpened && item.hide();\n        });\n        this.changeMenuGroupCollapsed(menuGroup, false);\n        this.globalStore.pureUpdateActiveMenu(activeLinkMenu);\n    }\n\n    menuGroupCollapsedChange(isCollapsed: boolean, menuGroup: ThyProLayoutMenu) {\n        this.changeMenuGroupCollapsed(menuGroup, isCollapsed);\n    }\n\n    changeMenuGroupCollapsed(menuGroup: ThyProLayoutMenu, isCollapsed: boolean) {\n        menuGroup.isCollapsed = isCollapsed;\n    }\n}\n","@let sidebarCollapsed = isCollapsed();\n\n<thy-sidebar-header class=\"thy-pro-sidebar-header\" [ngClass]=\"{ 'justify-content-center': sidebarCollapsed }\">\n  @if (headerTemplate()) {\n    <ng-container\n      [ngTemplateOutlet]=\"headerTemplate()\"\n      [ngTemplateOutletContext]=\"{ value: { logo: this.logo(), title: this.title() } }\"\n    ></ng-container>\n  } @else {\n    <img class=\"header-logo\" [src]=\"logo()\" />\n    @if (!sidebarCollapsed) {\n      <span class=\"header-title text-truncate\">{{ title() }}</span>\n    }\n  }\n</thy-sidebar-header>\n<thy-sidebar-content>\n  @if (menuTemplate()) {\n    <ng-container [ngTemplateOutlet]=\"menuTemplate()\" [ngTemplateOutletContext]=\"{ menus: menus() }\"> </ng-container>\n  } @else {\n    <thy-menu [thyCollapsed]=\"sidebarCollapsed\" thyTheme=\"dark\">\n      @for (menu of menus(); track $index) {\n        <thy-menu-group\n          [thyShowIcon]=\"true\"\n          [thyCollapsed]=\"menu.isCollapsed || false\"\n          [thyCollapsible]=\"true\"\n          [thyIcon]=\"menu?.icon!\"\n          [thyTitle]=\"menu?.title!\"\n          [thyPopover]=\"collapsedMenuList\"\n          [thyTrigger]=\"'hover'\"\n          [thyDisabled]=\"!sidebarCollapsed\"\n          (thyCollapsedChange)=\"menuGroupCollapsedChange($event, menu)\"\n          class=\"thy-pro-sidebar-menu-group\"\n          [class.active]=\"sidebarCollapsed && activeMenu()?.parent === menu\"\n          (mouseenter)=\"getMenuGroupElement($event)\"\n          [thyConfig]=\"{\n            placement: 'rightTop',\n            origin: menuGroupElement,\n            panelClass: 'thy-menu-grop-popover',\n            initialState: { menu: menu }\n          }\"\n        >\n          <ng-template [ngTemplateOutlet]=\"menuItems\" [ngTemplateOutletContext]=\"{ $implicit: menu, path: menu.path }\"> </ng-template>\n        </thy-menu-group>\n      }\n    </thy-menu>\n  }\n</thy-sidebar-content>\n\n<ng-template #menuItems let-menu let-path=\"path\">\n  @for (menuItem of menu.children; track $index) {\n    @if (!menuItem.children?.length) {\n      <a thyMenuItem class=\"ml-2\" [routerLink]=\"[path, menuItem?.path]\" (click)=\"setActiveMenu(menu, menuItem)\" routerLinkActive=\"active\">\n        <span thyMenuItemName> {{ menuItem?.title }} </span>\n      </a>\n    }\n    @if (menuItem.children?.length) {\n      <ng-template [ngTemplateOutlet]=\"submenuGroup\" [ngTemplateOutletContext]=\"{ $implicit: menuItem, path: path + '/' + menuItem.path }\">\n      </ng-template>\n    }\n  }\n</ng-template>\n\n<ng-template #submenuGroup let-menuItem let-path=\"path\">\n  <thy-menu-group class=\"px-2 thy-pro-sidebar-submenu\" [thyCollapsed]=\"false\" [thyCollapsible]=\"true\" [thyTitle]=\"menuItem?.title!\">\n    <ng-template [ngTemplateOutlet]=\"menuItems\" [ngTemplateOutletContext]=\"{ $implicit: menuItem, path: path }\"> </ng-template>\n  </thy-menu-group>\n</ng-template>\n\n<ng-template #collapsedMenuList let-value>\n  <thy-menu thyTheme=\"dark\" class=\"action-menu\">\n    <ng-template [ngTemplateOutlet]=\"menuItems\" [ngTemplateOutletContext]=\"{ $implicit: value.menu, path: value.menu.path }\"></ng-template>\n  </thy-menu>\n</ng-template>\n\n<thy-sidebar-footer>\n  @if (footerTemplate()) {\n    <ng-container [ngTemplateOutlet]=\"footerTemplate()\"></ng-container>\n  }\n</thy-sidebar-footer>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, TemplateRef, contentChild, input, model, output } from '@angular/core';\nimport { ActivatedRoute, RouterOutlet } from '@angular/router';\nimport { cache } from '@tethys/cache';\nimport { ThyGlobalStore, ThyMenuRoute } from '@tethys/pro/core';\nimport { ThyLayoutModule } from 'ngx-tethys/layout';\nimport { SafeAny } from 'ngx-tethys/types';\nimport { ThyProHeaderComponent } from './header/header.component';\nimport { ThyProSidebarComponent } from './sidebar/sidebar.component';\n\n@Component({\n    selector: 'thy-pro-layout',\n    templateUrl: './layout.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        class: 'thy-layout thy-layout--has-sidebar thy-pro-layout'\n    },\n    imports: [ThyLayoutModule, ThyProSidebarComponent, ThyProHeaderComponent, RouterOutlet, NgTemplateOutlet]\n})\nexport class ThyProLayoutComponent implements OnInit {\n    /**\n     * 标题\n     */\n    readonly thyTitle = input.required<string>();\n\n    /**\n     * logo\n     */\n    readonly thyLogo = input.required<string>();\n\n    readonly trigger = input<null | undefined | SafeAny>(null, { alias: 'thyTrigger' });\n\n    readonly menus = model<ThyMenuRoute[]>([], {\n        alias: 'thyMenus'\n    });\n\n    /**\n     *  menu 菜单的头部点击事件\n     */\n    readonly menuHeaderClick = output<Event>();\n\n    /**\n     *  自定义标题和 logo\n     */\n    public readonly menuHeaderTemplate = contentChild<TemplateRef<HTMLElement>>('menuHeader');\n\n    /**\n     * 自定义菜单显示\n     */\n    public readonly menuTemplate = contentChild<TemplateRef<HTMLElement>>('menuList');\n\n    /**\n     * 自定义菜单栏底部内容\n     */\n    readonly menuFooterTemplate = contentChild<TemplateRef<any>>('menuFooter');\n\n    /**\n     * 自定义右上角内容\n     */\n    public readonly headerRightContentTemplate = contentChild<TemplateRef<any>>('headerRightContent');\n\n    /**\n     * 自定义 footer\n     */\n    public readonly footerTemplate = contentChild<TemplateRef<any>>('footer');\n\n    public isCollapsed = cache.signal('menu-is-collapsed', {\n        defaultValue: false\n    });\n\n    constructor(\n        public globalStore: ThyGlobalStore,\n        public route: ActivatedRoute\n    ) {\n        const activeRoute = this.route.firstChild?.firstChild?.routeConfig;\n        this.globalStore.initialize().subscribe((menus) => {\n            this.globalStore.pureUpdateActiveMenuByRoute(activeRoute);\n            this.menus.update((value) => {\n                return value && value.length ? value : menus;\n            });\n        });\n    }\n\n    ngOnInit(): void {}\n\n    collapsedChange(isCollapsed: boolean) {\n        this.isCollapsed.set(isCollapsed);\n    }\n}\n","<thy-sidebar [thyCollapsible]=\"true\" [thyCollapsed]=\"isCollapsed()\" [thyCollapsedWidth]=\"61\" [thyTrigger]=\"trigger()\">\n  <thy-pro-sidebar\n    [menus]=\"menus()\"\n    [logo]=\"thyLogo()\"\n    [title]=\"thyTitle()\"\n    [isCollapsed]=\"isCollapsed()\"\n    [headerTemplate]=\"menuHeaderTemplate()\"\n    [menuTemplate]=\"menuTemplate()\"\n    [footerTemplate]=\"menuFooterTemplate()\"\n  >\n  </thy-pro-sidebar>\n</thy-sidebar>\n<thy-layout>\n  <thy-pro-header [headerRightContentTemplate]=\"headerRightContentTemplate()\" [(isCollapsed)]=\"isCollapsed\"></thy-pro-header>\n  <router-outlet></router-outlet>\n  <thy-sidebar-footer>\n    @if (footerTemplate()) {\n      <ng-container [ngTemplateOutlet]=\"footerTemplate()\"></ng-container>\n    }\n  </thy-sidebar-footer>\n</thy-layout>\n","import { Component, OnInit, viewChild, contentChild, input, TemplateRef } from '@angular/core';\nimport { NgComponentOutlet, NgTemplateOutlet } from '@angular/common';\n\n@Component({\n    selector: 'thy-pro-content-main-header',\n    template: `\n        <div class=\"header-body\">\n            @if (searchTemplateRef() || viewTemplateRef() || operationTemplateRef()) {\n                <div class=\"header-content\">\n                    @if (searchTemplateRef()) {\n                        <ng-template [ngTemplateOutlet]=\"searchTemplateRef()!\"></ng-template>\n                    }\n\n                    @if (viewTemplateRef()) {\n                        <div class=\"header-content-view\">\n                            <ng-template [ngTemplateOutlet]=\"viewTemplateRef()!\"></ng-template>\n                        </div>\n                    }\n                    @if (thyCount() !== undefined) {\n                        <div class=\"header-content-info\">\n                            <span class=\"text-secondary\">{{ thyCount() }}</span\n                            ><span class=\"text-muted ml-1\">{{ thyCountUnitName() }}</span>\n                        </div>\n                    }\n                    @if (operationTemplateRef()) {\n                        <div class=\"header-content-operation d-flex justify-content-end\">\n                            <ng-template [ngTemplateOutlet]=\"operationTemplateRef()!\"></ng-template>\n                        </div>\n                    }\n                </div>\n            } @else {\n                <ng-content></ng-content>\n            }\n        </div>\n    `,\n    host: {\n        class: 'thy-pro-content-main-header'\n    },\n    imports: [NgTemplateOutlet]\n})\nexport class ThyContentMainHeader implements OnInit {\n    protected searchTemplateRef = contentChild<TemplateRef<any>>('headerSearch');\n\n    protected viewTemplateRef = contentChild<TemplateRef<any>>('headerView');\n\n    protected operationTemplateRef = contentChild<TemplateRef<any>>('headerOperation');\n\n    thyCount = input<number>();\n\n    thyCountUnitName = input<string>();\n\n    constructor() {}\n\n    ngOnInit(): void {}\n}\n\n@Component({\n    selector: 'thy-pro-content-main-body',\n    template: '<ng-content></ng-content>',\n    host: {\n        class: 'thy-pro-content-main-body'\n    },\n    standalone: true\n})\nexport class ThyContentMainBody implements OnInit {\n    constructor() {}\n\n    ngOnInit(): void {}\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { ThyLayoutModule } from 'ngx-tethys/layout';\nimport { ThyMenu, ThyMenuModule } from 'ngx-tethys/menu';\nimport { ThyActionModule } from 'ngx-tethys/action';\nimport { ThyAvatarModule } from 'ngx-tethys/avatar';\nimport { ThyProHeaderComponent } from './header/header.component';\nimport { ThyProLayoutComponent } from './layout.component';\nimport { ThyProSidebarComponent } from './sidebar/sidebar.component';\nimport { ThyTooltipModule } from 'ngx-tethys/tooltip';\nimport { ThyPopoverModule } from 'ngx-tethys/popover';\nimport { ThyContentMainBody, ThyContentMainHeader } from './content-main/content-main';\n\nconst COMPONENTS = [ThyProHeaderComponent, ThyProLayoutComponent, ThyProSidebarComponent, ThyContentMainHeader, ThyContentMainBody];\n\nconst TETHYS_MODULES = [\n    ThyLayoutModule,\n    ThyMenuModule,\n    ThyIconModule,\n    ThyPopoverModule,\n    ThyActionModule,\n    ThyAvatarModule,\n    ThyTooltipModule\n];\n\n@NgModule({\n    imports: [...TETHYS_MODULES, RouterModule, CommonModule, ...COMPONENTS],\n    exports: [...COMPONENTS],\n    providers: []\n})\nexport class ThyProLayoutModule {}\n","import { Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { ThyLayoutDirective } from 'ngx-tethys/layout';\n\n@Component({\n    selector: 'thy-layout-empty-router-outlet',\n    template: `<router-outlet></router-outlet>`,\n    imports: [RouterOutlet],\n    hostDirectives: [ThyLayoutDirective]\n})\nexport class ThyLayoutEmptyRouterOutlet {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i1"],"mappings":"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"}