{"version":3,"file":"kendo.button.menu.min.js","names":["factory","define","amd","$","undefined$1","kendo","window","Widget","ui","NS","keys","encode","htmlEncode","extend","DOT","ID","NEXT","DISABLEDSTATE","ARIA_DISABLED","TABINDEX","CLICK","MENU_CLICK","OPEN","CLOSE","KEYDOWN","FOCUS","cssClasses","baseItem","text","icon","url","attributes","enabled","hidden","id","imageUrl","spriteCssClass","IMAGE_TEMPLATE","ref","SPRITE_TEMPLATE","ICON_TEMPLATE","TEXT_TEMPLATE","ITEM_TEMPLATE","LINK_TEMPLATE","target","findFocusableSibling","element","dir","getSibling","fn","next","prev","getter","first","last","candidate","call","focusable","length","parent","find","is","ButtonMenu","init","options","that","this","mainButton","_clickHandlers","_renderList","_initPopup","_attachEvents","_applyCssClasses","list","name","items","size","events","popup","addClass","attr","guid","appendTo","forEach","_renderListItem","bind","item","menuItem","enable","_renderItemButton","click","data","isFunction","append","_hide","itemTemplate","template","_popup","Popup","anchor","isRtl","_isRtl","toggleTarget","copyAnchorStyles","animation","open","_popupOpenHandler","close","_popupCloseHandler","activate","_popupExpandHandler","ev","trigger","preventDefault","adjustPopupWidth","width","css","on","_click","listItemKeydown","_keydown","parents","altKey","keyCode","DOWN","li","ESC","TAB","UP","SPACEBAR","ENTER","HOME","filter","END","closest","type","originalEvent","toggle","toggleClass","removeAttr","hide","show","children","destroyPopup","destroy","off","remove","cssProperties","registerPrefix","plugin","jQuery"],"sources":["kendo.button.menu.js"],"mappings":"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","sourcesContent":["(function (factory) {\n typeof define === 'function' && define.amd ? define(['kendo.core', 'kendo.popup'], factory) :\n factory();\n})((function () {\n var __meta__ = {\n id: \"button.menu\",\n name: \"ButtonMenu\",\n category: \"web\",\n description: \"The popup Menu list part of the SplitButton and the DropDownButton\",\n depends: [\"core\", \"popup\"]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n Widget = kendo.ui.Widget,\n NS = \".kendoButtonMenu\",\n ui = kendo.ui,\n keys = kendo.keys,\n encode = kendo.htmlEncode,\n extend = $.extend,\n\n DOT = \".\",\n ID = \"id\",\n NEXT = \"next\",\n PREV = \"prev\",\n DISABLEDSTATE = \"k-disabled\",\n HIDDEN = \"k-hidden\",\n\n ARIA_DISABLED = \"aria-disabled\",\n ROLE_MENU = \"menu\",\n ROLE_MENU_ITEM = \"menuitem\",\n TABINDEX = \"tabindex\",\n\n CLICK = \"click\",\n MENU_CLICK = \"menuClick\",\n OPEN = \"menuOpen\",\n CLOSE = \"menuClose\",\n KEYDOWN = \"keydown\",\n\n FOCUS = \"focus\";\n\n var cssClasses = {\n popup: \"k-menu-popup\",\n list: \"k-group k-menu-group k-reset\",\n listItem: \"k-item k-menu-item\",\n menuItem: \"k-menu-item\",\n itemText: \"k-menu-link-text\",\n item: \"k-link k-menu-link\",\n sprite: \"k-sprite\",\n image: \"k-image\",\n icon: \"k-icon\"\n };\n\n var baseItem = {\n text: null,\n icon: null,\n url: null,\n attributes: null,\n enabled: true,\n hidden: false,\n id: null,\n imageUrl: null,\n spriteCssClass: null\n };\n\n var IMAGE_TEMPLATE = function (ref) {\n var imageUrl = ref.imageUrl;\n\n return (\"\" + (imageUrl ? (\"\") : ''));\n };\n var SPRITE_TEMPLATE = function (ref) {\n var spriteCssClass = ref.spriteCssClass;\n\n return (\"\" + (spriteCssClass ? (\"\") : ''));\n };\n var ICON_TEMPLATE = function (ref) {\n var icon = ref.icon;\n\n return (\"\" + (icon ? (\"\") : ''));\n };\n var TEXT_TEMPLATE = function (ref) {\n var text = ref.text;\n\n return (\"\" + (text ? (\"\" + (encode(text)) + \"\") : ''));\n };\n\n var ITEM_TEMPLATE = function (ref) {\n var imageUrl = ref.imageUrl;\n var spriteCssClass = ref.spriteCssClass;\n var icon = ref.icon;\n var text = ref.text;\n\n return \"\" +\n \"\" + (IMAGE_TEMPLATE({ imageUrl: imageUrl })) +\n \"\" + (SPRITE_TEMPLATE({ spriteCssClass: spriteCssClass })) +\n \"\" + (ICON_TEMPLATE({ icon: icon })) +\n \"\" + (TEXT_TEMPLATE({ text: text })) +\n \"\";\n };\n\n var LINK_TEMPLATE = function (ref) {\n var url = ref.url;\n var imageUrl = ref.imageUrl;\n var spriteCssClass = ref.spriteCssClass;\n var icon = ref.icon;\n var text = ref.text;\n var attributes = ref.attributes;\n\n return \"\" +\n \"\" + (IMAGE_TEMPLATE({ imageUrl: imageUrl })) +\n \"\" + (SPRITE_TEMPLATE({ spriteCssClass: spriteCssClass })) +\n \"\" + (ICON_TEMPLATE({ icon: icon })) +\n \"\" + (TEXT_TEMPLATE({ text: text })) +\n \"\";\n };\n\n function findFocusableSibling(element, dir) {\n var getSibling = dir === NEXT ? $.fn.next : $.fn.prev;\n var getter = dir === NEXT ? $.fn.first : $.fn.last;\n var candidate = getSibling.call(element);\n var focusable = \":kendoFocusable\";\n\n if (!candidate.length) {\n candidate = getter.call(element.parent().find(DOT + cssClasses.menuItem));\n }\n\n if (candidate.is(focusable) || !candidate.length) {\n return candidate;\n }\n\n if (candidate.find(focusable).length) {\n return getter.call(candidate.find(focusable));\n }\n\n return findFocusableSibling(candidate, dir);\n }\n\n var ButtonMenu = Widget.extend({\n init: function(element, options) {\n var that = this;\n\n\n Widget.fn.init.call(that, element, options);\n\n that.mainButton = options.mainButton;\n that._clickHandlers = {};\n\n that._renderList();\n\n that._initPopup();\n\n that._attachEvents();\n\n that._applyCssClasses(that.list);\n },\n\n options: {\n name: \"ButtonMenu\",\n element: null,\n items: [],\n size: \"medium\",\n },\n\n events: [\n MENU_CLICK,\n OPEN,\n CLOSE\n ],\n\n _renderList: function() {\n var that = this,\n items = that.options.items,\n popup = that.element.addClass(cssClasses.popup),\n id = that.mainButton.attr(ID) || kendo.guid(),\n list = $(\"