@syncfusion/ej2-navigations
Version:
A package of Essential JS 2 navigation components such as Tree-view, Tab, Toolbar, Context-menu, and Accordion which is used to navigate from one page to another
10 lines • 378 kB
JavaScript
/*!
* filename: ej2-navigations.min.js
* version : 21.1.35
* Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
* Use of this code is subject to the terms of our license.
* A copy of the current license can be obtained at any time by e-mailing
* licensing@syncfusion.com. Any infringement will be prosecuted under
* applicable laws.
*/
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("SyncfusionBase"),require("SyncfusionPopups"),require("SyncfusionButtons"),require("SyncfusionLists"),require("SyncfusionData"),require("SyncfusionInputs")):"function"==typeof define&&define.amd?define(["SyncfusionBase","SyncfusionPopups","SyncfusionButtons","SyncfusionLists","SyncfusionData","SyncfusionInputs"],t):"object"==typeof exports?exports.SyncfusionNavigations=t(require("SyncfusionBase"),require("SyncfusionPopups"),require("SyncfusionButtons"),require("SyncfusionLists"),require("SyncfusionData"),require("SyncfusionInputs")):e.SyncfusionNavigations=t(e.SyncfusionBase,e.SyncfusionPopups,e.SyncfusionButtons,e.SyncfusionLists,e.SyncfusionData,e.SyncfusionInputs)}(this,function(e,t,i,s,n,r){return function(e){function t(s){if(i[s])return i[s].exports;var n=i[s]={i:s,l:!1,exports:{}};return e[s].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var i={};return t.m=e,t.c=i,t.i=function(e){return e},t.d=function(e,i,s){t.o(e,i)||Object.defineProperty(e,i,{configurable:!1,enumerable:!0,get:s})},t.n=function(e){var i=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(i,"a",i),i},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=25)}([function(t,i){t.exports=e},function(e,i){e.exports=t},function(e,t,i){"use strict";i.d(t,"a",function(){return l});var s=i(0),n=(i.n(s),this&&this.__extends||function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}()),r=this&&this.__decorate||function(e,t,i,s){var n,r=arguments.length,l=r<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,i,s);else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(l=(r<3?n(l):r>3?n(t,i,l):n(t,i))||l);return r>3&&l&&Object.defineProperty(t,i,l),l},l=function(e){function t(t,i){return e.call(this,t,i)||this}return n(t,e),t.prototype.preRender=function(){this.browser=s.Browser.info.name,this.browserCheck="mozilla"===this.browser,this.isDevice=s.Browser.isDevice,this.customStep=!0;var e=this.element;this.ieCheck="edge"===this.browser||"msie"===this.browser,this.initialize(),""===e.id&&(e.id=i.i(s.getUniqueID)("hscroll"),this.uniqueId=!0),e.style.display="block",this.enableRtl&&e.classList.add("e-rtl")},t.prototype.render=function(){this.touchModule=new s.Touch(this.element,{scroll:this.touchHandler.bind(this),swipe:this.swipeHandler.bind(this)}),s.EventHandler.add(this.scrollEle,"scroll",this.scrollHandler,this),this.isDevice?(this.element.classList.add("e-scroll-device"),this.createOverlay(this.element)):this.createNavIcon(this.element),this.setScrollState()},t.prototype.setScrollState=function(){i.i(s.isNullOrUndefined)(this.scrollStep)||this.scrollStep<0?(this.scrollStep=this.scrollEle.offsetWidth,this.customStep=!1):this.customStep=!0},t.prototype.initialize=function(){var e=this.createElement("div",{className:"e-hscroll-content"}),t=this.createElement("div",{className:"e-hscroll-bar"});t.setAttribute("tabindex","-1");for(var i=this.element,s=[].slice.call(i.children),n=0,r=s;n<r.length;n++){var l=r[n];e.appendChild(l)}t.appendChild(e),i.appendChild(t),t.style.overflowX="hidden",this.scrollEle=t,this.scrollItems=e},t.prototype.getPersistData=function(){var e=["scrollStep"];return this.addOnPersist(e)},t.prototype.getModuleName=function(){return"hScroll"},t.prototype.destroy=function(){var t=this.element;t.style.display="",t.classList.remove("e-hscroll"),t.classList.remove("e-scroll-device");var n=i.i(s.selectAll)(".e-"+t.id+"_nav.e-scroll-nav",t),r=i.i(s.selectAll)(".e-scroll-overlay",t);[].slice.call(r).forEach(function(e){i.i(s.detach)(e)});for(var l=0,o=[].slice.call(this.scrollItems.children);l<o.length;l++){var a=o[l];t.appendChild(a)}this.uniqueId&&this.element.removeAttribute("id"),i.i(s.detach)(this.scrollEle),n.length>0&&(i.i(s.detach)(n[0]),i.i(s.isNullOrUndefined)(n[1])||i.i(s.detach)(n[1])),s.EventHandler.remove(this.scrollEle,"scroll",this.scrollHandler),this.touchModule.destroy(),this.touchModule=null,e.prototype.destroy.call(this)},t.prototype.disable=function(e){var t=i.i(s.selectAll)(".e-scroll-nav:not(.e-overlay)",this.element);e?this.element.classList.add("e-overlay"):this.element.classList.remove("e-overlay"),[].slice.call(t).forEach(function(t){t.setAttribute("tabindex",e?"-1":"0")})},t.prototype.createOverlay=function(e){var t=e.id.concat("_nav"),i=this.createElement("div",{className:"e-scroll-overlay e-scroll-right-overlay"}),s="e-"+e.id.concat("_nav e-scroll-nav e-scroll-right-nav"),n=this.createElement("div",{id:t.concat("_right"),className:s}),r=this.createElement("div",{className:"e-nav-right-arrow e-nav-arrow e-icons"});n.appendChild(r);var l=this.createElement("div",{className:"e-scroll-overlay e-scroll-left-overlay"});this.ieCheck&&n.classList.add("e-ie-align"),e.appendChild(i),e.appendChild(n),e.insertBefore(l,e.firstChild),this.eventBinding([n])},t.prototype.createNavIcon=function(e){var t=e.id.concat("_nav"),i="e-"+e.id.concat("_nav e-scroll-nav e-scroll-right-nav"),s={role:"button",id:t.concat("_right"),"aria-label":"Scroll right"},n=this.createElement("div",{className:i,attrs:s});n.setAttribute("aria-disabled","false");var r=this.createElement("div",{className:"e-nav-right-arrow e-nav-arrow e-icons"}),l="e-"+e.id.concat("_nav e-scroll-nav e-scroll-left-nav"),o={role:"button",id:t.concat("_left"),"aria-label":"Scroll left"},a=this.createElement("div",{className:l+" e-overlay",attrs:o});a.setAttribute("aria-disabled","true");var d=this.createElement("div",{className:"e-nav-left-arrow e-nav-arrow e-icons"});a.appendChild(d),n.appendChild(r),e.appendChild(n),e.insertBefore(a,e.firstChild),this.ieCheck&&(n.classList.add("e-ie-align"),a.classList.add("e-ie-align")),this.eventBinding([n,a])},t.prototype.onKeyPress=function(e){var t=this;if("Enter"===e.key){var i=function(){t.keyTimeout=!0,t.eleScrolling(10,e.target,!0)};this.keyTimer=window.setTimeout(function(){i()},100)}},t.prototype.onKeyUp=function(e){"Enter"===e.key&&(this.keyTimeout?this.keyTimeout=!1:e.target.click(),clearTimeout(this.keyTimer))},t.prototype.eventBinding=function(e){var t=this;[].slice.call(e).forEach(function(e){new s.Touch(e,{tapHold:t.tabHoldHandler.bind(t),tapHoldThreshold:500}),e.addEventListener("keydown",t.onKeyPress.bind(t)),e.addEventListener("keyup",t.onKeyUp.bind(t)),e.addEventListener("mouseup",t.repeatScroll.bind(t)),e.addEventListener("touchend",t.repeatScroll.bind(t)),e.addEventListener("contextmenu",function(e){e.preventDefault()}),s.EventHandler.add(e,"click",t.clickEventHandler,t)})},t.prototype.repeatScroll=function(){clearInterval(this.timeout)},t.prototype.tabHoldHandler=function(e){var t=this,i=e.originalEvent.target;i=this.contains(i,"e-scroll-nav")?i.firstElementChild:i;var s=function(){t.eleScrolling(10,i,!0)};this.timeout=window.setInterval(function(){s()},50)},t.prototype.contains=function(e,t){return e.classList.contains(t)},t.prototype.eleScrolling=function(e,t,i){var s=this.element,n=t.classList;n.contains("e-scroll-nav")&&(n=t.querySelector(".e-nav-arrow").classList),this.contains(s,"e-rtl")&&this.browserCheck&&(e=-e),!this.contains(s,"e-rtl")||this.browserCheck||this.ieCheck?n.contains("e-nav-right-arrow")?this.frameScrollRequest(e,"add",i):this.frameScrollRequest(e,"",i):n.contains("e-nav-left-arrow")?this.frameScrollRequest(e,"add",i):this.frameScrollRequest(e,"",i)},t.prototype.clickEventHandler=function(e){this.eleScrolling(this.scrollStep,e.target,!1)},t.prototype.swipeHandler=function(e){var t,i=this.scrollEle;t=e.velocity<=1?e.distanceX/(10*e.velocity):e.distanceX/e.velocity;var s=.5,n=function(){var r=Math.sin(s);r<=0?window.cancelAnimationFrame(r):("Left"===e.swipeDirection?i.scrollLeft+=t*r:"Right"===e.swipeDirection&&(i.scrollLeft-=t*r),s-=.5,window.requestAnimationFrame(n))};n()},t.prototype.scrollUpdating=function(e,t){"add"===t?this.scrollEle.scrollLeft+=e:this.scrollEle.scrollLeft-=e,this.enableRtl&&this.scrollEle.scrollLeft>0&&(this.scrollEle.scrollLeft=0)},t.prototype.frameScrollRequest=function(e,t,n){var r=this;if(n)return void this.scrollUpdating(e,t);this.customStep||[].slice.call(i.i(s.selectAll)(".e-scroll-overlay",this.element)).forEach(function(t){e-=t.offsetWidth});var l=function(){var i,s;r.contains(r.element,"e-rtl")&&r.browserCheck?(i=-e,s=-10):(i=e,s=10),i<10?window.cancelAnimationFrame(s):(r.scrollUpdating(s,t),e-=s,window.requestAnimationFrame(l))};l()},t.prototype.touchHandler=function(e){var t=this.scrollEle,i=e.distanceX;this.ieCheck&&this.contains(this.element,"e-rtl")&&(i=-i),"Left"===e.scrollDirection?t.scrollLeft=t.scrollLeft+i:"Right"===e.scrollDirection&&(t.scrollLeft=t.scrollLeft-i)},t.prototype.arrowDisabling=function(e,t){if(this.isDevice){var n=i.i(s.isNullOrUndefined)(e)?t:e,r=n.querySelector(".e-nav-arrow");i.i(s.isNullOrUndefined)(e)?i.i(s.classList)(r,["e-nav-right-arrow"],["e-nav-left-arrow"]):i.i(s.classList)(r,["e-nav-left-arrow"],["e-nav-right-arrow"])}else e&&t&&(e.classList.add("e-overlay"),e.setAttribute("aria-disabled","true"),e.removeAttribute("tabindex"),t.classList.remove("e-overlay"),t.setAttribute("aria-disabled","false"),t.setAttribute("tabindex","0"));this.repeatScroll()},t.prototype.scrollHandler=function(e){var t=e.target,i=t.offsetWidth,s=(this.element,this.element.querySelector(".e-scroll-left-nav")),n=this.element.querySelector(".e-scroll-right-nav"),r=this.element.querySelector(".e-scroll-left-overlay"),l=this.element.querySelector(".e-scroll-right-overlay"),o=t.scrollLeft;if(o<=0&&(o=-o),this.isDevice&&(!this.enableRtl||this.browserCheck||this.ieCheck||(r=this.element.querySelector(".e-scroll-right-overlay"),l=this.element.querySelector(".e-scroll-left-overlay")),r.style.width=o<40?o+"px":"40px",t.scrollWidth-Math.ceil(i+o)<40?l.style.width=t.scrollWidth-Math.ceil(i+o)+"px":l.style.width="40px"),0===o)this.arrowDisabling(s,n);else if(Math.ceil(i+o+.1)>=t.scrollWidth)this.arrowDisabling(n,s);else{var a=this.element.querySelector(".e-scroll-nav.e-overlay");a&&(a.classList.remove("e-overlay"),a.setAttribute("aria-disabled","false"),a.setAttribute("tabindex","0"))}},t.prototype.onPropertyChanged=function(e,t){for(var i=0,s=Object.keys(e);i<s.length;i++){switch(s[i]){case"scrollStep":this.setScrollState();break;case"enableRtl":e.enableRtl?this.element.classList.add("e-rtl"):this.element.classList.remove("e-rtl")}}},r([i.i(s.Property)(null)],t.prototype,"scrollStep",void 0),t=r([s.NotifyPropertyChanges],t)}(s.Component)},function(e,t,i){"use strict";i.d(t,"a",function(){return g}),i.d(t,"c",function(){return y}),i.d(t,"d",function(){return b}),i.d(t,"b",function(){return C});var s=i(0),n=(i.n(s),i(6)),r=(i.n(n),i(1)),l=(i.n(r),i(2)),o=i(4),a=i(7),d=this&&this.__extends||function(){var e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(t,i)};return function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)}}(),h=this&&this.__decorate||function(e,t,i,s){var n,r=arguments.length,l=r<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,i,s);else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(l=(r<3?n(l):r>3?n(t,i,l):n(t,i))||l);return r>3&&l&&Object.defineProperty(t,i,l),l},c="e-focused",p="e-menu-header",u="e-selected",f="e-menu-item",m="e-menu-hide",v="e-menu-popup",g=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return d(t,e),h([i.i(s.Property)("id")],t.prototype,"itemId",void 0),h([i.i(s.Property)("parentId")],t.prototype,"parentId",void 0),h([i.i(s.Property)("text")],t.prototype,"text",void 0),h([i.i(s.Property)("iconCss")],t.prototype,"iconCss",void 0),h([i.i(s.Property)("url")],t.prototype,"url",void 0),h([i.i(s.Property)("separator")],t.prototype,"separator",void 0),h([i.i(s.Property)("items")],t.prototype,"children",void 0),t}(s.ChildProperty),y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return d(t,e),h([i.i(s.Property)(null)],t.prototype,"iconCss",void 0),h([i.i(s.Property)("")],t.prototype,"id",void 0),h([i.i(s.Property)(!1)],t.prototype,"separator",void 0),h([i.i(s.Collection)([],t)],t.prototype,"items",void 0),h([i.i(s.Property)("")],t.prototype,"text",void 0),h([i.i(s.Property)("")],t.prototype,"url",void 0),t}(s.ChildProperty),b=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return d(t,e),h([i.i(s.Property)("SlideDown")],t.prototype,"effect",void 0),h([i.i(s.Property)(400)],t.prototype,"duration",void 0),h([i.i(s.Property)("ease")],t.prototype,"easing",void 0),t}(s.ChildProperty),C=function(e){function t(t,i){var n=e.call(this,t,i)||this;return n.navIdx=[],n.animation=new s.Animation({}),n.isTapHold=!1,n.tempItem=[],n.showSubMenuOn="Auto",n}return d(t,e),t.prototype.preRender=function(){if(!this.isMenu){var e=void 0;if("EJS-CONTEXTMENU"===this.element.tagName){e=this.createElement("ul",{id:i.i(s.getUniqueID)(this.getModuleName()),className:"e-control e-lib e-"+this.getModuleName()});var t=i.i(s.getValue)("ej2_instances",this.element);i.i(s.removeClass)([this.element],["e-control","e-lib","e-"+this.getModuleName()]),this.clonedElement=this.element,this.element=e,i.i(s.setValue)("ej2_instances",t,this.element)}else{e=this.createElement("ul",{id:i.i(s.getUniqueID)(this.getModuleName())}),i.i(s.append)([].slice.call(this.element.cloneNode(!0).children),e);var n=this.element.nextElementSibling;n?this.element.parentElement.insertBefore(e,n):this.element.parentElement.appendChild(e),this.clonedElement=e}this.clonedElement.style.display="none"}if("EJS-MENU"===this.element.tagName){for(var r=this.element,l=i.i(s.getValue)("ej2_instances",r),e=this.createElement("ul"),o=this.createElement("EJS-MENU",{className:"e-"+this.getModuleName()+"-wrapper"}),a=0,d=r.attributes.length;a<d;a++)e.setAttribute(r.attributes[a].nodeName,r.attributes[a].nodeValue);r.parentNode.insertBefore(o,r),i.i(s.detach)(r),r=e,o.appendChild(r),i.i(s.setValue)("ej2_instances",l,r),this.clonedElement=o,this.element=r,this.element.id||(this.element.id=i.i(s.getUniqueID)(this.getModuleName()))}},t.prototype.render=function(){var e=this;this.initialize(),this.renderItems(),this.wireEvents(),this.renderComplete();var t=this.getWrapper();this.template&&this.enableScrolling&&(this.isReact||this.isAngular)&&requestAnimationFrame(function(){i.i(a.a)(e.createElement,t,e.element,"hscroll",e.enableRtl)})},t.prototype.initialize=function(){var e=this.getWrapper();e||(e=this.createElement("div",{className:"e-"+this.getModuleName()+"-wrapper"}),this.isMenu?this.element.parentElement.insertBefore(e,this.element):document.body.appendChild(e)),this.cssClass&&i.i(s.addClass)([e],this.cssClass.replace(/\s+/g," ").trim().split(" ")),this.enableRtl&&e.classList.add("e-rtl"),e.appendChild(this.element),this.isMenu&&this.hamburgerMode&&(this.target||this.createHeaderContainer(e)),this.defaultOption=this.showItemOnClick},t.prototype.renderItems=function(){if(!this.items.length){var e=n.ListBase.createJsonFromElement(this.element,{fields:{child:"items"}});this.setProperties({items:e},!0),i.i(s.isBlazor)()&&!this.isMenu?this.element=this.removeChildElement(this.element):this.element.innerHTML=""}var t=this.createItems(this.items);if(i.i(s.append)(Array.prototype.slice.call(t.children),this.element),this.element.classList.add("e-menu-parent"),this.isMenu&&(!this.hamburgerMode&&this.element.classList.contains("e-vertical")&&this.setBlankIconStyle(this.element),this.enableScrolling)){var r=this.getWrapper();this.element.classList.contains("e-vertical")?i.i(a.a)(this.createElement,r,this.element,"vscroll",this.enableRtl):i.i(a.a)(this.createElement,r,this.element,"hscroll",this.enableRtl)}},t.prototype.wireEvents=function(){var e=this.getWrapper();if(this.target){for(var t=void 0,n=i.i(s.selectAll)(this.target),l=0,o=n.length;l<o;l++)t=n[l],this.isMenu?s.EventHandler.add(t,"click",this.menuHeaderClickHandler,this):s.Browser.isIos?new s.Touch(t,{tapHold:this.touchHandler.bind(this)}):s.EventHandler.add(t,"contextmenu",this.cmenuHandler,this);if(this.targetElement=t,!this.isMenu){s.EventHandler.add(this.targetElement,"scroll",this.scrollHandler,this);for(var a=0,d=i.i(r.getScrollableParent)(this.targetElement);a<d.length;a++){var h=d[a];s.EventHandler.add(h,"scroll",this.scrollHandler,this)}}}s.Browser.isDevice||(this.delegateMoverHandler=this.moverHandler.bind(this),this.delegateMouseDownHandler=this.mouseDownHandler.bind(this),s.EventHandler.add(this.isMenu?document:e,"mouseover",this.delegateMoverHandler,this),s.EventHandler.add(document,"mousedown",this.delegateMouseDownHandler,this)),this.delegateClickHandler=this.clickHandler.bind(this),s.EventHandler.add(document,"click",this.delegateClickHandler,this),this.wireKeyboardEvent(e),this.rippleFn=i.i(s.rippleEffect)(e,{selector:"."+f})},t.prototype.wireKeyboardEvent=function(e){var t={downarrow:"downarrow",uparrow:"uparrow",enter:"enter",leftarrow:"leftarrow",rightarrow:"rightarrow",escape:"escape"};this.isMenu&&(t.home="home",t.end="end",t.tab="tab"),new s.KeyboardEvents(e,{keyAction:this.keyBoardHandler.bind(this),keyConfigs:t})},t.prototype.mouseDownHandler=function(e){i.i(s.closest)(e.target,".e-"+this.getModuleName()+"-wrapper")===this.getWrapper()||i.i(s.closest)(e.target,".e-"+this.getModuleName()+"-popup")||this.closeMenu(this.isMenu?null:this.navIdx.length,e)},t.prototype.keyBoardHandler=function(e){var t="",n=e.target,r=this.isMenu&&!this.hamburgerMode&&!this.element.classList.contains("e-vertical")&&this.navIdx.length<1;if(e.preventDefault(),this.enableScrolling&&13===e.keyCode&&n.classList.contains("e-scroll-nav")&&this.removeLIStateByClass([c,u],[i.i(s.closest)(n,".e-"+this.getModuleName()+"-wrapper")]),r)switch(e.action){case"rightarrow":t="rightarrow",e.action="downarrow";break;case"leftarrow":t="leftarrow",e.action="uparrow";break;case"downarrow":t="downarrow",e.action="rightarrow";break;case"uparrow":t="uparrow",e.action=""}else if(this.enableRtl)switch(e.action){case"leftarrow":r=!0,t="leftarrow",e.action="rightarrow";break;case"rightarrow":r=!0,t="rightarrow",e.action="leftarrow"}switch(e.action){case"downarrow":case"uparrow":case"end":case"home":case"tab":this.upDownKeyHandler(e);break;case"rightarrow":this.rightEnterKeyHandler(e);break;case"leftarrow":this.leftEscKeyHandler(e);break;case"enter":this.hamburgerMode&&"SPAN"===n.tagName&&n.classList.contains("e-menu-icon")?this.menuHeaderClickHandler(e):this.rightEnterKeyHandler(e);break;case"escape":this.leftEscKeyHandler(e)}r&&(e.action=t)},t.prototype.upDownKeyHandler=function(e){var t=this.getUlByNavIdx(),i="downarrow"===e.action||"home"===e.action||"tab"===e.action?0:t.childElementCount-1,s=i,n=this.getLIByClass(t,c);n&&("end"!==e.action&&"home"!==e.action&&(s=this.getIdx(t,n)),n.classList.remove(c),"end"!==e.action&&"home"!==e.action&&("downarrow"===e.action?s++:s--,s===("downarrow"===e.action?t.childElementCount:-1)&&(s=i)));var r=t.children[s];s=this.isValidLI(r,s,e.action),t.children[s].classList.add(c),t.children[s].focus()},t.prototype.isValidLI=function(e,t,i){var s=this.getUlByNavIdx(),n="downarrow"===i||"home"===i||"tab"===i?0:s.childElementCount-1;return(e.classList.contains("e-separator")||e.classList.contains("e-disabled")||e.classList.contains(m))&&("downarrow"===i&&t===s.childElementCount-1?t=n:"uparrow"===i&&0===t?t=n:"downarrow"===i||"rightarrow"===i?t++:t--),e=s.children[t],(e.classList.contains("e-separator")||e.classList.contains("e-disabled")||e.classList.contains(m))&&(t=this.isValidLI(e,t,i)),t},t.prototype.getUlByNavIdx=function(e){if(void 0===e&&(e=this.navIdx.length),this.isMenu){var t=[this.getWrapper()].concat([].slice.call(i.i(s.selectAll)("."+v)))[e];return i.i(s.isNullOrUndefined)(t)?null:i.i(s.select)(".e-menu-parent",t)}return this.getWrapper().children[e]},t.prototype.rightEnterKeyHandler=function(e){var t,i=this.getUlByNavIdx(),s=this.getLIByClass(i,c);if(s){var n=this.getIdx(i,s),r=this.navIdx.concat(n),l=this.getItem(r);l.items.length?(this.navIdx.push(n),this.keyType="right",this.action=e.action,this.openMenu(s,l,-1,-1,e)):"enter"===e.action&&(this.isMenu&&0===this.navIdx.length?this.removeLIStateByClass([u],[this.getWrapper()]):s.classList.remove(c),s.classList.add(u),t={element:s,item:l,event:e},this.trigger("select",t),this.closeMenu(null,e))}},t.prototype.leftEscKeyHandler=function(e){this.navIdx.length?(this.keyType="left",this.closeMenu(this.navIdx.length,e)):"escape"===e.action&&this.closeMenu(null,e)},t.prototype.scrollHandler=function(e){this.closeMenu(null,e)},t.prototype.touchHandler=function(e){this.isTapHold=!0,this.cmenuHandler(e.originalEvent)},t.prototype.cmenuHandler=function(e){e.preventDefault(),this.currentTarget=e.target,this.isCMenu=!0,this.pageX=e.changedTouches?e.changedTouches[0].pageX+1:e.pageX+1,this.pageY=e.changedTouches?e.changedTouches[0].pageY+1:e.pageY+1,this.closeMenu(null,e),this.isCMenu&&(this.canOpen(e.target)&&this.openMenu(null,null,this.pageY,this.pageX,e),this.isCMenu=!1)},t.prototype.closeMenu=function(e,t,n){var l=this;if(void 0===e&&(e=0),void 0===t&&(t=null),this.isMenuVisible()){var d,h,p=void 0,f=this.getWrapper(),m=void 0,g=this.getPopups(),y=!1,b=this.isMenu?g.length+1:f.childElementCount,C=this.isMenu&&1!==b?i.i(s.select)(".e-ul",g[b-2]):i.i(s.selectAll)(".e-menu-parent",f)[b-1];if(this.isMenu&&C.classList.contains("e-menu")&&(p=this.getLIByClass(C,u),p&&p.classList.remove(u),y=!0),!y){var x=t&&t.target&&this.getLI(t.target);this.cli=x||C.children[0],d=this.navIdx.length?this.getItem(this.navIdx):null,h=d?d.items:this.items,m={element:C,parentItem:d,items:h,event:t,cancel:!1,isFocused:!0},this.trigger("beforeClose",m,function(p){var m,g,y,b="",E=!p.cancel;(E||l.isCMenu)&&(l.isMenu?(m=i.i(s.closest)(C,"."+v),l.hamburgerMode&&(m.parentElement.style.minHeight="",i.i(s.closest)(C,".e-menu-item").setAttribute("aria-expanded","false")),l.unWireKeyboardEvent(m),i.i(a.b)(i.i(s.getInstance)(m.children[0],o.a),m.children[0]),y=i.i(s.getInstance)(m,r.Popup),y.hide(),b=m.id,y.destroy(),i.i(s.detach)(m)):l.toggleAnimation(C,!1),g={element:C,parentItem:d,items:h},l.trigger("onClose",g),l.navIdx.pop()),l.updateReactTemplate();var N,I,S,O=l.getWrapper()&&l.getUlByNavIdx();l.isCMenu&&(l.canOpen(t.target)&&l.openMenu(null,null,l.pageY,l.pageX,t),l.isCMenu=!1),l.isMenu&&O&&b.length?(N=new RegExp("(.*)-ej2menu-"+l.element.id+"-popup").exec(b)[1],I=O.querySelector('[id="'+N+'"]'),S=x&&O.querySelector('[id="'+x.id+'"]')):O&&(I=O.querySelector(".e-menu-item.e-selected"),S=x&&O.querySelector('[id="'+x.id+'"]'));var w=x&&x.querySelectorAll(".e-menu-item");if(E&&l.hamburgerMode&&e&&!w.length)l.afterCloseMenu(t);else if(E&&!l.hamburgerMode&&I&&!S&&"left"!==l.keyType&&(l.navIdx.length||!l.isMenu&&0===l.navIdx.length)){var k=t&&t.target.classList.contains("e-vscroll")?i.i(s.closest)(t.target,".e-menu-wrapper"):null;k?(k=k.querySelector(".e-menu-item"),(l.showItemOnClick||k&&l.getIndex(k.id,!0).length<=l.navIdx.length)&&l.closeMenu(l.navIdx[l.navIdx.length-1],t,!0)):l.closeMenu(l.navIdx[l.navIdx.length-1],t)}else if(E&&!n&&!e&&(l.hamburgerMode&&l.navIdx.length||1===l.navIdx.length&&x&&O!==x.parentElement))l.closeMenu(null,t);else if(E&&i.i(s.isNullOrUndefined)(e)&&l.navIdx.length)l.closeMenu(null,t);else if(!E||l.isMenu||e||0!==l.navIdx.length||l.isMenusClosed)if(E&&l.isMenu&&t&&t.target&&0!==l.navIdx.length&&i.i(s.closest)(t.target,".e-menu-parent.e-control"))l.closeMenu(0,t);else if(E&&!l.isMenu&&i.i(s.selectAll)(".e-menu-parent",f)[e-1]&&3===t.which)l.closeMenu(null,t);else{if(!E||"right"!==l.keyType&&"click"!==l.keyType){var A=l.getUlByNavIdx(),L=l.getLIByClass(A,u);if(L&&(L.setAttribute("aria-expanded","false"),L.classList.remove(u),(p.isFocused&&x||"left"===l.keyType)&&(L.classList.add(c),L.focus())),!E&&l.hamburgerMode&&x&&"false"===x.getAttribute("aria-expanded")&&"true"===x.getAttribute("aria-haspopup")){i.i(s.closest)(x,".e-menu-parent.e-control")?l.navIdx=[]:l.navIdx.pop(),l.navIdx.push(l.cliIdx);var P=l.getItem(l.navIdx);x.setAttribute("aria-expanded","true"),l.openMenu(x,P,-1,-1,t)}}else l.afterCloseMenu(t);l.navIdx.length<1&&("Hover"!==l.showSubMenuOn&&"Click"!==l.showSubMenuOn||(l.showItemOnClick=l.defaultOption,l.showSubMenuOn="Auto"))}else l.isMenusClosed=!0,l.closeMenu(0,t);l.removeStateWrapper()})}}},t.prototype.updateReactTemplate=function(){if(this.isReact&&this.template&&0===this.navIdx.length){var e=this.portals.splice(0,this.items.length);this.clearTemplate(["template"]),this.portals=e,this.renderReactTemplates()}},t.prototype.getMenuItemModel=function(e,t){if(i.i(s.isNullOrUndefined)(e))return null;i.i(s.isNullOrUndefined)(t)&&(t=0);var n=this.getFields(t);return{text:e[n.text],id:e[n.id],items:e[n.child],separator:e[n.separator],iconCss:e[n.iconCss],url:e[n.url]}},t.prototype.getPopups=function(){var e=this,t=[];return[].slice.call(document.querySelectorAll("."+v)).forEach(function(n){!i.i(s.isNullOrUndefined)(n.querySelector("."+f))&&e.getIndex(n.querySelector("."+f).id,!0).length&&t.push(n)}),t},t.prototype.isMenuVisible=function(){return this.navIdx.length>0||this.element.classList.contains("e-contextmenu")&&i.i(s.isVisible)(this.element).valueOf()},t.prototype.canOpen=function(e){var t=!0;if(this.filter){t=!1;for(var n=this.filter.split(" "),r=0,l=n.length;r<l;r++)if(i.i(s.closest)(e,"."+n[r])){t=!0;break}}return t},t.prototype.openMenu=function(e,t,n,l,o,a){var d=this;void 0===n&&(n=0),void 0===l&&(l=0),void 0===o&&(o=null),void 0===a&&(a=this.targetElement);var h=this.getWrapper();this.lItem=e;var c=""!==this.element.id?this.element.id:"menu";if(this.isMenusClosed=!1,i.i(s.isNullOrUndefined)(n)&&(n=-1),i.i(s.isNullOrUndefined)(l)&&(l=-1),e){if(this.uList=this.createItems(t[this.getField("children",this.navIdx.length-1)]),!this.isMenu&&s.Browser.isDevice){h.lastChild.style.display="none";var u={text:t[this.getField("text")].toString(),iconCss:"e-icons e-previous"},f=new y(this.items[0],"items",u,!0),m=this.createItems([f]).children[0];m.classList.add(p),this.uList.insertBefore(m,this.uList.children[0])}this.isMenu?(this.popupWrapper=this.createElement("div",{className:"e-"+this.getModuleName()+"-wrapper "+v,id:e.id+"-ej2menu-"+c+"-popup"}),this.hamburgerMode?(n=e.offsetHeight,e.appendChild(this.popupWrapper)):document.body.appendChild(this.popupWrapper),this.isNestedOrVertical=this.element.classList.contains("e-vertical")||1!==this.navIdx.length,this.popupObj=this.generatePopup(this.popupWrapper,this.uList,e,this.isNestedOrVertical),this.template&&this.renderReactTemplates(),this.hamburgerMode?this.calculateIndentSize(this.uList,e):(this.cssClass&&i.i(s.addClass)([this.popupWrapper],this.cssClass.replace(/\s+/g," ").trim().split(" ")),this.popupObj.hide()),this.hamburgerMode||this.showItemOnClick||!this.hoverDelay?this.triggerBeforeOpen(e,this.uList,t,o,0,0,"menu"):(window.clearInterval(this.timer),this.timer=window.setTimeout(function(){d.triggerBeforeOpen(e,d.uList,t,o,0,0,"menu")},this.hoverDelay))):(this.uList.style.zIndex=this.element.style.zIndex,h.appendChild(this.uList),!this.showItemOnClick&&this.hoverDelay?(window.clearInterval(this.timer),this.timer=window.setTimeout(function(){d.triggerBeforeOpen(e,d.uList,t,o,n,l,"none")},this.hoverDelay)):this.triggerBeforeOpen(e,this.uList,t,o,n,l,"none"))}else this.uList=this.element,this.uList.style.zIndex=i.i(r.getZindexPartial)(a||this.element).toString(),this.triggerBeforeOpen(e,this.uList,t,o,n,l,"none")},t.prototype.calculateIndentSize=function(e,t){var i=getComputedStyle(t),s=parseInt(i.textIndent,10);this.navIdx.length<2&&!t.classList.contains("e-blankicon")?s*=2:s+=s/4,e.style.textIndent=s+"px";var n=e.querySelectorAll(".e-blankicon");if(n&&n.length)for(var r=e.querySelector(".e-menu-icon"),l=getComputedStyle(r),o=parseInt(l.marginRight,10)+r.offsetWidth+s,a=0;a<n.length;a++)n[a].style.textIndent=o+"px"},t.prototype.generatePopup=function(e,t,n,l){var o=this,a=new r.Popup(e,{actionOnScroll:this.hamburgerMode?"none":"reposition",relateTo:n,collision:this.hamburgerMode?{X:"none",Y:"none"}:{X:l||this.enableRtl?"none":"flip",Y:"fit"},position:l&&!this.hamburgerMode?{X:"right",Y:"top"}:{X:"left",Y:"bottom"},targetType:"relative",enableRtl:this.enableRtl,content:t,open:function(){var e=i.i(s.select)(".e-menu-vscroll",a.element);e&&(e.style.height="inherit",e.style.maxHeight="");var t=i.i(s.select)(".e-ul",a.element);a.element.style.maxHeight="",t.focus(),o.triggerOpen(t)}});return a},t.prototype.createHeaderContainer=function(e){e=e||this.getWrapper();var t=this.createElement("span",{className:"e-"+this.getModuleName()+"-header"}),i=this.enableHtmlSanitizer?s.SanitizeHtmlHelper.sanitize(this.title):this.title,n=this.createElement("span",{className:"e-"+this.getModuleName()+"-title",innerHTML:i}),r=this.createElement("span",{className:"e-icons e-"+this.getModuleName()+"-icon",attrs:{tabindex:"0"}});t.appendChild(n),t.appendChild(r),e.insertBefore(t,this.element)},t.prototype.openHamburgerMenu=function(e){this.hamburgerMode&&this.triggerBeforeOpen(null,this.element,null,e,0,0,"hamburger")},t.prototype.closeHamburgerMenu=function(e){var t=this,i={element:this.element,parentItem:null,event:e,items:this.items,cancel:!1};this.trigger("beforeClose",i,function(i){i.cancel||(t.closeMenu(null,e),t.element.classList.add("e-hide-menu"),t.trigger("onClose",{element:t.element,parentItem:null,items:t.items}))})},t.prototype.callFit=function(e,t,s,n,l){return i.i(r.fit)(e,null,{X:t,Y:s},{top:n,left:l})},t.prototype.triggerBeforeOpen=function(e,t,n,r,l,o,d){var h=this,p=e?n[this.getField("children",this.navIdx.length-1)]:this.items,m={element:t,items:p,parentItem:n,event:r,cancel:!1,top:l,left:o,showSubMenuOn:"Auto"},v=d;this.trigger("beforeOpen",m,function(l){switch(v){case"menu":h.hamburgerMode||("Auto"!==l.showSubMenuOn&&(h.showItemOnClick=!h.defaultOption,h.showSubMenuOn=l.showSubMenuOn),h.top=l.top,h.left=l.left),h.popupWrapper.style.display="block",h.hamburgerMode||(h.popupWrapper.style.maxHeight=h.popupWrapper.getBoundingClientRect().height+"px",h.enableScrolling&&i.i(a.a)(h.createElement,h.popupWrapper,h.uList,"vscroll",h.enableRtl),h.checkScrollOffset(r)),h.hamburgerMode||h.left||h.top?(h.popupObj.collision={X:"none",Y:"none"},h.popupWrapper.style.display=""):(h.popupObj.refreshPosition(h.lItem,!0),h.left=parseInt(h.popupWrapper.style.left,10),h.top=parseInt(h.popupWrapper.style.top,10),h.enableRtl&&(h.left=h.isNestedOrVertical?h.left-h.popupWrapper.offsetWidth-h.lItem.parentElement.offsetWidth+2:h.left-h.popupWrapper.offsetWidth+h.lItem.offsetWidth),h.template&&(h.isReact||h.isAngular)?requestAnimationFrame(function(){h.collision(),h.popupWrapper.style.display=""}):(h.collision(),h.popupWrapper.style.display=""));break;case"none":h.top=l.top,h.left=l.left;break;case"hamburger":l.cancel||(h.element.classList.remove("e-hide-menu"),h.triggerOpen(h.element))}if("hamburger"!==v)if(l.cancel)h.isMenu?(h.popupObj.destroy(),i.i(s.detach)(h.popupWrapper)):t.className.indexOf("e-ul")>-1&&i.i(s.detach)(t),h.navIdx.pop();else if(h.isMenu)if(h.hamburgerMode)h.popupWrapper.style.top=h.top+"px",h.popupWrapper.style.left="0px",h.toggleAnimation(h.popupWrapper);else{h.setBlankIconStyle(h.popupWrapper),h.wireKeyboardEvent(h.popupWrapper),i.i(s.rippleEffect)(h.popupWrapper,{selector:"."+f}),h.popupWrapper.style.left=h.left+"px",h.popupWrapper.style.top=h.top+"px";var o="None"!==h.animationSettings.effect?{name:h.animationSettings.effect,duration:h.animationSettings.duration,timingFunction:h.animationSettings.easing}:null;h.popupObj.show(o,h.lItem)}else h.setBlankIconStyle(h.uList),h.setPosition(h.lItem,h.uList,h.top,h.left),h.toggleAnimation(h.uList);if("right"===h.keyType){var d=h.getUlByNavIdx();if(e.classList.remove(c),h.isMenu&&1===h.navIdx.length&&h.removeLIStateByClass([u],[h.getWrapper()]),e.classList.add(u),"enter"===h.action){var p={element:e,item:n,event:r};h.trigger("select",p)}e.focus(),d=h.getUlByNavIdx();var m=h.isValidLI(d.children[0],0,h.action);d.children[m].classList.add(c),d.children[m].focus()}})},t.prototype.collision=function(){var e;if(e=i.i(r.isCollide)(this.popupWrapper,null,this.left,this.top),(this.isNestedOrVertical||this.enableRtl)&&(e.indexOf("right")>-1||e.indexOf("left")>-1)){this.popupObj.collision.X="none";var t=i.i(s.closest)(this.lItem,".e-"+this.getModuleName()+"-wrapper").offsetWidth;this.left=this.enableRtl?i.i(r.calculatePosition)(this.lItem,this.isNestedOrVertical?"right":"left","top").left:this.left-this.popupWrapper.offsetWidth-t+2}e=i.i(r.isCollide)(this.popupWrapper,null,this.left,this.top),(e.indexOf("left")>-1||e.indexOf("right")>-1)&&(this.left=this.callFit(this.popupWrapper,!0,!1,this.top,this.left).left),this.popupWrapper.style.left=this.left+"px"},t.prototype.setBlankIconStyle=function(e){var t=[].slice.call(e.getElementsByClassName("e-blankicon"));if(t.length){var i=e.querySelector(".e-menu-item:not(.e-blankicon):not(.e-separator)");if(i){var s=i.querySelector(".e-menu-icon");if(s){var n=this.enableRtl?{padding:"paddingRight",margin:"marginLeft"}:{padding:"paddingLeft",margin:"marginRight"},r=getComputedStyle(s),l=parseInt(r.fontSize,10);parseInt(r.width,10)&&parseInt(r.width,10)>l&&(l=parseInt(r.width,10));var o=l+parseInt(r[n.margin],10)+parseInt(getComputedStyle(i)[n.padding],10)+"px";t.forEach(function(e){e.style[n.padding]=o})}}}},t.prototype.checkScrollOffset=function(e){var t=this.getWrapper();if(t.children[0].classList.contains("e-menu-hscroll")&&1===this.navIdx.length){var n=i.i(s.isNullOrUndefined)(e)?this.element:i.i(s.closest)(e.target,"."+f),r=i.i(s.select)(".e-hscroll-bar",t);r.scrollLeft>n.offsetLeft&&(r.scrollLeft-=r.scrollLeft-n.offsetLeft);var l=r.scrollLeft+r.offsetWidth,o=n.offsetLeft+n.offsetWidth;l<o&&(r.scrollLeft+=o-l)}},t.prototype.setPosition=function(e,t,n,l){if(this.toggleVisiblity(t),t===this.element||l>-1&&n>-1){var o=i.i(r.isCollide)(t,null,l,n);if(o.indexOf("right")>-1&&(l-=t.offsetWidth),o.indexOf("bottom")>-1){var a=this.callFit(t,!1,!0,n,l);if((n=a.top-20)<0){var d=pageYOffset+document.documentElement.clientHeight-t.getBoundingClientRect().height;d>-1&&(n=d)}}if(o=i.i(r.isCollide)(t,null,l,n),o.indexOf("left")>-1){var a=this.callFit(t,!0,!1,n,l);l=a.left}}else if(s.Browser.isDevice)n=Number(this.element.style.top.replace("px","")),l=Number(this.element.style.left.replace("px",""));else{var h=this.enableRtl?"left":"right",a=i.i(r.calculatePosition)(e,h,"top");n=a.top,l=a.left;var o=i.i(r.isCollide)(t,null,this.enableRtl?l-t.offsetWidth:l,n),c=o.indexOf("left")>-1||o.indexOf("right")>-1;c&&(a=i.i(r.calculatePosition)(e,this.enableRtl?"right":"left","top"),l=a.left),(this.enableRtl||c)&&(l=this.enableRtl&&c?l:l-t.offsetWidth),o.indexOf("bottom")>-1&&(a=this.callFit(t,!1,!0,n,l),n=a.top)}this.toggleVisiblity(t,!1),t.style.top=n+"px",t.style.left=l+"px"},t.prototype.toggleVisiblity=function(e,t){void 0===t&&(t=!0),e.style.visibility=t?"hidden":"",e.style.display=t?"block":"none"},t.prototype.createItems=function(e){var t=this,r=this.navIdx?this.navIdx.length:0,l=this.getFields(r),o=this.hasField(e,this.getField("iconCss",r)),a={showIcon:o,moduleName:"menu",fields:l,template:this.template,itemNavigable:!0,itemCreating:function(e){e.curData[e.fields[l.id]]||(e.curData[e.fields[l.id]]=i.i(s.getUniqueID)("menuitem")),e.curData.htmlAttributes={role:"menuitem",tabindex:"-1"},t.isMenu&&!e.curData[t.getField("separator",r)]&&(e.curData.htmlAttributes["aria-label"]=e.curData[e.fields.text]?e.curData[e.fields.text]:e.curData[e.fields.id]),""===e.curData[e.fields[l.iconCss]]&&(e.curData[e.fields[l.iconCss]]=null)},itemCreated:function(e){if(e.curData[t.getField("separator",r)]&&(e.item.classList.add("e-separator"),e.item.setAttribute("role","separator")),!o||e.curData[e.fields.iconCss]||e.curData[t.getField("separator",r)]||e.item.classList.add("e-blankicon"),e.curData[e.fields.child]&&e.curData[e.fields.child].length){var i=t.createElement("span",{className:"e-icons e-caret"});e.item.appendChild(i),e.item.setAttribute("aria-haspopup","true"),e.item.setAttribute("aria-expanded","false"),e.item.classList.add("e-menu-caret-icon")}t.isMenu&&t.template&&(e.item.setAttribute("id",e.curData[e.fields.id].toString()),e.item.removeAttribute("data-uid"),e.item.classList.contains("e-level-1")&&e.item.classList.remove("e-level-1"),e.item.classList.contains("e-has-child")&&e.item.classList.remove("e-has-child"),e.item.removeAttribute("aria-level"));var s={item:e.curData,element:e.item};t.trigger("beforeItemRender",s)}};this.setProperties({items:this.items},!0),this.isMenu&&(a.templateID=this.element.id+"Template");var d=n.ListBase.createList(this.createElement,e,a,!this.template,this);return d.setAttribute("tabindex","0"),this.isMenu?d.setAttribute("role","menu"):d.setAttribute("role","menubar"),d},t.prototype.moverHandler=function(e){var t=e.target;this.liTrgt=t;var n=this.getLI(t),r=n?i.i(s.closest)(n,".e-"+this.getModuleName()+"-wrapper"):this.getWrapper(),l=this.getWrapper(),o=new RegExp("-ej2menu-(.*)-popup"),a=!1;if(r){if((""!==r.id?o.exec(r.id)[1]:r.querySelector("ul").id)!==this.element.id){if(this.removeLIStateByClass([c,u],[this.getWrapper()]),!this.navIdx.length)return;a=!0}n&&i.i(s.closest)(n,".e-"+this.getModuleName()+"-wrapper")&&!a?(this.removeLIStateByClass([c],this.isMenu?[r].concat(this.getPopups()):[r]),this.removeLIStateByClass([c],this.isMenu?[l].concat(this.getPopups()):[l]),n.classList.add(c),this.showItemOnClick||this.clickHandler(e)):this.isMenu&&this.showItemOnClick&&!a&&this.removeLIStateByClass([c],[r].concat(this.getPopups())),this.isMenu&&(this.showItemOnClick||t.parentElement===r||i.i(s.closest)(t,".e-"+this.getModuleName()+"-popup")||n&&(!n||this.getIndex(n.id,!0).length)||"Hover"===this.showSubMenuOn?a&&!this.showItemOnClick&&this.navIdx.length&&(this.isClosed=!0,this.closeMenu(null,e)):(this.removeLIStateByClass([c],[r]),this.navIdx.length&&(this.isClosed=!0,this.closeMenu(null,e))),this.isClosed||this.removeStateWrapper(),this.isClosed=!1)}},t.prototype.removeStateWrapper=function(){if(this.liTrgt){var e=i.i(s.closest)(this.liTrgt,".e-menu-vscroll");"DIV"===this.liTrgt.tagName&&e&&this.removeLIStateByClass([c,u],[e])}},t.prototype.removeLIStateByClass=function(e,t){for(var n,r=0;r<t.length;r++)!function(r){e.forEach(function(e){(n=i.i(s.select)("."+e,t[r]))&&n.classList.remove(e)})}(r)},t.prototype.getField=function(e,t){void 0===t&&(t=0);var i=this.fields[""+e];return"string"==typeof i?i:i[t]?i[t].toString():i[i.length-1].toString()},t.prototype.getFields=function(e){return void 0===e&&(e=0),{id:this.getField("itemId",e),iconCss:this.getField("iconCss",e),text:this.getField("text",e),url:this.getField("url",e),child:this.getField("children",e),separator:this.getField("separator",e)}},t.prototype.hasField=function(e,t){for(var i=0,s=e.length;i<s;i++)if(e[i][""+t])return!0;return!1},t.prototype.menuHeaderClickHandler=function(e){i.i(s.closest)(e.target,".e-menu-wrapper").querySelector("ul.e-menu-parent").id===this.element.id&&(this.element.className.indexOf("e-hide-menu")>-1?this.openHamburgerMenu(e):this.closeHamburgerMenu(e))},t.prototype.clickHandler=function(e){if(this.isTapHold)this.isTapHold=!1;else{var t=this.getWrapper(),n=e.target,r=this.cli=this.getLI(n),l=new RegExp("-ej2menu-(.*)-popup"),o=r?i.i(s.closest)(r,".e-"+this.getModuleName()+"-wrapper"):null,a=r&&o&&(this.isMenu?this.getIndex(r.id,!0).length>0:t.firstElementChild.id===o.firstElementChild.id);if(s.Browser.isDevice&&this.isMenu&&(this.removeLIStateByClass([c],[t].concat(this.getPopups())),this.mouseDownHandler(e)),r&&o&&this.isMenu){var d=o.id?l.exec(o.id)[1]:o.querySelector(".e-menu-parent").id;if(this.element.id!==d)return}if(a&&"click"===e.type&&!r.classList.contains(p)){this.setLISelected(r);var h=this.getIndex(r.id,!0),m=this.getItem(h),g={element:r,item:m,event:e};this.trigger("select",g)}if(a&&("mouseover"===e.type||s.Browser.isDevice||this.showItemOnClick)){var y=void 0;if(r.classList.contains(p)){y=t.children[this.navIdx.length-1],this.toggleAnimation(y);var b=this.getLIByClass(y,u);b&&b.classList.remove(u),i.i(s.detach)(r.parentNode),this.navIdx.pop()}else if(!r.classList.contains("e-separator")){this.showSubMenu=!0;var C=r.parentNode;if(this.cliIdx=this.getIdx(C,r),this.isMenu||!s.Browser.isDevice){var x=this.isMenu?Array.prototype.indexOf.call([t].concat(this.getPopups()),i.i(s.closest)(C,".e-"+this.getModuleName()+"-wrapper")):this.getIdx(t,C);if(this.navIdx[x]===this.cliIdx&&(this.showSubMenu=!1),x!==this.navIdx.length&&("mouseover"!==e.type||this.showSubMenu)){var b=this.getLIByClass(C,u);b&&b.classList.remove(u),this.isClosed=!0,this.keyType="click",this.showItemOnClick&&this.setLISelected(r),this.closeMenu(x+1,e),this.showItemOnClick&&this.setLISelected(r)}}this.isClosed||this.afterCloseMenu(e),this.isClosed=!1}}else if(this.isMenu&&"DIV"===n.tagName&&this.navIdx.length&&i.i(s.closest)(n,".e-menu-vscroll")){var E=i.i(s.closest)(n,"."+v),N=Array.prototype.indexOf.call(this.getPopups(),E)+1;N<this.navIdx.length&&(this.closeMenu(N+1,e),E&&this.removeLIStateByClass([c,u],[E]))}else this.isMenu&&this.hamburgerMode&&"SPAN"===n.tagName&&n.classList.contains("e-menu-icon")?this.menuHeaderClickHandler(e):"UL"===n.tagName&&(this.isMenu?!n.parentElement.classList.contains("e-menu-wrapper")||this.getIndex(n.querySelector("."+f).id,!0).length:n.parentElement===t)||(r||this.removeLIStateByClass([u],[t]),r&&r.querySelector(".e-caret")||this.closeMenu(null,e))}},t.prototype.afterCloseMenu=function(e){var t;if(this.showSubMenu){t=this.showItemOnClick&&0===this.navIdx.length?i.i(s.closest)(e.target,".e-menu-parent.e-control"):i.i(s.closest)(this.element,".e-menu-parent.e-control");var n=this.navIdx.concat(this.cliIdx),r=this.getItem(n);if(r&&r[this.getField("children",n.length-1)]&&r[this.getField("children",n.length-1)].length?(("mouseover"===e.type||s.Browser.isDevice&&this.isMenu)&&this.setLISelected(this.cli),(!this.hamburgerMode&&t||this.hamburgerMode&&"false"===this.cli.getAttribute("aria-expanded"))&&(this.cli.setAttribute("aria-expanded","true"),this.navIdx.push(this.cliIdx),this.openMenu(this.cli,r,null,null,e))):"mouseover"!==e.type&&this.closeMenu(null,e),!t){var l=this.getUlByNavIdx(),o=this.getLIByClass(l,u);o&&(o.setAttribute("aria-expanded","false"),o.classList.remove(u))}}this.keyType=""},t.prototype.setLISelected=function(e){var t=this.getLIByClass(e.parentElement,u);t&&t.classList.remove(u),this.isMenu||e.classList.remove(c),e.classList.add(u)},t.prototype.getLIByClass=function(e,t){for(var i=0,s=e.children.length;i<s;i++)if(e.children[i].classList.contains(t))return e.children[i];return null},t.prototype.getItemIndex=function(e,t){var i;i="string"==typeof e?e:e.id;var s=!1!==t;return this.getIndex(i,s)},t.prototype.setItem=function(e,t,i){var s;s=i?t||e.id:t||e.text;var n=this.getIndex(s,i),r=this.getItem(n);Object.assign(r,e)},t.prototype.getItem=function(e){e=e.slice();var t=e.pop();return this.getItems(e)[t]},t.prototype.getItems=function(e){for(var t=this.items,i=0;i<e.length;i++)t=t[e[i]][this.getField("children",i)];return t},t.prototype.setItems=function(e,t){var i=this.getItems(t);i.splice(0,i.length);for(var s=0;s<e.length;s++)i.splice(s,0,e[s])},t.prototype.getIdx=function(e,t,i){void 0===i&&(i=!0);var s=Array.prototype.indexOf.call(e.children,t);return i&&e.children[0].classList.contains(p)&&s--,s},t.prototype.getLI=function(e){return"LI"===e.tagName&&e.classList.contains("e-menu-item")?e:i.i(s.closest)(e,"li.e-menu-item")},t.prototype.updateItemsByNavIdx=function(){for(var e=this.items,t=0,i=0;i<this.navIdx.length&&(e=e[i].items);i++){t++;var s=this.getUlByNavIdx(t);if(!s)break;this.updateItem(s,e)}},t.prototype.removeChildElement=function(e){for(;e.firstElementChild;)e.removeChild(e.firstElementChild);return e},t.prototype.onPropertyChanged=function(e,t){for(var n=this,r=this.getWrapper(),d=this,h=0,c=Object.keys(e);h<c.length;h++){var p=c[h];!function(h){switch(h){case"cssClass":t.cssClass&&i.i(s.removeClass)([r],t.cssClass.split(" ")),e.cssClass&&i.i(s.addClass)([r],e.cssClass.replace(/\s+/g," ").trim().split(" "));break;case"enableRtl":r.classList.toggle("e-rtl");break;case"showItemOnClick":d.unWireEvents(),d.showItemOnClick=e.showItemOnClick,d.wireEvents();break;case"enableScrolling":if(e.enableScrolling){var c;d.element.classList.contains("e-vertical")?i.i(a.a)(d.createElement,r,d.element,"vscroll",d.enableRtl):i.i(a.a)(d.createElement,r,d.element,"hscroll",d.enableRtl),d.getPopups().forEach(function(e){c=i.i(s.select)(".e-ul",e),i.i(a.a)(n.createElement,e,c,"vscroll",n.enableRtl)})}else{var p=r.children[0];d.element.classList.contains("e-vertical")?i.i(a.b)(i.i(s.getInstance)(p,o.a),p):i.i(a.b)(i.i(s.getInstance)(p,l.a),p),r.style.overflow="",r.appendChild(d.element),d.getPopups().forEach(function(e){p=e.children[0],i.i(a.b)(i.i(s.getInstance)(p,o.a),p),e.style.overflow=""})}break;case"items":var u=void 0,f=void 0,m=void 0;if(d.isReact&&d.template&&d.clearTemplate(["template"]),Object.keys(t.items).length)for(var v=Object.keys(e.items),g=0;g<v.length;g++)f=d.getChangedItemIndex(e,[],Number(v[g])),f.length<=d.getWrapper().children.length&&(u=f.pop(),m=d.getItems(f),d.insertAfter([m[u]],m[u].text),d.removeItem(m,f,u),d.setItems(m,f)),f.length=0;else{if(d.updateItem(d.element,d.items),d.enableScrolling&&d.element.parentElement.classList.contains("e-custom-scroll")&&(d.element.classList.contains("e-vertical")?i.i(a.a)(d.createElement,r,d.element,"vscroll",d.enableRtl):i.i(a.a)(d.createElement,r,d.element,"hscroll",d.enableRtl)),!d.hamburgerMode)for(var g=1,y=r.childElementCount;g<y;g++)i.i(s.detach)(r.lastElementChild);d.navIdx=[]}}}(p)}},t.prototype.updateItem=function(e,t){if(i.i(s.isBlazor)()&&!this.isMenu)e=this.removeChildElement(e);else{if(this.enableScrolling){var n=this.getWrapper(),r=n.children[0];this.element.classList.contains("e-vertical")?i.i(a.b)(i.i(s.getInstance)(r,o.a),r):i.i(a.b)(i.i(s.getInstance)(r,l.a),r)}e.innerHTML=""}[].slice.call(this.createItems(t).children).forEach(function(t){e.appendChild(t)})},t.prototype.getChangedItemIndex=function(e,t,i){t.push(i);var s=Object.keys(e.items[i]).pop();if("items"===s){var n=e.items[i],r=Object.keys(n.items).pop();r&&this.getChangedItemIndex(n,t,Number(r))}else"isParentArray"===s&&t.length>1&&t.pop();return t},t.prototype.removeItem=function(e,t,n){e.splice(n,1);var r=this.getWrapper().children;t.length<r.length&&i.i(s.detach)(r[t.length].children[n])},t.prototype.unWireEvents=function(e){void 0===e&&(e=this.target);var t=this.getWrapper();if(e){for(var n=void 0,l=void 0,o=i.i(s.selectAll)(e),a=0,d=o.length;a<d;a++)n=o[a],this.isMenu?s.EventHandler.remove(n,"click",this.menuHeaderClickHandler):s.Browser.isIos?(l=i.i(s.getInstance)(n,s.Touch))&&l.destroy():s.EventHandler.remove(n,"contextmenu",this.cmenuHandler);if(!this.isMenu){s.EventHandler.remove(this.targetElement,"scroll",this.scrollHandler);for(var h=0,c=i.i(r.getScrollableParent)(this.targetElement);h<c.length;h++){var p=c[h];s.EventHandler.remove(p,"scroll",this.scrollHandler)}}}s.Browser.isDevice||(s.EventHandler.remove(this.isMenu?document:t,"mouseover",this.delegateMoverHandler),s.EventHandler.remove(document,"mousedown",this.delegateMouseDownHandler)),s.EventHandler.remove(document,"click",this.delegateClickHandler),this.unWireKeyboardEvent(t),this.rippleFn()},t.prototype.unWireKeyboardEvent=function(e){var t=i.i(s.getInstance)(e,s.KeyboardEvents);t&&t.destroy()},t.prototype.toggleAnimation=function(e,t){var i=this;void 0===t&&(t=!0);var s,n;"None"!==this.animationSettings.effect&&t?this.animation.animate(e,{name:this.animationSettings.effect,duration:this.animationSettings.duration,timingFunction:this.animationSettings.easing,begin:function(e){i.hamburgerMode?(n=e.element.parentElement,e.element.style.position="absolute",s=n.offsetHeight,e.element.style.maxHeight=e.element.offsetHeight+"px",n.style.maxHeight=""):(e.element.style.display="block",e.element.style.maxHeight=e.element.getBoundingClientRect().height+"px")},progress:function(e){i.hamburgerMode&&(n.style.minHeight=s+e.element.offsetHeight+"px")},end:function(e){i.hamburgerMode?(e.element.style.position="",e.element.style.maxHeight="",n.style.minHeight="",e.element.style.top="0px",e.element.children[0].focus(),i.triggerOpen(e.element.children[0])):i.end(e.element,t)}}):this.end(e,t)},t.prototype.triggerOpen=function(e){var t=this.navIdx.length?this.getItem(this.navIdx):null,i={element:e,parentItem:t,items:t?t.items:this.items};this.trigger("onOpen",i)},t.prototype.end=function(e,t){if(t)if(e.style.display="block",e.style.maxHeight="",this.triggerOpen(e),e.querySelector("."+c))e.querySelector("."+c).focus();else{var n=this.getWrapper().children[this.getIdx(this.getWrapper(),e)-1];this.currentTarget?this.currentTarget.classList.contains("e-numerictextbox")||this.currentTarget.classList.contains("e-textbox")||"INPUT"===this.currentTarget.tagName||(n?n.querySelector("."+u).focus():this.element.focus()):n?n.querySelector("."+u).focus():this.element.focus()}else if(e===this.element){var r=this.getLIByClass(this.element,c);r&&r.classList.remove(c);var l=this.getLIByClass(this.element,u);l&&l.classList.remove(u),e.style.display="none"}else i.i(s.detach)(e)},t.prototype.getPersistData=function(){return""},t.prototype.getWrapper=function(){return i.i(s