| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 | 
							- 'use strict';
 
- exports.__esModule = true;
 
- var _ariaUtils = require('../aria-utils');
 
- var _ariaUtils2 = _interopRequireDefault(_ariaUtils);
 
- var _ariaSubmenu = require('./aria-submenu');
 
- var _ariaSubmenu2 = _interopRequireDefault(_ariaSubmenu);
 
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
- var MenuItem = function MenuItem(domNode) {
 
-   this.domNode = domNode;
 
-   this.submenu = null;
 
-   this.init();
 
- };
 
- MenuItem.prototype.init = function () {
 
-   this.domNode.setAttribute('tabindex', '0');
 
-   var menuChild = this.domNode.querySelector('.el-menu');
 
-   if (menuChild) {
 
-     this.submenu = new _ariaSubmenu2.default(this, menuChild);
 
-   }
 
-   this.addListeners();
 
- };
 
- MenuItem.prototype.addListeners = function () {
 
-   var _this = this;
 
-   var keys = _ariaUtils2.default.keys;
 
-   this.domNode.addEventListener('keydown', function (event) {
 
-     var prevDef = false;
 
-     switch (event.keyCode) {
 
-       case keys.down:
 
-         _ariaUtils2.default.triggerEvent(event.currentTarget, 'mouseenter');
 
-         _this.submenu && _this.submenu.gotoSubIndex(0);
 
-         prevDef = true;
 
-         break;
 
-       case keys.up:
 
-         _ariaUtils2.default.triggerEvent(event.currentTarget, 'mouseenter');
 
-         _this.submenu && _this.submenu.gotoSubIndex(_this.submenu.subMenuItems.length - 1);
 
-         prevDef = true;
 
-         break;
 
-       case keys.tab:
 
-         _ariaUtils2.default.triggerEvent(event.currentTarget, 'mouseleave');
 
-         break;
 
-       case keys.enter:
 
-       case keys.space:
 
-         prevDef = true;
 
-         event.currentTarget.click();
 
-         break;
 
-     }
 
-     if (prevDef) {
 
-       event.preventDefault();
 
-     }
 
-   });
 
- };
 
- exports.default = MenuItem;
 
 
  |