UNPKG

kendo-ui-core

Version:
3 lines (2 loc) 25.7 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("kendo.list.js"),require("kendo.mobile.scroller.js"),require("kendo.virtuallist.js"),require("kendo.html.chip.js"),require("kendo.html.chiplist.js"),require("kendo.html.button.js")):"function"==typeof define&&define.amd?define(["kendo.list.min","kendo.mobile.scroller.min","kendo.virtuallist.min","kendo.html.chip.min","kendo.html.chiplist.min","kendo.html.button.min"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).kendomultiselect=e.kendomultiselect||{},e.kendomultiselect.js=t())}(this,(function(){let e=kendo.jQuery;function t({widget:t,wrapper:i,options:a,prefixInsertBefore:n,suffixInsertAfter:s}){var l,o,r=a.prefixOptions,u=a.suffixOptions,c=r.template||r.icon,p=u.template||u.icon,d=(s=s||n,a.layoutFlow),h=d?"vertical"==d?"horizontal":"vertical":"horizontal",f=`<span class="k-input-separator k-input-separator-${"vertical"==d?"horizontal":"vertical"}"></span>`;r&&c&&((l=i.children(".k-input-prefix"))[0]||(l=e(`<span class="k-input-prefix k-input-prefix-${h}" />`),n?l.insertBefore(n):l.prependTo(i)),r.icon&&l.html(kendo.html.renderIcon({icon:r.icon})),r.template&&l.html(kendo.template(r.template)({})),r.separator&&e(f).insertAfter(l)),u&&p&&((o=i.children(".k-input-suffix"))[0]||(o=e(`<span class="k-input-suffix k-input-suffix-${h}" />`).appendTo(i),s?o.insertAfter(s):o.appendTo(i)),u.icon&&o.html(kendo.html.renderIcon({icon:u.icon})),u.template&&o.html(kendo.template(u.template)({})),u.separator&&e(f).insertBefore(o)),t._prefixContainer=l,t._suffixContainer=o}return function(e,i){var a=window.kendo,n=a.ui,s=n.List,l=a.htmlEncode,o=a.html,r=e.extend({A:65},a.keys),u=a._activeElement,c=a.data.ObservableArray,p="id",d=".k-chip",h="accept",f="filter",_="rebind",g="open",m="close",v="change",b="select",T="deselect",w="aria-disabled",I="aria-readonly",k="aria-expanded",x="aria-hidden",y="aria-activedescendant",V="aria-busy",C="k-focus",L="k-selected",S="k-hidden",A="k-hover",D="k-disabled",O="k-no-click",B="disabled",F="readonly",E=".kendoMultiSelect",P="click"+E,M="keydown"+E,H="mouseenter"+E,K="mouseleave"+E,j=H+" "+K,q=/"/g,R=Array.isArray,N=["font-family","font-size","font-stretch","font-style","font-weight","letter-spacing","text-transform","line-height"],z=s.extend({init:function(i,n){var l,o=this;o.ns=E,s.fn.init.call(o,i,n),o._optionsMap={},o._customOptions={},o._wrapper(),o._inputValuesContainer(),o._tagList(),o._input(),o._textContainer(),o._loader(),o._clearButton(),o._arrowButton(),o._tabindex(o.input),i=o.element.attr("multiple","multiple").hide(),(n=o.options).placeholder||(n.placeholder=i.data("placeholder")),(l=i.attr(p))||(l=a.guid()),l&&(o._tagID=l+"_tag_active",l+="_taglist",o.tagList.attr(p,l)),o._initialOpen=!0,n.label&&this._label(),o._aria(),o._dataSource(),o._ignoreCase(),o._popup(),o._tagTemplate(),o.requireValueMapper(o.options),o._initList(),o._reset(),o._enable(),o._placeholder(),n.autoBind?o.dataSource.fetch():n.value&&o._preselect(n.value),e(o.element).parents("fieldset").is(":disabled")&&o.enable(!1),o._toggleCloseVisibility(),o._applyCssClasses(),t({widget:o,wrapper:o.wrapper,options:o.options,prefixInsertBefore:o._inputValuesContainer,suffixInsertAfter:o._loading}),o.floatingLabel&&o.floatingLabel.refresh(),a.notify(o)},options:{name:"MultiSelect",tagMode:"multiple",enabled:!0,autoBind:!0,autoClose:!0,highlightFirst:!0,dataTextField:"",dataValueField:"",filter:"startswith",ignoreCase:!0,minLength:1,messages:{singleTag:"item(s) selected",clear:"clear",deleteTag:"delete",noData:"No data found.",downArrow:"select"},enforceMinLength:!1,delay:100,value:null,maxSelectedItems:null,placeholder:"",height:200,animation:{},virtual:!1,itemTemplate:"",tagTemplate:"",groupTemplate:e=>l(e),fixedGroupTemplate:e=>l(e),prefixOptions:{separator:!0},suffixOptions:{separator:!0},clearButton:!0,autoWidth:!1,popup:null,size:"medium",fillMode:"solid",rounded:"medium",label:null},events:[g,m,v,b,T,"filtering","dataBinding","dataBound"],setDataSource:function(e){this.options.dataSource=e,this._state="",this._dataSource(),this.persistTagList=!1,this.listView.setDataSource(this.dataSource),this.options.autoBind&&this.dataSource.fetch()},setOptions:function(e){var t=this._listOptions(e);s.fn.setOptions.call(this,e),this.listView.setOptions(t),this._accessors(),this._aria(),this._tagTemplate(),this._placeholder(),this._clearButton(),this._arrowButton()},currentTag:function(e){var t=this;if(e===i)return t._currentTag;t._currentTag&&(t._currentTag.removeClass(C).removeAttr(p),t._currentTag.find(".k-chip-action").attr(x,!0),t.input.removeAttr(y)),e&&(e.addClass(C).attr(p,t._tagID),e.find(".k-chip-action").removeAttr(x),t.input.attr(y,t._tagID)),t._currentTag=e},dataItems:function(){return this.listView.selectedDataItems()},destroy:function(){var e=this,t=e.ns;clearTimeout(e._busy),clearTimeout(e._typingTimeout),e.filterInput&&e.filterInput.off(t),e.wrapper.off(t),e.tagList.off(t),e.input.off(t),e._clear.off(t),s.fn.destroy.call(e)},_onActionSheetCreate:function(){var e=this;e.filterInput.on("keydown"+E,e._keydown.bind(e)).on("input"+E,e._search.bind(e)).on("paste"+E,e._search.bind(e)).attr({role:"combobox","aria-expanded":!1,"aria-controls":e.input.attr("aria-controls"),"aria-autocomplete":e.input.attr("aria-autocomplete"),"aria-describedby":e.input.attr("aria-describedby")}),e.popup.bind("activate",(()=>{e.filterInput.val(e.input.val()),e.filterInput.trigger("focus")})),e.popup.bind("close",(()=>{e.input.trigger("focus")}))},_aria:function(){var e=this,t=e.ul[0].id,i="none"===this.options.filter?"none":"list",a=e.tagList.attr(p);e.input.attr({role:"combobox","aria-expanded":!1,"aria-controls":t,"aria-autocomplete":i,"aria-describedby":a}),e._ariaLabel(e._focused)},_activateItem:function(){this.popup.visible()&&s.fn._activateItem.call(this),this.currentTag(null)},_listOptions:function(t){var i=this,n=s.fn._listOptions.call(i,e.extend(t,{selectedItemChange:i._selectedItemChange.bind(i),selectable:"multiple"})),o=this.options.itemTemplate||this.options.template,r=n.itemTemplate||o||n.template;return r||(r=e=>l(a.getter(n.dataTextField)(e))),n.template=r,n},_setListValue:function(){s.fn._setListValue.call(this,this._initialValues.slice(0))},_listChange:function(e){var t=this.dataSource.flatView(),a=this._optionsMap,n=this._value;this._state===_&&(this._state="");for(var s=0;s<e.added.length;s++)if(a[n(e.added[s].dataItem)]===i){this._render(t);break}this._selectValue(e.added,e.removed)},_selectedItemChange:function(e){var t,i,a=e.items;for(i=0;i<a.length;i++)t=a[i],this.tagList.children(d).eq(t.index).children("span").first().html(this.tagTextTemplate(t.item))},_wrapperMousedown:function(t){var i=this,n="input"!==t.target.nodeName.toLowerCase(),s=e(t.target),l=s.closest(".k-input-button, .k-chip").children("[class*='-i-caret-alt-down']")[0],o=s.closest("[class*='-i-x']")[0];!n||o&&a.support.mobileOS||!t.cancelable||t.preventDefault(),o||(l&&i.popup.visible()?i.toggle(!1):(i.input[0]!==u()&&n&&i.input.trigger("focus"),1!==i.options.minLength||i.popup.visible()||i.open()))},_inputFocus:function(){this._placeholder(!1,!0),this.wrapper.addClass(C)},_inputFocusout:function(e){var t=this;t.filterInput&&e.relatedTarget===t.filterInput[0]||(clearTimeout(t._typingTimeout),t.wrapper.removeClass(C),t._placeholder(!t.listView.selectedDataItems()[0],!0),t.close(),t._state===f&&(t._state=h,t.listView.skipUpdate(!0)),t.listView.bound()&&t.listView.isFiltered()&&(t.persistTagList=!0,t._clearFilter()),t.element.trigger("blur"))},_removeTag:function(e,t){var a,n=this,s=n._state,l=e.index(),o=n.listView,r=o.value()[l],u=n.listView.selectedDataItems()[l],c=n._customOptions[r],p=o.element[0].children;if(n.trigger(T,{dataItem:u,item:e}))n._close();else{c!==i||s!==h&&s!==f||(c=n._optionsMap[r]);var d=function(){n.currentTag(null),t&&n._change(),n._refreshTagListAria(),n._close()};c===i&&o.select().length?(n.persistTagList=!1,o.select(o.select()[l]).done(d)):((a=n.element[0].children[c])&&(a.selected=!1),o.removeAt(l),o._removedAddedIndexes&&o._removedAddedIndexes.splice(l,1),p[c]&&p[c].classList.remove("k-selected"),"single"!==n.options.tagMode?e.remove():n._updateTagListHTML(),d())}},_tagListClick:function(t){t.preventDefault(),t.stopPropagation();var i=e(t.currentTarget);i.is("[class*='-i-x-circle']")&&this._removeTag(i.closest(d),!0)},_clearValue:function(){var t=this;"single"===t.options.tagMode?t._clearSingleTagValue():t.tagList.children(d).each((function(i,a){t._removeTag(e(a),!1)})),t.input.val(""),t._search(!0),t._change(),t.focus(),t._hideClear(),t._state===f&&(t._state=h)},_clearSingleTagValue:function(){for(var e=this,t=e.dataItems(),i=e.tagList.children(d),a=e.persistTagList,n=0;n<t.length;n+=1)if(e.trigger(T,{dataItem:t[n],item:i.first()}))return void e._close();a&&(e.persistTagList=!1),e.listView.value([]),e.persistTagList=a},_focusHandler:function(){var e=this.input,t=u();e[0]===t||this.input.trigger("focus")},_editable:function(t){var i=this,a=t.disable,n=t.readonly,s=i.wrapper.off(E),l=i.tagList.off(E),o=i.input.off(E);n||a?(s.toggleClass(D,a).toggleClass(O,n),o.attr(B,a).attr(F,n).attr(w,a).attr(I,n),i.element.prop(B,a)):(s.removeClass(D).removeClass(O).on(j,i._toggleHover).on("mousedown"+E+" touchend"+E,i._wrapperMousedown.bind(i)).on(P,i._focusHandler.bind(i)),i.input.on(M,i._keydown.bind(i)).on("paste"+E,i._search.bind(i)).on("input"+E,i._search.bind(i)).on("focus"+E,i._inputFocus.bind(i)).on("focusout"+E,i._inputFocusout.bind(i)),i._clear.on(P+" touchend"+E,i._clearValue.bind(i)),o.prop(B,!1).prop(F,!1).attr(w,!1).attr(I,!1),i.element.prop(B,!1),l.on(H,d,(function(){e(this).addClass(A)})).on(K,d,(function(){e(this).removeClass(A)})).on(P+" touchend"+E,".k-chip .k-icon,.k-chip .k-svg-icon",i._tagListClick.bind(i)))},_close:function(){var e=this;e.options.autoClose?e.close():e.popup.position()},_filterSource:function(e,t){t||(t=this._retrieveData),this._retrieveData=!1,s.fn._filterSource.call(this,e,t)},close:function(){this._activeItem=null,this.input.removeAttr(y),this.popup.close()},open:function(){var t=this,i=t.input.val().toLowerCase(),a=t.listView.dataSource.filter(),n="";a&&a.filters.length>0&&(n=(a.filters[0].value||"").toString().toLowerCase()),t._request&&(t._retrieveData=!1),t._retrieveData||!t.listView.bound()||t._state===h&&i!==n?(t._open=!0,t._state=_,t.listView.skipUpdate(!0),t.persistTagList=!(t._initialOpen&&!t.listView.bound()),t._filterSource(),t._focusItem()):t._allowOpening()&&(!t._initialOpen||t.options.autoBind||t.options.virtual||!t.options.value||e.isPlainObject(t.options.value[0])||t.value(t.value()||t._initialValues),t.popup._hovered=!0,t._initialOpen=!1,t.popup.open({altTarget:t.wrapper.add(t.element).add(t.input)}),t._focusItem())},toggle:function(e){this[(e=e!==i?e:!this.popup.visible())?g:m]()},refresh:function(){this.listView.refresh()},_floatCheck:function(){return!this.listView||!(this.value()&&this.value().length)&&!this.popup.visible()},_listBound:function(){var e=this,t=e.dataSource.flatView();e._render(t),e._renderFooter(),e._renderNoData(),e._toggleNoData(!t.length),e._resizePopup(),e._open&&(e._open=!1,e.toggle(e._allowOpening())),e.popup.position(),e._updateItemFocus(),e._touchScroller&&e._touchScroller.reset(),e._hideBusy(),e.trigger("dataBound")},_updateItemFocus:function(){var e=this,t=e.dataSource.flatView(),a=e.listView.skip(),n=a===i||0===a;t.length&&n&&(e.options.highlightFirst?e.listView.focusFirst():e.listView.focus(-1))},_inputValue:function(){var e=this,t=e.filterInput&&u()===e.filterInput[0]?e.filterInput.val():e.input.val();return e.options.placeholder===t&&(t=""),t},value:function(e){var t=this,a=t.listView,n=a.value().slice(),s=t.options.maxSelectedItems,l=a.bound()&&a.isFiltered();if(e===i)return n;t.persistTagList=!1,t.requireValueMapper(t.options,e),e=t._normalizeValues(e),null!==s&&e.length>s&&(e=e.slice(0,s)),l&&t._clearFilter(),a.value(e),t._old=t._valueBeforeCascade=e.slice(),l||t._fetchData(),t._toggleCloseVisibility()},_preselect:function(t,i){var n=this;R(t)||t instanceof a.data.ObservableArray||(t=[t]),(e.isPlainObject(t[0])||t[0]instanceof a.data.ObservableObject||!n.options.dataValueField)&&(n.dataSource.data(t),n.value(i||n._initialValues),n._retrieveData=!0)},_setOption:function(e,t){var i=this.element[0].children[this._optionsMap[e]];i&&(i.selected=t)},_fetchData:function(){var e=this,t=!!e.dataSource.view().length;0===e.listView.value().length||e._request||(e._retrieveData||!e._fetch&&!t)&&(e._fetch=!0,e._retrieveData=!1,e.dataSource.read().done((function(){e._fetch=!1})))},_isBound:function(){return this.listView.bound()&&!this._retrieveData},_dataSource:function(){var e=this,t=e.element,i=e.options,n=i.dataSource||{};(n=R(n)?{data:n}:n).select=t,n.fields=[{field:i.dataTextField},{field:i.dataValueField}],e.dataSource&&e._refreshHandler?e._unbindDataSource():(e._progressHandler=e._showBusy.bind(e),e._errorHandler=e._hideBusy.bind(e)),e.dataSource=a.data.DataSource.create(n).bind("progress",e._progressHandler).bind("error",e._errorHandler)},_reset:function(){var t=this,i=t.element,a=i.attr("form"),n=a?e("#"+a):i.closest("form");n[0]&&(t._resetHandler=function(){setTimeout((function(){t.value(t._initialValues),t._placeholder()}))},t._form=n.on("reset",t._resetHandler))},_initValue:function(){var e=this.options.value||this.element.val();this._old=this._initialValues=this._normalizeValues(e)},_normalizeValues:function(t){var i=this;return null===t?t=[]:t&&e.isPlainObject(t)?t=[i._value(t)]:t&&e.isPlainObject(t[0])?t=e.map(t,(function(e){return i._value(e)})):R(t)||t instanceof c?R(t)&&(t=t.slice()):t=[t],t},_change:function(){var e=this,t=e.value();(function(e,t){var i;if(null===e&&null!==t||null!==e&&null===t)return!1;if((i=e.length)!==t.length)return!1;for(;i--;)if(e[i]!==t[i])return!1;return!0})(t,e._old)||(e._old=t.slice(),e.trigger(v),e.element.trigger(v)),e.popup.position(),e._toggleCloseVisibility()},_click:function(e){var t=this,i=e.item;e.preventDefault(),t._select(i).done((function(){t._activeItem=i,t._change(),t._close()}))},_getActiveItem:function(){return this._activeItem||e(this.listView.items()[this._getSelectedIndices().length-1])||this.listView.focus()},_getSelectedIndices:function(){return this.listView._selectedIndices||this.listView._selectedIndexes},_keydown:function(t){var n,s=this,l=t.keyCode,o=s._currentTag,u=s.listView,c=s.input.val(),p=a.support.isRtl(s.wrapper),f=s.popup.visible(),_=0,g=!1;if(l!==r.ENTER&&(this._multipleSelection=!1),l===r.DOWN){if(t.preventDefault(),!f)return s.open(),u.focus()||u.focusFirst(),void t.stopPropagation();u.focus()?(!s._activeItem&&t.shiftKey&&(s._activeItem=u.focus(),_=-1),n=u.getElementIndex(s._getActiveItem().first()),u.focusNext(),u.focus()?t.shiftKey&&!s.options.virtual&&(this._multipleSelection=!0,s._selectRange(n,u.getElementIndex(u.focus().first())+_)):u.focusLast()):u.focusFirst(),g=!0}else if(l===r.UP)f&&(!s._activeItem&&t.shiftKey&&(s._activeItem=u.focus(),_=1),n=u.getElementIndex(s._getActiveItem().first()),u.focusPrev(),u.focus()?t.shiftKey&&!s.options.virtual&&(this._multipleSelection=!0,s._selectRange(n,u.getElementIndex(u.focus().first())+_)):s.close()),g=!0,t.preventDefault();else if(l===r.LEFT&&!p||l===r.RIGHT&&p)c||(o=o?o.prev(d):s.tagList.children(d).last())[0]&&s.currentTag(o),g=!0;else if(l===r.RIGHT&&!p||l===r.LEFT&&p)!c&&o&&(o=o.next(d),s.currentTag(o[0]?o:null)),g=!0;else if(t.ctrlKey&&!t.altKey&&l===r.A&&f&&!s.options.virtual)this._multipleSelection=!0,this._getSelectedIndices().length===u.items().length&&(s._activeItem=null),u.items().length&&s._selectRange(0,u.items().length-1),g=!0;else if(l===r.ENTER&&f){if(!u.focus())return void t.stopPropagation();if(t.preventDefault(),this._multipleSelection&&(this._multipleSelection=!1,u.focus().hasClass(L)))return s._close(),void t.stopPropagation();s._select(u.focus()).done((function(){s._change(),s._close()})),g=!0}else if(l===r.SPACEBAR&&t.ctrlKey&&f)s._activeItem&&u.focus()&&u.focus()[0]===s._activeItem[0]&&(s._activeItem=null),e(u.focus()).hasClass(L)||(s._activeItem=u.focus()),s._select(u.focus()).done((function(){s._change()})),g=!0,t.preventDefault();else if(l===r.SPACEBAR&&t.shiftKey&&f&&!s.options.virtual){var m=u.getElementIndex(s._getActiveItem()),v=u.getElementIndex(u.focus());m!==i&&v!==i&&s._selectRange(m,v),g=!0,t.preventDefault()}else if(l===r.ESC)f?t.preventDefault():(s.tagList.children(d).each((function(t,i){s._removeTag(e(i),!1)})),s._change()),s.close(),g=!0;else if(l===r.HOME)f?u.focus()?(t.ctrlKey&&t.shiftKey&&!s.options.virtual&&s._selectRange(u.getElementIndex(u.focus()[0]),0),u.focusFirst()):s.close():c||(o=s.tagList.children(d).first()[0])&&s.currentTag(e(o)),g=!0;else if(l===r.END)f?u.focus()?(t.ctrlKey&&t.shiftKey&&!s.options.virtual&&s._selectRange(u.getElementIndex(u.focus()[0]),u.element.children().length-1),u.focusLast()):s.close():c||(o=s.tagList.children(d).last()[0])&&s.currentTag(e(o)),g=!0;else if(l!==r.DELETE&&l!==r.BACKSPACE||c)if(!s.popup.visible()||l!==r.PAGEDOWN&&l!==r.PAGEUP)clearTimeout(s._typingTimeout),s._search(),g=!0;else{t.preventDefault();var b=l===r.PAGEDOWN?1:-1;u.scrollWith(b*u.screenHeight()),g=!0}else{if(s._state=h,"single"===s.options.tagMode)return s._clearSingleTagValue(),s._change(),s._close(),void t.stopPropagation();l!==r.BACKSPACE||o||(o=s.tagList.children(d).last()),o&&o[0]&&s._removeTag(o,!0),g=!0}g&&t.stopPropagation()},_hideBusy:function(){var e=this;clearTimeout(e._busy),e.input.attr(V,!1),e._loading.addClass(S),e._request=!1,e._busy=null,e._toggleCloseVisibility()},_showBusyHandler:function(){this.input.attr(V,!0),this._loading.removeClass(S),this._hideClear()},_showBusy:function(){var e=this;e._request=!0,e._busy||(e._busy=setTimeout(e._showBusyHandler.bind(e),100))},_placeholder:function(e,t){var n=this,s=n.input,l=u(),o=n.options.placeholder,r=s.val(),c=s[0]===l,p=r.length;c&&!n.options.autoClose&&r!==o||(p=0,r=""),e===i&&(e=!1,s[0]!==l&&(e=!n.listView.selectedDataItems()[0])),n._prev=r,s.toggleClass("k-readonly",e).val(e?o:r),c&&!t&&a.caret(s[0],p,p)},_option:function(e,t,n){var s="<option";return e!==i&&(-1!==(e+="").indexOf('"')&&(e=e.replace(q,"&quot;")),s+=' value="'+e+'"'),n&&(s+=" selected"),s+=">",t!==i&&(s+=a.htmlEncode(t)),s+"</option>"},_render:function(e){var t,i,a,n,s=this.listView.selectedDataItems(),l=this.listView.value(),o=e.length,r="";l.length!==s.length&&(s=this._buildSelectedItems(l));var u={},c={};for(n=0;n<o;n++)i=e[n],a=this._value(i),-1!==(t=this._selectedItemIndex(a,s))&&s.splice(t,1),c[a]=n,r+=this._option(a,this._text(i),-1!==t);if(s.length)for(n=0;n<s.length;n++)i=s[n],u[a=this._value(i)]=o,c[a]=o,o+=1,r+=this._option(a,this._text(i),!0);this._customOptions=u,this._optionsMap=c,this.element.html(r)},_buildSelectedItems:function(e){for(var t,i=this.options.dataValueField,a=this.options.dataTextField,n=[],s=0;s<e.length;s++)(t={})[i]=e[s],t[a]=e[s],n.push(t);return n},_selectedItemIndex:function(e,t){for(var i=this._value,a=0;a<t.length;a++)if(e===i(t[a]))return a;return-1},_search:function(e){let t=this;!0!==e?(clearTimeout(t._typingTimeout),t._typingTimeout=setTimeout((function(){t._performSearch()}),t.options.delay)):t._performSearch()},_performSearch:function(){var e=this,t=e._inputValue();e._prev!==t&&(e._prev=t,e.search(t),e._toggleCloseVisibility())},_toggleCloseVisibility:function(){this.value().length||this.input.val()&&this.input.val()!==this.options.placeholder?this._showClear():this._hideClear()},_allowOpening:function(){return this._allowSelection()&&s.fn._allowOpening.call(this)},_allowSelection:function(){var e=this.options.maxSelectedItems;return null===e||e>this.listView.value().length},updatePersistTagList:function(e,t){this.persistTagList.added&&this.persistTagList.added.length===t.length&&this.persistTagList.removed&&this.persistTagList.removed.length===e.length?this.persistTagList=!1:(this.listView._removedAddedIndexes=this._old.slice(),this.persistTagList={added:e,removed:t})},_selectValue:function(e,t){var i,n,s,l=this,o=l.dataSource.total(),r=l.tagList,u=l._value;if(this.persistTagList)return this.updatePersistTagList(e,t),void l._refreshTagListAria();if("multiple"===l.options.tagMode){for(s=t.length-1;s>-1;s--)i=t[s],r.children(d).length&&(r[0].removeChild(r[0].children[i.position]),l._setOption(u(i.dataItem),!1));for(s=0;s<e.length;s++)n=e[s],l.tagList.append(l.tagTemplate(n.dataItem)),l._setOption(u(n.dataItem),!0);a.applyStylesFromKendoAttributes(l.tagList,["background-color"])}else{for((!l._maxTotal||l._maxTotal<o)&&(l._maxTotal=o),this._updateTagListHTML(),s=t.length-1;s>-1;s--)l._setOption(u(t[s].dataItem),!1);for(s=0;s<e.length;s++)l._setOption(u(e[s].dataItem),!0)}l._refreshTagListAria(),l._refreshFloatingLabel(),l._placeholder()},_refreshTagListAria:function(){var t=this;o.renderChipList(t.tagList,e.extend({selectable:0===t.value().length?"none":"multiple"},t.options))},_updateTagListHTML:function(){var t=this,i=t.value(),n=t.dataSource.total();t.tagList.children(d).each((function(t,i){e(i).remove()})),i.length&&(t.tagList.append(t.tagTemplate({values:i,dataItems:t.dataItems(),maxTotal:t._maxTotal,currentTotal:n})),a.applyStylesFromKendoAttributes(t.tagList,["background-color"])),t._refreshTagListAria()},_select:function(t){var i=e.Deferred().resolve();if(!t)return i;var a=this,n=a.listView,s=n.dataItemByIndex(n.getElementIndex(t)),l=t.hasClass("k-selected");return a._state===_&&(a._state=""),a._allowSelection()||l?a.trigger(l?T:b,{dataItem:s,item:t})?(a._close(),i):(a.persistTagList=!1,n.select(t).done((function(){a._placeholder(),a._state===f&&(a._state=h,n.skipUpdate(!0))}))):i},_selectRange:function(t,i){var a,n=this,s=this.listView,l=this.options.maxSelectedItems,o=this._getSelectedIndices().slice(),r=[],u=function(t){s.select(t).done((function(){t.forEach((function(t){var i=s.dataItemByIndex(t),a=s.element.children()[t],l=e(a).hasClass("k-selected");n.trigger(l?b:T,{dataItem:i,item:e(a)})})),n._change()}))};if(o.length-1==i-t)return u(o);if(t<i)for(a=t;a<=i;a++)r.push(a);else for(a=t;a>=i;a--)r.push(a);for(null!==l&&r.length>l&&(r=r.slice(0,l)),a=0;a<r.length;a++){var c=r[a];-1==this._getSelectedIndices().indexOf(c)?o.push(c):o.splice(o.indexOf(c),1)}return o.length?(n.persistTagList=!1,u(o)):void 0},_input:function(){var t=this,i=t.element,a=i[0].accessKey,n=t._inputValuesContainer.children("input.k-input-inner");n[0]||(n=e('<input class="k-input-inner" />').appendTo(t._inputValuesContainer)),i.removeAttr("accesskey"),n.attr("data-validate",!1),t._focused=t.input=n.attr({autocomplete:"off",title:i[0].title}),a&&t._focused.attr("accesskey",a)},_inputValuesContainer:function(){var t=this,i=t.wrapper.children(".k-input-values");i[0]||(i=e('<div class="k-input-values"></div>').appendTo(t.wrapper)),t._inputValuesContainer=i},_tagList:function(){var t=this,i=t.options,a=t._inputValuesContainer.children(".k-chip-list");a[0]||(a=e(o.renderChipList('<div unselectable="on" class="k-selection-multiple" />',e.extend({selectable:"none"},i))).appendTo(t._inputValuesContainer)),t.tagList=a},_tagTemplate:function(){var t,i=this,n=i.options,s=n.tagTemplate,r=n.dataSource,u="multiple"===n.tagMode,c=n.messages.singleTag;i.element[0].length&&!r&&(n.dataTextField=n.dataTextField||"text",n.dataValueField=n.dataValueField||"value"),t=u?e=>l(a.getter(n.dataTextField)(e)):({values:e})=>`${e.length} ${l(c)}`,i.tagTextTemplate=s=s?a.template(s):t,i.tagTemplate=function(t){return o.renderChip('<span unselectable="on"></span>',e.extend({},n,{fillMode:"solid",rounded:"medium",enabled:!0,themeColor:"base",text:s(t),attr:{unselectable:"on","aria-selected":!0,role:"option","aria-keyshortcuts":u?"Enter Delete":"Enter"},removable:u,removableAttr:{unselectable:"on","aria-hidden":!0,"aria-label":i.options.messages.deleteTag,title:i.options.messages.deleteTag},icon:u?"":"caret-alt-down",iconAttr:{unselectable:"on","aria-hidden":!0,"aria-label":"open"}}))}},_loader:function(){this._loading=e('<span class="k-icon k-i-loading k-input-loading-icon '+S+'"></span>').insertAfter(this._inputValuesContainer)},_popup:function(){s.fn._popup.call(this),this.popup.element.addClass("k-multiselect-popup")},_clearButton:function(){s.fn._clearButton.call(this),this.options.clearButton&&this._clear.insertAfter(this._inputValuesContainer)},_arrowButton:function(){var t=l(this.options.messages.downArrow),i=e(o.renderButton('<button type="button" aria-label="'+t+'" class="k-input-button"></button>',e.extend({},this.options,{icon:"caret-alt-down",rounded:null})));this._arrow&&(this._arrow.remove(),this._arrow=null),this.options.downArrow&&(this._arrow=i.attr({tabIndex:-1}),this._arrow.appendTo(this.wrapper))},_textContainer:function(){var t=a.getComputedStyles(this.input[0],N);t.position="absolute",t.visibility="hidden",t.top=-3333,t.left=-3333,this._span=e("<span/>").css(t).appendTo(this.wrapper)},_wrapper:function(){var e=this.element,t=e.parent("span.k-multiselect");t[0]||((t=e.wrap('<span class="k-multiselect k-input" unselectable="on" />').parent())[0].style.cssText=e[0].style.cssText),this.wrapper=t.addClass(e[0].className).removeClass("input-validation-error").css("display","")},_closeHandler:function(e){this.trigger(m)?e.preventDefault():(this.input.attr(k,!1),this.ul.attr(x,!0))},_openHandler:function(e){this._adjustListWidth(),this.trigger(g)?e.preventDefault():(this.input.attr(k,!0),this.ul.attr(x,!1))}});n.plugin(z),a.cssProperties.registerPrefix("MultiSelect","k-input-"),a.cssProperties.registerValues("MultiSelect",[{prop:"rounded",values:a.cssProperties.roundedValues.concat([["full","full"]])}])}(window.kendo.jQuery),kendo})); //# sourceMappingURL=kendo.multiselect.min.js.map