EOS/Scripts/kendo/2015.3.1111/kendo.dropdownlist.min.js
Nidhi Bhargava f0c1ab20e1 code push
2025-09-04 16:25:07 +05:30

9 lines
14 KiB
JavaScript

/*
* Kendo UI v2015.3.1111 (http://www.telerik.com/kendo-ui)
* Copyright 2015 Telerik AD. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
!function(e,define){define(["./kendo.list.min","./kendo.mobile.scroller.min"],e)}(function(){return function(e,t){function n(e,t,n){for(var i,o=0,r=t.length-1;r>o;++o)i=t[o],i in e||(e[i]={}),e=e[i];e[t[r]]=n}var i=window.kendo,o=i.ui,r=o.Select,s=i.support,a=i._activeElement,l=i.data.ObservableObject,c=i.keys,h=".kendoDropDownList",u="disabled",d="readonly",f="change",p="k-state-focused",g="k-state-default",m="k-state-disabled",v="aria-disabled",_="aria-readonly",w="mouseenter"+h+" mouseleave"+h,y="tabindex",b="filter",x="accept",k=e.proxy,C=r.extend({init:function(n,o){var s,a,l,c=this,u=o&&o.index;c.ns=h,o=e.isArray(o)?{dataSource:o}:o,r.fn.init.call(c,n,o),o=c.options,n=c.element.on("focus"+h,k(c._focusHandler,c)),c._focusInputHandler=e.proxy(c._focusInput,c),c._inputTemplate(),c._reset(),c._prev="",c._word="",c.optionLabel=e(),c._wrapper(),c._tabindex(),c.wrapper.data(y,c.wrapper.attr(y)),c._span(),c._popup(),c._mobile(),c._dataSource(),c._ignoreCase(),c._filterHeader(),c._aria(),c._enable(),c._oldIndex=c.selectedIndex=-1,u!==t&&(o.index=u),c._initialIndex=o.index,c._optionLabel(),c._initList(),c._cascade(),o.autoBind?c.dataSource.fetch():-1===c.selectedIndex&&(a=o.text||"",a||(s=o.optionLabel,s&&0===o.index?a=s:c._isSelect&&(a=n.children(":selected").text())),c._textAccessor(a)),l=e(c.element).parents("fieldset").is(":disabled"),l&&c.enable(!1),c.listView.bind("click",function(e){e.preventDefault()}),i.notify(c)},options:{name:"DropDownList",enabled:!0,autoBind:!0,index:0,text:null,value:null,delay:500,height:200,dataTextField:"",dataValueField:"",optionLabel:"",cascadeFrom:"",cascadeFromField:"",ignoreCase:!0,animation:{},filter:"none",minLength:1,virtual:!1,template:null,valueTemplate:null,optionLabelTemplate:null,groupTemplate:"#:data#",fixedGroupTemplate:"#:data#"},events:["open","close",f,"select","filtering","dataBinding","dataBound","cascade"],setOptions:function(e){r.fn.setOptions.call(this,e),this.listView.setOptions(this._listOptions(e)),this._optionLabel(),this._inputTemplate(),this._accessors(),this._filterHeader(),this._enable(),this._aria(),!this.value()&&this.optionLabel[0]&&this.select(0)},destroy:function(){var e=this;e.wrapper.off(h),e.element.off(h),e._inputWrapper.off(h),e._arrow.off(),e._arrow=null,e.optionLabel.off(),r.fn.destroy.call(e)},open:function(){var e=this;e.popup.visible()||(e.listView.isBound()&&e._state!==x?e._allowOpening()&&(e.popup.one("activate",e._focusInputHandler),e.popup.open(),e._focusItem()):(e._open=!0,e._state="rebind",e.filterInput&&(e.filterInput.val(""),e._prev=""),e._filterSource()))},_focusInput:function(){this._focusElement(this.filterInput)},_allowOpening:function(){return this.optionLabel[0]||this.filterInput||this.dataSource.view().length},toggle:function(e){this._toggle(e,!0)},current:function(e){var n;return e===t?(n=this.listView.focus(),!n&&0===this.selectedIndex&&this.optionLabel[0]?this.optionLabel:n):(this._focus(e),t)},dataItem:function(n){var i=this,o=null,r=!!i.optionLabel[0],s=i.options.optionLabel;if(n===t)o=i.listView.selectedDataItems()[0];else{if("number"!=typeof n){if(i.options.virtual)return i.dataSource.getByUid(e(n).data("uid"));n=n.hasClass("k-list-optionlabel")?-1:e(i.items()).index(n)}else r&&(n-=1);o=i.dataSource.flatView()[n]}return!o&&r&&(o=e.isPlainObject(s)?new l(s):i._assignInstance(i._optionLabelText(),"")),o},refresh:function(){this.listView.refresh()},text:function(e){var n,i,o=this,r=o.options.ignoreCase;return e=null===e?"":e,e===t?o._textAccessor():("string"==typeof e&&(i=r?e.toLowerCase():e,o._select(function(e){return e=o._text(e),r&&(e=(e+"").toLowerCase()),e===i}),n=o.dataItem(),n&&(e=n)),o._textAccessor(e),t)},value:function(e){var n=this,i=n.dataSource;return e===t?(e=n._accessor()||n.listView.value()[0],e===t||null===e?"":e):(e&&(n._initialIndex=null),n._request&&n.options.cascadeFrom&&n.listView.isBound()?(n._valueSetter&&i.unbind(f,n._valueSetter),n._valueSetter=k(function(){n.value(e)},n),i.one(f,n._valueSetter),t):(n.listView.value(e).done(function(){-1===n.selectedIndex&&n.text()&&(n.text(""),n._accessor("",-1)),n._old=n._accessor(),n._oldIndex=n.selectedIndex}),n._fetchData(),t))},_optionLabel:function(){var n=this,o=n.options,r=o.optionLabel,s=o.optionLabelTemplate;return r?(s||(s="#:",s+="string"==typeof r?"data":i.expr(o.dataTextField,"data"),s+="#"),"function"!=typeof s&&(s=i.template(s)),n.optionLabelTemplate=s,n.optionLabel[0]||(n.optionLabel=e('<div class="k-list-optionlabel"></div>').prependTo(n.list)),n.optionLabel.html(s(r)).off().click(k(n._click,n)).on(w,n._toggleHover),n.angular("compile",function(){return{elements:n.optionLabel}}),t):(n.optionLabel.off().remove(),n.optionLabel=e(),t)},_optionLabelText:function(){var e=this.options.optionLabel;return"string"==typeof e?e:this._text(e)},_listBound:function(){var e,t,n,i=this,o=i._initialIndex,r=i.options.optionLabel,s=i._state===b,a=i.dataSource.flatView(),l=a.length;i._angularItems("compile"),i._presetValue=!1,i.options.virtual||(t=i._height(s?l||1:l),i._calculateGroupPadding(t)),i.popup.position(),i._isSelect&&(n=i.value(),l?r&&(r=i._option("",i._optionLabelText())):n&&(r=i._option(n,i.text())),i._options(a,r,n)),i._makeUnselectable(),s||(i._open&&i.toggle(i._allowOpening()),i._open=!1,i._fetch||(l?(!i.listView.value().length&&o>-1&&null!==o&&i.select(o),i._initialIndex=null,e=i.listView.selectedDataItems()[0],e&&i.text()!==i._text(e)&&i._selectValue(e)):i._textAccessor()!==i._optionLabelText()&&(i.listView.value(""),i._selectValue(null),i._oldIndex=i.selectedIndex))),i._hideBusy(),i.trigger("dataBound")},_listChange:function(){this._selectValue(this.listView.selectedDataItems()[0]),(this._presetValue||this._old&&-1===this._oldIndex)&&(this._oldIndex=this.selectedIndex)},_focusHandler:function(){this.wrapper.focus()},_focusinHandler:function(){this._inputWrapper.addClass(p),this._prevent=!1},_focusoutHandler:function(){var e=this,t=e._state===b,n=window.self!==window.top,i=e._focus();e._prevent||(clearTimeout(e._typingTimeout),t&&i&&!e.trigger("select",{item:i})&&e._select(i,!e.dataSource.view().length),s.mobileOS.ios&&n?e._change():e._blur(),e._inputWrapper.removeClass(p),e._prevent=!0,e._open=!1,e.element.blur())},_wrapperMousedown:function(){this._prevent=!!this.filterInput},_wrapperClick:function(e){e.preventDefault(),this.popup.unbind("activate",this._focusInputHandler),this._focused=this.wrapper,this._toggle()},_editable:function(e){var t=this,n=t.element,i=e.disable,o=e.readonly,r=t.wrapper.add(t.filterInput).off(h),s=t._inputWrapper.off(w);o||i?i?(r.removeAttr(y),s.addClass(m).removeClass(g)):(s.addClass(g).removeClass(m),r.on("focusin"+h,k(t._focusinHandler,t)).on("focusout"+h,k(t._focusoutHandler,t))):(n.removeAttr(u).removeAttr(d),s.addClass(g).removeClass(m).on(w,t._toggleHover),r.attr(y,r.data(y)).attr(v,!1).attr(_,!1).on("keydown"+h,k(t._keydown,t)).on("focusin"+h,k(t._focusinHandler,t)).on("focusout"+h,k(t._focusoutHandler,t)).on("mousedown"+h,k(t._wrapperMousedown,t)),t.wrapper.on("click"+h,k(t._wrapperClick,t)),t.filterInput||r.on("keypress"+h,k(t._keypress,t))),n.attr(u,i).attr(d,o),r.attr(v,i).attr(_,o)},_option:function(e,t){return'<option value="'+e+'">'+t+"</option>"},_keydown:function(e){var n,i,o=this,r=e.keyCode,s=e.altKey,l=o.popup.visible();if(o.filterInput&&(n=o.filterInput[0]===a()),r===c.LEFT?(r=c.UP,i=!0):r===c.RIGHT&&(r=c.DOWN,i=!0),!i||!n){if(e.keyCode=r,s&&r===c.UP&&o._focusElement(o.wrapper),r===c.ENTER&&o._typingTimeout&&o.filterInput&&l)return e.preventDefault(),t;i=o._move(e),i||(l&&o.filterInput||(r===c.HOME?(i=!0,o._firstItem()):r===c.END&&(i=!0,o._lastItem()),i&&(o._select(o._focus()),e.preventDefault())),s||i||!o.filterInput||o._search())}},_matchText:function(e,t){var n=this,i=n.options.ignoreCase,o=!1;return e+="",i&&(e=e.toLowerCase()),0===e.indexOf(n._word)&&(n.optionLabel[0]&&(t+=1),n._select(t),n.popup.visible()||n._change(),o=!0),o},_selectNext:function(e){for(var t,n=this,i=e,o=n.dataSource.flatView(),r=o.length;r>e;e++)if(t=n._text(o[e]),t&&n._matchText(t,e)&&(1!==n._word.length||i!==n.selectedIndex))return!0;if(i>0&&r>i)for(e=0;i>=e;e++)if(t=n._text(o[e]),t&&n._matchText(t,e))return!0;return!1},_keypress:function(e){var t,n,o,r=this;0!==e.which&&e.keyCode!==i.keys.ENTER&&(t=String.fromCharCode(e.charCode||e.keyCode),n=r.selectedIndex,o=r._word.length,r.options.ignoreCase&&(t=t.toLowerCase())," "===t&&e.preventDefault(),o||(r._word=t),r._last===t&&1>=o&&n>-1&&r._selectNext(n)||(o&&(r._word+=t),r._last=t,r._search()))},_popupOpen:function(){var e=this.popup;e.wrapper=i.wrap(e.element),e.element.closest(".km-root")[0]&&(e.wrapper.addClass("km-popup km-widget"),this.wrapper.addClass("km-widget"))},_popup:function(){r.fn._popup.call(this),this.popup.one("open",k(this._popupOpen,this))},_click:function(n){var i=n.item||e(n.currentTarget);return this.trigger("select",{item:i})?(this.close(),t):(this._userTriggered=!0,this._select(i),this._focusElement(this.wrapper),this._blur(),t)},_focusElement:function(e){var t=a(),n=this.wrapper,i=this.filterInput,o=e===i?n:i,r=s.mobileOS&&(s.touch||s.MSPointers||s.pointers);i&&i[0]===e[0]&&r||i&&o[0]===t&&(this._prevent=!0,this._focused=e.focus())},_filter:function(e){var n,i;e&&(n=this,i=n.options.ignoreCase,i&&(e=e.toLowerCase()),n._select(function(o){var r=n._text(o);return r!==t?(r+="",i&&(r=r.toLowerCase()),0===r.indexOf(e)):t}))},_search:function(){var e=this,n=e.dataSource,i=e.selectedIndex;if(clearTimeout(e._typingTimeout),"none"!==e.options.filter)e._typingTimeout=setTimeout(function(){var t=e.filterInput.val();e._prev!==t&&(e._prev=t,e.search(t)),e._typingTimeout=null},e.options.delay);else{if(e._typingTimeout=setTimeout(function(){e._word=""},e.options.delay),-1===i&&(i=0),!e.ul[0].firstChild)return n.fetch().done(function(){n.data()[0]&&i>-1&&e._selectNext(i)}),t;e._selectNext(i)}},_get:function(t){var n,i,o,r="function"==typeof t,s=r?e():e(t);if(this.optionLabel[0]&&("number"==typeof t?t>-1&&(t-=1):s.hasClass("k-list-optionlabel")&&(t=-1)),r){for(n=this.dataSource.flatView(),o=0;n.length>o;o++)if(t(n[o])){t=o,i=!0;break}i||(t=-1)}return t},_firstItem:function(){this.optionLabel[0]?this._focus(this.optionLabel):this.listView.focusFirst()},_lastItem:function(){this.optionLabel.removeClass("k-state-focused"),this.listView.focusLast()},_nextItem:function(){this.optionLabel.hasClass("k-state-focused")?(this.optionLabel.removeClass("k-state-focused"),this.listView.focusFirst()):this.listView.focusNext()},_prevItem:function(){this.optionLabel.hasClass("k-state-focused")||(this.listView.focusPrev(),this.listView.focus()||this.optionLabel.addClass("k-state-focused"))},_focusItem:function(){var e=this.listView,n=e.focus(),i=e.select();i=i[i.length-1],i===t&&this.options.highlightFirst&&!n&&(i=0),i!==t?e.focus(i):this.options.optionLabel?(this._focus(this.optionLabel),this._select(this.optionLabel)):e.scrollToIndex(0)},_focus:function(e){var n=this.listView,i=this.optionLabel;return e===t?(e=n.focus(),!e&&i.hasClass("k-state-focused")&&(e=i),e):(i.removeClass("k-state-focused"),e=this._get(e),n.focus(e),-1===e&&i.addClass("k-state-focused"),t)},_select:function(e,t){var n=this;e=n._get(e),n.listView.select(e),t||n._state!==b||(n.listView.filter(!1),n._state=x),-1===e&&n._selectValue(null)},_selectValue:function(e){var n=this,i=n.options.optionLabel,o=n.optionLabel,r=n.listView.select(),s="",a="";r=r[r.length-1],r===t&&(r=-1),o.removeClass("k-state-focused k-state-selected"),e?(a=e,s=n._dataValue(e),i&&(r+=1)):i&&(n._focus(o.addClass("k-state-selected")),a=n._optionLabelText(),s="string"==typeof i?"":n._value(i),r=0),n.selectedIndex=r,null===s&&(s=""),n._textAccessor(a),n._accessor(s,r),n._triggerCascade()},_mobile:function(){var e=this,t=e.popup,n=s.mobileOS,i=t.element.parents(".km-root").eq(0);i.length&&n&&(t.options.animation.open.effects=n.android||n.meego?"fadeIn":n.ios||n.wp?"slideIn:up":t.options.animation.open.effects)},_filterHeader:function(){var t,n=this.options,i="none"!==n.filter;this.filterInput&&(this.filterInput.off(h).parent().remove(),this.filterInput=null),i&&(t='<span unselectable="on" class="k-icon k-i-search">select</span>',this.filterInput=e('<input class="k-textbox"/>').attr({role:"listbox","aria-haspopup":!0,"aria-expanded":!1}),this.list.prepend(e('<span class="k-list-filter" />').append(this.filterInput.add(t))))},_span:function(){var t,n=this,i=n.wrapper,o="span.k-input";t=i.find(o),t[0]||(i.append('<span unselectable="on" class="k-dropdown-wrap k-state-default"><span unselectable="on" class="k-input">&nbsp;</span><span unselectable="on" class="k-select"><span unselectable="on" class="k-icon k-i-arrow-s">select</span></span></span>').append(n.element),t=i.find(o)),n.span=t,n._inputWrapper=e(i[0].firstChild),n._arrow=i.find(".k-icon")},_wrapper:function(){var e,t=this,n=t.element,i=n[0];e=n.parent(),e.is("span.k-widget")||(e=n.wrap("<span />").parent(),e[0].style.cssText=i.style.cssText,e[0].title=i.title),n.hide(),t._focused=t.wrapper=e.addClass("k-widget k-dropdown k-header").addClass(i.className).css("display","").attr({unselectable:"on",role:"listbox","aria-haspopup":!0,"aria-expanded":!1})},_clearSelection:function(e){this.select(e.value()?0:-1)},_inputTemplate:function(){var t=this,n=t.options.valueTemplate;n=n?i.template(n):e.proxy(i.template("#:this._text(data)#",{useWithBlock:!1}),t),t.valueTemplate=n},_textAccessor:function(n){var i,o=null,r=this.valueTemplate,s=this.options,a=s.optionLabel,c=this.span;return n===t?c.text():(e.isPlainObject(n)||n instanceof l?o=n:a&&this._optionLabelText()===n&&(o=a,r=this.optionLabelTemplate),o||(o=this._assignInstance(n,this._accessor())),i=function(){return{elements:c.get(),data:[{dataItem:o}]}},this.angular("cleanup",i),c.html(r(o)),this.angular("compile",i),t)},_preselect:function(e,t){e||t||(t=this._optionLabelText()),this._accessor(e),this._textAccessor(t),this._old=this._accessor(),this._oldIndex=this.selectedIndex,this.listView.setValue(e),this._initialIndex=null,this._presetValue=!0},_assignInstance:function(e,t){var i=this.options.dataTextField,o={};return i?(n(o,i.split("."),e),n(o,this.options.dataValueField.split("."),t),o=new l(o)):o=e,o}});o.plugin(C)}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(e,t){t()});