{"version":3,"sources":["kendo.dropdownlist.js"],"names":["f","define","$","undefined","assign","instance","fields","value","field","idx","lastIndex","length","normalizeIndex","index","sameCharsOnly","word","character","charAt","kendo","window","ui","List","Select","support","activeElement","_activeElement","ObservableObject","data","keys","ns","DISABLED","READONLY","CHANGE","FOCUSED","DEFAULT","STATEDISABLED","ARIA_DISABLED","HOVEREVENTS","TABINDEX","STATE_FILTER","STATE_ACCEPT","MSG_INVALID_OPTION_LABEL","proxy","DropDownList","extend","init","element","options","optionLabel","text","disabled","that","this","isArray","dataSource","fn","call","on","_focusHandler","_focusInputHandler","_focusInput","_optionLabel","_inputTemplate","_reset","_prev","_word","_wrapper","_tabindex","wrapper","attr","_span","_popup","_mobile","_dataSource","_ignoreCase","_filterHeader","_aria","_enable","_oldIndex","selectedIndex","_initialIndex","requireValueMapper","_initList","_cascade","autoBind","fetch","_isSelect","children","_textAccessor","parents","is","enable","listView","bind","e","preventDefault","notify","name","enabled","delay","height","dataTextField","dataValueField","cascadeFrom","cascadeFromField","ignoreCase","animation","filter","minLength","enforceMinLength","virtual","template","valueTemplate","optionLabelTemplate","groupTemplate","fixedGroupTemplate","events","setOptions","_listOptions","_accessors","hasOptionLabel","select","destroy","off","_inputWrapper","_arrow","open","popup","visible","bound","_state","_allowOpening","one","_resizeFilterInput","_focusItem","_open","filterInput","val","refresh","_filterSource","_focusElement","isInputActive","caret","originalPrevent","_prevent","css","focus","toggle","_toggle","current","candidate","_focus","dataItem","selectedDataItems","getByUid","hasClass","items","flatView","_optionLabelDataItem","loweredText","toLowerCase","_select","_text","done","_clearFilter","_accessor","trigger","_request","_valueSetter","unbind","_isFilterEnabled","isFiltered","_fetchData","_old","expr","prependTo","list","html","click","_click","_toggleHover","angular","elements","remove","_optionLabelText","isPlainObject","_assignInstance","_buildOptions","optionLabelValue","_value","_options","unifyType","_customOption","_custom","_listBound","initialIndex","filtered","_presetValue","_renderFooter","_renderNoData","_toggleNoData","_resizePopup","position","_makeUnselectable","_fetch","_selectValue","_hideBusy","_listChange","_filterPaste","_search","_focusinHandler","addClass","_focusoutHandler","shouldTrigger","isIFrame","self","top","focusedItem","_getElementDataItem","clearTimeout","_typingTimeout","mobileOS","ios","_change","_blur","removeClass","blur","item","view","_wrapperMousedown","_wrapperClick","_focused","_editable","disable","readonly","add","dropDownWrapper","removeAttr","_keydown","_keypress","handled","key","keyCode","altKey","isPopupVisible","LEFT","UP","RIGHT","DOWN","ESC","ENTER","_move","HOME","_firstItem","END","_lastItem","_matchText","indexOf","_shuffleData","splitIndex","optionDataItem","concat","slice","_selectNext","oldFocusedItem","dataLength","isInLoop","_last","startIndex","toJSON","which","String","fromCharCode","charCode","_popupOpen","wrap","closest","dataItemByIndex","getElementIndex","currentTarget","close","_userTriggered","active","compareElement","touchEnabled","touch","MSPointers","pointers","_searchByWord","_inputValue","setTimeout","search","_get","found","isFunction","jQueryCandidate","focusFirst","_resetOptionLabel","focusLast","_nextItem","focusNext","_prevItem","focusPrev","highlightFirst","scrollToIndex","additionalClass","_optionID","keepState","_dataValue","_triggerCascade","root","eq","effects","android","meego","wp","icon","parent","placeholder","title","role","aria-haspopup","aria-expanded","prepend","append","span","SELECTOR","find","firstChild","DOMelement","style","cssText","className","accesskey","unselectable","hide","_clearSelection","useWithBlock","Error","getElements","optionLabelText","get","_preselect","setValue","split","plugin","jQuery","amd","a1","a2","a3"],"mappings":"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","file":"kendo.dropdownlist.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.dropdownlist', [\n 'kendo.list',\n 'kendo.mobile.scroller'\n ], f);\n}(function () {\n var __meta__ = {\n id: 'dropdownlist',\n name: 'DropDownList',\n category: 'web',\n description: 'The DropDownList widget displays a list of values and allows the selection of a single value from the list.',\n depends: ['list'],\n features: [\n {\n id: 'mobile-scroller',\n name: 'Mobile scroller',\n description: 'Support for kinetic scrolling in mobile device',\n depends: ['mobile.scroller']\n },\n {\n id: 'virtualization',\n name: 'VirtualList',\n description: 'Support for virtualization',\n depends: ['virtuallist']\n }\n ]\n };\n (function ($, undefined) {\n var kendo = window.kendo, ui = kendo.ui, List = ui.List, Select = ui.Select, support = kendo.support, activeElement = kendo._activeElement, ObservableObject = kendo.data.ObservableObject, keys = kendo.keys, ns = '.kendoDropDownList', DISABLED = 'disabled', READONLY = 'readonly', CHANGE = 'change', FOCUSED = 'k-state-focused', DEFAULT = 'k-state-default', STATEDISABLED = 'k-state-disabled', ARIA_DISABLED = 'aria-disabled', HOVEREVENTS = 'mouseenter' + ns + ' mouseleave' + ns, TABINDEX = 'tabindex', STATE_FILTER = 'filter', STATE_ACCEPT = 'accept', MSG_INVALID_OPTION_LABEL = 'The `optionLabel` option is not valid due to missing fields. Define a custom optionLabel as shown here http://docs.telerik.com/kendo-ui/api/javascript/ui/dropdownlist#configuration-optionLabel', proxy = $.proxy;\n var DropDownList = Select.extend({\n init: function (element, options) {\n var that = this;\n var index = options && options.index;\n var optionLabel, text, disabled;\n that.ns = ns;\n options = $.isArray(options) ? { dataSource: options } : options;\n Select.fn.init.call(that, element, options);\n options = that.options;\n element = that.element.on('focus' + ns, proxy(that._focusHandler, that));\n that._focusInputHandler = $.proxy(that._focusInput, that);\n that.optionLabel = $();\n that._optionLabel();\n that._inputTemplate();\n that._reset();\n that._prev = '';\n that._word = '';\n that._wrapper();\n that._tabindex();\n that.wrapper.data(TABINDEX, that.wrapper.attr(TABINDEX));\n that._span();\n that._popup();\n that._mobile();\n that._dataSource();\n that._ignoreCase();\n that._filterHeader();\n that._aria();\n that._enable();\n that._oldIndex = that.selectedIndex = -1;\n if (index !== undefined) {\n options.index = index;\n }\n that._initialIndex = options.index;\n that.requireValueMapper(that.options);\n that._initList();\n that._cascade();\n if (options.autoBind) {\n that.dataSource.fetch();\n } else if (that.selectedIndex === -1) {\n text = options.text || '';\n if (!text) {\n optionLabel = options.optionLabel;\n if (optionLabel && options.index === 0) {\n text = optionLabel;\n } else if (that._isSelect) {\n text = element.children(':selected').text();\n }\n }\n that._textAccessor(text);\n }\n disabled = $(that.element).parents('fieldset').is(':disabled');\n if (disabled) {\n that.enable(false);\n }\n that.listView.bind('click', function (e) {\n e.preventDefault();\n });\n kendo.notify(that);\n },\n options: {\n name: 'DropDownList',\n enabled: true,\n autoBind: true,\n index: 0,\n text: null,\n value: null,\n delay: 500,\n height: 200,\n dataTextField: '',\n dataValueField: '',\n optionLabel: '',\n cascadeFrom: '',\n cascadeFromField: '',\n ignoreCase: true,\n animation: {},\n filter: 'none',\n minLength: 1,\n enforceMinLength: false,\n virtual: false,\n template: null,\n valueTemplate: null,\n optionLabelTemplate: null,\n groupTemplate: '#:data#',\n fixedGroupTemplate: '#:data#'\n },\n events: [\n 'open',\n 'close',\n CHANGE,\n 'select',\n 'filtering',\n 'dataBinding',\n 'dataBound',\n 'cascade',\n 'set'\n ],\n setOptions: function (options) {\n Select.fn.setOptions.call(this, options);\n this.listView.setOptions(this._listOptions(options));\n this._optionLabel();\n this._inputTemplate();\n this._accessors();\n this._filterHeader();\n this._enable();\n this._aria();\n if (!this.value() && this.hasOptionLabel()) {\n this.select(0);\n }\n },\n destroy: function () {\n var that = this;\n Select.fn.destroy.call(that);\n that.wrapper.off(ns);\n that.element.off(ns);\n that._inputWrapper.off(ns);\n that._arrow.off();\n that._arrow = null;\n that.optionLabel.off();\n },\n open: function () {\n var that = this;\n if (that.popup.visible()) {\n return;\n }\n if (!that.listView.bound() || that._state === STATE_ACCEPT) {\n that._open = true;\n that._state = 'rebind';\n if (that.filterInput) {\n that.filterInput.val('');\n that._prev = '';\n }\n if (that.filterInput && that.options.minLength !== 1) {\n that.refresh();\n that.popup.one('activate', that._focusInputHandler);\n that.popup.open();\n that._resizeFilterInput();\n } else {\n that._filterSource();\n }\n } else if (that._allowOpening()) {\n that.popup.one('activate', that._focusInputHandler);\n that.popup.open();\n that._resizeFilterInput();\n that._focusItem();\n }\n },\n _focusInput: function () {\n this._focusElement(this.filterInput);\n },\n _resizeFilterInput: function () {\n var filterInput = this.filterInput;\n var originalPrevent = this._prevent;\n if (!filterInput) {\n return;\n }\n var isInputActive = this.filterInput[0] === activeElement();\n var caret = kendo.caret(this.filterInput[0])[0];\n this._prevent = true;\n filterInput.css('display', 'none').css('width', this.popup.element.css('width')).css('display', 'inline-block');\n if (isInputActive) {\n filterInput.focus();\n kendo.caret(filterInput[0], caret);\n }\n this._prevent = originalPrevent;\n },\n _allowOpening: function () {\n return this.hasOptionLabel() || this.filterInput || Select.fn._allowOpening.call(this);\n },\n toggle: function (toggle) {\n this._toggle(toggle, true);\n },\n current: function (candidate) {\n var current;\n if (candidate === undefined) {\n current = this.listView.focus();\n if (!current && this.selectedIndex === 0 && this.hasOptionLabel()) {\n return this.optionLabel;\n }\n return current;\n }\n this._focus(candidate);\n },\n dataItem: function (index) {\n var that = this;\n var dataItem = null;\n if (index === null) {\n return index;\n }\n if (index === undefined) {\n dataItem = that.listView.selectedDataItems()[0];\n } else {\n if (typeof index !== 'number') {\n if (that.options.virtual) {\n return that.dataSource.getByUid($(index).data('uid'));\n }\n if (index.hasClass('k-list-optionlabel')) {\n index = -1;\n } else {\n index = $(that.items()).index(index);\n }\n } else if (that.hasOptionLabel()) {\n index -= 1;\n }\n dataItem = that.dataSource.flatView()[index];\n }\n if (!dataItem) {\n dataItem = that._optionLabelDataItem();\n }\n return dataItem;\n },\n refresh: function () {\n this.listView.refresh();\n },\n text: function (text) {\n var that = this;\n var loweredText;\n var ignoreCase = that.options.ignoreCase;\n text = text === null ? '' : text;\n if (text !== undefined) {\n if (typeof text !== 'string') {\n that._textAccessor(text);\n return;\n }\n loweredText = ignoreCase ? text.toLowerCase() : text;\n that._select(function (data) {\n data = that._text(data);\n if (ignoreCase) {\n data = (data + '').toLowerCase();\n }\n return data === loweredText;\n }).done(function () {\n that._textAccessor(that.dataItem() || text);\n });\n } else {\n return that._textAccessor();\n }\n },\n _clearFilter: function () {\n $(this.filterInput).val('');\n Select.fn._clearFilter.call(this);\n },\n value: function (value) {\n var that = this;\n var listView = that.listView;\n var dataSource = that.dataSource;\n if (value === undefined) {\n value = that._accessor() || that.listView.value()[0];\n return value === undefined || value === null ? '' : value;\n }\n that.requireValueMapper(that.options, value);\n if (value || !that.hasOptionLabel()) {\n that._initialIndex = null;\n }\n this.trigger('set', { value: value });\n if (that._request && that.options.cascadeFrom && that.listView.bound()) {\n if (that._valueSetter) {\n dataSource.unbind(CHANGE, that._valueSetter);\n }\n that._valueSetter = proxy(function () {\n that.value(value);\n }, that);\n dataSource.one(CHANGE, that._valueSetter);\n return;\n }\n if (that._isFilterEnabled() && listView.bound() && listView.isFiltered()) {\n that._clearFilter();\n } else {\n that._fetchData();\n }\n listView.value(value).done(function () {\n if (that.selectedIndex === -1 && that.text()) {\n that.text('');\n that._accessor('', -1);\n }\n that._old = that._accessor();\n that._oldIndex = that.selectedIndex;\n });\n },\n hasOptionLabel: function () {\n return this.optionLabel && !!this.optionLabel[0];\n },\n _optionLabel: function () {\n var that = this;\n var options = that.options;\n var optionLabel = options.optionLabel;\n var template = options.optionLabelTemplate;\n if (!optionLabel) {\n that.optionLabel.off().remove();\n that.optionLabel = $();\n return;\n }\n if (!template) {\n template = '#:';\n if (typeof optionLabel === 'string') {\n template += 'data';\n } else {\n template += kendo.expr(options.dataTextField, 'data');\n }\n template += '#';\n }\n if (typeof template !== 'function') {\n template = kendo.template(template);\n }\n that.optionLabelTemplate = template;\n if (!that.hasOptionLabel()) {\n that.optionLabel = $('
').prependTo(that.list);\n }\n that.optionLabel.html(template(optionLabel)).off().click(proxy(that._click, that)).on(HOVEREVENTS, that._toggleHover);\n that.angular('compile', function () {\n return {\n elements: that.optionLabel,\n data: [{ dataItem: that._optionLabelDataItem() }]\n };\n });\n },\n _optionLabelText: function () {\n var optionLabel = this.options.optionLabel;\n return typeof optionLabel === 'string' ? optionLabel : this._text(optionLabel);\n },\n _optionLabelDataItem: function () {\n var that = this;\n var optionLabel = that.options.optionLabel;\n if (that.hasOptionLabel()) {\n return $.isPlainObject(optionLabel) ? new ObservableObject(optionLabel) : that._assignInstance(that._optionLabelText(), '');\n }\n return null;\n },\n _buildOptions: function (data) {\n var that = this;\n if (!that._isSelect) {\n return;\n }\n var value = that.listView.value()[0];\n var optionLabel = that._optionLabelDataItem();\n var optionLabelValue = optionLabel && that._value(optionLabel);\n if (value === undefined || value === null) {\n value = '';\n }\n if (optionLabel) {\n if (optionLabelValue === undefined || optionLabelValue === null) {\n optionLabelValue = '';\n }\n optionLabel = '';\n }\n that._options(data, optionLabel, value);\n if (value !== List.unifyType(that._accessor(), typeof value)) {\n that._customOption = null;\n that._custom(value);\n }\n },\n _listBound: function () {\n var that = this;\n var initialIndex = that._initialIndex;\n var filtered = that._state === STATE_FILTER;\n var data = that.dataSource.flatView();\n var dataItem;\n that._presetValue = false;\n that._renderFooter();\n that._renderNoData();\n that._toggleNoData(!data.length);\n that._resizePopup(true);\n that.popup.position();\n that._buildOptions(data);\n that._makeUnselectable();\n if (!filtered) {\n if (that._open) {\n that.toggle(that._allowOpening());\n }\n that._open = false;\n if (!that._fetch) {\n if (data.length) {\n if (!that.listView.value().length && initialIndex > -1 && initialIndex !== null) {\n that.select(initialIndex);\n }\n that._initialIndex = null;\n dataItem = that.listView.selectedDataItems()[0];\n if (dataItem && that.text() !== that._text(dataItem)) {\n that._selectValue(dataItem);\n }\n } else if (that._textAccessor() !== that._optionLabelText()) {\n that.listView.value('');\n that._selectValue(null);\n that._oldIndex = that.selectedIndex;\n }\n }\n }\n that._hideBusy();\n that.trigger('dataBound');\n },\n _listChange: function () {\n this._selectValue(this.listView.selectedDataItems()[0]);\n if (this._presetValue || this._old && this._oldIndex === -1) {\n this._oldIndex = this.selectedIndex;\n }\n },\n _filterPaste: function () {\n this._search();\n },\n _focusHandler: function () {\n this.wrapper.focus();\n },\n _focusinHandler: function () {\n this._inputWrapper.addClass(FOCUSED);\n this._prevent = false;\n },\n _focusoutHandler: function () {\n var that = this;\n var filtered = that._state === STATE_FILTER;\n var isIFrame = window.self !== window.top;\n var focusedItem = that._focus();\n var dataItem = that._getElementDataItem(focusedItem);\n var shouldTrigger;\n if (!that._prevent) {\n clearTimeout(that._typingTimeout);\n var done = function () {\n if (support.mobileOS.ios && isIFrame) {\n that._change();\n } else {\n that._blur();\n }\n that._inputWrapper.removeClass(FOCUSED);\n that._prevent = true;\n that._open = false;\n that.element.blur();\n };\n shouldTrigger = !filtered && focusedItem && that._value(dataItem) !== that.value();\n if (shouldTrigger && !that.trigger('select', {\n dataItem: dataItem,\n item: focusedItem\n })) {\n that._select(focusedItem, !that.dataSource.view().length).done(done);\n } else {\n done();\n }\n }\n },\n _wrapperMousedown: function () {\n this._prevent = !!this.filterInput;\n },\n _wrapperClick: function (e) {\n e.preventDefault();\n this.popup.unbind('activate', this._focusInputHandler);\n this._focused = this.wrapper;\n this._toggle();\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 (!readonly && !disable) {\n element.removeAttr(DISABLED).removeAttr(READONLY);\n dropDownWrapper.addClass(DEFAULT).removeClass(STATEDISABLED).on(HOVEREVENTS, that._toggleHover);\n wrapper.attr(TABINDEX, wrapper.data(TABINDEX)).attr(ARIA_DISABLED, false).on('keydown' + ns, proxy(that._keydown, that)).on('focusin' + ns, proxy(that._focusinHandler, that)).on('focusout' + ns, proxy(that._focusoutHandler, that)).on('mousedown' + ns, proxy(that._wrapperMousedown, that)).on('paste' + ns, proxy(that._filterPaste, that));\n that.wrapper.on('click' + ns, proxy(that._wrapperClick, that));\n if (!that.filterInput) {\n wrapper.on('keypress' + ns, proxy(that._keypress, that));\n }\n } else if (disable) {\n wrapper.removeAttr(TABINDEX);\n dropDownWrapper.addClass(STATEDISABLED).removeClass(DEFAULT);\n } else {\n dropDownWrapper.addClass(DEFAULT).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);\n },\n _keydown: function (e) {\n var that = this;\n var key = e.keyCode;\n var altKey = e.altKey;\n var isInputActive;\n var handled;\n var isPopupVisible = that.popup.visible();\n if (that.filterInput) {\n isInputActive = that.filterInput[0] === activeElement();\n }\n if (key === keys.LEFT) {\n key = keys.UP;\n handled = true;\n } else if (key === keys.RIGHT) {\n key = keys.DOWN;\n handled = true;\n }\n if (handled && isInputActive) {\n return;\n }\n e.keyCode = key;\n if (altKey && key === keys.UP || key === keys.ESC) {\n that._focusElement(that.wrapper);\n }\n if (that._state === STATE_FILTER && key === keys.ESC) {\n that._clearFilter();\n }\n if (key === keys.ENTER && that._typingTimeout && that.filterInput && isPopupVisible) {\n e.preventDefault();\n return;\n }\n handled = that._move(e);\n if (handled) {\n return;\n }\n if (!isPopupVisible || !that.filterInput) {\n var current = that._focus();\n if (key === keys.HOME) {\n handled = true;\n that._firstItem();\n } else if (key === keys.END) {\n handled = true;\n that._lastItem();\n }\n if (handled) {\n if (that.trigger('select', {\n dataItem: that._getElementDataItem(that._focus()),\n item: that._focus()\n })) {\n that._focus(current);\n return;\n }\n that._select(that._focus(), true).done(function () {\n if (!isPopupVisible) {\n that._blur();\n }\n });\n }\n }\n if (!altKey && !handled && that.filterInput) {\n that._search();\n }\n },\n _matchText: function (text, word) {\n var ignoreCase = this.options.ignoreCase;\n if (text === undefined || text === null) {\n return false;\n }\n text = text + '';\n if (ignoreCase) {\n text = text.toLowerCase();\n }\n return text.indexOf(word) === 0;\n },\n _shuffleData: function (data, splitIndex) {\n var optionDataItem = this._optionLabelDataItem();\n if (optionDataItem) {\n data = [optionDataItem].concat(data);\n }\n return data.slice(splitIndex).concat(data.slice(0, splitIndex));\n },\n _selectNext: function () {\n var that = this;\n var data = that.dataSource.flatView();\n var dataLength = data.length + (that.hasOptionLabel() ? 1 : 0);\n var isInLoop = sameCharsOnly(that._word, that._last);\n var startIndex = that.selectedIndex;\n var oldFocusedItem;\n var text;\n if (startIndex === -1) {\n startIndex = 0;\n } else {\n startIndex += isInLoop ? 1 : 0;\n startIndex = normalizeIndex(startIndex, dataLength);\n }\n data = data.toJSON ? data.toJSON() : data.slice();\n data = that._shuffleData(data, startIndex);\n for (var idx = 0; idx < dataLength; idx++) {\n text = that._text(data[idx]);\n if (isInLoop && that._matchText(text, that._last)) {\n break;\n } else if (that._matchText(text, that._word)) {\n break;\n }\n }\n if (idx !== dataLength) {\n oldFocusedItem = that._focus();\n that._select(normalizeIndex(startIndex + idx, dataLength)).done(function () {\n var done = function () {\n if (!that.popup.visible()) {\n that._change();\n }\n };\n if (that.trigger('select', {\n dataItem: that._getElementDataItem(that._focus()),\n item: that._focus()\n })) {\n that._select(oldFocusedItem).done(done);\n } else {\n done();\n }\n });\n }\n },\n _keypress: function (e) {\n var that = this;\n if (e.which === 0 || e.keyCode === kendo.keys.ENTER) {\n return;\n }\n var character = String.fromCharCode(e.charCode || e.keyCode);\n if (that.options.ignoreCase) {\n character = character.toLowerCase();\n }\n if (character === ' ') {\n e.preventDefault();\n }\n that._word += character;\n that._last = character;\n that._search();\n },\n _popupOpen: function () {\n var popup = this.popup;\n popup.wrapper = kendo.wrap(popup.element);\n if (popup.element.closest('.km-root')[0]) {\n popup.wrapper.addClass('km-popup km-widget');\n this.wrapper.addClass('km-widget');\n }\n },\n _popup: function () {\n Select.fn._popup.call(this);\n this.popup.one('open', proxy(this._popupOpen, this));\n },\n _getElementDataItem: function (element) {\n if (!element || !element[0]) {\n return null;\n }\n if (element[0] === this.optionLabel[0]) {\n return this._optionLabelDataItem();\n }\n return this.listView.dataItemByIndex(this.listView.getElementIndex(element));\n },\n _click: function (e) {\n var that = this;\n var item = e.item || $(e.currentTarget);\n e.preventDefault();\n if (that.trigger('select', {\n dataItem: that._getElementDataItem(item),\n item: item\n })) {\n that.close();\n return;\n }\n that._userTriggered = true;\n that._select(item).done(function () {\n that._focusElement(that.wrapper);\n that._blur();\n });\n },\n _focusElement: function (element) {\n var active = activeElement();\n var wrapper = this.wrapper;\n var filterInput = this.filterInput;\n var compareElement = element === filterInput ? wrapper : filterInput;\n var touchEnabled = support.mobileOS && (support.touch || support.MSPointers || support.pointers);\n if (filterInput && filterInput[0] === element[0] && touchEnabled) {\n return;\n }\n if (filterInput && compareElement[0] === active) {\n this._prevent = true;\n this._focused = element.focus();\n }\n },\n _searchByWord: function (word) {\n if (!word) {\n return;\n }\n var that = this;\n var ignoreCase = that.options.ignoreCase;\n if (ignoreCase) {\n word = word.toLowerCase();\n }\n that._select(function (dataItem) {\n return that._matchText(that._text(dataItem), word);\n });\n },\n _inputValue: function () {\n return this.text();\n },\n _search: function () {\n var that = this;\n var dataSource = that.dataSource;\n clearTimeout(that._typingTimeout);\n if (that._isFilterEnabled()) {\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 that._resizeFilterInput();\n }\n that._typingTimeout = null;\n }, that.options.delay);\n } else {\n that._typingTimeout = setTimeout(function () {\n that._word = '';\n }, that.options.delay);\n if (!that.listView.bound()) {\n dataSource.fetch().done(function () {\n that._selectNext();\n });\n return;\n }\n that._selectNext();\n }\n },\n _get: function (candidate) {\n var data, found, idx;\n var isFunction = typeof candidate === 'function';\n var jQueryCandidate = !isFunction ? $(candidate) : $();\n if (this.hasOptionLabel()) {\n if (typeof candidate === 'number') {\n if (candidate > -1) {\n candidate -= 1;\n }\n } else if (jQueryCandidate.hasClass('k-list-optionlabel')) {\n candidate = -1;\n }\n }\n if (isFunction) {\n data = this.dataSource.flatView();\n for (idx = 0; idx < data.length; idx++) {\n if (candidate(data[idx])) {\n candidate = idx;\n found = true;\n break;\n }\n }\n if (!found) {\n candidate = -1;\n }\n }\n return candidate;\n },\n _firstItem: function () {\n if (this.hasOptionLabel()) {\n this._focus(this.optionLabel);\n } else {\n this.listView.focusFirst();\n }\n },\n _lastItem: function () {\n this._resetOptionLabel();\n this.listView.focusLast();\n },\n _nextItem: function () {\n if (this.optionLabel.hasClass('k-state-focused')) {\n this._resetOptionLabel();\n this.listView.focusFirst();\n } else {\n this.listView.focusNext();\n }\n },\n _prevItem: function () {\n if (this.optionLabel.hasClass('k-state-focused')) {\n return;\n }\n this.listView.focusPrev();\n if (!this.listView.focus()) {\n this._focus(this.optionLabel);\n }\n },\n _focusItem: function () {\n var listView = this.listView;\n var focusedItem = listView.focus();\n var index = listView.select();\n index = index[index.length - 1];\n if (index === undefined && this.options.highlightFirst && !focusedItem) {\n index = 0;\n }\n if (index !== undefined) {\n listView.focus(index);\n } else {\n if (this.options.optionLabel) {\n this._focus(this.optionLabel);\n this._select(this.optionLabel);\n } else {\n listView.scrollToIndex(0);\n }\n }\n },\n _resetOptionLabel: function (additionalClass) {\n this.optionLabel.removeClass('k-state-focused' + (additionalClass || '')).removeAttr('id');\n },\n _focus: function (candidate) {\n var listView = this.listView;\n var optionLabel = this.optionLabel;\n if (candidate === undefined) {\n candidate = listView.focus();\n if (!candidate && optionLabel.hasClass('k-state-focused')) {\n candidate = optionLabel;\n }\n return candidate;\n }\n this._resetOptionLabel();\n candidate = this._get(candidate);\n listView.focus(candidate);\n if (candidate === -1) {\n optionLabel.addClass('k-state-focused').attr('id', listView._optionID);\n this._focused.add(this.filterInput).removeAttr('aria-activedescendant').attr('aria-activedescendant', listView._optionID);\n }\n },\n _select: function (candidate, keepState) {\n var that = this;\n candidate = that._get(candidate);\n return that.listView.select(candidate).done(function () {\n if (!keepState && that._state === STATE_FILTER) {\n that._state = STATE_ACCEPT;\n }\n if (candidate === -1) {\n that._selectValue(null);\n }\n });\n },\n _selectValue: function (dataItem) {\n var that = this;\n var optionLabel = that.options.optionLabel;\n var idx = that.listView.select();\n var value = '';\n var text = '';\n idx = idx[idx.length - 1];\n if (idx === undefined) {\n idx = -1;\n }\n this._resetOptionLabel(' k-state-selected');\n if (dataItem) {\n text = dataItem;\n value = that._dataValue(dataItem);\n if (optionLabel) {\n idx += 1;\n }\n } else if (optionLabel) {\n that._focus(that.optionLabel.addClass('k-state-selected'));\n text = that._optionLabelText();\n if (typeof optionLabel === 'string') {\n value = '';\n } else {\n value = that._value(optionLabel);\n }\n idx = 0;\n }\n that.selectedIndex = idx;\n if (value === null) {\n value = '';\n }\n that._textAccessor(text);\n that._accessor(value, idx);\n that._triggerCascade();\n },\n _mobile: function () {\n var that = this, popup = that.popup, mobileOS = support.mobileOS, root = popup.element.parents('.km-root').eq(0);\n if (root.length && mobileOS) {\n popup.options.animation.open.effects = mobileOS.android || mobileOS.meego ? 'fadeIn' : mobileOS.ios || mobileOS.wp ? 'slideIn:up' : popup.options.animation.open.effects;\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 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.list.prepend($('').append(this.filterInput.add(icon)));\n }\n },\n _span: function () {\n var that = this, wrapper = that.wrapper, SELECTOR = 'span.k-input', span;\n span = wrapper.find(SELECTOR);\n if (!span[0]) {\n wrapper.append(' ').append(that.element);\n span = wrapper.find(SELECTOR);\n }\n that.span = span;\n that._inputWrapper = $(wrapper[0].firstChild);\n that._arrow = wrapper.find('.k-icon');\n },\n _wrapper: function () {\n var that = this, element = that.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 that._focused = that.wrapper = wrapper.addClass('k-widget k-dropdown k-header').addClass(DOMelement.className).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 _clearSelection: function (parent) {\n this.select(parent.value() ? 0 : -1);\n },\n _inputTemplate: function () {\n var that = this, template = that.options.valueTemplate;\n if (!template) {\n template = $.proxy(kendo.template('#:this._text(data)#', { useWithBlock: false }), that);\n } else {\n template = kendo.template(template);\n }\n that.valueTemplate = template;\n if (that.hasOptionLabel() && !that.options.optionLabelTemplate) {\n try {\n that.valueTemplate(that._optionLabelDataItem());\n } catch (e) {\n throw new Error(MSG_INVALID_OPTION_LABEL);\n }\n }\n },\n _textAccessor: function (text) {\n var dataItem = null;\n var template = this.valueTemplate;\n var optionLabelText = this._optionLabelText();\n var span = this.span;\n if (text === undefined) {\n return span.text();\n }\n if ($.isPlainObject(text) || text instanceof ObservableObject) {\n dataItem = text;\n } else if (optionLabelText && optionLabelText === text) {\n dataItem = this.options.optionLabel;\n }\n if (!dataItem) {\n dataItem = this._assignInstance(text, this._accessor());\n }\n if (this.hasOptionLabel()) {\n if (dataItem === optionLabelText || this._text(dataItem) === optionLabelText) {\n template = this.optionLabelTemplate;\n if (typeof this.options.optionLabel === 'string' && !this.options.optionLabelTemplate) {\n dataItem = optionLabelText;\n }\n }\n }\n var getElements = function () {\n return {\n elements: span.get(),\n data: [{ dataItem: dataItem }]\n };\n };\n this.angular('cleanup', getElements);\n try {\n span.html(template(dataItem));\n } catch (e) {\n span.html('');\n }\n this.angular('compile', getElements);\n },\n _preselect: function (value, text) {\n if (!value && !text) {\n text = this._optionLabelText();\n }\n this._accessor(value);\n this._textAccessor(text);\n this._old = this._accessor();\n this._oldIndex = this.selectedIndex;\n this.listView.setValue(value);\n this._initialIndex = null;\n this._presetValue = true;\n },\n _assignInstance: function (text, value) {\n var dataTextField = this.options.dataTextField;\n var dataItem = {};\n if (dataTextField) {\n assign(dataItem, dataTextField.split('.'), text);\n assign(dataItem, this.options.dataValueField.split('.'), value);\n dataItem = new ObservableObject(dataItem);\n } else {\n dataItem = text;\n }\n return dataItem;\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 function normalizeIndex(index, length) {\n if (index >= length) {\n index -= length;\n }\n return index;\n }\n function sameCharsOnly(word, character) {\n for (var idx = 0; idx < word.length; idx++) {\n if (word.charAt(idx) !== character) {\n return false;\n }\n }\n return true;\n }\n ui.plugin(DropDownList);\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/"}