var MenubarItem=function(e,t){this.menu=t,this.domNode=e,this.popupMenu=!1,this.hasFocus=!1,this.hasHover=!1,this.isMenubarItem=!0,this.keyCode=Object.freeze({TAB:9,RETURN:13,ESC:27,SPACE:32,PAGEUP:33,PAGEDOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40})};MenubarItem.prototype.init=function(){this.domNode.tabIndex=-1,this.domNode.addEventListener("keydown",this.handleKeydown.bind(this)),this.domNode.addEventListener("focus",this.handleFocus.bind(this)),this.domNode.addEventListener("blur",this.handleBlur.bind(this)),this.domNode.addEventListener("mouseover",this.handleMouseover.bind(this)),this.domNode.addEventListener("mouseout",this.handleMouseout.bind(this));var e=this.domNode.nextElementSibling;e&&"UL"===e.tagName&&(this.popupMenu=new PopupMenu(e,this),this.popupMenu.init())},MenubarItem.prototype.handleKeydown=function(e){e.currentTarget;var t,s=e.key,o=!1;switch(e.keyCode){case this.keyCode.SPACE:case this.keyCode.RETURN:case this.keyCode.DOWN:this.popupMenu&&(this.popupMenu.open(),this.popupMenu.setFocusToFirstItem(),o=!0);break;case this.keyCode.LEFT:this.menu.setFocusToPreviousItem(this),o=!0;break;case this.keyCode.RIGHT:this.menu.setFocusToNextItem(this),o=!0;break;case this.keyCode.UP:this.popupMenu&&(this.popupMenu.open(),this.popupMenu.setFocusToLastItem(),o=!0);break;case this.keyCode.HOME:case this.keyCode.PAGEUP:this.menu.setFocusToFirstItem(),o=!0;break;case this.keyCode.END:case this.keyCode.PAGEDOWN:this.menu.setFocusToLastItem(),o=!0;break;case this.keyCode.TAB:case this.keyCode.ESC:this.popupMenu&&this.popupMenu.close(!0);break;default:1===(t=s).length&&t.match(/\S/)&&(this.menu.setFocusByFirstCharacter(this,s),o=!0)}o&&(e.stopPropagation(),e.preventDefault())},MenubarItem.prototype.setExpanded=function(e){e?this.domNode.setAttribute("aria-expanded","true"):this.domNode.setAttribute("aria-expanded","false")},MenubarItem.prototype.handleFocus=function(e){this.menu.hasFocus=!0},MenubarItem.prototype.handleBlur=function(e){this.menu.hasFocus=!1},MenubarItem.prototype.handleMouseover=function(e){this.hasHover=!0,this.popupMenu&&this.popupMenu.open()},MenubarItem.prototype.handleMouseout=function(e){this.hasHover=!1,this.popupMenu&&setTimeout(this.popupMenu.close.bind(this.popupMenu,!1),300)};