UNPKG

13.3 kBSource Map (JSON)View Raw
1{"version":3,"sources":["ng://primeng/menubar/menubar.ts"],"names":["MenubarSub","renderer","cd","this","autoZIndex","baseZIndex","menuHoverActive","Object","defineProperty","prototype","_parentActive","value","root","activeItem","onItemMenuClick","event","item","menuitem","autoDisplay","disabled","activeMenu","isEqualNode","nextElement","children","nextElementSibling","sublist","style","zIndex","String","DomHandler","zindex","top","getOuterHeight","left","getOuterWidth","menuClick","bindEventListener","_this","documentClickListener","listen","onItemMouseEnter","itemClick","preventDefault","url","command","originalEvent","listClick","ngOnDestroy","Renderer2","ChangeDetectorRef","__decorate","Input","Component","selector","template","Menubar","el","_autoDisplay","_utc","console","log","ElementRef","changeDetection","ChangeDetectionStrategy","Default","MenubarModule","NgModule","imports","CommonModule","RouterModule","exports","declarations"],"mappings":"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","sourcesContent":["import { NgModule, Component, ElementRef, Input, Renderer2, OnDestroy,ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { MenuItem } from 'primeng/api';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n selector: 'p-menubarSub',\n template: `\n <ul [ngClass]=\"{'ui-menubar-root-list':root, 'ui-widget-content ui-corner-all ui-submenu-list ui-shadow':!root}\"\n (click)=\"listClick($event)\">\n <ng-template ngFor let-child [ngForOf]=\"(root ? item : item.items)\">\n <li *ngIf=\"child.separator\" class=\"ui-menu-separator ui-widget-content\" [ngClass]=\"{'ui-helper-hidden': child.visible === false}\">\n <li *ngIf=\"!child.separator\" #listItem [ngClass]=\"{'ui-menuitem ui-corner-all':true,\n 'ui-menu-parent':child.items,'ui-menuitem-active':listItem==activeItem,'ui-helper-hidden': child.visible === false}\"\n (mouseenter)=\"onItemMouseEnter($event,listItem,child)\" (click)=\"onItemMenuClick($event, listItem, child)\">\n <a *ngIf=\"!child.routerLink\" [href]=\"child.url||'#'\" [attr.data-automationid]=\"child.automationId\" [attr.target]=\"child.target\" [attr.title]=\"child.title\" [attr.id]=\"child.id\" (click)=\"itemClick($event, child)\"\n [ngClass]=\"{'ui-menuitem-link ui-corner-all':true,'ui-state-disabled':child.disabled}\" [ngStyle]=\"child.style\" [class]=\"child.styleClass\" \n [attr.tabindex]=\"child.tabindex ? child.tabindex : '0'\" [attr.aria-haspopup]=\"item.items != null\" [attr.aria-expanded]=\"item === activeItem\">\n <span class=\"ui-menuitem-icon\" *ngIf=\"child.icon\" [ngClass]=\"child.icon\"></span>\n <span class=\"ui-menuitem-text\">{{child.label}}</span>\n <span class=\"ui-submenu-icon pi pi-fw\" *ngIf=\"child.items\" [ngClass]=\"{'pi-caret-down':root,'pi-caret-right':!root}\"></span>\n </a>\n <a *ngIf=\"child.routerLink\" [routerLink]=\"child.routerLink\" [attr.data-automationid]=\"child.automationId\" [queryParams]=\"child.queryParams\" [routerLinkActive]=\"'ui-menuitem-link-active'\" [routerLinkActiveOptions]=\"child.routerLinkActiveOptions||{exact:false}\"\n [attr.target]=\"child.target\" [attr.title]=\"child.title\" [attr.id]=\"child.id\" [attr.tabindex]=\"child.tabindex ? child.tabindex : '0'\" role=\"menuitem\"\n (click)=\"itemClick($event, child)\" [ngClass]=\"{'ui-menuitem-link ui-corner-all':true,'ui-state-disabled':child.disabled}\" [ngStyle]=\"child.style\" [class]=\"child.styleClass\"\n [fragment]=\"child.fragment\" [queryParamsHandling]=\"child.queryParamsHandling\" [preserveFragment]=\"child.preserveFragment\" [skipLocationChange]=\"child.skipLocationChange\" [replaceUrl]=\"child.replaceUrl\" [state]=\"child.state\">\n <span class=\"ui-menuitem-icon\" *ngIf=\"child.icon\" [ngClass]=\"child.icon\"></span>\n <span class=\"ui-menuitem-text\">{{child.label}}</span>\n <span class=\"ui-submenu-icon pi pi-fw\" *ngIf=\"child.items\" [ngClass]=\"{'pi-caret-down':root,'pi-caret-right':!root}\"></span>\n </a>\n <p-menubarSub class=\"ui-submenu\" [parentActive]=\"listItem==activeItem\" [item]=\"child\" *ngIf=\"child.items\" [autoDisplay]=\"true\"></p-menubarSub>\n </li>\n </ng-template>\n </ul>\n `\n})\nexport class MenubarSub implements OnDestroy {\n\n @Input() item: MenuItem;\n\n @Input() root: boolean;\n\n @Input() autoDisplay: boolean;\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() get parentActive():boolean \n {\n return this._parentActive;\n }\n set parentActive(value) {\n if (!this.root) {\n this._parentActive = value;\n\n if (!value)\n this.activeItem = null;\n }\n }\n\n _parentActive:boolean;\n\n documentClickListener: any;\n\n menuClick: boolean;\n \n menuHoverActive: boolean = false;\n\n activeItem: any;\n\n activeMenu: any;\n\n constructor(public renderer: Renderer2, private cd: ChangeDetectorRef) { }\n\n onItemMenuClick(event: Event, item: HTMLLIElement, menuitem: MenuItem) {\n if (!this.autoDisplay) {\n if (menuitem.disabled) {\n return;\n }\n \n this.activeItem = this.activeMenu ? (this.activeMenu.isEqualNode(item) ? null : item) : item;\n let nextElement = <HTMLLIElement>item.children[0].nextElementSibling;\n if (nextElement) {\n let sublist = <HTMLUListElement>nextElement.children[0];\n if (this.autoZIndex) {\n sublist.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n\n if (this.root) {\n sublist.style.top = DomHandler.getOuterHeight(item.children[0]) + 'px';\n sublist.style.left = '0px'\n }\n else {\n sublist.style.top = '0px';\n sublist.style.left = DomHandler.getOuterWidth(item.children[0]) + 'px';\n }\n }\n\n this.menuClick = true;\n this.menuHoverActive = this.activeMenu ? (!this.activeMenu.isEqualNode(item)) : true;\n this.activeMenu = this.activeMenu ? (this.activeMenu.isEqualNode(item) ? null: item) : item;\n this.bindEventListener();\n }\n }\n\n bindEventListener() {\n if (!this.documentClickListener) {\n this.documentClickListener = this.renderer.listen('document', 'click',(event) => {\n if (!this.menuClick) {\n this.activeItem = null;\n this.menuHoverActive = false;\n this.activeMenu = false;\n }\n this.menuClick = false;\n });\n }\n }\n\n onItemMouseEnter(event: Event, item: HTMLLIElement, menuitem: MenuItem) {\n if (this.autoDisplay || (!this.autoDisplay && this.root && this.menuHoverActive)) {\n if (menuitem.disabled) {\n return;\n }\n\n if ((this.activeItem && !this.activeItem.isEqualNode(item) || !this.activeItem)) {\n this.activeItem = item;\n let nextElement = <HTMLLIElement>item.children[0].nextElementSibling;\n if (nextElement) {\n let sublist = <HTMLUListElement>nextElement.children[0];\n sublist.style.zIndex = String(++DomHandler.zindex);\n\n if (this.root) {\n sublist.style.top = DomHandler.getOuterHeight(item.children[0]) + 'px';\n sublist.style.left = '0px'\n }\n else {\n sublist.style.top = '0px';\n sublist.style.left = DomHandler.getOuterWidth(item.children[0]) + 'px';\n }\n }\n this.activeMenu = item;\n }\n }\n }\n\n\n itemClick(event, item: MenuItem)  {\n if (item.disabled) {\n event.preventDefault();\n return;\n }\n\n if (!item.url) {\n event.preventDefault();\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n this.activeItem = null;\n }\n\n listClick(event) {\n if (this.autoDisplay) {\n this.activeItem = null;\n }\n }\n\n ngOnDestroy() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n\n }\n}\n\n@Component({\n selector: 'p-menubar',\n template: `\n <div [ngClass]=\"{'ui-menubar ui-widget ui-widget-content ui-corner-all':true}\" [class]=\"styleClass\" [ngStyle]=\"style\">\n <p-menubarSub [item]=\"model\" root=\"root\" [baseZIndex]=\"baseZIndex\" [autoZIndex]=\"autoZIndex\">\n <ng-content></ng-content>\n </p-menubarSub>\n <div class=\"ui-menubar-custom\">\n <ng-content></ng-content>\n </div>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class Menubar {\n\n @Input() model: MenuItem[];\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n private _autoDisplay: boolean;\n\n @Input() get autoDisplay(): boolean {\n return this._autoDisplay;\n }\n set utc(_utc: boolean) {\n console.log(\"AutoDisplay property is deprecated and functionality is not available.\");\n }\n\n constructor(public el: ElementRef, public renderer: Renderer2) { }\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule],\n exports: [Menubar, RouterModule],\n declarations: [Menubar, MenubarSub]\n})\nexport class MenubarModule { }\n"]}
\No newline at end of file