{"version":3,"sources":["kendo.dropdowntree.js"],"names":["f","define","$","undefined","contentChild","filter","node","result","children","length","kendo","window","ui","keys","DISABLED","SELECT","CHECKED","proxy","DATABOUND","CLICK","NS","INDETERMINATE","NAVIGATE","TreeView","subGroup","Tree","extend","init","element","options","dropdowntree","that","this","_nodesToLoad","fn","call","_isMultipleSelection","wrapper","on","_clickSelectedItem","_checkOnSelect","e","isDefaultPrevented","dataItem","set","checked","_setCheckedValue","value","_click","one","currentTarget","_trigger","defaultrefresh","i","bubble","action","items","parentNode","loadOnDemand","checkChildren","checkboxes","_skip","field","level","_updateNodes","findByUid","uid","_progress","_appendItems","index","_remove","_refreshChildren","_refreshRoot","expanded","hasChildren","load","trigger","_treeViewDataBound","sender","updateIndeterminate","_previousVisible","lastChild","prev","root","last","_expanded","parent","checkAll","is","find","focus","filterInput","_keydown","target","key","keyCode","focused","current","checkbox","rtl","support","isRtl","RIGHT","LEFT","_nextVisible","hasClass","expand","collapse","_enabled","DOWN","UP","altKey","HOME","END","ENTER","SPACEBAR","prop","data","_checkboxChange","ESC","_closePopup","TAB","preventDefault","select","close","refresh","skipUpdateOnBind","_checkValue","selected","_selectValue","_dropdowntree","jQuery","amd","a1","a2","a3","assign","instance","fields","idx","lastIndex","SingleSelection","MultipleSelection","Widget","ObservableArray","ObservableObject","activeElement","_activeElement","ns","HIDDENCLASS","WIDTH","browser","outerWidth","_outerWidth","DOT","READONLY","STATEDISABLED","ARIA_DISABLED","ARIA_READONLY","HOVER","FOCUSED","HOVEREVENTS","TABINDEX","OPEN","CLOSE","CHANGE","quotRegExp","DropDownTree","text","disabled","_selection","_getSelection","_focusInputHandler","_focusInput","_initial","val","_values","_noInitialValue","_isNullorUndefined","_valueMethodCalled","isArray","slice","_inputTemplate","_accessors","_setTreeViewOptions","_dataSource","_initWrapper","_placeholder","_tabindex","attr","tree","tabIndex","aria-hidden","list","append","_header","_noData","_footer","_reset","_popup","popup","_popupOpen","_clearButton","_filterHeader","_treeview","_renderFooter","_checkAll","_enable","_toggleCloseVisibility","autoBind","_textAccessor","placeholder","_preselect","parents","enable","notify","treeviewOptions","dataImageUrlField","dataSpriteCssClassField","dataTextField","dataUrlField","treeview","template","rootDataSource","dataSource","HierarchicalDataSource","create","wrap","setDataSource","_isDataSourceSet","_tags","setValue","empty","span","show","_multipleTags","name","animation","autoClose","autoWidth","clearButton","dataValueField","delay","enabled","enforceMinLength","height","ignoreCase","messages","singleTag","clear","deleteTag","noData","minLength","noDataTemplate","checkAllTemplate","tagMode","valuePrimitive","footerTemplate","headerTemplate","valueTemplate","events","readonly","_editable","disable","toggle","open","_toggle","_isFilterEnabled","_search","fetch","visible","_allowOpening","addClass","_hovered","search","word","clearTimeout","_typingTimeout","_getFilter","_filtering","operator","flatView","_renderNoData","setOptions","css","destroy","off","_clear","_inputWrapper","tagList","unbind","_form","_resetHandler","_filter","_setValue","loweredText","toLowerCase","_selectItemByText","header","_angularElement","remove","prepend","angular","elements","appendTo","html","footer","_adjustListWidth","computedStyle","computedWidth","width","style","getComputedStyle","parseFloat","msie","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","fontFamily","minWidth","whiteSpace","formId","form","closest","setTimeout","Popup","anchor","_openHandler","_closeHandler","autosize","toggleClass","_currentValue","currentValue","_value","alreadyAddedTag","itemToAdd","itemToRemove","indexOfValue","isMultiple","_level","indexOf","grep","item","_tagUid","toJSON","push","hide","_treeViewCheckAllCheck","splice","_preventChangeTrigger","position","_updateSelectedOptions","selectedItems","tagName","_option","_text","dataValue","dataText","option","replace","htmlEncode","_accessor","_clearClick","stopPropagation","_clearTextAndValue","_clearInput","_clearText","_clearValue","useWithBlock","_assignInstance","split","getElements","removeClass","isPlainObject","get","getter","textField","valueField","getterFunction","count","levels","map","x","d","Math","min","_accessorInput","clearTitle","role","insertAfter","isReadOnly","hasValue","valueDoesNotEqualPlaceHolder","_hideClear","_showClear","guid","bind","rootItems","rootItem","subItems","_prev","_deselectItem","_checkLoadedItems","_valueComparer","_checkLoadedItem","_getAllChecked","_checkCheckAll","_uncheckCheckAll","checkAllCheckbox","_allItemsAreChecked","_allItemsAreUnchecked","icon","_disableCheckChildren","title","aria-haspopup","aria-expanded","_filterChange","insertBefore","add","_clickCheckAll","_changeCheckAll","_keydownCheckAll","_disabledCheckedItems","_disabledUnCheckedItems","isChecked","_updateCheckAll","_toggleCheckAllItems","edge","_dfs","_traverceChildren","_uncheckItemByUid","_uncheckItemEqualsUid","_itemEqualsText","_selectItemByValue","_itemEqualsValue","_checkItemByValue","dataItems","_checkItemEqualsValue","itemText","newValue","itemValue","_allCheckedItems","_getAllCheckedItems","childrenField","_childrenOptions","schema","_checkAllCheckItem","dropDownWrapper","removeAttr","_focusinHandler","_focusoutHandler","_toggleHover","_wrapperClick","_removeTagClick","_prevent","blur","_focused","type","preventScroll","_ie11PreventScrollOnFocus","version","_toggleResize","isFilterInputActive","isWrapperActive","tagItem","isPopupVisible","_focusPrevTag","_focusNextTag","_focusFirstTag","_focusLastTag","DELETE","first","_removeTag","BACKSPACE","_clearFilter","activedescendant","next","firstTag","_clearDisabledTag","lastTag","parentElement","plugin","Class","view","_wrapper","_span","DOMelement","cssText","className","accesskey","unselectable","SELECTOR","firstChild","_arrow","_arrowIcon","selectedNode","tempItem","_tagTemplate","_tagList","valueToSelect","tagTemplate","aria-activedescendant","_innerWrapper","tagCollection","viewModel","observable","multipleTag","tags","oldValues","_removeValues","j","removedValues","_getNewValues","tagsArray","_findTag","tempItemValue"],"mappings":"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","file":"kendo.dropdowntree.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('dropdowntree/treeview', ['kendo.treeview'], f);\n}(function () {\n (function ($, undefined) {\n var kendo = window.kendo, ui = kendo.ui, keys = kendo.keys, DISABLED = 'k-state-disabled', SELECT = 'select', CHECKED = 'checked', proxy = $.proxy, DATABOUND = 'dataBound', CLICK = 'click', NS = '.kendoTreeView', INDETERMINATE = 'indeterminate', NAVIGATE = 'navigate', subGroup, TreeView = ui.TreeView;\n function contentChild(filter) {\n return function (node) {\n var result = node.children('.k-animation-container');\n if (!result.length) {\n result = node;\n }\n return result.children(filter);\n };\n }\n subGroup = contentChild('.k-group');\n var Tree = TreeView.extend({\n init: function (element, options, dropdowntree) {\n var that = this;\n that.dropdowntree = dropdowntree;\n that._nodesToLoad = 0;\n TreeView.fn.init.call(that, element, options);\n if (that.dropdowntree._isMultipleSelection()) {\n that.wrapper.on(CLICK + NS, '.k-in.k-state-selected', proxy(that._clickSelectedItem, that));\n }\n },\n _checkOnSelect: function (e) {\n if (!e.isDefaultPrevented()) {\n var dataItem = this.dataItem(e.node);\n dataItem.set('checked', !dataItem.checked);\n }\n },\n _setCheckedValue: function (node, value) {\n node.set(CHECKED, value);\n },\n _click: function (e) {\n var that = this;\n if (that.dropdowntree._isMultipleSelection()) {\n that.one('select', that._checkOnSelect);\n }\n TreeView.fn._click.call(that, e);\n },\n _clickSelectedItem: function (e) {\n var that = this, node = $(e.currentTarget);\n that.one('select', that._checkOnSelect);\n if (!that._trigger(SELECT, node)) {\n that.dataItem(node).set('selected', false);\n }\n },\n defaultrefresh: function (e) {\n var that = this;\n var node = e.node;\n var action = e.action;\n var items = e.items;\n var parentNode = this.wrapper;\n var options = this.options;\n var loadOnDemand = options.loadOnDemand;\n var checkChildren = options.checkboxes && options.checkboxes.checkChildren;\n var i;\n if (this._skip) {\n return;\n }\n if (e.field) {\n if (!items[0] || !items[0].level) {\n return;\n }\n return this._updateNodes(items, e.field);\n }\n if (node) {\n parentNode = this.findByUid(node.uid);\n this._progress(parentNode, false);\n }\n if (checkChildren && action != 'remove') {\n var bubble = false;\n for (i = 0; i < items.length; i++) {\n if ('checked' in items[i]) {\n bubble = true;\n break;\n }\n }\n if (!bubble && node && node.checked) {\n for (i = 0; i < items.length; i++) {\n items[i].checked = true;\n }\n }\n }\n if (action == 'add') {\n this._appendItems(e.index, items, parentNode);\n } else if (action == 'remove') {\n this._remove(this.findByUid(items[0].uid), false);\n } else if (action == 'itemchange') {\n this._updateNodes(items);\n } else if (action == 'itemloaded') {\n this._nodesToLoad--;\n this._refreshChildren(parentNode, items, e.index);\n } else {\n this._refreshRoot(items);\n }\n if (action != 'remove') {\n for (i = 0; i < items.length; i++) {\n if (!loadOnDemand || items[i].expanded) {\n if (items[i].hasChildren) {\n that._nodesToLoad++;\n }\n items[i].load();\n }\n }\n }\n if (this._nodesToLoad === 0) {\n this.dropdowntree.trigger('allNodesAreLoaded');\n }\n this.trigger(DATABOUND, { node: node ? parentNode : undefined });\n this.dropdowntree._treeViewDataBound({\n node: node ? parentNode : undefined,\n sender: this\n });\n if (this.options.checkboxes.checkChildren) {\n this.updateIndeterminate();\n }\n },\n _previousVisible: function (node) {\n var that = this, lastChild, result;\n if (!node.length || node.prev().length) {\n if (node.length) {\n result = node.prev();\n } else {\n result = that.root.children().last();\n }\n while (that._expanded(result)) {\n lastChild = subGroup(result).children().last();\n if (!lastChild.length) {\n break;\n }\n result = lastChild;\n }\n } else {\n result = that.parent(node) || node;\n if (!result.length) {\n if (that.dropdowntree.checkAll && that.dropdowntree.checkAll.is(':visible')) {\n that.dropdowntree.checkAll.find('.k-checkbox').focus();\n } else if (that.dropdowntree.filterInput) {\n that.dropdowntree.filterInput.focus();\n } else {\n that.dropdowntree.wrapper.focus();\n }\n }\n }\n return result;\n },\n _keydown: function (e) {\n var that = this, key = e.keyCode, target, focused = that.current(), expanded = that._expanded(focused), checkbox = focused.find('.k-checkbox-wrapper:first :checkbox'), rtl = kendo.support.isRtl(that.element);\n if (e.target != e.currentTarget) {\n return;\n }\n if (!rtl && key == keys.RIGHT || rtl && key == keys.LEFT) {\n if (expanded) {\n target = that._nextVisible(focused);\n } else if (!focused.find('.k-in:first').hasClass(DISABLED)) {\n that.expand(focused);\n }\n } else if (!rtl && key == keys.LEFT || rtl && key == keys.RIGHT) {\n if (expanded && !focused.find('.k-in:first').hasClass(DISABLED)) {\n that.collapse(focused);\n } else {\n target = that.parent(focused);\n if (!that._enabled(target)) {\n target = undefined;\n }\n }\n } else if (key == keys.DOWN) {\n target = that._nextVisible(focused);\n } else if (key == keys.UP && !e.altKey) {\n target = that._previousVisible(focused);\n } else if (key == keys.HOME) {\n target = that._nextVisible($());\n } else if (key == keys.END) {\n target = that._previousVisible($());\n } else if (key == keys.ENTER && !focused.find('.k-in:first').hasClass(DISABLED)) {\n if (!focused.find('.k-in:first').hasClass('k-state-selected')) {\n if (!that._trigger(SELECT, focused)) {\n that.select(focused);\n }\n }\n } else if (key == keys.SPACEBAR && checkbox.length && !focused.find('.k-in:first').hasClass(DISABLED)) {\n checkbox.prop(CHECKED, !checkbox.prop(CHECKED)).data(INDETERMINATE, false).prop(INDETERMINATE, false);\n that._checkboxChange({ target: checkbox });\n target = focused;\n } else if (e.altKey && key === keys.UP || key === keys.ESC) {\n that._closePopup();\n } else if (key === keys.TAB) {\n e.preventDefault();\n that._closePopup();\n }\n if (target) {\n e.preventDefault();\n if (focused[0] != target[0]) {\n that._trigger(NAVIGATE, target);\n that.current(target);\n }\n }\n },\n _closePopup: function () {\n this.dropdowntree.close();\n this.dropdowntree.wrapper.focus();\n },\n refresh: function (e) {\n this.defaultrefresh(e);\n if (this.dropdowntree.options.skipUpdateOnBind) {\n return;\n }\n if (e.action === 'itemchange') {\n if (this.dropdowntree._isMultipleSelection()) {\n if (e.field === 'checked') {\n this.dropdowntree._checkValue(e.items[0]);\n }\n } else {\n if (e.field !== 'checked' && e.field !== 'expanded' && e.items[0].selected) {\n this.dropdowntree._selectValue(e.items[0]);\n }\n }\n } else {\n this.dropdowntree.refresh(e);\n }\n }\n });\n kendo.ui._dropdowntree = Tree;\n }(window.kendo.jQuery));\n return window.kendo;\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n (a3 || a2)();\n}));\n(function (f, define) {\n define('kendo.dropdowntree', [\n 'dropdowntree/treeview',\n 'kendo.popup'\n ], f);\n}(function () {\n var __meta__ = {\n id: 'dropdowntree',\n name: 'DropDownTree',\n category: 'web',\n description: 'The DropDownTree widget displays a hierarchy of items and allows the selection of single or multiple items.',\n depends: [\n 'treeview',\n 'popup'\n ]\n };\n (function ($, undefined) {\n var kendo = window.kendo, ui = kendo.ui, Widget = ui.Widget, TreeView = ui._dropdowntree, ObservableArray = kendo.data.ObservableArray, ObservableObject = kendo.data.ObservableObject, extend = $.extend, activeElement = kendo._activeElement, ns = '.kendoDropDownTree', keys = kendo.keys, support = kendo.support, HIDDENCLASS = 'k-hidden', WIDTH = 'width', browser = support.browser, outerWidth = kendo._outerWidth, DOT = '.', DISABLED = 'disabled', READONLY = 'readonly', STATEDISABLED = 'k-state-disabled', ARIA_DISABLED = 'aria-disabled', ARIA_READONLY = 'aria-readonly', HOVER = 'k-state-hover', FOCUSED = 'k-state-focused', HOVEREVENTS = 'mouseenter' + ns + ' mouseleave' + ns, TABINDEX = 'tabindex', CLICK = 'click', OPEN = 'open', CLOSE = 'close', CHANGE = 'change', quotRegExp = /\"/g, proxy = $.proxy;\n var DropDownTree = kendo.ui.Widget.extend({\n init: function (element, options) {\n this.ns = ns;\n kendo.ui.Widget.fn.init.call(this, element, options);\n this._selection = this._getSelection();\n this._focusInputHandler = $.proxy(this._focusInput, this);\n this._initial = this.element.val();\n this._values = [];\n var value = this.options.value;\n if (value === null || !value.length) {\n this._noInitialValue = true;\n }\n if (!this._isNullorUndefined(value)) {\n this._valueMethodCalled = true;\n this._values = $.isArray(value) ? value.slice(0) : [value];\n }\n this._inputTemplate();\n this._accessors();\n this._setTreeViewOptions(this.options);\n this._dataSource();\n this._selection._initWrapper();\n this._placeholder(true);\n this._tabindex();\n this.wrapper.data(TABINDEX, this.wrapper.attr(TABINDEX));\n this.tree = $('
').attr({\n tabIndex: -1,\n 'aria-hidden': true\n });\n this.list = $('
').append(this.tree);\n this._header();\n this._noData();\n this._footer();\n this._reset();\n this._popup();\n this.popup.one('open', proxy(this._popupOpen, this));\n this._clearButton();\n this._filterHeader();\n this._treeview();\n this._renderFooter();\n this._checkAll();\n this._enable();\n this._toggleCloseVisibility();\n if (!this.options.autoBind) {\n var text = options.text || '';\n if (!this._isNullorUndefined(options.value)) {\n this._preselect(options.value);\n } else if (text) {\n this._textAccessor(text);\n } else if (options.placeholder) {\n this._placeholder(true);\n }\n }\n var disabled = $(this.element).parents('fieldset').is(':disabled');\n if (disabled) {\n this.enable(false);\n }\n this._valueMethodCalled = false;\n kendo.notify(this);\n },\n _preselect: function (data, value) {\n this._selection._preselect(data, value);\n },\n _setTreeViewOptions: function (options) {\n var treeviewOptions = {\n autoBind: options.autoBind,\n checkboxes: options.checkboxes,\n dataImageUrlField: options.dataImageUrlField,\n dataSpriteCssClassField: options.dataSpriteCssClassField,\n dataTextField: options.dataTextField,\n dataUrlField: options.dataUrlField,\n loadOnDemand: options.loadOnDemand\n };\n this.options.treeview = $.extend({}, treeviewOptions, this.options.treeview);\n if (options.template) {\n this.options.treeview.template = options.template;\n }\n },\n _dataSource: function () {\n var rootDataSource = this.options.dataSource;\n this.dataSource = kendo.data.HierarchicalDataSource.create(rootDataSource);\n if (rootDataSource) {\n $.extend(this.options.treeview, { dataSource: this.dataSource });\n }\n },\n _popupOpen: function () {\n var popup = this.popup;\n popup.wrapper = kendo.wrap(popup.element);\n },\n _getSelection: function () {\n if (this._isMultipleSelection()) {\n return new ui.DropDownTree.MultipleSelection(this);\n } else {\n return new ui.DropDownTree.SingleSelection(this);\n }\n },\n setDataSource: function (dataSource) {\n this._isDataSourceSet = true;\n if (this._tags) {\n this._noInitialValue = true;\n this.setValue([]);\n this._tags.empty();\n this.span.show();\n this._multipleTags.empty();\n }\n this.dataSource = dataSource;\n this.treeview.setDataSource(dataSource);\n this._isDataSourceSet = false;\n },\n _isMultipleSelection: function () {\n return this.options && (this.options.treeview.checkboxes || this.options.checkboxes);\n },\n options: {\n name: 'DropDownTree',\n animation: {},\n autoBind: true,\n autoClose: true,\n autoWidth: false,\n clearButton: true,\n dataTextField: '',\n dataValueField: '',\n dataImageUrlField: '',\n dataSpriteCssClassField: '',\n dataUrlField: '',\n delay: 500,\n enabled: true,\n enforceMinLength: false,\n filter: 'none',\n height: 200,\n ignoreCase: true,\n index: 0,\n loadOnDemand: false,\n messages: {\n 'singleTag': 'item(s) selected',\n 'clear': 'clear',\n 'deleteTag': 'delete',\n 'noData': 'No data found.'\n },\n minLength: 1,\n checkboxes: false,\n noDataTemplate: true,\n placeholder: '',\n checkAll: false,\n checkAllTemplate: 'Check all',\n tagMode: 'multiple',\n template: null,\n text: null,\n treeview: {},\n valuePrimitive: false,\n footerTemplate: '',\n headerTemplate: '',\n value: null,\n valueTemplate: null,\n popup: null\n },\n events: [\n 'open',\n 'close',\n 'dataBound',\n CHANGE,\n 'select',\n 'filtering'\n ],\n focus: function () {\n this.wrapper.focus();\n },\n dataItem: function (node) {\n return this.treeview.dataItem(node);\n },\n readonly: function (readonly) {\n this._editable({\n readonly: readonly === undefined ? true : readonly,\n disable: false\n });\n this._toggleCloseVisibility();\n },\n enable: function (enable) {\n this._editable({\n readonly: false,\n disable: !(enable = enable === undefined ? true : enable)\n });\n this._toggleCloseVisibility();\n },\n toggle: function (open) {\n this._toggle(open);\n },\n open: function () {\n var popup = this.popup;\n if (!this.options.autoBind && !this.dataSource.data().length) {\n this.treeview._progress(true);\n if (this._isFilterEnabled()) {\n this._search();\n } else {\n this.dataSource.fetch();\n }\n }\n if (popup.visible() || !this._allowOpening()) {\n return;\n }\n if (this._isMultipleSelection()) {\n popup.element.addClass('k-multiple-selection');\n }\n popup.element.addClass('k-popup-dropdowntree');\n popup.one('activate', this._focusInputHandler);\n popup._hovered = true;\n popup.open();\n },\n close: function () {\n this.popup.close();\n },\n search: function (word) {\n var options = this.options;\n var filter;\n clearTimeout(this._typingTimeout);\n if (!options.enforceMinLength && !word.length || word.length >= options.minLength) {\n filter = this._getFilter(word);\n if (this.trigger('filtering', { filter: filter }) || $.isArray(this.options.dataTextField)) {\n return;\n }\n this._filtering = true;\n this.treeview.dataSource.filter(filter);\n }\n },\n _getFilter: function (word) {\n return {\n field: this.options.dataTextField,\n operator: this.options.filter,\n value: word,\n ignoreCase: this.options.ignoreCase\n };\n },\n refresh: function () {\n var data = this.treeview.dataSource.flatView();\n this._renderFooter();\n this._renderNoData();\n if (this.filterInput && this.checkAll) {\n this.checkAll.toggle(!this.filterInput.val().length);\n }\n this.tree.toggle(!!data.length);\n $(this.noData).toggle(!data.length);\n },\n setOptions: function (options) {\n Widget.fn.setOptions.call(this, options);\n this._setTreeViewOptions(options);\n this._dataSource();\n if (this.options.treeview) {\n this.treeview.setOptions(this.options.treeview);\n }\n if (options.height && this.tree) {\n this.tree.css('max-height', options.height);\n }\n this._header();\n this._noData();\n this._footer();\n this._renderFooter();\n this._renderNoData();\n if (this.span && (this._isMultipleSelection() || this.span.hasClass('k-readonly'))) {\n this._placeholder(true);\n }\n this._inputTemplate();\n this._accessors();\n this._filterHeader();\n this._checkAll();\n this._enable();\n if (options && (options.enable || options.enabled)) {\n this.enable(true);\n }\n this._clearButton();\n },\n destroy: function () {\n kendo.ui.Widget.fn.destroy.call(this);\n if (this.treeview) {\n this.treeview.destroy();\n }\n this.popup.destroy();\n this.wrapper.off(ns);\n this._clear.off(ns);\n this._inputWrapper.off(ns);\n if (this.filterInput) {\n this.filterInput.off(ns);\n }\n if (this.tagList) {\n this.tagList.off(ns);\n }\n kendo.unbind(this.tagList);\n if (this.options.checkAll && this.checkAll) {\n this.checkAll.off(ns);\n }\n if (this._form) {\n this._form.off('reset', this._resetHandler);\n }\n },\n setValue: function (value) {\n value = $.isArray(value) || value instanceof ObservableArray ? value.slice(0) : [value];\n this._values = value;\n },\n items: function () {\n return this.treeview.items();\n },\n value: function (value) {\n var that = this;\n if (value) {\n if (that.filterInput && that.dataSource._filter) {\n that._filtering = true;\n that.dataSource.filter({});\n } else if (!that.dataSource.data().length || !that.treeview.dataSource.data().length) {\n that.dataSource.fetch(function () {\n if (that.options.loadOnDemand) {\n that._selection._setValue(value);\n } else {\n that.one('allNodesAreLoaded', function () {\n that._selection._setValue(value);\n });\n }\n });\n return;\n }\n }\n return that._selection._setValue(value);\n },\n text: function (text) {\n var loweredText;\n var ignoreCase = this.options.ignoreCase;\n text = text === null ? '' : text;\n if (text !== undefined && !this._isMultipleSelection()) {\n if (typeof text !== 'string') {\n this._textAccessor(text);\n return;\n }\n loweredText = ignoreCase ? text : text.toLowerCase();\n this._selectItemByText(loweredText);\n this._textAccessor(loweredText);\n } else {\n return this._textAccessor();\n }\n },\n _header: function () {\n var list = this;\n var header = $(list.header);\n var template = list.options.headerTemplate;\n this._angularElement(header, 'cleanup');\n kendo.destroy(header);\n header.remove();\n if (!template) {\n list.header = null;\n return;\n }\n var headerTemplate = typeof template !== 'function' ? kendo.template(template) : template;\n header = $(headerTemplate({}));\n list.header = header[0] ? header : null;\n list.list.prepend(header);\n this._angularElement(list.header, 'compile');\n },\n _noData: function () {\n var list = this;\n var noData = $(list.noData);\n var template = list.options.noDataTemplate === true ? list.options.messages.noData : list.options.noDataTemplate;\n list.angular('cleanup', function () {\n return { elements: noData };\n });\n kendo.destroy(noData);\n noData.remove();\n if (!template) {\n list.noData = null;\n return;\n }\n list.noData = $('
').appendTo(list.list);\n list.noDataTemplate = typeof template !== 'function' ? kendo.template(template) : template;\n },\n _renderNoData: function () {\n var list = this;\n var noData = list.noData;\n if (!noData) {\n return;\n }\n this._angularElement(noData, 'cleanup');\n noData.children(':first').html(list.noDataTemplate({ instance: list }));\n this._angularElement(noData, 'compile');\n },\n _footer: function () {\n var list = this;\n var footer = $(list.footer);\n var template = list.options.footerTemplate;\n this._angularElement(footer, 'cleanup');\n kendo.destroy(footer);\n footer.remove();\n if (!template) {\n list.footer = null;\n return;\n }\n list.footer = $('
').appendTo(list.list);\n list.footerTemplate = typeof template !== 'function' ? kendo.template(template) : template;\n },\n _renderFooter: function () {\n var list = this;\n var footer = list.footer;\n if (!footer) {\n return;\n }\n this._angularElement(footer, 'cleanup');\n footer.html(list.footerTemplate({ instance: list }));\n this._angularElement(footer, 'compile');\n },\n _enable: function () {\n var that = this, options = that.options, disabled = that.element.is('[disabled]');\n if (options.enable !== undefined) {\n options.enabled = options.enable;\n }\n if (!options.enabled || disabled) {\n that.enable(false);\n } else {\n that.readonly(that.element.is('[readonly]'));\n }\n },\n _adjustListWidth: function () {\n var that = this, list = that.list, width = list[0].style.width, wrapper = that.wrapper, computedStyle, computedWidth;\n if (!list.data(WIDTH) && width) {\n return;\n }\n computedStyle = window.getComputedStyle ? window.getComputedStyle(wrapper[0], null) : 0;\n computedWidth = parseFloat(computedStyle && computedStyle.width) || outerWidth(wrapper);\n if (computedStyle && browser.msie) {\n computedWidth += parseFloat(computedStyle.paddingLeft) + parseFloat(computedStyle.paddingRight) + parseFloat(computedStyle.borderLeftWidth) + parseFloat(computedStyle.borderRightWidth);\n }\n if (list.css('box-sizing') !== 'border-box') {\n width = computedWidth - (outerWidth(list) - list.width());\n } else {\n width = computedWidth;\n }\n list.css({\n fontFamily: wrapper.css('font-family'),\n width: that.options.autoWidth ? 'auto' : width,\n minWidth: width,\n whiteSpace: that.options.autoWidth ? 'nowrap' : 'normal'\n }).data(WIDTH, width);\n return true;\n },\n _reset: function () {\n var that = this, element = that.element, formId = element.attr('form'), form = formId ? $('#' + formId) : element.closest('form');\n if (form[0]) {\n that._resetHandler = function () {\n setTimeout(function () {\n that.value(that._initial);\n });\n };\n that._form = form.on('reset', that._resetHandler);\n }\n },\n _popup: function () {\n var list = this;\n list.popup = new ui.Popup(list.list, extend({}, list.options.popup, {\n anchor: list.wrapper,\n open: proxy(list._openHandler, list),\n close: proxy(list._closeHandler, list),\n animation: list.options.animation,\n isRtl: support.isRtl(list.wrapper),\n autosize: list.options.autoWidth\n }));\n },\n _angularElement: function (element, action) {\n if (!element) {\n return;\n }\n this.angular(action, function () {\n return { elements: element };\n });\n },\n _allowOpening: function () {\n return this.options.noDataTemplate || this.treeview.dataSource.flatView().length;\n },\n _placeholder: function (show) {\n if (this.span) {\n this.span.toggleClass('k-readonly', show).text(show ? this.options.placeholder : '');\n }\n },\n _currentValue: function (dataItem) {\n var currentValue = this._value(dataItem);\n if (!currentValue && currentValue !== 0) {\n currentValue = dataItem;\n }\n return currentValue;\n },\n _checkValue: function (dataItem) {\n var value = '';\n var indexOfValue = -1;\n var currentValue = this.value();\n var isMultiple = this.options.tagMode === 'multiple';\n if (dataItem || dataItem === 0) {\n if (dataItem.level) {\n dataItem._level = dataItem.level();\n }\n value = this._currentValue(dataItem);\n indexOfValue = currentValue.indexOf(value);\n }\n if (dataItem.checked) {\n var alreadyAddedTag = $.grep(this._tags, function (item) {\n return item.uid === dataItem._tagUid;\n });\n if (alreadyAddedTag.length) {\n return;\n }\n var itemToAdd = new ObservableObject(dataItem.toJSON());\n dataItem._tagUid = itemToAdd.uid;\n this._tags.push(itemToAdd);\n if (this._tags.length === 1) {\n this.span.hide();\n if (!isMultiple) {\n this._multipleTags.push(itemToAdd);\n }\n }\n if (indexOfValue === -1) {\n currentValue.push(value);\n this.setValue(currentValue);\n }\n } else {\n var itemToRemove = this._tags.find(function (item) {\n return item.uid === dataItem._tagUid;\n });\n var idx = this._tags.indexOf(itemToRemove);\n if (idx !== -1) {\n this._tags.splice(idx, 1);\n } else {\n this._treeViewCheckAllCheck(dataItem);\n return;\n }\n if (this._tags.length === 0) {\n this.span.show();\n if (!isMultiple) {\n this._multipleTags.splice(0, 1);\n }\n }\n if (indexOfValue !== -1) {\n currentValue.splice(indexOfValue, 1);\n this.setValue(currentValue);\n }\n }\n this._treeViewCheckAllCheck(dataItem);\n if (!this._preventChangeTrigger && !this._valueMethodCalled && !this._noInitialValue) {\n this.trigger(CHANGE);\n }\n if (this.options.autoClose && this.popup.visible()) {\n this.close();\n this.wrapper.focus();\n }\n this.popup.position();\n this._toggleCloseVisibility();\n this._updateSelectedOptions();\n },\n _updateSelectedOptions: function () {\n if (this.element[0].tagName.toLowerCase() !== 'select') {\n return;\n }\n var selectedItems = this._tags;\n var options = '';\n var dataItem = null;\n var value = null;\n if (selectedItems.length) {\n for (var idx = 0; idx < selectedItems.length; idx++) {\n dataItem = selectedItems[idx];\n value = this._value(dataItem);\n options += this._option(value, this._text(dataItem), true);\n }\n }\n this.element.html(options);\n },\n _option: function (dataValue, dataText, selected) {\n var option = '').attr({\n 'role': 'button',\n 'tabIndex': -1\n });\n }\n if (this.options.clearButton) {\n this._clear.insertAfter(this.span);\n this.wrapper.addClass('k-dropdowntree-clearable');\n } else {\n if (!this.options.clearButton) {\n this._clear.remove();\n }\n }\n },\n _toggleCloseVisibility: function () {\n var isReadOnly = this.element.attr(READONLY);\n var hasValue = this.value() && !this._isMultipleSelection() || this.value().length;\n var valueDoesNotEqualPlaceHolder = this.element.val() && this.element.val() !== this.options.placeholder;\n if (!isReadOnly && (hasValue || valueDoesNotEqualPlaceHolder)) {\n this._showClear();\n } else {\n this._hideClear();\n }\n },\n _showClear: function () {\n if (this._clear) {\n this._clear.removeClass(HIDDENCLASS);\n }\n },\n _hideClear: function () {\n if (this._clear) {\n this._clear.addClass(HIDDENCLASS);\n }\n },\n _openHandler: function (e) {\n this._adjustListWidth();\n if (this.trigger(OPEN)) {\n e.preventDefault();\n } else {\n this.wrapper.attr('aria-expanded', true);\n this.tree.attr('aria-hidden', false).attr('role', 'tree');\n }\n },\n _closeHandler: function (e) {\n if (this.trigger(CLOSE)) {\n e.preventDefault();\n } else {\n this.wrapper.attr('aria-expanded', false);\n this.tree.attr('aria-hidden', true);\n }\n },\n _treeview: function () {\n var that = this;\n if (that.options.height) {\n that.tree.css('max-height', that.options.height);\n }\n that.tree.attr('id', kendo.guid());\n that.treeview = new TreeView(that.tree, extend({}, that.options.treeview), that);\n that.dataSource = that.treeview.dataSource;\n that.treeview.bind('select', function (e) {\n that.trigger('select', e);\n });\n },\n _treeViewDataBound: function (e) {\n if (e.node && this._prev && this._prev.length) {\n e.sender.expand(e.node);\n }\n if (this._filtering) {\n if (!e.node) {\n this._filtering = false;\n }\n if (!this._isMultipleSelection()) {\n this._deselectItem(e);\n }\n return;\n }\n if (!this.treeview) {\n this.treeview = e.sender;\n }\n if (!e.node) {\n var rootItems = e.sender.dataSource.data();\n this._checkLoadedItems(rootItems);\n if (this._noInitialValue) {\n this._noInitialValue = false;\n }\n } else {\n var rootItem = e.sender.dataItem(e.node);\n if (rootItem) {\n var subItems = rootItem.children.data();\n this._checkLoadedItems(subItems);\n }\n }\n this.trigger('dataBound', e);\n },\n _deselectItem: function (e) {\n var items = [];\n if (!e.node) {\n items = e.sender.dataSource.data();\n } else {\n var rootItem = e.sender.dataItem(e.node);\n if (rootItem) {\n items = rootItem.children.data();\n }\n }\n for (var i = 0; i < items.length; i++) {\n if (items[i].selected && !this._valueComparer(items[i], this.value())) {\n items[i].set('selected', false);\n }\n }\n },\n _checkLoadedItems: function (items) {\n var value = this.value();\n if (!items) {\n return;\n }\n for (var idx = 0; idx < items.length; idx++) {\n this._selection._checkLoadedItem(items[idx], value);\n }\n },\n _treeViewCheckAllCheck: function (dataItem) {\n if (this.options.checkAll && this.checkAll) {\n this._getAllChecked();\n if (dataItem.checked) {\n this._checkCheckAll();\n } else {\n this._uncheckCheckAll();\n }\n }\n },\n _checkCheckAll: function () {\n var checkAllCheckbox = this.checkAll.find('.k-checkbox');\n if (this._allItemsAreChecked) {\n checkAllCheckbox.prop('checked', true).prop('indeterminate', false);\n } else {\n checkAllCheckbox.prop('indeterminate', true);\n }\n },\n _uncheckCheckAll: function () {\n var checkAllCheckbox = this.checkAll.find('.k-checkbox');\n if (this._allItemsAreUnchecked) {\n checkAllCheckbox.prop('checked', false).prop('indeterminate', false);\n } else {\n checkAllCheckbox.prop('indeterminate', true);\n }\n },\n _filterHeader: function () {\n var icon;\n if (this.filterInput) {\n this.filterInput.off(ns).parent().remove();\n this.filterInput = null;\n }\n if (this._isFilterEnabled()) {\n this._disableCheckChildren();\n icon = '';\n this.filterInput = $('').attr({\n placeholder: this.element.attr('placeholder'),\n title: this.element.attr('title'),\n role: 'listbox',\n 'aria-haspopup': true,\n 'aria-expanded': false\n });\n this.filterInput.on('input', proxy(this._filterChange, this));\n $('').insertBefore(this.tree).append(this.filterInput.add(icon));\n }\n },\n _filterChange: function () {\n if (this.filterInput) {\n this._search();\n }\n },\n _disableCheckChildren: function () {\n if (this._isMultipleSelection() && this.options.treeview.checkboxes && this.options.treeview.checkboxes.checkChildren) {\n this.options.treeview.checkboxes.checkChildren = false;\n }\n },\n _checkAll: function () {\n if (this.checkAll) {\n this.checkAll.find('.k-checkbox-label, .k-checkbox').off(ns);\n this.checkAll.remove();\n this.checkAll = null;\n }\n if (this._isMultipleSelection() && this.options.checkAll) {\n this.checkAll = $('
Check All
').insertBefore(this.tree);\n this.checkAll.find('.k-checkbox-label').html(kendo.template(this.options.checkAllTemplate)({ instance: this }));\n this.checkAll.find('.k-checkbox-label').on(CLICK + ns, proxy(this._clickCheckAll, this));\n this.checkAll.find('.k-checkbox').on('change' + ns, proxy(this._changeCheckAll, this)).on('keydown' + ns, proxy(this._keydownCheckAll, this));\n this._disabledCheckedItems = [];\n this._disabledUnCheckedItems = [];\n this._getAllChecked();\n if (!this._allItemsAreUnchecked) {\n this._checkCheckAll();\n }\n }\n },\n _changeCheckAll: function () {\n var checkAllCheckbox = this.checkAll.find('.k-checkbox');\n var isChecked = checkAllCheckbox.prop('checked');\n this._updateCheckAll(isChecked);\n },\n _updateCheckAll: function (isChecked) {\n var checkAllCheckbox = this.checkAll.find('.k-checkbox');\n this._toggleCheckAllItems(isChecked);\n checkAllCheckbox.prop('checked', isChecked);\n if (this._disabledCheckedItems.length && this._disabledUnCheckedItems.length) {\n checkAllCheckbox.prop('indeterminate', true);\n } else if (this._disabledCheckedItems.length) {\n checkAllCheckbox.prop('indeterminate', !isChecked);\n } else if (this._disabledUnCheckedItems.length) {\n checkAllCheckbox.prop('indeterminate', isChecked);\n } else {\n checkAllCheckbox.prop('indeterminate', false);\n }\n this._disabledCheckedItems = [];\n this._disabledUnCheckedItems = [];\n },\n _keydownCheckAll: function (e) {\n var key = e.keyCode;\n var altKey = e.altKey;\n if (altKey && key === keys.UP || key === keys.ESC || key === keys.TAB) {\n this.close();\n this.wrapper.focus();\n e.preventDefault();\n return;\n }\n if (key === keys.UP) {\n if (this.filterInput) {\n this.filterInput.focus();\n } else {\n this.wrapper.focus();\n }\n e.preventDefault();\n }\n if (key === keys.DOWN) {\n if (this.tree && this.tree.is(':visible')) {\n this.tree.focus();\n }\n e.preventDefault();\n }\n if (key === keys.SPACEBAR && (browser.msie || browser.edge)) {\n this._clickCheckAll();\n e.preventDefault();\n }\n },\n _clickCheckAll: function () {\n var checkAllCheckbox = this.checkAll.find('.k-checkbox');\n var isChecked = checkAllCheckbox.prop('checked');\n this._updateCheckAll(!isChecked);\n checkAllCheckbox.focus();\n },\n _dfs: function (items, action, prop) {\n for (var idx = 0; idx < items.length; idx++) {\n if (!this[action](items[idx], prop)) {\n break;\n }\n this._traverceChildren(items[idx], action, prop);\n }\n },\n _uncheckItemByUid: function (uid) {\n this._dfs(this.dataSource.data(), '_uncheckItemEqualsUid', uid);\n },\n _uncheckItemEqualsUid: function (item, uid) {\n if (item.enabled !== false && item._tagUid == uid) {\n item.set('checked', false);\n return false;\n }\n return true;\n },\n _selectItemByText: function (text) {\n this._dfs(this.dataSource.data(), '_itemEqualsText', text);\n },\n _itemEqualsText: function (item, text) {\n if (item.enabled !== false && this._text(item) === text) {\n this.treeview.select(this.treeview.findByUid(item.uid));\n this._selectValue(item);\n return false;\n }\n return true;\n },\n _selectItemByValue: function (value) {\n this._dfs(this.dataSource.data(), '_itemEqualsValue', value);\n },\n _itemEqualsValue: function (item, value) {\n if (item.enabled !== false && this._valueComparer(item, value)) {\n this.treeview.select(this.treeview.findByUid(item.uid));\n return false;\n }\n return true;\n },\n _checkItemByValue: function (value) {\n var items = this.treeview.dataItems();\n for (var idx = 0; idx < value.length; idx++) {\n this._dfs(items, '_checkItemEqualsValue', value[idx]);\n }\n },\n _checkItemEqualsValue: function (item, value) {\n if (item.enabled !== false && this._valueComparer(item, value)) {\n item.set('checked', true);\n return false;\n }\n return true;\n },\n _valueComparer: function (item, value) {\n var itemValue = this._value(item);\n var itemText;\n if (!this._isNullorUndefined(itemValue)) {\n if (this._isNullorUndefined(value)) {\n return false;\n }\n var newValue = this._value(value);\n if (newValue) {\n return itemValue == newValue;\n } else {\n return itemValue == value;\n }\n }\n itemText = this._text(item);\n if (itemText) {\n if (this._text(value)) {\n return itemText == this._text(value);\n } else {\n return itemText == value;\n }\n }\n return false;\n },\n _isNullorUndefined: function (value) {\n return value === undefined || value === null;\n },\n _getAllChecked: function () {\n this._allCheckedItems = [];\n this._allItemsAreChecked = true;\n this._allItemsAreUnchecked = true;\n this._dfs(this.dataSource.data(), '_getAllCheckedItems');\n return this._allCheckedItems;\n },\n _getAllCheckedItems: function (item) {\n if (this._allItemsAreChecked) {\n this._allItemsAreChecked = item.checked;\n }\n if (this._allItemsAreUnchecked) {\n this._allItemsAreUnchecked = !item.checked;\n }\n if (item.checked) {\n this._allCheckedItems.push(item);\n }\n return true;\n },\n _traverceChildren: function (item, action, prop) {\n var childrenField = item._childrenOptions && item._childrenOptions.schema ? item._childrenOptions.schema.data : null;\n var subItems = item[childrenField] || item.items || item.children;\n if (!subItems) {\n return;\n }\n this._dfs(subItems, action, prop);\n },\n _toggleCheckAllItems: function (checked) {\n this._dfs(this.dataSource.data(), '_checkAllCheckItem', checked);\n },\n _checkAllCheckItem: function (item, checked) {\n if (item.enabled === false) {\n if (item.checked) {\n this._disabledCheckedItems.push(item);\n } else {\n this._disabledUnCheckedItems.push(item);\n }\n } else {\n item.set('checked', checked);\n }\n return true;\n },\n _isFilterEnabled: function () {\n var filter = this.options.filter;\n return filter && filter !== 'none';\n },\n _editable: function (options) {\n var that = this;\n var element = that.element;\n var disable = options.disable;\n var readonly = options.readonly;\n var wrapper = that.wrapper.add(that.filterInput).off(ns);\n var dropDownWrapper = that._inputWrapper.off(HOVEREVENTS);\n if (that._isMultipleSelection()) {\n that.tagList.off(CLICK + ns);\n }\n if (!readonly && !disable) {\n element.removeAttr(DISABLED).removeAttr(READONLY);\n dropDownWrapper.removeClass(STATEDISABLED).on(HOVEREVENTS, that._toggleHover);\n that._clear.on('click' + ns, proxy(that._clearClick, that));\n wrapper.attr(TABINDEX, wrapper.data(TABINDEX)).attr(ARIA_DISABLED, false).attr(ARIA_READONLY, false).on('keydown' + ns, proxy(that._keydown, that)).on('focusin' + ns, proxy(that._focusinHandler, that)).on('focusout' + ns, proxy(that._focusoutHandler, that));\n that.wrapper.on(CLICK + ns, proxy(that._wrapperClick, that));\n if (this._isMultipleSelection()) {\n that.tagList.on(CLICK + ns, 'li.k-button', function (e) {\n $(e.currentTarget).addClass(FOCUSED);\n });\n that.tagList.on(CLICK + ns, '.k-select', function (e) {\n that._removeTagClick(e);\n });\n }\n } else if (disable) {\n wrapper.removeAttr(TABINDEX);\n dropDownWrapper.addClass(STATEDISABLED);\n } else {\n wrapper.attr(TABINDEX, wrapper.data(TABINDEX));\n dropDownWrapper.removeClass(STATEDISABLED);\n wrapper.on('focusin' + ns, proxy(that._focusinHandler, that)).on('focusout' + ns, proxy(that._focusoutHandler, that));\n }\n element.attr(DISABLED, disable).attr(READONLY, readonly);\n wrapper.attr(ARIA_DISABLED, disable).attr(ARIA_READONLY, readonly);\n },\n _focusinHandler: function () {\n this._inputWrapper.addClass(FOCUSED);\n this._prevent = false;\n },\n _focusoutHandler: function () {\n var that = this;\n if (this._isMultipleSelection()) {\n this.tagList.find(DOT + FOCUSED).removeClass(FOCUSED);\n }\n if (!that._prevent) {\n this._inputWrapper.removeClass(FOCUSED);\n that._prevent = true;\n that.element.blur();\n }\n },\n _toggle: function (open) {\n open = open !== undefined ? open : !this.popup.visible();\n this[open ? OPEN : CLOSE]();\n },\n _wrapperClick: function (e) {\n e.preventDefault();\n this.popup.unbind('activate', this._focusInputHandler);\n this._focused = this.wrapper;\n this._prevent = false;\n this._toggle();\n },\n _toggleHover: function (e) {\n $(e.currentTarget).toggleClass(HOVER, e.type === 'mouseenter');\n },\n _focusInput: function () {\n if (this.filterInput) {\n this.filterInput.focus();\n } else if (this.checkAll) {\n this.checkAll.find('.k-checkbox').focus();\n } else if (this.tree.is(':visible')) {\n this.tree[0].focus({ preventScroll: true });\n this._ie11PreventScrollOnFocus();\n }\n },\n _ie11PreventScrollOnFocus: function () {\n if (browser.msie && browser.version == 11) {\n var popup = this.popup;\n popup._toggleResize(false);\n setTimeout(function () {\n popup._toggleResize(true);\n }, 50);\n }\n },\n _keydown: function (e) {\n var key = e.keyCode;\n var altKey = e.altKey;\n var isFilterInputActive;\n var isWrapperActive;\n var focused, tagItem;\n var isPopupVisible = this.popup.visible();\n if (this.filterInput) {\n isFilterInputActive = this.filterInput[0] === activeElement();\n }\n if (this.wrapper) {\n isWrapperActive = this.wrapper[0] === activeElement();\n }\n if (isWrapperActive) {\n if (key === keys.ESC) {\n this._clearTextAndValue();\n e.preventDefault();\n return;\n }\n if (this._isMultipleSelection()) {\n if (key === keys.LEFT) {\n this._focusPrevTag();\n e.preventDefault();\n return;\n }\n if (key === keys.RIGHT) {\n this._focusNextTag();\n e.preventDefault();\n return;\n }\n if (key === keys.HOME) {\n this._focusFirstTag();\n e.preventDefault();\n return;\n }\n if (key === keys.END) {\n this._focusLastTag();\n e.preventDefault();\n return;\n }\n if (key === keys.DELETE) {\n focused = this.tagList.find(DOT + FOCUSED).first();\n if (focused.length) {\n tagItem = this._tags[focused.index()];\n this._removeTag(tagItem);\n }\n e.preventDefault();\n return;\n }\n if (key === keys.BACKSPACE) {\n focused = this.tagList.find(DOT + FOCUSED).first();\n if (focused.length) {\n tagItem = this._tags[focused.index()];\n this._removeTag(tagItem);\n } else {\n focused = this._focusLastTag();\n if (focused.length) {\n tagItem = this._tags[focused.index()];\n this._removeTag(tagItem);\n }\n }\n e.preventDefault();\n return;\n }\n }\n }\n if (isFilterInputActive) {\n if (key === keys.ESC) {\n this._clearFilter();\n }\n if (key === keys.UP && !altKey) {\n this.wrapper.focus();\n e.preventDefault();\n }\n if (browser.msie && browser.version < 10) {\n if (key === keys.BACKSPACE || key === keys.DELETE) {\n this._search();\n }\n }\n if (key === keys.TAB) {\n this.close();\n this.wrapper.focus();\n e.preventDefault();\n return;\n }\n }\n if (altKey && key === keys.UP || key === keys.ESC) {\n this.close();\n this.wrapper.focus();\n e.preventDefault();\n return;\n }\n if (key === keys.ENTER && this._typingTimeout && this.filterInput && isPopupVisible) {\n e.preventDefault();\n return;\n }\n if (key === keys.SPACEBAR && !isFilterInputActive) {\n this._toggle(!isPopupVisible);\n e.preventDefault();\n }\n if (altKey && key === keys.DOWN && !isPopupVisible) {\n this.open();\n e.preventDefault();\n }\n if (key === keys.DOWN && isPopupVisible) {\n if (this.filterInput && !isFilterInputActive) {\n this.filterInput.focus();\n } else if (this.checkAll && this.checkAll.is(':visible')) {\n this.checkAll.find('input').focus();\n } else if (this.tree.is(':visible')) {\n this.tree[0].focus({ preventScroll: true });\n this._ie11PreventScrollOnFocus();\n }\n e.preventDefault();\n }\n if (key === keys.TAB && isPopupVisible) {\n this.close();\n this.wrapper.focus();\n e.preventDefault();\n }\n },\n _focusPrevTag: function () {\n var focused = this.tagList.find(DOT + FOCUSED);\n if (focused.length) {\n var activedescendant = this.wrapper.attr('aria-activedescendant');\n focused.first().removeClass(FOCUSED).removeAttr('id').prev().addClass(FOCUSED).attr('id', activedescendant);\n this.wrapper.attr('aria-activedescendant', activedescendant);\n } else {\n this._focusLastTag();\n }\n },\n _focusNextTag: function () {\n var focused = this.tagList.find(DOT + FOCUSED);\n if (focused.length) {\n var activedescendant = this.wrapper.attr('aria-activedescendant');\n focused.first().removeClass(FOCUSED).removeAttr('id').next().addClass(FOCUSED).attr('id', activedescendant);\n this.wrapper.attr('aria-activedescendant', activedescendant);\n } else {\n this._focusFirstTag();\n }\n },\n _focusFirstTag: function () {\n var activedescendant = this.wrapper.attr('aria-activedescendant');\n this._clearDisabledTag();\n var firstTag = this.tagList.children('li').first().addClass(FOCUSED).attr('id', activedescendant);\n this.wrapper.attr('aria-activedescendant', activedescendant);\n return firstTag;\n },\n _focusLastTag: function () {\n var activedescendant = this.wrapper.attr('aria-activedescendant');\n this._clearDisabledTag();\n var lastTag = this.tagList.children('li').last().addClass(FOCUSED).attr('id', activedescendant);\n this.wrapper.attr('aria-activedescendant', activedescendant);\n return lastTag;\n },\n _clearDisabledTag: function () {\n this.tagList.find(DOT + FOCUSED).removeClass(FOCUSED).removeAttr('id');\n },\n _search: function () {\n var that = this;\n clearTimeout(that._typingTimeout);\n that._typingTimeout = setTimeout(function () {\n var value = that.filterInput.val();\n if (that._prev !== value) {\n that._prev = value;\n that.search(value);\n }\n that._typingTimeout = null;\n }, that.options.delay);\n },\n _clearFilter: function () {\n if (this.filterInput.val().length) {\n this.filterInput.val('');\n this._prev = '';\n this._filtering = true;\n this.treeview.dataSource.filter({});\n }\n },\n _removeTagClick: function (e) {\n e.stopPropagation();\n var tagItem = this._tags[$(e.currentTarget.parentElement).index()];\n this._removeTag(tagItem);\n },\n _removeTag: function (tagItem) {\n if (!tagItem) {\n return;\n }\n var uid = tagItem.uid;\n this._uncheckItemByUid(uid);\n }\n });\n function assign(instance, fields, value) {\n var idx = 0, lastIndex = fields.length - 1, field;\n for (; idx < lastIndex; ++idx) {\n field = fields[idx];\n if (!(field in instance)) {\n instance[field] = {};\n }\n instance = instance[field];\n }\n instance[fields[lastIndex]] = value;\n }\n ui.plugin(DropDownTree);\n var SingleSelection = kendo.Class.extend({\n init: function (view) {\n this._dropdowntree = view;\n },\n _initWrapper: function () {\n this._wrapper();\n this._span();\n },\n _preselect: function (data) {\n var dropdowntree = this._dropdowntree;\n dropdowntree._selectValue(data);\n },\n _wrapper: function () {\n var dropdowntree = this._dropdowntree, element = dropdowntree.element, DOMelement = element[0], wrapper;\n wrapper = element.parent();\n if (!wrapper.is('span.k-widget')) {\n wrapper = element.wrap('').parent();\n wrapper[0].style.cssText = DOMelement.style.cssText;\n wrapper[0].title = DOMelement.title;\n }\n dropdowntree._focused = dropdowntree.wrapper = wrapper.addClass('k-widget k-dropdowntree').addClass(DOMelement.className).removeClass('input-validation-error').css('display', '').attr({\n accesskey: element.attr('accesskey'),\n unselectable: 'on',\n role: 'listbox',\n 'aria-haspopup': true,\n 'aria-expanded': false\n });\n element.hide().removeAttr('accesskey');\n },\n _span: function () {\n var dropdowntree = this._dropdowntree, wrapper = dropdowntree.wrapper, SELECTOR = 'span.k-input', span;\n span = wrapper.find(SELECTOR);\n if (!span[0]) {\n wrapper.append(' ').append(dropdowntree.element);\n span = wrapper.find(SELECTOR);\n }\n dropdowntree.span = span;\n dropdowntree._inputWrapper = $(wrapper[0].firstChild);\n dropdowntree._arrow = wrapper.find('.k-select');\n dropdowntree._arrowIcon = dropdowntree._arrow.find('.k-icon');\n },\n _setValue: function (value) {\n var dropdowntree = this._dropdowntree;\n var currentValue;\n if (value === undefined || value === null) {\n currentValue = dropdowntree._values.slice()[0];\n value = typeof currentValue === 'object' ? currentValue : dropdowntree._accessor() || currentValue;\n return value === undefined || value === null ? '' : value;\n }\n dropdowntree._valueMethodCalled = true;\n if (value.length === 0) {\n dropdowntree._clearTextAndValue();\n dropdowntree._valueMethodCalled = false;\n return;\n }\n dropdowntree._selectItemByValue(value);\n dropdowntree._toggleCloseVisibility();\n },\n _clearValue: function () {\n var dropdowntree = this._dropdowntree;\n var selectedNode = dropdowntree.treeview.select();\n if (dropdowntree.treeview.dataItem(selectedNode)) {\n dropdowntree.treeview.dataItem(selectedNode).set('selected', false);\n if (!dropdowntree._valueMethodCalled) {\n dropdowntree.trigger(CHANGE);\n }\n }\n },\n _checkLoadedItem: function (tempItem, value) {\n var dropdowntree = this._dropdowntree;\n if (!dropdowntree._isNullorUndefined(value) && value !== '') {\n if (dropdowntree._valueComparer(tempItem, value)) {\n dropdowntree._preventChangeTrigger = true;\n tempItem.set('selected', true);\n dropdowntree._preventChangeTrigger = false;\n } else if (tempItem.selected) {\n dropdowntree.treeview.select(dropdowntree.treeview.findByUid(tempItem.uid));\n }\n } else if (!value && tempItem.selected) {\n dropdowntree.treeview.select(dropdowntree.treeview.findByUid(tempItem.uid));\n }\n }\n });\n var MultipleSelection = kendo.Class.extend({\n init: function (view) {\n this._dropdowntree = view;\n },\n _initWrapper: function () {\n var dropdowntree = this._dropdowntree;\n this._tagTemplate();\n dropdowntree.element.attr('multiple', 'multiple').hide();\n this._wrapper();\n dropdowntree._tags = new ObservableArray([]);\n dropdowntree._multipleTags = new ObservableArray([]);\n this._tagList();\n dropdowntree.span = $(' ').insertAfter(dropdowntree.tagList);\n dropdowntree._inputWrapper = $(dropdowntree.wrapper[0].firstChild);\n },\n _preselect: function (data, value) {\n var dropdowntree = this._dropdowntree;\n var valueToSelect = value || dropdowntree.options.value;\n if (!$.isArray(data) && !(data instanceof kendo.data.ObservableArray)) {\n data = [data];\n }\n if ($.isPlainObject(data[0]) || data[0] instanceof kendo.data.ObservableObject || !dropdowntree.options.dataValueField) {\n dropdowntree.dataSource.data(data);\n dropdowntree.value(valueToSelect);\n }\n },\n _tagTemplate: function () {\n var dropdowntree = this._dropdowntree;\n var options = dropdowntree.options;\n var tagTemplate = options.valueTemplate;\n var isMultiple = options.tagMode === 'multiple';\n var singleTag = options.messages.singleTag;\n tagTemplate = tagTemplate ? kendo.template(tagTemplate) : dropdowntree.valueTemplate;\n dropdowntree.valueTemplate = function (data) {\n if (isMultiple) {\n return '
  • ' + '' + tagTemplate(data) + '' + '' + '' + '' + '
  • ';\n }\n return '
  • ' + '' + ' ' + singleTag + '' + '
  • ';\n };\n },\n _wrapper: function () {\n var dropdowntree = this._dropdowntree, element = dropdowntree.element, wrapper = element.parent('span.k-dropdowntree');\n if (!wrapper[0]) {\n wrapper = element.wrap('
    ').parent();\n wrapper[0].style.cssText = element[0].style.cssText;\n wrapper[0].title = element[0].title;\n $('
    ').insertBefore(element);\n }\n dropdowntree.wrapper = wrapper.addClass(element[0].className).css('display', '').attr({\n role: 'listbox',\n 'aria-activedescendant': kendo.guid(),\n 'aria-haspopup': true,\n 'aria-expanded': false\n });\n dropdowntree._innerWrapper = $(wrapper[0].firstChild);\n },\n _tagList: function () {\n var dropdowntree = this._dropdowntree, tagList = dropdowntree._innerWrapper.children('ul');\n if (!tagList[0]) {\n var isMultiple = dropdowntree.options.tagMode === 'multiple';\n var tagCollection = isMultiple ? 'tags' : 'multipleTag';\n tagList = $('
      ').appendTo(dropdowntree._innerWrapper);\n }\n dropdowntree.tagList = tagList;\n dropdowntree.tagList.attr('id', kendo.guid() + '_tagList');\n dropdowntree.wrapper.attr('aria-owns', dropdowntree.tagList.attr('id'));\n var viewModel = kendo.observable({\n multipleTag: dropdowntree._multipleTags,\n tags: dropdowntree._tags,\n tagTemplate: dropdowntree.valueTemplate\n });\n kendo.bind(dropdowntree.tagList, viewModel);\n dropdowntree.tagList.attr('data-stop', true);\n },\n _setValue: function (value) {\n var dropdowntree = this._dropdowntree;\n var oldValues = dropdowntree._values;\n if (value === undefined || value === null) {\n return dropdowntree._values.slice();\n }\n dropdowntree.setValue(value);\n dropdowntree._valueMethodCalled = true;\n if (value.length) {\n this._removeValues(oldValues, value);\n dropdowntree._checkItemByValue(value);\n } else {\n dropdowntree._clearTextAndValue();\n }\n dropdowntree._valueMethodCalled = false;\n dropdowntree._toggleCloseVisibility();\n },\n _removeValues: function (oldValues, value) {\n var dropdowntree = this._dropdowntree;\n var removedValues = this._getNewValues(oldValues, value);\n for (var idx = 0; idx < removedValues.length; idx++) {\n for (var j = 0; j < dropdowntree._tags.length; j++) {\n if (dropdowntree._valueComparer(dropdowntree._tags[j], removedValues[idx])) {\n dropdowntree._uncheckItemByUid(dropdowntree._tags[j].uid);\n }\n }\n }\n },\n _getNewValues: function (oldValues, value) {\n var removedValues = [];\n for (var idx = 0; idx < oldValues.length; idx++) {\n if (value.indexOf(oldValues[idx]) === -1) {\n removedValues.push(oldValues[idx]);\n }\n }\n return removedValues;\n },\n _clearValue: function () {\n var dropdowntree = this._dropdowntree;\n var tagsArray = dropdowntree._tags.slice();\n for (var idx = 0; idx < tagsArray.length; idx++) {\n var uid = tagsArray[idx].uid;\n dropdowntree._preventChangeTrigger = true;\n dropdowntree._uncheckItemByUid(uid);\n }\n if (tagsArray.length) {\n dropdowntree._preventChangeTrigger = false;\n if (!dropdowntree._valueMethodCalled) {\n dropdowntree.trigger(CHANGE);\n }\n }\n },\n _checkLoadedItem: function (tempItem, value) {\n var dropdowntree = this._dropdowntree;\n if (dropdowntree._noInitialValue && tempItem.checked) {\n dropdowntree._checkValue(tempItem);\n return;\n }\n if ((value.length || this._isDataSourceSet) && (value.indexOf(dropdowntree._currentValue(tempItem)) !== -1 || value.indexOf(tempItem)) !== -1 && !this._findTag(dropdowntree._currentValue(tempItem))) {\n if (tempItem.checked) {\n dropdowntree._checkValue(tempItem);\n } else {\n dropdowntree._preventChangeTrigger = true;\n tempItem.set('checked', true);\n dropdowntree._preventChangeTrigger = false;\n }\n }\n },\n _findTag: function (tempItemValue) {\n var dropdowntree = this._dropdowntree;\n return dropdowntree._tags.find(function (item) {\n return dropdowntree._valueComparer(item, tempItemValue);\n });\n }\n });\n kendo.ui.DropDownTree.SingleSelection = SingleSelection;\n kendo.ui.DropDownTree.MultipleSelection = MultipleSelection;\n }(window.kendo.jQuery));\n return window.kendo;\n}, typeof define == 'function' && define.amd ? define : function (a1, a2, a3) {\n (a3 || a2)();\n}));"]}