UNPKG

20.7 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-tieredmenu.umd.js","sources":["ng://primeng/tieredmenu/tieredmenu.ts"],"sourcesContent":["import {NgModule,Component,ElementRef,OnDestroy,Input,Renderer2,Inject,forwardRef,ChangeDetectorRef,AfterViewInit,ChangeDetectionStrategy} from '@angular/core';\nimport {trigger,state,style,transition,animate,AnimationEvent} from '@angular/animations';\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-tieredMenuSub',\n template: `\n <ul [ngClass]=\"{'ui-widget-content ui-corner-all ui-shadow ui-submenu-list': !root}\" (click)=\"listClick($event)\" role=\"menubar\">\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}\" role=\"separator\">\n <li *ngIf=\"!child.separator\" #listItem [ngClass]=\"{'ui-menuitem ui-widget ui-corner-all':true,'ui-menuitem-active':listItem==activeItem,'ui-helper-hidden': child.visible === false}\"\n [class]=\"child.styleClass\" [ngStyle]=\"child.style\" role=\"none\"\n (mouseenter)=\"onItemMouseEnter($event, listItem, child)\">\n <a *ngIf=\"!child.routerLink\" [attr.href]=\"child.url\" class=\"ui-menuitem-link ui-corner-all\" [attr.target]=\"child.target\" [attr.tabindex]=\"child.tabindex ? child.tabindex : '0'\" [attr.title]=\"child.title\" [attr.id]=\"child.id\" \n [ngClass]=\"{'ui-state-disabled':child.disabled}\" (click)=\"itemClick($event, listItem, child)\" role=\"menuitem\" [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 pi-caret-right\" *ngIf=\"child.items\"></span>\n </a>\n <a *ngIf=\"child.routerLink\" [routerLink]=\"child.routerLink\" role=\"menuitem\" [queryParams]=\"child.queryParams\" [routerLinkActive]=\"'ui-menuitem-link-active'\" role=\"menuitem\" [attr.tabindex]=\"child.tabindex ? child.tabindex : '0'\"\n [routerLinkActiveOptions]=\"child.routerLinkActiveOptions||{exact:false}\"\n class=\"ui-menuitem-link ui-corner-all\" [attr.target]=\"child.target\" [attr.title]=\"child.title\" [attr.id]=\"child.id\"\n [ngClass]=\"{'ui-state-disabled':child.disabled}\" (click)=\"itemClick($event, listItem, child)\"\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 pi-caret-right\" *ngIf=\"child.items\"></span>\n </a>\n <p-tieredMenuSub class=\"ui-submenu\" [item]=\"child\" *ngIf=\"child.items\" [baseZIndex]=\"baseZIndex\" [parentActive]=\"listItem==activeItem\" [autoZIndex]=\"autoZIndex\"></p-tieredMenuSub>\n </li>\n </ng-template>\n </ul>\n `\n})\nexport class TieredMenuSub implements AfterViewInit, OnDestroy {\n\n @Input() item: MenuItem;\n \n @Input() root: boolean;\n\n @Input() autoZIndex: boolean = true;\n \n @Input() baseZIndex: number = 0;\n\n @Input() get parentActive(): boolean {\n return this._parentActive;\n }\n set parentActive(value) {\n this._parentActive = value;\n\n if (!value) {\n this.activeItem = null;\n }\n }\n\n tieredMenu: TieredMenu;\n\n _parentActive: boolean;\n\n rootItemClick: boolean;\n\n documentClickListener: any;\n\n ngAfterViewInit() {\n if (this.root && !this.tieredMenu.popup) {\n this.bindDocumentClickListener();\n }\n }\n \n constructor(@Inject(forwardRef(() => TieredMenu)) tieredMenu, private cf: ChangeDetectorRef, public renderer: Renderer2) {\n this.tieredMenu = tieredMenu as TieredMenu;\n }\n\n activeItem: HTMLLIElement;\n\n onItemMouseEnter(event: Event, item: HTMLLIElement, menuitem: MenuItem) {\n if (this.tieredMenu.popup || (!this.root || this.activeItem)) {\n if (menuitem.disabled) {\n return;\n }\n\n this.activeItem = item;\n let nextElement: HTMLElement = <HTMLElement> item.children[0].nextElementSibling;\n if (nextElement) {\n let sublist: HTMLElement = <HTMLElement> nextElement.children[0];\n if (this.autoZIndex) {\n sublist.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n sublist.style.zIndex = String(++DomHandler.zindex);\n \n sublist.style.top = '0px';\n sublist.style.left = DomHandler.getOuterWidth(item.children[0]) + 'px';\n }\n }\n }\n \n itemClick(event: Event, item: HTMLLIElement, menuitem: MenuItem) {\n if (menuitem.disabled) {\n event.preventDefault();\n return true;\n }\n \n if (!menuitem.url) {\n event.preventDefault();\n }\n \n if (menuitem.command) { \n menuitem.command({\n originalEvent: event,\n item: menuitem\n });\n }\n\n if (this.root && !this.activeItem && !this.tieredMenu.popup ) {\n this.activeItem = item;\n let nextElement: HTMLElement = <HTMLElement> item.children[0].nextElementSibling;\n if (nextElement) {\n let sublist: HTMLElement = <HTMLElement> nextElement.children[0];\n if (this.autoZIndex) {\n sublist.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n sublist.style.zIndex = String(++DomHandler.zindex);\n \n sublist.style.top = '0px';\n sublist.style.left = DomHandler.getOuterWidth(item.children[0]) + 'px';\n\n this.rootItemClick = true;\n }\n }\n\n if (!menuitem.items && this.tieredMenu.popup) {\n this.tieredMenu.hide();\n }\n }\n \n listClick(event: Event) {\n if (!this.rootItemClick) {\n this.activeItem = null;\n }\n }\n\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n this.documentClickListener = this.renderer.listen('document', 'click', () => {\n if (!this.rootItemClick) {\n this.parentActive = false;\n this.activeItem = null;\n }\n\n this.rootItemClick = false;\n });\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.root && !this.tieredMenu.popup) {\n this.unbindDocumentClickListener();\n }\n }\n}\n\n@Component({\n selector: 'p-tieredMenu',\n template: `\n <div [ngClass]=\"{'ui-tieredmenu ui-widget ui-widget-content ui-corner-all':true, 'ui-tieredmenu-dynamic ui-shadow':popup}\" [class]=\"styleClass\" [ngStyle]=\"style\"\n [@overlayAnimation]=\"{value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\" [@.disabled]=\"popup !== true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\" *ngIf=\"!popup || visible\">\n <p-tieredMenuSub [item]=\"model\" root=\"root\" [parentActive]=\"parentActive\" [baseZIndex]=\"baseZIndex\" [autoZIndex]=\"autoZIndex\"></p-tieredMenuSub>\n </div>\n `,\n animations: [\n trigger('overlayAnimation', [\n state('void', style({\n transform: 'translateY(5%)',\n opacity: 0\n })),\n state('visible', style({\n transform: 'translateY(0)',\n opacity: 1\n })),\n transition('void => visible', animate('{{showTransitionParams}}')),\n transition('visible => void', animate('{{hideTransitionParams}}'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class TieredMenu implements OnDestroy {\n\n @Input() model: MenuItem[];\n\n @Input() popup: boolean;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n \n @Input() appendTo: any;\n\n @Input() autoZIndex: boolean = true;\n \n @Input() baseZIndex: number = 0;\n\n @Input() showTransitionOptions: string = '225ms ease-out';\n\n @Input() hideTransitionOptions: string = '195ms ease-in';\n\n parentActive: boolean;\n\n container: HTMLDivElement;\n \n documentClickListener: any;\n\n documentResizeListener: any;\n \n preventDocumentDefault: boolean;\n\n target: any;\n\n visible: boolean;\n \n constructor(public el: ElementRef, public renderer: Renderer2) {}\n \n toggle(event) {\n if (this.visible)\n this.hide();\n else\n this.show(event);\n\n this.preventDocumentDefault = true;\n }\n \n show(event) {\n this.target = event.currentTarget;\n this.visible = true;\n this.parentActive = true;\n this.preventDocumentDefault = true;\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch(event.toState) {\n case 'visible':\n if (this.popup) {\n this.container = event.element;\n this.moveOnTop();\n this.appendOverlay();\n DomHandler.absolutePosition(this.container, this.target);\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n }\n break;\n\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n \n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.container);\n else\n DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n restoreOverlayAppend() {\n if (this.container && this.appendTo) {\n this.el.nativeElement.appendChild(this.container);\n }\n }\n \n moveOnTop() {\n if (this.autoZIndex) {\n this.container.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n }\n\n hide() {\n this.visible = false;\n this.parentActive = false;\n }\n\n onWindowResize() {\n this.hide();\n }\n \n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n this.documentClickListener = this.renderer.listen('document', 'click', () => {\n if (!this.preventDocumentDefault && this.popup) {\n this.hide();\n }\n\n this.preventDocumentDefault = false;\n });\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n bindDocumentResizeListener() {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n \n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.preventDocumentDefault = false;\n this.target = null;\n }\n \n ngOnDestroy() {\n if (this.popup) {\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n }\n\n}\n\n@NgModule({\n imports: [CommonModule,RouterModule],\n exports: [TieredMenu,RouterModule],\n declarations: [TieredMenu,TieredMenuSub]\n})\nexport class TieredMenuModule { }\n"],"names":["DomHandler","Inject","forwardRef","ChangeDetectorRef","Renderer2","Input","Component","ElementRef","trigger","state","style","transition","animate","ChangeDetectionStrategy","NgModule","CommonModule","RouterModule"],"mappings":"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"}
\No newline at end of file