UNPKG

9.53 kBJavaScriptView Raw
1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("primeng/dom"),require("@angular/router")):"function"==typeof define&&define.amd?define("primeng/megamenu",["exports","@angular/core","@angular/common","primeng/dom","@angular/router"],t):t(((e=e||self).primeng=e.primeng||{},e.primeng.megamenu={}),e.ng.core,e.ng.common,e.primeng.dom,e.ng.router)}(this,(function(e,t,n,i,a){"use strict";var r=this&&this.__decorate||function(e,t,n,i){var a,r=arguments.length,o=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,n,i);else for(var l=e.length-1;l>=0;l--)(a=e[l])&&(o=(r<3?a(o):r>3?a(t,n,o):a(t,n))||o);return r>3&&o&&Object.defineProperty(t,n,o),o},o=function(){function e(e,t){this.el=e,this.renderer=t,this.orientation="horizontal",this.autoZIndex=!0,this.baseZIndex=0}return e.prototype.onItemMouseEnter=function(e,t,n){if(!n.disabled&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null),this.activeItem=t,n.items)){var a=t.children[0].nextElementSibling;a&&(this.autoZIndex&&(a.style.zIndex=String(this.baseZIndex+ ++i.DomHandler.zindex)),"horizontal"===this.orientation?(a.style.top=i.DomHandler.getOuterHeight(t.children[0])+"px",a.style.left="0px"):"vertical"===this.orientation&&(a.style.top="0px",a.style.left=i.DomHandler.getOuterWidth(t.children[0])+"px"))}},e.prototype.onItemMouseLeave=function(e,t){var n=this;this.hideTimeout=setTimeout((function(){n.activeItem=null}),1e3)},e.prototype.itemClick=function(e,t){t.disabled?e.preventDefault():(t.url||e.preventDefault(),t.command&&t.command({originalEvent:e,item:t}),this.activeItem=null)},e.prototype.getColumnClass=function(e){var t;switch(e.items?e.items.length:0){case 2:t="ui-g-6";break;case 3:t="ui-g-4";break;case 4:t="ui-g-3";break;case 6:t="ui-g-2";break;default:t="ui-g-12"}return t},e.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2}]},r([t.Input()],e.prototype,"model",void 0),r([t.Input()],e.prototype,"style",void 0),r([t.Input()],e.prototype,"styleClass",void 0),r([t.Input()],e.prototype,"orientation",void 0),r([t.Input()],e.prototype,"autoZIndex",void 0),r([t.Input()],e.prototype,"baseZIndex",void 0),e=r([t.Component({selector:"p-megaMenu",template:'\n <div [class]="styleClass" [ngStyle]="style"\n [ngClass]="{\'ui-megamenu ui-widget ui-widget-content ui-corner-all\':true,\'ui-megamenu-horizontal\': orientation == \'horizontal\',\'ui-megamenu-vertical\': orientation == \'vertical\'}">\n <ul class="ui-megamenu-root-list" role="menubar">\n <ng-template ngFor let-category [ngForOf]="model">\n <li *ngIf="category.separator" class="ui-menu-separator ui-widget-content" [ngClass]="{\'ui-helper-hidden\': category.visible === false}">\n <li *ngIf="!category.separator" #item [ngClass]="{\'ui-menuitem ui-corner-all\':true,\'ui-menuitem-active\':item==activeItem, \'ui-helper-hidden\': category.visible === false}"\n (mouseenter)="onItemMouseEnter($event, item, category)" (mouseleave)="onItemMouseLeave($event, item)">\n \n <a *ngIf="!category.routerLink" [href]="category.url||\'#\'" [attr.target]="category.target" [attr.title]="category.title" [attr.id]="category.id" (click)="itemClick($event, category)" [attr.tabindex]="category.tabindex ? category.tabindex : \'0\'"\n [ngClass]="{\'ui-menuitem-link ui-corner-all\':true,\'ui-state-disabled\':category.disabled}" [ngStyle]="category.style" [class]="category.styleClass">\n <span class="ui-menuitem-icon" *ngIf="category.icon" [ngClass]="category.icon"></span>\n <span class="ui-menuitem-text">{{category.label}}</span>\n <span *ngIf="category.items" class="ui-submenu-icon pi pi-fw" [ngClass]="{\'pi-caret-down\':orientation==\'horizontal\',\'pi-caret-right\':orientation==\'vertical\'}"></span>\n </a>\n <a *ngIf="category.routerLink" [routerLink]="category.routerLink" [queryParams]="category.queryParams" [routerLinkActive]="\'ui-menuitem-link-active\'" [routerLinkActiveOptions]="category.routerLinkActiveOptions||{exact:false}" [attr.tabindex]="category.tabindex ? category.tabindex : \'0\'" \n [attr.target]="category.target" [attr.title]="category.title" [attr.id]="category.id"\n (click)="itemClick($event, category)" [ngClass]="{\'ui-menuitem-link ui-corner-all\':true,\'ui-state-disabled\':category.disabled}" [ngStyle]="category.style" [class]="category.styleClass"\n [fragment]="category.fragment" [queryParamsHandling]="category.queryParamsHandling" [preserveFragment]="category.preserveFragment" [skipLocationChange]="category.skipLocationChange" [replaceUrl]="category.replaceUrl" [state]="category.state">\n <span class="ui-menuitem-icon" *ngIf="category.icon" [ngClass]="category.icon"></span>\n <span class="ui-menuitem-text">{{category.label}}</span>\n </a>\n\n <div class="ui-megamenu-panel ui-widget-content ui-corner-all ui-shadow" *ngIf="category.items">\n <div class="ui-g">\n <ng-template ngFor let-column [ngForOf]="category.items">\n <div [class]="getColumnClass(category)">\n <ng-template ngFor let-submenu [ngForOf]="column">\n <ul class="ui-megamenu-submenu" role="menu">\n <li class="ui-widget-header ui-megamenu-submenu-header ui-corner-all">{{submenu.label}}</li>\n <ng-template ngFor let-item [ngForOf]="submenu.items">\n <li *ngIf="item.separator" class="ui-menu-separator ui-widget-content" [ngClass]="{\'ui-helper-hidden\': item.visible === false}" role="separator">\n <li *ngIf="!item.separator" class="ui-menuitem ui-corner-all" [ngClass]="{\'ui-helper-hidden\': item.visible === false}" role="none">\n <a *ngIf="!item.routerLink" role="menuitem" [href]="item.url||\'#\'" class="ui-menuitem-link ui-corner-all" [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id" [attr.tabindex]="item.tabindex ? item.tabindex : \'0\'"\n [ngClass]="{\'ui-state-disabled\':item.disabled}" (click)="itemClick($event, item)">\n <span class="ui-menuitem-icon" *ngIf="item.icon" [ngClass]="item.icon"></span>\n <span class="ui-menuitem-text">{{item.label}}</span>\n </a>\n <a *ngIf="item.routerLink" role="menuitem" [routerLink]="item.routerLink" [queryParams]="item.queryParams" [routerLinkActive]="\'ui-menuitem-link-active\'" [attr.tabindex]="item.tabindex ? item.tabindex : \'0\'"\n [routerLinkActiveOptions]="item.routerLinkActiveOptions||{exact:false}" class="ui-menuitem-link ui-corner-all" \n [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id"\n [ngClass]="{\'ui-state-disabled\':item.disabled}" (click)="itemClick($event, item)"\n [fragment]="item.fragment" [queryParamsHandling]="item.queryParamsHandling" [preserveFragment]="item.preserveFragment" [skipLocationChange]="item.skipLocationChange" [replaceUrl]="item.replaceUrl" [state]="item.state">\n <span class="ui-menuitem-icon" *ngIf="item.icon" [ngClass]="item.icon"></span>\n <span class="ui-menuitem-text">{{item.label}}</span>\n </a>\n </li>\n </ng-template>\n </ul>\n </ng-template>\n </div>\n </ng-template>\n </div>\n </div>\n </li>\n </ng-template>\n <li class="ui-menuitem ui-menuitem-custom ui-corner-all" *ngIf="orientation === \'horizontal\'">\n <ng-content></ng-content>\n </li>\n </ul>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.Default})],e)}(),l=function(){function e(){}return e=r([t.NgModule({imports:[n.CommonModule,a.RouterModule],exports:[o,a.RouterModule],declarations:[o]})],e)}();e.MegaMenu=o,e.MegaMenuModule=l,Object.defineProperty(e,"__esModule",{value:!0})}));
2//# sourceMappingURL=primeng-megamenu.umd.min.js.map
\No newline at end of file