{"version":3,"sources":["kendo.menu.js"],"names":["f","define","$","undefined","getEffectDirection","direction","root","split","replace","parseDirection","isRtl","output","origin","position","horizontal","test","kendo","directions","reverse","join","contains","parent","child","e","updateItemClasses","item","addClass","children","IMG","IMAGE","LINK","filter","DEFAULTSTATE","empty","append","DISABLEDSTATE","removeAttr","attr","length","contents","this","nodeName","match","excludedNodesRegExp","nodeType","trim","nodeValue","wrapAll","updateArrow","updateFirstLast","find","remove","each","hasClass","MENU","removeClass","FIRST","LAST","ContextMenu","window","ui","activeElement","_activeElement","touch","support","mobileOS","MOUSEDOWN","CLICK","extend","proxy","template","keys","Widget","NS","OPEN","CLOSE","TIMER","SELECT","ZINDEX","ACTIVATE","DEACTIVATE","POINTERDOWN","pointers","msPointers","allPointers","MOUSEENTER","MOUSELEAVE","mobile","DOCUMENT_ELEMENT","document","documentElement","KENDOPOPUP","HOVERSTATE","FOCUSEDSTATE","SELECTEDSTATE","menuSelector","groupSelector","popupSelector","allItemsSelector","disabledSelector","itemSelector","linkSelector","exclusionSelector","nextSelector","lastSelector","templateSelector","touchPointerTypes","2","templates","content","group","itemWrapper","image","arrow","sprite","rendering","wrapperCssClass","result","index","enabled","firstLevel","cssClass","hasOwnProperty","selected","itemCssAttributes","attributes","imageCssAttributes","imageAttr","contentCssAttributes","contentAttr","defaultClasses","textClass","textAttributes","url","arrowClass","text","encoded","htmlEncode","tag","groupAttributes","expanded","groupCssClass","Menu","init","element","options","that","fn","call","wrapper","_initData","_updateClasses","_animations","nextItemZIndex","_tabindex","_focusProxy","_focusHandler","on","_click","_keydown","_focus","_preventClose","_removeHoverItem","_checkActiveElement","_mouseenter","_mouseleave","_toggleHover","openOnClick","clicked","_documentClickHandler","_documentClick","click","id","_ariaId","format","notify","events","name","animation","open","duration","close","orientation","closeOnClick","hoverDelay","popupCollision","dataSource","angular","elements","setOptions","destroy","off","unbind","enable","_toggleDisabled","disable","referenceItem","inserted","_insert","items","add","insertBefore","before","insertAfter","after","groups","plain","groupData","isPlainObject","renderGroup","appendTo","isArray","map","value","idx","get","renderItem","charAt","container","parentsUntil","eq","siblings","popup","data","li","clearTimeout","setTimeout","windowHeight","setScrolling","parentHorizontal","effects","openEffects","ul","_triggerEvent","type","height","css","maxHeight","_outerHeight","getShadows","bottom","overflow","browser","msie","version","kendoPopup","activate","deactivate","sender","removeData","opacity","collision","anchor","preventDefault","dontClearClose","_isRootItem","toggleClass","target","eventTarget","closest","isEnter","indexOf","parents","_closurePrevented","hoverItem","currentTarget","_hoverItem","_findRootParent","hasFocus","oldHoverItem","_oldHoverItem","nonContentGroupsSelector","matchesSelector","is","end","hasChildren","delegateTarget","originalEvent","pointerType","relatedTarget","_","sibling","stopImmediatePropagation","openHandle","childGroup","childGroupVisible","targetElement","toUpperCase","formNode","link","itemElement","href","targetHref","sampleHref","isLink","isLocalLink","isTargetLink","shouldCloseTheRootItem","parentNode","handled","enterKey","active","_moveHover","first","stopPropagation","focus","belongsToVertical","key","keyCode","ESC","_itemBelongsToVertival","_itemHasChildren","RIGHT","LEFT","DOWN","_itemDown","UP","_itemUp","_itemEsc","ENTER","SPACEBAR","TAB","menuIsVertical","nextItem","last","_itemRight","parentItem","nextAll","prevAll","_itemLeft","trigger","hide","menu","imageUrl","spriteCssClass","renderContent","subGroup","renderItems","html","i","len","_marker","guid","substring","_popup","_wire","showOn","alignToAnchor","_showProxy","userEvents","unwrap","mousedown","_closeProxy","x","y","visible","kendoStop","downEvent","_mousedownProxy","arguments","_closeTimeoutProxy","_showHandler","offset","ev","event","pageX","location","pageY","_eventOrigin","_targetChild","left","top","_closeHandler","normalClick","sameTarget","selector","containment","which","bind","UserEvents","allowSelection","_triggerProxy","copyAnchorStyles","plugin","jQuery","amd","a1","a2","a3"],"mappings":"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","file":"kendo.menu.min.js","sourcesContent":["/*!\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n*/\n(function (f, define) {\n define('kendo.menu', ['kendo.popup'], f);\n}(function () {\n var __meta__ = {\n id: 'menu',\n name: 'Menu',\n category: 'web',\n description: 'The Menu widget displays hierarchical data as a multi-level menu.',\n depends: ['popup']\n };\n (function ($, undefined) {\n var kendo = window.kendo, ui = kendo.ui, activeElement = kendo._activeElement, touch = kendo.support.touch && kendo.support.mobileOS, MOUSEDOWN = 'mousedown', CLICK = 'click', extend = $.extend, proxy = $.proxy, each = $.each, template = kendo.template, keys = kendo.keys, Widget = ui.Widget, excludedNodesRegExp = /^(ul|a|div)$/i, NS = '.kendoMenu', IMG = 'img', OPEN = 'open', MENU = 'k-menu', LINK = 'k-link', LAST = 'k-last', CLOSE = 'close', TIMER = 'timer', FIRST = 'k-first', IMAGE = 'k-image', SELECT = 'select', ZINDEX = 'zIndex', ACTIVATE = 'activate', DEACTIVATE = 'deactivate', POINTERDOWN = 'touchstart' + NS + ' MSPointerDown' + NS + ' pointerdown' + NS, pointers = kendo.support.pointers, msPointers = kendo.support.msPointers, allPointers = msPointers || pointers, MOUSEENTER = pointers ? 'pointerover' : msPointers ? 'MSPointerOver' : 'mouseenter', MOUSELEAVE = pointers ? 'pointerout' : msPointers ? 'MSPointerOut' : 'mouseleave', mobile = touch || allPointers, DOCUMENT_ELEMENT = $(document.documentElement), KENDOPOPUP = 'kendoPopup', DEFAULTSTATE = 'k-state-default', HOVERSTATE = 'k-state-hover', FOCUSEDSTATE = 'k-state-focused', DISABLEDSTATE = 'k-state-disabled', SELECTEDSTATE = 'k-state-selected', menuSelector = '.k-menu', groupSelector = '.k-menu-group', popupSelector = groupSelector + ',.k-animation-container', allItemsSelector = ':not(.k-list) > .k-item', disabledSelector = '.k-item.k-state-disabled', itemSelector = '.k-item:not(.k-state-disabled)', linkSelector = '.k-item:not(.k-state-disabled) > .k-link', exclusionSelector = ':not(.k-item.k-separator)', nextSelector = exclusionSelector + ':eq(0)', lastSelector = exclusionSelector + ':last', templateSelector = 'div:not(.k-animation-container,.k-list-container)', touchPointerTypes = {\n '2': 1,\n 'touch': 1\n }, templates = {\n content: template('
#= content(item) #
'),\n group: template(''),\n itemWrapper: template('<#= tag(item) # class=\\'#= textClass(item) #\\'#= textAttributes(item) #>' + '#= image(data) ##= sprite(item) ##= text(item) #' + '#= arrow(data) #' + ''),\n item: template('
  • ' + '#= itemWrapper(data) #' + '# if (item.items) { #' + '#= subGroup({ items: item.items, menu: menu, group: { expanded: item.expanded } }) #' + '# } else if (item.content || item.contentUrl) { #' + '#= renderContent(data) #' + '# } #' + '
  • '),\n image: template('\\'\\''),\n arrow: template(''),\n sprite: template(''),\n empty: template('')\n }, rendering = {\n wrapperCssClass: function (group, item) {\n var result = 'k-item', index = item.index;\n if (item.enabled === false) {\n result += ' k-state-disabled';\n } else {\n result += ' k-state-default';\n }\n if (group.firstLevel && index === 0) {\n result += ' k-first';\n }\n if (index == group.length - 1) {\n result += ' k-last';\n }\n if (item.cssClass) {\n result += ' ' + item.cssClass;\n }\n if (item.attr && item.attr.hasOwnProperty('class')) {\n result += ' ' + item.attr['class'];\n }\n if (item.selected) {\n result += ' ' + SELECTEDSTATE;\n }\n return result;\n },\n itemCssAttributes: function (item) {\n var result = '';\n var attributes = item.attr || {};\n for (var attr in attributes) {\n if (attributes.hasOwnProperty(attr) && attr !== 'class') {\n result += attr + '=\"' + attributes[attr] + '\" ';\n }\n }\n return result;\n },\n imageCssAttributes: function (item) {\n var result = '';\n var attributes = item.imageAttr || {};\n if (!attributes['class']) {\n attributes['class'] = IMAGE;\n } else {\n attributes['class'] += ' ' + IMAGE;\n }\n for (var attr in attributes) {\n if (attributes.hasOwnProperty(attr)) {\n result += attr + '=\"' + attributes[attr] + '\" ';\n }\n }\n return result;\n },\n contentCssAttributes: function (item) {\n var result = '';\n var attributes = item.contentAttr || {};\n var defaultClasses = 'k-content k-group k-menu-group';\n if (!attributes['class']) {\n attributes['class'] = defaultClasses;\n } else {\n attributes['class'] += ' ' + defaultClasses;\n }\n for (var attr in attributes) {\n if (attributes.hasOwnProperty(attr)) {\n result += attr + '=\"' + attributes[attr] + '\" ';\n }\n }\n return result;\n },\n textClass: function () {\n return LINK;\n },\n textAttributes: function (item) {\n return item.url ? ' href=\\'' + item.url + '\\'' : '';\n },\n arrowClass: function (item, group) {\n var result = 'k-icon';\n if (group.horizontal) {\n result += ' k-i-arrow-s';\n } else {\n result += ' k-i-arrow-e';\n }\n return result;\n },\n text: function (item) {\n return item.encoded === false ? item.text : kendo.htmlEncode(item.text);\n },\n tag: function (item) {\n return item.url ? 'a' : 'span';\n },\n groupAttributes: function (group) {\n return group.expanded !== true ? ' style=\\'display:none\\'' : '';\n },\n groupCssClass: function () {\n return 'k-group k-menu-group';\n },\n content: function (item) {\n return item.content ? item.content : ' ';\n }\n };\n function getEffectDirection(direction, root) {\n direction = direction.split(' ')[!root + 0] || direction;\n return direction.replace('top', 'up').replace('bottom', 'down');\n }\n function parseDirection(direction, root, isRtl) {\n direction = direction.split(' ')[!root + 0] || direction;\n var output = {\n origin: [\n 'bottom',\n isRtl ? 'right' : 'left'\n ],\n position: [\n 'top',\n isRtl ? 'right' : 'left'\n ]\n }, horizontal = /left|right/.test(direction);\n if (horizontal) {\n output.origin = [\n 'top',\n direction\n ];\n output.position[1] = kendo.directions[direction].reverse;\n } else {\n output.origin[0] = direction;\n output.position[0] = kendo.directions[direction].reverse;\n }\n output.origin = output.origin.join(' ');\n output.position = output.position.join(' ');\n return output;\n }\n function contains(parent, child) {\n try {\n return $.contains(parent, child);\n } catch (e) {\n return false;\n }\n }\n function updateItemClasses(item) {\n item = $(item);\n item.addClass('k-item').children(IMG).addClass(IMAGE);\n item.children('a').addClass(LINK).children(IMG).addClass(IMAGE);\n item.filter(':not([disabled])').addClass(DEFAULTSTATE);\n item.filter('.k-separator').empty().append(' ');\n item.filter('li[disabled]').addClass(DISABLEDSTATE).removeAttr('disabled').attr('aria-disabled', true);\n if (!item.filter('[role]').length) {\n item.attr('role', 'menuitem');\n }\n if (!item.children('.' + LINK).length) {\n item.contents().filter(function () {\n return !this.nodeName.match(excludedNodesRegExp) && !(this.nodeType == 3 && !$.trim(this.nodeValue));\n }).wrapAll('');\n }\n updateArrow(item);\n updateFirstLast(item);\n }\n function updateArrow(item) {\n item = $(item);\n item.find('> .k-link > [class*=k-i-arrow]:not(.k-sprite)').remove();\n item.filter(':has(.k-menu-group)').children('.k-link:not(:has([class*=k-i-arrow]:not(.k-sprite)))').each(function () {\n var item = $(this), parent = item.parent().parent();\n item.append('');\n });\n }\n function updateFirstLast(item) {\n item = $(item);\n item.filter('.k-first:not(:first-child)').removeClass(FIRST);\n item.filter('.k-last:not(:last-child)').removeClass(LAST);\n item.filter(':first-child').addClass(FIRST);\n item.filter(':last-child').addClass(LAST);\n }\n var Menu = Widget.extend({\n init: function (element, options) {\n var that = this;\n Widget.fn.init.call(that, element, options);\n element = that.wrapper = that.element;\n options = that.options;\n that._initData(options);\n that._updateClasses();\n that._animations(options);\n that.nextItemZIndex = 100;\n that._tabindex();\n that._focusProxy = proxy(that._focusHandler, that);\n element.on(POINTERDOWN, itemSelector, that._focusProxy).on(CLICK + NS, disabledSelector, false).on(CLICK + NS, itemSelector, proxy(that._click, that)).on('keydown' + NS, proxy(that._keydown, that)).on('focus' + NS, proxy(that._focus, that)).on('focus' + NS, '.k-content', proxy(that._focus, that)).on(POINTERDOWN + ' ' + MOUSEDOWN + NS, '.k-content', proxy(that._preventClose, that)).on('blur' + NS, proxy(that._removeHoverItem, that)).on('blur' + NS, '[tabindex]', proxy(that._checkActiveElement, that)).on(MOUSEENTER + NS, itemSelector, proxy(that._mouseenter, that)).on(MOUSELEAVE + NS, itemSelector, proxy(that._mouseleave, that)).on(MOUSEENTER + NS + ' ' + MOUSELEAVE + NS + ' ' + MOUSEDOWN + NS + ' ' + CLICK + NS, linkSelector, proxy(that._toggleHover, that));\n if (options.openOnClick) {\n that.clicked = false;\n that._documentClickHandler = proxy(that._documentClick, that);\n $(document).click(that._documentClickHandler);\n }\n element.attr('role', 'menubar');\n if (element[0].id) {\n that._ariaId = kendo.format('{0}_mn_active', element[0].id);\n }\n kendo.notify(that);\n },\n events: [\n OPEN,\n CLOSE,\n ACTIVATE,\n DEACTIVATE,\n SELECT\n ],\n options: {\n name: 'Menu',\n animation: {\n open: { duration: 200 },\n close: { duration: 100 }\n },\n orientation: 'horizontal',\n direction: 'default',\n openOnClick: false,\n closeOnClick: true,\n hoverDelay: 100,\n popupCollision: undefined\n },\n _initData: function (options) {\n var that = this;\n if (options.dataSource) {\n that.angular('cleanup', function () {\n return { elements: that.element.children() };\n });\n that.element.empty();\n that.append(options.dataSource, that.element);\n that.angular('compile', function () {\n return { elements: that.element.children() };\n });\n }\n },\n setOptions: function (options) {\n var animation = this.options.animation;\n this._animations(options);\n options.animation = extend(true, animation, options.animation);\n if ('dataSource' in options) {\n this._initData(options);\n }\n this._updateClasses();\n Widget.fn.setOptions.call(this, options);\n },\n destroy: function () {\n var that = this;\n Widget.fn.destroy.call(that);\n that.element.off(NS);\n if (that._documentClickHandler) {\n $(document).unbind('click', that._documentClickHandler);\n }\n kendo.destroy(that.element);\n },\n enable: function (element, enable) {\n this._toggleDisabled(element, enable !== false);\n return this;\n },\n disable: function (element) {\n this._toggleDisabled(element, false);\n return this;\n },\n append: function (item, referenceItem) {\n referenceItem = this.element.find(referenceItem);\n var inserted = this._insert(item, referenceItem, referenceItem.length ? referenceItem.find('> .k-menu-group, > .k-animation-container > .k-menu-group') : null);\n each(inserted.items, function () {\n inserted.group.append(this);\n updateArrow(this);\n });\n updateArrow(referenceItem);\n updateFirstLast(inserted.group.find('.k-first, .k-last').add(inserted.items));\n return this;\n },\n insertBefore: function (item, referenceItem) {\n referenceItem = this.element.find(referenceItem);\n var inserted = this._insert(item, referenceItem, referenceItem.parent());\n each(inserted.items, function () {\n referenceItem.before(this);\n updateArrow(this);\n updateFirstLast(this);\n });\n updateFirstLast(referenceItem);\n return this;\n },\n insertAfter: function (item, referenceItem) {\n referenceItem = this.element.find(referenceItem);\n var inserted = this._insert(item, referenceItem, referenceItem.parent());\n each(inserted.items, function () {\n referenceItem.after(this);\n updateArrow(this);\n updateFirstLast(this);\n });\n updateFirstLast(referenceItem);\n return this;\n },\n _insert: function (item, referenceItem, parent) {\n var that = this, items, groups;\n if (!referenceItem || !referenceItem.length) {\n parent = that.element;\n }\n var plain = $.isPlainObject(item), groupData = {\n firstLevel: parent.hasClass(MENU),\n horizontal: parent.hasClass(MENU + '-horizontal'),\n expanded: true,\n length: parent.children().length\n };\n if (referenceItem && !parent.length) {\n parent = $(Menu.renderGroup({ group: groupData })).appendTo(referenceItem);\n }\n if (plain || $.isArray(item)) {\n items = $($.map(plain ? [item] : item, function (value, idx) {\n if (typeof value === 'string') {\n return $(value).get();\n } else {\n return $(Menu.renderItem({\n group: groupData,\n item: extend(value, { index: idx })\n })).get();\n }\n }));\n } else {\n if (typeof item == 'string' && item.charAt(0) != '<') {\n items = that.element.find(item);\n } else {\n items = $(item);\n }\n groups = items.find('> ul').addClass('k-menu-group').attr('role', 'menu');\n items = items.filter('li');\n items.add(groups.find('> li')).each(function () {\n updateItemClasses(this);\n });\n }\n return {\n items: items,\n group: parent\n };\n },\n remove: function (element) {\n element = this.element.find(element);\n var that = this, parent = element.parentsUntil(that.element, allItemsSelector), group = element.parent('ul:not(.k-menu)');\n element.remove();\n if (group && !group.children(allItemsSelector).length) {\n var container = group.parent('.k-animation-container');\n if (container.length) {\n container.remove();\n } else {\n group.remove();\n }\n }\n if (parent.length) {\n parent = parent.eq(0);\n updateArrow(parent);\n updateFirstLast(parent);\n }\n return that;\n },\n open: function (element) {\n var that = this, options = that.options, horizontal = options.orientation == 'horizontal', direction = options.direction, isRtl = kendo.support.isRtl(that.wrapper);\n element = that.element.find(element);\n if (/^(top|bottom|default)$/.test(direction)) {\n if (isRtl) {\n direction = horizontal ? (direction + ' left').replace('default', 'bottom') : 'left';\n } else {\n direction = horizontal ? (direction + ' right').replace('default', 'bottom') : 'right';\n }\n }\n element.siblings().find('>.k-popup:visible,>.k-animation-container>.k-popup:visible').each(function () {\n var popup = $(this).data('kendoPopup');\n if (popup) {\n popup.close(true);\n }\n });\n element.each(function () {\n var li = $(this);\n clearTimeout(li.data(TIMER));\n li.data(TIMER, setTimeout(function () {\n var ul = li.find('.k-menu-group:first:hidden'), popup;\n if (ul[0] && that._triggerEvent({\n item: li[0],\n type: OPEN\n }) === false) {\n if (!ul.find('.k-menu-group')[0] && ul.children('.k-item').length > 1) {\n var windowHeight = $(window).height(), setScrolling = function () {\n ul.css({\n maxHeight: windowHeight - (kendo._outerHeight(ul) - ul.height()) - kendo.getShadows(ul).bottom,\n overflow: 'auto'\n });\n };\n if (kendo.support.browser.msie && kendo.support.browser.version <= 7) {\n setTimeout(setScrolling, 0);\n } else {\n setScrolling();\n }\n } else {\n ul.css({\n maxHeight: '',\n overflow: ''\n });\n }\n li.data(ZINDEX, li.css(ZINDEX));\n li.css(ZINDEX, that.nextItemZIndex++);\n popup = ul.data(KENDOPOPUP);\n var root = li.parent().hasClass(MENU), parentHorizontal = root && horizontal, directions = parseDirection(direction, root, isRtl), effects = options.animation.open.effects, openEffects = effects !== undefined ? effects : 'slideIn:' + getEffectDirection(direction, root);\n if (!popup) {\n popup = ul.kendoPopup({\n activate: function () {\n that._triggerEvent({\n item: this.wrapper.parent(),\n type: ACTIVATE\n });\n },\n deactivate: function (e) {\n e.sender.element.removeData('targetTransform').css({ opacity: '' });\n that._triggerEvent({\n item: this.wrapper.parent(),\n type: DEACTIVATE\n });\n },\n origin: directions.origin,\n position: directions.position,\n collision: options.popupCollision !== undefined ? options.popupCollision : parentHorizontal ? 'fit' : 'fit flip',\n anchor: li,\n appendTo: li,\n animation: {\n open: extend(true, { effects: openEffects }, options.animation.open),\n close: options.animation.close\n },\n close: function (e) {\n var li = e.sender.wrapper.parent();\n if (!that._triggerEvent({\n item: li[0],\n type: CLOSE\n })) {\n li.css(ZINDEX, li.data(ZINDEX));\n li.removeData(ZINDEX);\n if (touch) {\n li.removeClass(HOVERSTATE);\n that._removeHoverItem();\n }\n } else {\n e.preventDefault();\n }\n }\n }).data(KENDOPOPUP);\n } else {\n popup = ul.data(KENDOPOPUP);\n popup.options.origin = directions.origin;\n popup.options.position = directions.position;\n popup.options.animation.open.effects = openEffects;\n }\n ul.removeAttr('aria-hidden');\n popup.open();\n }\n }, that.options.hoverDelay));\n });\n return that;\n },\n close: function (items, dontClearClose) {\n var that = this, element = that.element;\n items = element.find(items);\n if (!items.length) {\n items = element.find('>.k-item');\n }\n items.each(function () {\n var li = $(this);\n if (!dontClearClose && that._isRootItem(li)) {\n that.clicked = false;\n }\n clearTimeout(li.data(TIMER));\n li.data(TIMER, setTimeout(function () {\n var popup = li.find('.k-menu-group:not(.k-list-container):not(.k-calendar-container):first:visible').data(KENDOPOPUP);\n if (popup) {\n popup.close();\n popup.element.attr('aria-hidden', true);\n }\n }, that.options.hoverDelay));\n });\n return that;\n },\n _toggleDisabled: function (items, enable) {\n this.element.find(items).each(function () {\n $(this).toggleClass(DEFAULTSTATE, enable).toggleClass(DISABLEDSTATE, !enable).attr('aria-disabled', !enable);\n });\n },\n _toggleHover: function (e) {\n var target = $(kendo.eventTarget(e) || e.target).closest(allItemsSelector), isEnter = e.type == MOUSEENTER || MOUSEDOWN.indexOf(e.type) !== -1;\n if (!target.parents('li.' + DISABLEDSTATE).length) {\n target.toggleClass(HOVERSTATE, isEnter || e.type == 'mousedown' || e.type == 'click');\n }\n this._removeHoverItem();\n },\n _preventClose: function () {\n if (!this.options.closeOnClick) {\n this._closurePrevented = true;\n }\n },\n _checkActiveElement: function (e) {\n var that = this, hoverItem = $(e ? e.currentTarget : this._hoverItem()), target = that._findRootParent(hoverItem)[0];\n if (!this._closurePrevented) {\n setTimeout(function () {\n if (!document.hasFocus() || !contains(target, kendo._activeElement()) && e && !contains(target, e.currentTarget)) {\n that.close(target);\n }\n }, 0);\n }\n this._closurePrevented = false;\n },\n _removeHoverItem: function () {\n var oldHoverItem = this._hoverItem();\n if (oldHoverItem && oldHoverItem.hasClass(FOCUSEDSTATE)) {\n oldHoverItem.removeClass(FOCUSEDSTATE);\n this._oldHoverItem = null;\n }\n },\n _updateClasses: function () {\n var element = this.element, nonContentGroupsSelector = '.k-menu-init div ul', items;\n element.removeClass('k-menu-horizontal k-menu-vertical');\n element.addClass('k-widget k-reset k-header k-menu-init ' + MENU).addClass(MENU + '-' + this.options.orientation);\n element.find('li > ul').filter(function () {\n return !kendo.support.matchesSelector.call(this, nonContentGroupsSelector);\n }).addClass('k-group k-menu-group').attr('role', 'menu').attr('aria-hidden', element.is(':visible')).end().find('li > div').addClass('k-content').attr('tabindex', '-1');\n items = element.find('> li,.k-menu-group > li');\n element.removeClass('k-menu-init');\n items.each(function () {\n updateItemClasses(this);\n });\n },\n _mouseenter: function (e) {\n var that = this, element = $(e.currentTarget), hasChildren = element.children('.k-animation-container').length || element.children(groupSelector).length;\n if (e.delegateTarget != element.parents(menuSelector)[0]) {\n return;\n }\n if ((!that.options.openOnClick || that.clicked) && !touch && !((pointers || msPointers) && e.originalEvent.pointerType in touchPointerTypes && that._isRootItem(element.closest(allItemsSelector)))) {\n if (!contains(e.currentTarget, e.relatedTarget) && hasChildren) {\n that.open(element);\n }\n }\n if (that.options.openOnClick && that.clicked || mobile) {\n element.siblings().each(proxy(function (_, sibling) {\n that.close(sibling, true);\n }, that));\n }\n },\n _mouseleave: function (e) {\n var that = this, element = $(e.currentTarget), hasChildren = element.children('.k-animation-container').length || element.children(groupSelector).length;\n if (element.parentsUntil('.k-animation-container', '.k-list-container,.k-calendar-container')[0]) {\n e.stopImmediatePropagation();\n return;\n }\n if (!that.options.openOnClick && !touch && !((pointers || msPointers) && e.originalEvent.pointerType in touchPointerTypes) && !contains(e.currentTarget, e.relatedTarget || e.target) && hasChildren && !contains(e.currentTarget, kendo._activeElement())) {\n that.close(element);\n }\n },\n _click: function (e) {\n var that = this, openHandle, options = that.options, target = $(kendo.eventTarget(e)), targetElement = target[0], nodeName = target[0] ? target[0].nodeName.toUpperCase() : '', formNode = nodeName == 'INPUT' || nodeName == 'SELECT' || nodeName == 'BUTTON' || nodeName == 'LABEL', link = target.closest('.' + LINK), element = target.closest(allItemsSelector), itemElement = element[0], href = link.attr('href'), childGroup, childGroupVisible, targetHref = target.attr('href'), sampleHref = $('').attr('href'), isLink = !!href && href !== sampleHref, isLocalLink = isLink && !!href.match(/^#/), isTargetLink = !!targetHref && targetHref !== sampleHref, shouldCloseTheRootItem = options.openOnClick && childGroupVisible && that._isRootItem(element);\n while (targetElement && targetElement.parentNode != itemElement) {\n targetElement = targetElement.parentNode;\n }\n if ($(targetElement).is(templateSelector)) {\n return;\n }\n if (element.hasClass(DISABLEDSTATE)) {\n e.preventDefault();\n return;\n }\n if (!e.handled && that._triggerEvent({\n item: element[0],\n type: SELECT\n }) && !formNode) {\n e.preventDefault();\n }\n e.handled = true;\n childGroup = element.children(popupSelector);\n childGroupVisible = childGroup.is(':visible');\n if (options.closeOnClick && (!isLink || isLocalLink) && (!childGroup.length || shouldCloseTheRootItem)) {\n element.removeClass(HOVERSTATE).css('height');\n that._oldHoverItem = that._findRootParent(element);\n that.close(link.parentsUntil(that.element, allItemsSelector));\n that.clicked = false;\n if ('MSPointerUp'.indexOf(e.type) != -1) {\n e.preventDefault();\n }\n return;\n }\n if (isLink && e.enterKey) {\n link[0].click();\n }\n if ((!that._isRootItem(element) || !options.openOnClick) && !kendo.support.touch && !((pointers || msPointers) && that._isRootItem(element.closest(allItemsSelector)))) {\n return;\n }\n if (!isLink && !formNode && !isTargetLink) {\n e.preventDefault();\n }\n that.clicked = true;\n openHandle = childGroup.is(':visible') ? CLOSE : OPEN;\n if (!options.closeOnClick && openHandle == CLOSE) {\n return;\n }\n that[openHandle](element);\n },\n _documentClick: function (e) {\n if (contains(this.element[0], e.target)) {\n return;\n }\n this.clicked = false;\n },\n _focus: function (e) {\n var that = this, target = e.target, hoverItem = that._hoverItem(), active = activeElement();\n if (target != that.wrapper[0] && !$(target).is(':kendoFocusable')) {\n e.stopPropagation();\n $(target).closest('.k-content').closest('.k-menu-group').closest('.k-item').addClass(FOCUSEDSTATE);\n that.wrapper.focus();\n return;\n }\n if (active === e.currentTarget) {\n if (hoverItem.length) {\n that._moveHover([], hoverItem);\n } else if (!that._oldHoverItem) {\n that._moveHover([], that.wrapper.children().first());\n }\n }\n },\n _keydown: function (e) {\n var that = this, key = e.keyCode, hoverItem = that._oldHoverItem, target, belongsToVertical, hasChildren, isRtl = kendo.support.isRtl(that.wrapper);\n if (e.target != e.currentTarget && key != keys.ESC) {\n return;\n }\n if (!hoverItem) {\n hoverItem = that._oldHoverItem = that._hoverItem();\n }\n belongsToVertical = that._itemBelongsToVertival(hoverItem);\n hasChildren = that._itemHasChildren(hoverItem);\n if (key == keys.RIGHT) {\n target = that[isRtl ? '_itemLeft' : '_itemRight'](hoverItem, belongsToVertical, hasChildren);\n } else if (key == keys.LEFT) {\n target = that[isRtl ? '_itemRight' : '_itemLeft'](hoverItem, belongsToVertical, hasChildren);\n } else if (key == keys.DOWN) {\n target = that._itemDown(hoverItem, belongsToVertical, hasChildren);\n } else if (key == keys.UP) {\n target = that._itemUp(hoverItem, belongsToVertical, hasChildren);\n } else if (key == keys.ESC) {\n target = that._itemEsc(hoverItem, belongsToVertical);\n } else if (key == keys.ENTER || key == keys.SPACEBAR) {\n target = hoverItem.children('.k-link');\n if (target.length > 0) {\n that._click({\n target: target[0],\n preventDefault: function () {\n },\n enterKey: true\n });\n that._moveHover(hoverItem, that._findRootParent(hoverItem));\n }\n } else if (key == keys.TAB) {\n target = that._findRootParent(hoverItem);\n that._moveHover(hoverItem, target);\n that._checkActiveElement();\n return;\n }\n if (target && target[0]) {\n e.preventDefault();\n e.stopPropagation();\n }\n },\n _hoverItem: function () {\n return this.wrapper.find('.k-item.k-state-hover,.k-item.k-state-focused').filter(':visible');\n },\n _itemBelongsToVertival: function (item) {\n var menuIsVertical = this.wrapper.hasClass('k-menu-vertical');\n if (!item.length) {\n return menuIsVertical;\n }\n return item.parent().hasClass('k-menu-group') || menuIsVertical;\n },\n _itemHasChildren: function (item) {\n if (!item.length) {\n return false;\n }\n return item.children('ul.k-menu-group, div.k-animation-container').length > 0;\n },\n _moveHover: function (item, nextItem) {\n var that = this, id = that._ariaId;\n if (item.length && nextItem.length) {\n item.removeClass(FOCUSEDSTATE);\n }\n if (nextItem.length) {\n if (nextItem[0].id) {\n id = nextItem[0].id;\n }\n nextItem.addClass(FOCUSEDSTATE);\n that._oldHoverItem = nextItem;\n if (id) {\n that.element.removeAttr('aria-activedescendant');\n $('#' + id).removeAttr('id');\n nextItem.attr('id', id);\n that.element.attr('aria-activedescendant', id);\n }\n }\n },\n _findRootParent: function (item) {\n if (this._isRootItem(item)) {\n return item;\n } else {\n return item.parentsUntil(menuSelector, 'li.k-item').last();\n }\n },\n _isRootItem: function (item) {\n return item.parent().hasClass(MENU);\n },\n _itemRight: function (item, belongsToVertical, hasChildren) {\n var that = this, nextItem, parentItem;\n if (item.hasClass(DISABLEDSTATE)) {\n return;\n }\n if (!belongsToVertical) {\n nextItem = item.nextAll(nextSelector);\n if (!nextItem.length) {\n nextItem = item.prevAll(lastSelector);\n }\n } else if (hasChildren) {\n that.open(item);\n nextItem = item.find('.k-menu-group').children().first();\n } else if (that.options.orientation == 'horizontal') {\n parentItem = that._findRootParent(item);\n that.close(parentItem);\n nextItem = parentItem.nextAll(nextSelector);\n }\n if (nextItem && !nextItem.length) {\n nextItem = that.wrapper.children('.k-item').first();\n } else if (!nextItem) {\n nextItem = [];\n }\n that._moveHover(item, nextItem);\n return nextItem;\n },\n _itemLeft: function (item, belongsToVertical) {\n var that = this, nextItem;\n if (!belongsToVertical) {\n nextItem = item.prevAll(nextSelector);\n if (!nextItem.length) {\n nextItem = item.nextAll(lastSelector);\n }\n } else {\n nextItem = item.parent().closest('.k-item');\n that.close(nextItem);\n if (that._isRootItem(nextItem) && that.options.orientation == 'horizontal') {\n nextItem = nextItem.prevAll(nextSelector);\n }\n }\n if (!nextItem.length) {\n nextItem = that.wrapper.children('.k-item').last();\n }\n that._moveHover(item, nextItem);\n return nextItem;\n },\n _itemDown: function (item, belongsToVertical, hasChildren) {\n var that = this, nextItem;\n if (!belongsToVertical) {\n if (!hasChildren || item.hasClass(DISABLEDSTATE)) {\n return;\n } else {\n that.open(item);\n nextItem = item.find('.k-menu-group').children().first();\n }\n } else {\n nextItem = item.nextAll(nextSelector);\n }\n if (!nextItem.length && item.length) {\n nextItem = item.parent().children().first();\n } else if (!item.length) {\n nextItem = that.wrapper.children('.k-item').first();\n }\n that._moveHover(item, nextItem);\n return nextItem;\n },\n _itemUp: function (item, belongsToVertical) {\n var that = this, nextItem;\n if (!belongsToVertical) {\n return;\n } else {\n nextItem = item.prevAll(nextSelector);\n }\n if (!nextItem.length && item.length) {\n nextItem = item.parent().children().last();\n } else if (!item.length) {\n nextItem = that.wrapper.children('.k-item').last();\n }\n that._moveHover(item, nextItem);\n return nextItem;\n },\n _itemEsc: function (item, belongsToVertical) {\n var that = this, nextItem;\n if (!belongsToVertical) {\n return item;\n } else {\n nextItem = item.parent().closest('.k-item');\n that.close(nextItem);\n that._moveHover(item, nextItem);\n }\n return nextItem;\n },\n _triggerEvent: function (e) {\n var that = this;\n return that.trigger(e.type, {\n type: e.type,\n item: e.item\n });\n },\n _focusHandler: function (e) {\n var that = this, item = $(kendo.eventTarget(e)).closest(allItemsSelector);\n setTimeout(function () {\n that._moveHover([], item);\n if (item.children('.k-content')[0]) {\n item.parent().closest('.k-item').removeClass(FOCUSEDSTATE);\n }\n }, 200);\n },\n _animations: function (options) {\n if (options && 'animation' in options && !options.animation) {\n options.animation = {\n open: { effects: {} },\n close: {\n hide: true,\n effects: {}\n }\n };\n }\n }\n });\n extend(Menu, {\n renderItem: function (options) {\n options = extend({\n menu: {},\n group: {}\n }, options);\n var empty = templates.empty, item = options.item;\n return templates.item(extend(options, {\n image: item.imageUrl ? templates.image : empty,\n sprite: item.spriteCssClass ? templates.sprite : empty,\n itemWrapper: templates.itemWrapper,\n renderContent: Menu.renderContent,\n arrow: item.items || item.content ? templates.arrow : empty,\n subGroup: Menu.renderGroup\n }, rendering));\n },\n renderGroup: function (options) {\n return templates.group(extend({\n renderItems: function (options) {\n var html = '', i = 0, items = options.items, len = items ? items.length : 0, group = extend({ length: len }, options.group);\n for (; i < len; i++) {\n html += Menu.renderItem(extend(options, {\n group: group,\n item: extend({ index: i }, items[i])\n }));\n }\n return html;\n }\n }, options, rendering));\n },\n renderContent: function (options) {\n return templates.content(extend(options, rendering));\n }\n });\n var ContextMenu = Menu.extend({\n init: function (element, options) {\n var that = this;\n Menu.fn.init.call(that, element, options);\n that._marker = kendo.guid().substring(0, 8);\n that.target = $(that.options.target);\n that._popup();\n that._wire();\n },\n options: {\n name: 'ContextMenu',\n filter: null,\n showOn: 'contextmenu',\n orientation: 'vertical',\n alignToAnchor: false,\n target: 'body'\n },\n events: [\n OPEN,\n CLOSE,\n ACTIVATE,\n DEACTIVATE,\n SELECT\n ],\n setOptions: function (options) {\n var that = this;\n Menu.fn.setOptions.call(that, options);\n that.target.off(that.showOn + NS + that._marker, that._showProxy);\n if (that.userEvents) {\n that.userEvents.destroy();\n }\n that.target = $(that.options.target);\n if (options.orientation && that.popup.wrapper[0]) {\n that.popup.element.unwrap();\n }\n that._wire();\n Menu.fn.setOptions.call(this, options);\n },\n destroy: function () {\n var that = this;\n that.target.off(that.options.showOn + NS + that._marker);\n DOCUMENT_ELEMENT.off(kendo.support.mousedown + NS + that._marker, that._closeProxy);\n if (that.userEvents) {\n that.userEvents.destroy();\n }\n Menu.fn.destroy.call(that);\n },\n open: function (x, y) {\n var that = this;\n x = $(x)[0];\n if (contains(that.element[0], $(x)[0])) {\n Menu.fn.open.call(that, x);\n } else {\n if (that._triggerEvent({\n item: that.element,\n type: OPEN\n }) === false) {\n if (that.popup.visible() && that.options.filter) {\n that.popup.close(true);\n that.popup.element.kendoStop(true);\n }\n if (y !== undefined) {\n that.popup.wrapper.hide();\n that.popup.open(x, y);\n } else {\n that.popup.options.anchor = (x ? x : that.popup.anchor) || that.target;\n that.popup.element.kendoStop(true);\n that.popup.open();\n }\n DOCUMENT_ELEMENT.off(that.popup.downEvent, that.popup._mousedownProxy);\n DOCUMENT_ELEMENT.on(kendo.support.mousedown + NS + that._marker, that._closeProxy);\n }\n }\n return that;\n },\n close: function () {\n var that = this;\n if (contains(that.element[0], $(arguments[0])[0])) {\n Menu.fn.close.call(that, arguments[0]);\n } else {\n if (that.popup.visible()) {\n if (that._triggerEvent({\n item: that.element,\n type: CLOSE\n }) === false) {\n that.popup.close();\n DOCUMENT_ELEMENT.off(kendo.support.mousedown + NS, that._closeProxy);\n that.unbind(SELECT, that._closeTimeoutProxy);\n }\n }\n }\n },\n _showHandler: function (e) {\n var ev = e, offset, that = this, options = that.options;\n if (e.event) {\n ev = e.event;\n ev.pageX = e.x.location;\n ev.pageY = e.y.location;\n }\n if (contains(that.element[0], e.relatedTarget || e.target)) {\n return;\n }\n that._eventOrigin = ev;\n ev.preventDefault();\n ev.stopImmediatePropagation();\n that.element.find('.' + FOCUSEDSTATE).removeClass(FOCUSEDSTATE);\n if (options.filter && kendo.support.matchesSelector.call(ev.currentTarget, options.filter) || !options.filter) {\n if (options.alignToAnchor) {\n that.popup.options.anchor = ev.currentTarget;\n that.open(ev.currentTarget);\n } else {\n that.popup.options.anchor = ev.currentTarget;\n if (that._targetChild) {\n offset = that.target.offset();\n that.open(ev.pageX - offset.left, ev.pageY - offset.top);\n } else {\n that.open(ev.pageX, ev.pageY);\n }\n }\n }\n },\n _closeHandler: function (e) {\n var that = this, target = $(e.relatedTarget || e.target), sameTarget = target.closest(that.target.selector)[0] == that.target[0], children = target.closest(itemSelector).children(popupSelector), containment = contains(that.element[0], target[0]);\n that._eventOrigin = e;\n var normalClick = e.which !== 3;\n if (that.popup.visible() && (normalClick && sameTarget || !sameTarget) && (that.options.closeOnClick && !children[0] && containment || !containment)) {\n if (containment) {\n this.unbind(SELECT, this._closeTimeoutProxy);\n that.bind(SELECT, that._closeTimeoutProxy);\n } else {\n that.close();\n }\n }\n },\n _wire: function () {\n var that = this, options = that.options, target = that.target;\n that._showProxy = proxy(that._showHandler, that);\n that._closeProxy = proxy(that._closeHandler, that);\n that._closeTimeoutProxy = proxy(that.close, that);\n if (target[0]) {\n if (kendo.support.mobileOS && options.showOn == 'contextmenu') {\n that.userEvents = new kendo.UserEvents(target, {\n filter: options.filter,\n allowSelection: false\n });\n target.on(options.showOn + NS + that._marker, false);\n that.userEvents.bind('hold', that._showProxy);\n } else {\n if (options.filter) {\n target.on(options.showOn + NS + that._marker, options.filter, that._showProxy);\n } else {\n target.on(options.showOn + NS + that._marker, that._showProxy);\n }\n }\n }\n },\n _triggerEvent: function (e) {\n var that = this, anchor = $(that.popup.options.anchor)[0], origin = that._eventOrigin;\n that._eventOrigin = undefined;\n return that.trigger(e.type, extend({\n type: e.type,\n item: e.item || this.element[0],\n target: anchor\n }, origin ? { event: origin } : {}));\n },\n _popup: function () {\n var that = this;\n that._triggerProxy = proxy(that._triggerEvent, that);\n that.popup = that.element.addClass('k-context-menu').kendoPopup({\n anchor: that.target || 'body',\n copyAnchorStyles: that.options.copyAnchorStyles,\n collision: that.options.popupCollision || 'fit',\n animation: that.options.animation,\n activate: that._triggerProxy,\n deactivate: that._triggerProxy\n }).data('kendoPopup');\n that._targetChild = contains(that.target[0], that.popup.element[0]);\n }\n });\n ui.plugin(Menu);\n ui.plugin(ContextMenu);\n }(window.kendo.jQuery));\n return window.kendo;\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n (a3 || a2)();\n}));"],"sourceRoot":"/source/"}