{"version":3,"file":"kendo.toolbar.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendotoolbar","js","this","$","undefined$1","kendo","window","Widget","ui","isFunction","keys","outerWidth","_outerWidth","ns","TOOLBAR","KBUTTON","BUTTON_GROUP","SPLIT_BUTTON","MENU_BUTTON","SPACER_CLASS","STATE_SELECTED","STATE_HIDDEN","FORCE_HIDDEN","GROUP_START","GROUP_END","MENU_LINK","MENU_ITEM","OVERFLOW_ANCHOR","TEMPLATE_ITEM","TOOLBAR_TOOL","MENU_LINK_TOGGLE","DROPDOWNLIST","INPUT_BUTTON","KFOCUS","TABINDEX_MINUS_1","ARIA_CHECKED","ARIA_LABEL","CHANGE","CLICK","TOGGLE","OPEN","CLOSE","FOCUS","KEYDOWN","SPACER","ROLE","SEPARATOR","OVERFLOW","TABINDEX","INPUT","SELECT","GROUP","DATA_UID","DATA_ROLE_SELECTOR","DATA_TOGGLE_SELECTOR","DATA_ROLE_BUTTONMENU","KENDO_FOCUSABLE","OVERFLOW_OPEN","OVERFLOW_CLOSE","OVERFLOW_NEVER","OVERFLOW_AUTO","OVERFLOW_ALWAYS","KENDO_UID_ATTR","attr","NOTHING","DASH","EMPTY","DOT","COMMA","ID","UID","K_DROP_DOWN_BUTTON","K_SPLIT_BUTTON","K_TOGGLE_BUTTON","K_BUTTON_GROUP","toolbar","WIDGET_TYPES","button","splitButton","dropDownButton","buttonGroup","popupButton","open","TOOLBAR_TOOLS_CLASSES","Button","ToggleButton","SplitButton","DropDownButton","ButtonGroup","ColorPicker","Switch","SAFE_COMPONENTS","POPUP_BUTTON_TEMPLATE","icon","ToolBar","extend","init","element","options","fn","call","_isRtl","support","isRtl","uid","guid","wrapper","addClass","resizable","_resizable","tools","length","items","_extendToolsOptions","_items","_attachEvents","_tabIndex","_applyCssClasses","_shrink","innerWidth","overflowAnchor","appendTo","_toggleOverflowAnchor","notify","events","name","navigateOnTab","evaluateTemplates","size","destroy","that","unbindResize","_resizeHandler","overflowMenu","find","each","i","el","popup","popupWrapper","chooser","getKendoButton","remove","children","add","_add","resize","enable","candidate","focused","_getUid","item","_getItem","component","hasClass","is","removeAttr","trigger","buttonsPopupItem","widgetInstance","closest","menuItem","getSelectedFromGroup","groupName","filter","hide","elements","parentGroupEl","templateEl","toolbarEl","parent","data","_groupVisibleButtons","addBack","_resetTabIndex","_getAllItems","first","siblings","show","removeClass","toggle","checked","parentGroup","group","_toggleIndex","index","toggleClass","toggleTools","conditions","focusable","not","elm","tool","widget","condition","toToggle","processed","_processOptions","template","overflowTemplate","type","_addTemplate","_addCustomWidget","_addDefaultTool","_addSpacer","_addSeparator","insertBefore","_addAttributes","attributes","classes","hidden","align","class","id","overflow","result","overflowComponent","_addMenuItem","componentOptions","indexOf","wrap","op","_addToolbarTool","menuitem","selected","showIcon","imageUrl","showText","text","encoded","append","last","prepend","togglable","menuButtons","forEach","buttons","click","bind","e","_onMenuItemSelect","_addPopupButton","widgetElement","popupComponent","kendoPopup","anchor","on","preventDefault","commandOn","target","value","close","separator","overflowSeparator","spacer","inputsInTemplate","html","popupRef","hasButtons","primary","themeColor","url","preventKeyNav","_attachWidgetEvents","_resetOpen","extensions","_keydown","_focusIn","_focusOut","_onClick","_onToggle","_onSelect","_onOpen","_onClose","$el","originalEvent","event","_childrenWidth","gap","parseInt","css","childrenWidth","Math","ceil","flatMap","_mapTool","parentMessages","defaultTools","style","visibility","knownUid","uidSelector","buttonsPopups","_getNextElement","direction","itemIndex","parentElement","focusableItem","visibleBtns","_hideItem","eq","menu","list","_showMenuItem","_hideMenuItem","keyCode","templateItem","isOverflowAnchor","ESC","stopPropagation","_keyDeactivateTemplate","ENTER","_keyActivateTemplate","altKey","DOWN","SPACEBAR","_keyOpenOverflow","HOME","_keyFocusFirst","END","_keyFocusLast","RIGHT","LEFT","_keyFocusNext","innerFocusable","innerWidget","visible","width","next","_mapAttributes","toolOptions","messages","property","title","command","dialog","toggleCondition","_mapComponent","componentMessages","componentPlaceholder","placeholder","dataSource","default","Object","JSON","stringify","key","ev","sender","map","Array","isArray","t","isPlainObject","deepExtend","_menuItemSelect","shouldSelect","twin","replace","current","select","setTimeout","menuEl","overflowItem","_processInner","parentUid","rootUid","every","b","selection","enabled","_renderOverflow","horizontalDirection","kendoButton","fillMode","ContextMenu","showOn","origin","position","alignToAnchor","uploadWrapper","input","one","files","off","toFocus","onResize","_resize","containerWidth","popupBtnElements","_stretch","commandElement","visibleCommands","activeElement","_showItem","itemOuterWidth","hiddenCommands","focusableItems","firstFocusable","Item","Class","OverflowButton","TemplateItem","ToolBarButton","registerComponent","cssProperties","registerPrefix","plugin","jQuery"],"sources":["kendo.toolbar.js"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.core.js'), require('kendo.splitbutton.js'), require('kendo.dropdownbutton.js'), require('kendo.buttongroup.js'), require('kendo.menu.js'), require('kendo.icons.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.core', 'kendo.splitbutton', 'kendo.dropdownbutton', 'kendo.buttongroup', 'kendo.menu', 'kendo.icons'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendotoolbar = global.kendotoolbar || {}, global.kendotoolbar.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"toolbar\",\n name: \"ToolBar\",\n category: \"web\",\n description: \"The ToolBar widget displays one or more command buttons divided into groups.\",\n depends: [ \"core\", \"splitbutton\", \"dropdownbutton\", \"buttongroup\", \"menu\", \"icons\" ]\n };\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n ui = kendo.ui,\n Widget = ui.Widget,\n isFunction = kendo.isFunction,\n keys = kendo.keys,\n outerWidth = kendo._outerWidth,\n ns = \".kendoToolBar\",\n TOOLBAR = \"toolbar\",\n KTOOLBAR = \"k-toolbar\",\n KBUTTON = \"k-button\",\n BUTTON_GROUP = \"k-button-group\",\n SPLIT_BUTTON = \"k-split-button\",\n MENU_BUTTON = \"k-menu-button\",\n POPUP_BUTTON = \"k-popup-button\",\n KSEPARATOR = \"k-separator\",\n SPACER_CLASS = \"k-spacer\",\n UPLOAD_BUTTON = \"k-upload-button\",\n POPUP = \"k-popup\",\n RESIZABLE_TOOLBAR = \"k-toolbar-resizable\",\n STATE_SELECTED = \"k-selected\",\n STATE_DISABLED = \"k-disabled\",\n STATE_HIDDEN = \"k-hidden\",\n FORCE_HIDDEN = \"k-force-hidden\",\n GROUP_START = \"k-group-start\",\n GROUP_END = \"k-group-end\",\n MENU_LINK = \"k-menu-link\",\n MENU_ITEM = \"k-menu-item\",\n OVERFLOW_ANCHOR = \"k-toolbar-overflow-button\",\n TEMPLATE_ITEM = \"k-toolbar-item\",\n TOOLBAR_TOOL = \"k-toolbar-tool\",\n MENU_LINK_TOGGLE = \"k-menu-link-toggle\",\n DROPDOWNLIST = \"k-dropdownlist\",\n INPUT_BUTTON = \"k-input-button\",\n MENU_POPUP = \"k-menu-popup\",\n KFOCUS = \"k-focus\",\n SINGLE = \"single\",\n MULTIPLE = \"multiple\",\n NONE = \"none\",\n TABINDEX_MINUS_1 = \"[tabindex=-1]\",\n\n ARIA_DISABLED = \"aria-disabled\",\n ARIA_CHECKED = \"aria-checked\",\n ARIA_LABEL = \"aria-label\",\n\n CHANGE = \"change\",\n CLICK = \"click\",\n TOGGLE = \"toggle\",\n OPEN = \"open\",\n CLOSE = \"close\",\n FOCUS = \"focus\",\n FOCUSIN = \"focusin\",\n FOCUSOUT = \"focusout\",\n KEYDOWN = \"keydown\",\n\n SPACER = \"spacer\",\n PRIMARY = \"primary\",\n ROLE = \"role\",\n SEPARATOR = \"separator\",\n OVERFLOW = \"overflow\",\n TABINDEX = \"tabindex\",\n INPUT = \"input\",\n SELECT = \"select\",\n HIDDEN = \"hidden\",\n GROUP = \"group\",\n DATA_UID = \"data-uid\",\n DATA_PARENTUID = \"data-parentuid\",\n DATA_ROLE_SELECTOR = \"[data-role]\",\n DATA_TOGGLE_SELECTOR = \"[data-toggle]\",\n DATA_ROLE_BUTTONMENU = \"[data-role=buttonmenu]\",\n\n KENDO_FOCUSABLE = \":kendoFocusable\",\n\n OVERFLOW_OPEN = \"overflowOpen\",\n OVERFLOW_CLOSE = \"overflowClose\",\n OVERFLOW_NEVER = \"never\",\n OVERFLOW_AUTO = \"auto\",\n OVERFLOW_ALWAYS = \"always\",\n\n KENDO_UID_ATTR = kendo.attr(\"uid\"),\n\n NOTHING = \"\",\n DASH = \"_\",\n EMPTY = \" \",\n DOT = \".\",\n COMMA = \",\",\n ID = \"id\",\n UID = \"uid\",\n NBSP = \" \",\n\n K_DROP_DOWN_BUTTON = \"kendoDropDownButton\",\n K_SPLIT_BUTTON = \"kendoSplitButton\",\n K_TOGGLE_BUTTON = \"kendoToggleButton\",\n K_BUTTON_GROUP = \"kendoButtonGroup\";\n\n kendo.toolbar = {};\n\n var WIDGET_TYPES = {\n button: \"Button\",\n splitButton: \"SplitButton\",\n dropDownButton: \"DropDownButton\",\n buttonGroup: \"ButtonGroup\",\n popupButton: \"Button\",\n open: \"Button\"\n };\n\n var TOOLBAR_TOOLS_CLASSES = {\n Button: \"k-toolbar-button\",\n ToggleButton: \"k-toolbar-toggle-button\",\n SplitButton: \"k-toolbar-split-button\",\n DropDownButton: \"k-toolbar-menu-button\",\n ButtonGroup: \"k-toolbar-button-group\",\n ColorPicker: \"k-toolbar-color-picker\",\n Switch: \"k-toolbar-switch\"\n };\n\n var SAFE_COMPONENTS = [ \"Button\", \"SplitButton\", \"DropDownButton\", \"ButtonGroup\", \"Switch\", \"ColorPicker\" ];\n\n var POPUP_BUTTON_TEMPLATE = ``;\n var TEMPLATE_WRAPPER = \"
\";\n var CUSTOM_WIDGET_WRAP = \"\";\n var SEPARATOR_OVERFLOW_EL = \"\";\n var SEPARATOR_EL = '
 
';\n var SPACER_EL = '
 
';\n\n var ToolBar = Widget.extend({\n init: function(element, options) {\n Widget.fn.init.call(this, element, options);\n\n options = this.options;\n\n this._isRtl = kendo.support.isRtl(element);\n this.uid = kendo.guid();\n\n element = this.wrapper = this.element;\n element.attr(KENDO_UID_ATTR, this.uid);\n element.addClass(KTOOLBAR);\n element.attr(ROLE, TOOLBAR);\n\n if (options.resizable) {\n this._resizable();\n }\n\n if (options.tools && options.tools.length > 0) {\n options.items = this._extendToolsOptions();\n }\n\n if (options.items && options.items.length) {\n this._items();\n }\n\n this._attachEvents();\n this._tabIndex();\n this._applyCssClasses();\n\n if (options.resizable) {\n this._shrink(this.element.innerWidth());\n this.overflowAnchor.appendTo(this.wrapper);\n this._toggleOverflowAnchor();\n }\n\n kendo.notify(this);\n },\n\n events: [\n CLICK,\n TOGGLE,\n OPEN,\n CLOSE,\n OVERFLOW_OPEN,\n OVERFLOW_CLOSE,\n CHANGE\n ],\n\n options: {\n name: \"ToolBar\",\n items: [],\n resizable: true,\n navigateOnTab: false,\n evaluateTemplates: false,\n size: \"medium\"\n },\n\n destroy: function() {\n var that = this;\n\n if (that.options.resizable) {\n kendo.unbindResize(that._resizeHandler);\n that.overflowMenu.destroy();\n }\n\n that.element.find(DOT + POPUP_BUTTON).each((i, el) => {\n var button = $(el).getKendoButton(),\n popup, popupWrapper, chooser;\n\n if (button) {\n chooser = button.chooser;\n popup = button.popup;\n popupWrapper = popup.wrapper;\n\n chooser.destroy();\n popup.destroy();\n popupWrapper.remove();\n }\n });\n\n kendo.destroy(that.element.children());\n\n Widget.fn.destroy.call(that);\n },\n\n add: function(options) {\n this._add(options);\n\n if (this.options.resizable) {\n this.resize(true);\n }\n },\n\n enable: function(candidate, enable) {\n var that = this,\n uid = this._getUid(candidate),\n item = this._getItem(candidate, uid),\n component = item.component,\n buttonPopup, children, focused, wrapper;\n\n if (typeof enable == \"undefined\") {\n enable = true;\n }\n\n if (item.component) {\n wrapper = component.wrapper;\n focused = wrapper.hasClass(KFOCUS) || wrapper.is(\":focus\");\n component.enable(enable);\n wrapper.find(\"[disabled]\").removeAttr(\"disabled\");\n wrapper.removeAttr(\"disabled\");\n\n if (focused) {\n wrapper.addClass(KFOCUS).trigger(FOCUS);\n }\n } else if (item.buttonsPopupItem.length > 0) {\n buttonPopup = kendo.widgetInstance(item.buttonsPopupItem.closest(DOT + MENU_POPUP));\n buttonPopup.enable(enable, item.buttonsPopupItem);\n }\n\n if (this.overflowMenu) {\n this.overflowMenu.enable(item.menuItem, enable);\n\n children = this.overflowMenu.element\n .find(\"[data-parentuid=\" + uid + \"]\");\n\n children.each((i, el) => {\n that.overflowMenu.enable($(el), enable);\n });\n }\n },\n\n getSelectedFromGroup: function(groupName) {\n return this.element.find(\"[data-group='\" + groupName + \"']\").filter(DOT + STATE_SELECTED);\n },\n\n hide: function(candidate) {\n var that = this,\n uid = this._getUid(candidate),\n item = that._getItem(candidate, uid),\n elements, parentButtonGroup, children, parentGroupEl;\n\n if (!item) {\n return;\n }\n\n elements = item.templateEl.add(item.toolbarEl).add(item.buttonsPopupItem).add(item.menuItem);\n\n elements.addClass(STATE_HIDDEN);\n elements.addClass(FORCE_HIDDEN);\n\n if (this.overflowMenu) {\n children = this.overflowMenu.element\n .find(\"[data-parentuid=\" + uid + \"]\");\n\n children.each((i, el) => {\n $(el).addClass(FORCE_HIDDEN);\n $(el).addClass(STATE_HIDDEN);\n });\n }\n\n parentGroupEl = item.toolbarEl.parent().closest(DOT + BUTTON_GROUP);\n parentButtonGroup = parentGroupEl.data(K_BUTTON_GROUP);\n\n if (parentButtonGroup) {\n if (parentGroupEl.children(\":not(.k-hidden)\").length === 0) {\n that.hide(parentGroupEl);\n } else {\n that._groupVisibleButtons(parentGroupEl);\n }\n }\n\n if (elements.find(\"[tabindex=0]\").addBack(\"[tabindex=0]\").length > 0) {\n this._resetTabIndex(that._getAllItems().first());\n }\n\n if (this.options.resizable) {\n this.resize(true);\n }\n },\n\n remove: function(candidate) {\n var that = this,\n uid = this._getUid(candidate),\n item = this._getItem(candidate, uid),\n buttonGroup, children;\n\n if (!item) {\n return;\n }\n\n if (item.component) {\n buttonGroup = item.toolbarEl.closest('[data-role=\"buttongroup\"]');\n if (buttonGroup.length > 0 && item.toolbarEl.siblings().length === 0) {\n buttonGroup.data(K_BUTTON_GROUP).destroy();\n buttonGroup.remove();\n\n item.toolbarEl = $(NOTHING);\n } else {\n item.component.destroy();\n }\n }\n\n if (item.templateEl.length > 0) {\n item.templateEl.remove();\n } else if (item.toolbarEl.length > 0) {\n item.toolbarEl.remove();\n }\n\n if (item.buttonsPopupItem.length > 0) {\n item.buttonsPopupItem.remove();\n }\n\n if (this.overflowMenu) {\n this.overflowMenu.remove(item.menuItem);\n\n children = this.overflowMenu.element\n .find(\"[data-parentuid=\" + uid + \"]\");\n\n children.each((i, el) => {\n that.overflowMenu.remove($(el));\n });\n }\n\n if (this.options.resizable) {\n this.resize(true);\n }\n },\n\n show: function(candidate) {\n var that = this,\n uid = this._getUid(candidate),\n item = this._getItem(candidate, uid),\n elements, parentButtonGroup, children, parentGroupEl;\n\n if (!item) {\n return;\n }\n\n elements = item.templateEl.add(item.toolbarEl).add(item.buttonsPopupItem);\n elements.removeClass(FORCE_HIDDEN);\n elements.removeClass(STATE_HIDDEN);\n\n item.menuItem.removeClass(FORCE_HIDDEN);\n\n if (this.overflowMenu) {\n children = this.overflowMenu.element\n .find(\"[data-parentuid=\" + uid + \"]\");\n\n children.each((i, el) => {\n $(el).removeClass(FORCE_HIDDEN);\n });\n }\n\n parentGroupEl = item.toolbarEl.parent().closest(DOT + BUTTON_GROUP);\n parentButtonGroup = parentGroupEl.data(K_BUTTON_GROUP);\n\n if (parentButtonGroup) {\n if (parentGroupEl.hasClass(\"k-hidden\") && parentGroupEl.children(\":not(.k-hidden)\").length > 0) {\n that.show(parentGroupEl);\n } else {\n that._groupVisibleButtons(parentGroupEl);\n }\n }\n\n if (this.options.resizable) {\n this.resize(true);\n }\n },\n\n toggle: function(candidate, checked) {\n var item = this._getItem(candidate),\n element = item.toolbarEl,\n menuItem = item.menuItem,\n button, parentGroup, group, groupButtons;\n\n if (checked === undefined$1) {\n checked = true;\n }\n\n button = element.data(K_TOGGLE_BUTTON);\n\n if (!item.component && menuItem.find(DOT + MENU_LINK_TOGGLE).length === 0) {\n return;\n }\n\n group = element.data(GROUP);\n\n if (item.component) {\n parentGroup = element.closest(DOT + BUTTON_GROUP).data(K_BUTTON_GROUP);\n\n if (parentGroup) {\n if (element.hasClass(STATE_SELECTED) !== checked) {\n parentGroup._toggleIndex(element.index());\n }\n }\n\n button.toggle(checked);\n\n if (checked) {\n groupButtons = this.element.find(\"[data-group=\" + group + \"]\");\n\n groupButtons.each((i, el) => {\n if (el !== element[0]) {\n $(el).data(K_TOGGLE_BUTTON).toggle(false);\n }\n });\n }\n }\n\n if (menuItem) {\n menuItem\n .attr(ARIA_CHECKED, checked)\n .find(DOT + MENU_LINK_TOGGLE)\n .toggleClass(STATE_SELECTED, checked);\n\n if (checked && this.overflowMenu) {\n groupButtons = this.overflowMenu.element.find(\"[data-group=\" + group + \"]\");\n\n groupButtons.each((i, el) => {\n if (el !== menuItem[0]) {\n $(el)\n .attr(ARIA_CHECKED, false)\n .find(DOT + MENU_LINK_TOGGLE)\n .removeClass(STATE_SELECTED);\n }\n });\n }\n }\n },\n\n toggleTools: function(conditions) {\n var that = this,\n tools = that.element.find(DATA_TOGGLE_SELECTOR),\n focusable = that.element.find(KENDO_FOCUSABLE).not(TABINDEX_MINUS_1);\n\n tools.each(function(index, elm) {\n var tool = $(elm),\n widget = null,\n condition = tool.data(TOGGLE),\n toToggle = conditions && conditions[condition];\n\n if (tool.is(DATA_ROLE_SELECTOR)) {\n widget = kendo.widgetInstance(tool);\n }\n\n if (widget && widget.enable) {\n widget.enable(toToggle || false);\n } else {\n that.enable(tool, toToggle);\n }\n });\n\n that.element.find(DATA_TOGGLE_SELECTOR + \"[disabled]\").removeAttr(\"disabled\");\n\n that.element.find(KENDO_FOCUSABLE).not(TABINDEX_MINUS_1).attr(\"tabindex\", -1);\n focusable.attr(TABINDEX, 0);\n },\n\n _add: function(options) {\n var processed = this._processOptions(options),\n template = processed.template,\n overflowTemplate = processed.overflowTemplate,\n type = WIDGET_TYPES[processed.type],\n element;\n\n if (template || overflowTemplate) {\n element = this._addTemplate(processed);\n } else if (kendo.ui[processed.component]) {\n element = this._addCustomWidget(processed);\n } else if (type) {\n element = this._addDefaultTool(type, processed);\n } else if (processed.type === SPACER) {\n this._addSpacer();\n } else if (processed.type === SEPARATOR) {\n this._addSeparator(processed);\n }\n\n if (element) {\n if (this.overflowAnchor) {\n element.insertBefore(this.overflowAnchor);\n } else {\n element.appendTo(this.element);\n }\n\n element.find(\"[disabled]\").removeAttr(\"disabled\");\n\n if (element.is(\"[disabled]\")) {\n element.removeAttr(\"disabled\");\n }\n }\n },\n\n _addAttributes: function(options, element) {\n var attributes = options.attributes,\n classes = NOTHING;\n\n if (!attributes) {\n attributes = {};\n }\n\n if (options.hidden) {\n classes = STATE_HIDDEN + EMPTY + FORCE_HIDDEN;\n }\n\n if (options.align) {\n classes = classes + \" k-align-\" + options.align;\n }\n\n if (attributes) {\n if (attributes.class) {\n classes = classes + EMPTY + attributes.class;\n delete attributes.class;\n }\n\n element.attr(attributes);\n }\n\n element.addClass(classes);\n element.attr(KENDO_UID_ATTR, options.uid);\n\n if (options.id) {\n element.attr(ID, options.id);\n }\n if (options.overflow === OVERFLOW_NEVER) {\n element.attr(\"data-overflow\", OVERFLOW_NEVER);\n }\n },\n\n _addCustomWidget: function(options) {\n var element = $(options.element || \"\"),\n widget, result, classes;\n\n if (options.overflowComponent) {\n this._addMenuItem(options.overflowComponent.type, $.extend({}, options, options.overflowComponent));\n }\n\n if (options.attributes) {\n classes = options.attributes.class;\n delete options.attributes[\"class\"];\n element.attr(options.attributes);\n delete options.attributes[ARIA_LABEL];\n }\n\n if (!options.componentOptions) {\n options.componentOptions = {};\n }\n\n options.componentOptions.size = this.options.size;\n\n widget = new kendo.ui[options.component](element, options.componentOptions);\n\n if (SAFE_COMPONENTS.indexOf(options.component) > -1) {\n widget.wrapper.addClass(TOOLBAR_TOOL + \" \" + TOOLBAR_TOOLS_CLASSES[options.component]);\n result = widget.wrapper;\n } else {\n result = (widget.wrapper || widget.element).wrap(CUSTOM_WIDGET_WRAP).parent();\n }\n\n if (options.attributes) {\n options.attributes.class = classes;\n }\n\n this._addAttributes(options, result);\n\n return result;\n },\n\n _addDefaultTool: function(component, options) {\n var element, op;\n\n if (options.overflow !== OVERFLOW_ALWAYS) {\n element = this._addToolbarTool(component, $.extend(true, {}, options));\n }\n\n if (this.overflowMenu && options.overflow !== OVERFLOW_NEVER) {\n if (options.overflowComponent) {\n op = $.extend(true, {}, options, options.overflowComponent);\n delete op[\"data-command\"];\n this._addMenuItem(\"Button\", op);\n } else {\n this._addMenuItem(component, $.extend(true, {}, options));\n }\n }\n\n return element;\n },\n\n _addMenuItem: function(component, options) {\n var that = this,\n selected = options.selected,\n menuitem;\n\n delete options.selected;\n\n if (options.id) {\n options.id = options.id + DASH + OVERFLOW;\n }\n if (options.showIcon === TOOLBAR) {\n delete options.imageUrl;\n delete options.icon;\n }\n\n if (options.showText === TOOLBAR) {\n if (!options.attributes) {\n options.attributes = {};\n }\n\n options.attributes[ARIA_LABEL] = options.text;\n\n options.text = NOTHING;\n } else if (options.text === undefined$1 || options.text === NOTHING) {\n options.text = NBSP;\n options.encoded = false;\n }\n\n that.overflowMenu.append(options);\n menuitem = that.overflowMenu.element.find(DOT + MENU_ITEM).last();\n\n if (options.icon) {\n menuitem.find(DOT + MENU_LINK).prepend(kendo.ui.icon(options.icon));\n }\n\n if (component === \"ToggleButton\" || (component === \"Button\" && options.togglable === true)) {\n menuitem.find(DOT + MENU_LINK).addClass(MENU_LINK_TOGGLE);\n\n if (selected) {\n menuitem.find(DOT + MENU_LINK).addClass(STATE_SELECTED);\n }\n\n if (options.group) {\n menuitem.attr(\"data-group\", options.group);\n }\n } else if (options.menuButtons) {\n options.menuButtons.forEach((i) => {\n i.overflow = options.overflow;\n that._addMenuItem(null, i);\n });\n } else if (options.buttons) {\n menuitem.remove();\n menuitem = null;\n\n options.buttons.forEach((i) => {\n var attributes = i.attributes;\n i.overflow = options.overflow;\n i.attributes = $.extend(attributes, options.attributes);\n\n that._addMenuItem(\"Button\", i);\n });\n }\n\n if (component === \"DropDownButton\") {\n menuitem.addClass(STATE_DISABLED);\n menuitem.attr(ARIA_DISABLED, true);\n }\n\n if (menuitem) {\n that._addAttributes(options, menuitem);\n\n if (options.overflow === OVERFLOW_AUTO) {\n menuitem.addClass(STATE_HIDDEN);\n }\n\n if (options.click || options.toggle) {\n that.overflowMenu.bind(SELECT, (e) => {\n if (e.item === menuitem[0]) {\n this._onMenuItemSelect(e, options.click, options.toggle);\n }\n });\n }\n }\n\n return menuitem;\n },\n\n _addPopupButton: function(options) {\n var that = this,\n widgetElement = $(POPUP_BUTTON_TEMPLATE),\n component = options.popupComponent,\n popup, chooser;\n\n widgetElement.attr(ARIA_LABEL, options.text);\n\n popup = $(\"
\").appendTo($(\"\")).kendoPopup({\n anchor: widgetElement\n }).data(\"kendoPopup\");\n\n widgetElement.on(CLICK + \" touchend\", (e) => {\n popup.toggle();\n e.preventDefault();\n });\n\n chooser = new component(popup.element);\n\n chooser.bind(options.commandOn, (e) => {\n that.trigger(CHANGE, { target: widgetElement, value: e.value || e });\n popup.close();\n });\n\n return { widgetElement, chooser, popup };\n },\n\n _addSeparator: function(options) {\n var separator = $(SEPARATOR_EL),\n overflowSeparator = $(SEPARATOR_OVERFLOW_EL);\n\n separator.addClass(KSEPARATOR);\n separator.attr(ROLE, SEPARATOR);\n\n if (this.overflowAnchor) {\n separator.insertBefore(this.overflowAnchor);\n } else {\n separator.appendTo(this.element);\n }\n\n this._addAttributes(options, separator);\n\n if (options.id) {\n options.id = options.id + DASH + OVERFLOW;\n }\n\n this._addAttributes(options, overflowSeparator);\n\n if (this.overflowMenu) {\n this.overflowMenu.element.append(overflowSeparator);\n }\n },\n\n _addSpacer: function() {\n var spacer = $(SPACER_EL);\n spacer.addClass(SPACER_CLASS);\n\n if (this.overflowAnchor) {\n spacer.insertBefore(this.overflowAnchor);\n } else {\n spacer.appendTo(this.element);\n }\n },\n\n _addTemplate: function(options) {\n var template = options.template,\n overflowTemplate = options.overflowTemplate,\n element, menuitem, inputsInTemplate = $(NOTHING);\n\n if (overflowTemplate && this.overflowMenu && options.overflow !== OVERFLOW_NEVER) {\n overflowTemplate = isFunction(overflowTemplate) ? overflowTemplate(options)[0] : overflowTemplate;\n this.overflowMenu.append({});\n menuitem = this.overflowMenu.element\n .find(DOT + MENU_ITEM)\n .last()\n .find(DOT + MENU_LINK)\n .html(overflowTemplate)\n .parent();\n }\n\n if (template && options.overflow !== OVERFLOW_ALWAYS) {\n if (this.options.evaluateTemplates) {\n template = kendo.template(template);\n }\n\n template = isFunction(template) ? template(options) : template;\n\n element = $(TEMPLATE_WRAPPER);\n element.html(template);\n\n if (menuitem) {\n menuitem.addClass(STATE_HIDDEN);\n }\n }\n\n if (element) {\n inputsInTemplate = element.find(INPUT + COMMA + SELECT);\n this._addAttributes(options, element);\n }\n\n if (menuitem) {\n inputsInTemplate.add(menuitem.find(INPUT + COMMA + SELECT));\n this._addAttributes(options, menuitem);\n }\n\n if (!this.options.navigateOnTab && inputsInTemplate.length > 0) {\n element.attr(TABINDEX, 0);\n element.addClass(TOOLBAR_TOOL);\n inputsInTemplate.attr(TABINDEX, -1);\n }\n\n return element;\n },\n\n _addToolbarTool: function(component, options) {\n var widgetElement = $(\"